gdb: Don't leak memory with TYPE_ALLOC / TYPE_ZALLOC
[external/binutils.git] / gdb / ChangeLog
1 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2
3         * eval.c (fake_method::fake_method): Call xzalloc directly for a
4         type that is neither object file owned, nor gdbarch owned.
5         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
6         gdbarch is non-NULL.
7         (alloc_type_instance): Allocate non-objfile owned types on the
8         gdbarch obstack.
9         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
10         using TYPE_ALLOC to ensure memory is allocated on the correct
11         obstack.
12         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
13         obstack, or the gdbarch obstack.
14         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
15
16 2018-09-14  Tom Tromey  <tom@tromey.com>
17
18         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
19         block.
20
21 2018-09-14  Tom Tromey  <tom@tromey.com>
22
23         * nat/fork-inferior.c (get_startup_shell): Remove "static".
24
25 2018-09-13  Tom Tromey  <tom@tromey.com>
26
27         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
28         static.
29
30 2018-09-13  Tom Tromey  <tom@tromey.com>
31
32         * exec.c (try_open_exec_file): Use std::string.
33
34 2018-09-13  Tom Tromey  <tom@tromey.com>
35
36         * utils.h (gdb_bfd_errmsg): Return std::string.
37         * exec.c (exec_file_attach): Update.
38         * compile/compile-object-load.c (compile_object_load): Update.
39         * utils.c (gdb_bfd_errmsg): Return std::string.
40
41 2018-09-13  Tom Tromey  <tom@tromey.com>
42
43         * procfs.c (struct procinfo_deleter): New.
44         (procinfo_up): New typedef.
45         (do_destroy_procinfo_cleanup): Remove.
46         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
47
48 2018-09-13  Tom Tromey  <tom@tromey.com>
49
50         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
51
52 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
53 2018-09-13  Tom Tromey  <tom@tromey.com>
54
55         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
56         (pspy_get_objfiles): New function.
57         (progspace_object_methods): New.
58         (pspace_object_type): Add tp_methods callback.
59         * python/python-internal.h (build_objfiles_list): New
60         declaration.
61         * python/python.c (build_objfiles_list): New function.
62         (gdbpy_objfiles): Implement using build_objfiles_list.
63         * NEWS: Mention the Progspace.objfiles method.
64
65 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
66
67         * python/py-inferior.c (infpy_get_progspace): New function.
68         (inferior_object_getset): Add progspace property.
69         * NEWS: Mention the new property.
70
71 2018-09-13  Tom Tromey  <tom@tromey.com>
72
73         PR rust/23650:
74         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
75
76 2018-09-13  Tom Tromey  <tom@tromey.com>
77
78         PR rust/23626:
79         * rust-lang.c (rust_enum_variant): Now static.
80         (rust_empty_enum_p): New function.
81         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
82         Handle empty enum.
83
84 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
85
86         * python/py-inferior.c (infpy_repr): New.
87         (inferior_object_type): Register infpy_repr.
88         * python/py-objfile.c (objfpy_repr): New.
89         (objfile_object_type): Register objfpy_repr.
90
91 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
92
93         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
94
95 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
96
97         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
98         typo.
99
100 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
101
102         * common/common-utils.c: Don't include '<sys/stat.h>'.
103         (is_regular_file): Move to...
104         * common/filestuff.c (is_regular_file): ... here.
105         * common/common-utils.h (is_regular_file): Move to...
106         * common/filestuff.h (is_regular_file): ... here.
107
108 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
109
110         * skip.c (debug_skip): New variable.
111         (skiplist_entry::do_skip_file_p): Add debug output.
112         (skiplist_entry::do_skip_gfile_p): Likewise.
113         (skiplist_entry::skip_function_p): Likewise.
114         (_initialize_step_skip): Create debug command.
115         * NEWS: Mention set/show debug skip.
116
117 2018-09-11  Xavier Roirand  <roirand@adacore.com>
118
119         * darwin-nat.c (should_disable_startup_with_shell):
120         New function.
121         (darwin_nat_target::create_inferior): Add call.
122
123 2018-09-11  Xavier Roirand  <roirand@adacore.com>
124
125         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
126         inf_port, msg_state>: Initialize.
127         (struct darwin_thread_info) <signaled, single_step>: Change
128         type and initialize.
129         (struct darwin_thread_info) <event>: Initialize.
130
131 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
132
133         PR gdb/23555
134         PR gdb/23558
135         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
136         guesses.
137
138 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
139
140         Revert:
141         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
142
143         PR gdb/23555
144         PR gdb/23558
145         * gnulib/aclocal.m4: Regenerate.
146         * gnulib/config.in: Regenerate.
147         * gnulib/configure: Regenerate.
148         * gnulib/import/Makefile.am: Update.
149         * gnulib/import/Makefile.in: Update.
150         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
151         * gnulib/import/_Noreturn.h: ... this.
152         * gnulib/import/alloca.in.h: Update.
153         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
154         * gnulib/import/arg-nonnull.h: ... this.
155         * gnulib/import/assure.h: Update.
156         * gnulib/import/at-func.c: Update.
157         * gnulib/import/basename-lgpl.c: Update.
158         * gnulib/import/extra/snippet/c++defs.h: Rename to...
159         * gnulib/import/c++defs.h: ... this.
160         * gnulib/import/canonicalize-lgpl.c: Update.
161         * gnulib/import/cdefs.h: Update.
162         * gnulib/import/chdir-long.c: Update.
163         * gnulib/import/chdir-long.h: Update.
164         * gnulib/import/cloexec.c: Update.
165         * gnulib/import/cloexec.h: Update.
166         * gnulib/import/close.c: Update.
167         * gnulib/import/closedir.c: Update.
168         * gnulib/import/config.charset: Update.
169         * gnulib/import/dirent-private.h: Update.
170         * gnulib/import/dirent.in.h: Update.
171         * gnulib/import/dirfd.c: Update.
172         * gnulib/import/dirname-lgpl.c: Update.
173         * gnulib/import/dirname.h: Update.
174         * gnulib/import/dosname.h: Update.
175         * gnulib/import/dup-safer-flag.c: Update.
176         * gnulib/import/dup-safer.c: Update.
177         * gnulib/import/dup.c: Update.
178         * gnulib/import/dup2.c: Update.
179         * gnulib/import/errno.in.h: Update.
180         * gnulib/import/error.c: Update.
181         * gnulib/import/error.h: Update.
182         * gnulib/import/exitfail.c: Update.
183         * gnulib/import/exitfail.h: Update.
184         * gnulib/import/extra/update-copyright: Update.
185         * gnulib/import/fchdir.c: Update.
186         * gnulib/import/fcntl.c: Update.
187         * gnulib/import/fcntl.in.h: Update.
188         * gnulib/import/fd-hook.c: Update.
189         * gnulib/import/fd-hook.h: Update.
190         * gnulib/import/fd-safer-flag.c: Update.
191         * gnulib/import/fd-safer.c: Update.
192         * gnulib/import/fdopendir.c: Update.
193         * gnulib/import/filename.h: Update.
194         * gnulib/import/filenamecat-lgpl.c: Update.
195         * gnulib/import/filenamecat.h: Update.
196         * gnulib/import/flexmember.h: Update.
197         * gnulib/import/float+.h: Update.
198         * gnulib/import/float.c: Update.
199         * gnulib/import/float.in.h: Update.
200         * gnulib/import/fnmatch.c: Update.
201         * gnulib/import/fnmatch.in.h: Update.
202         * gnulib/import/fnmatch_loop.c: Update.
203         * gnulib/import/fpucw.h: Update.
204         * gnulib/import/frexp.c: Update.
205         * gnulib/import/frexpl.c: Update.
206         * gnulib/import/fstat.c: Update.
207         * gnulib/import/fstatat.c: Update.
208         * gnulib/import/getcwd-lgpl.c: Update.
209         * gnulib/import/getcwd.c: Update.
210         * gnulib/import/getdtablesize.c: Update.
211         * gnulib/import/getlogin_r.c: Update.
212         * gnulib/import/getprogname.c: Update.
213         * gnulib/import/getprogname.h: Update.
214         * gnulib/import/gettext.h: Update.
215         * gnulib/import/gettimeofday.c: Update.
216         * gnulib/import/glob-libc.h: Update.
217         * gnulib/import/glob.c: Update.
218         * gnulib/import/glob.in.h: Update.
219         * gnulib/import/glob_internal.h: Update.
220         * gnulib/import/glob_pattern_p.c: Update.
221         * gnulib/import/globfree.c: Update.
222         * gnulib/import/hard-locale.c: Update.
223         * gnulib/import/hard-locale.h: Update.
224         * gnulib/import/intprops.h: Update.
225         * gnulib/import/inttypes.in.h: Update.
226         * gnulib/import/isnan.c: Update.
227         * gnulib/import/isnand-nolibm.h: Update.
228         * gnulib/import/isnand.c: Update.
229         * gnulib/import/isnanl-nolibm.h: Update.
230         * gnulib/import/isnanl.c: Update.
231         * gnulib/import/itold.c: Update.
232         * gnulib/import/libc-config.h: Update.
233         * gnulib/import/limits.in.h: Update.
234         * gnulib/import/localcharset.c: Update.
235         * gnulib/import/localcharset.h: Update.
236         * gnulib/import/localtime-buffer.c: Update.
237         * gnulib/import/localtime-buffer.h: Update.
238         * gnulib/import/lstat.c: Update.
239         * gnulib/import/m4/00gnulib.m4: Update.
240         * gnulib/import/m4/__inline.m4: Update.
241         * gnulib/import/m4/absolute-header.m4: Update.
242         * gnulib/import/m4/alloca.m4: Update.
243         * gnulib/import/m4/builtin-expect.m4: Update.
244         * gnulib/import/m4/canonicalize.m4: Update.
245         * gnulib/import/m4/chdir-long.m4: Update.
246         * gnulib/import/m4/close.m4: Update.
247         * gnulib/import/m4/closedir.m4: Update.
248         * gnulib/import/m4/configmake.m4: Update.
249         * gnulib/import/m4/d-ino.m4: Update.
250         * gnulib/import/m4/d-type.m4: Update.
251         * gnulib/import/m4/dirent_h.m4: Update.
252         * gnulib/import/m4/dirfd.m4: Update.
253         * gnulib/import/m4/dirname.m4: Update.
254         * gnulib/import/m4/double-slash-root.m4: Update.
255         * gnulib/import/m4/dup.m4: Update.
256         * gnulib/import/m4/dup2.m4: Update.
257         * gnulib/import/m4/eealloc.m4: Update.
258         * gnulib/import/m4/environ.m4: Update.
259         * gnulib/import/m4/errno_h.m4: Update.
260         * gnulib/import/m4/error.m4: Update.
261         * gnulib/import/m4/exponentd.m4: Update.
262         * gnulib/import/m4/exponentl.m4: Update.
263         * gnulib/import/m4/extensions.m4: Update.
264         * gnulib/import/m4/extern-inline.m4: Update.
265         * gnulib/import/m4/fchdir.m4: Update.
266         * gnulib/import/m4/fcntl-o.m4: Update.
267         * gnulib/import/m4/fcntl.m4: Update.
268         * gnulib/import/m4/fcntl_h.m4: Update.
269         * gnulib/import/m4/fdopendir.m4: Update.
270         * gnulib/import/m4/filenamecat.m4: Update.
271         * gnulib/import/m4/flexmember.m4: Update.
272         * gnulib/import/m4/float_h.m4: Update.
273         * gnulib/import/m4/fnmatch.m4: Update.
274         * gnulib/import/m4/fnmatch_h.m4: Update.
275         * gnulib/import/m4/fpieee.m4: Update.
276         * gnulib/import/m4/frexp.m4: Update.
277         * gnulib/import/m4/frexpl.m4: Update.
278         * gnulib/import/m4/fstat.m4: Update.
279         * gnulib/import/m4/fstatat.m4: Update.
280         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
281         * gnulib/import/m4/getcwd-path-max.m4: Update.
282         * gnulib/import/m4/getcwd.m4: Update.
283         * gnulib/import/m4/getdtablesize.m4: Update.
284         * gnulib/import/m4/getlogin.m4: Update.
285         * gnulib/import/m4/getlogin_r.m4: Update.
286         * gnulib/import/m4/getpagesize.m4: Update.
287         * gnulib/import/m4/getprogname.m4: Update.
288         * gnulib/import/m4/gettimeofday.m4: Update.
289         * gnulib/import/m4/glibc21.m4: Update.
290         * gnulib/import/m4/glob.m4: Update.
291         * gnulib/import/m4/glob_h.m4: Update.
292         * gnulib/import/m4/gnulib-cache.m4: Update.
293         * gnulib/import/m4/gnulib-common.m4: Update.
294         * gnulib/import/m4/gnulib-comp.m4: Update.
295         * gnulib/import/m4/gnulib-tool.m4: Update.
296         * gnulib/import/m4/hard-locale.m4: Update.
297         * gnulib/import/m4/include_next.m4: Update.
298         * gnulib/import/m4/inttypes-pri.m4: Update.
299         * gnulib/import/m4/inttypes.m4: Update.
300         * gnulib/import/m4/isnand.m4: Update.
301         * gnulib/import/m4/isnanl.m4: Update.
302         * gnulib/import/m4/largefile.m4: Update.
303         * gnulib/import/m4/limits-h.m4: Update.
304         * gnulib/import/m4/localcharset.m4: Update.
305         * gnulib/import/m4/locale-fr.m4: Update.
306         * gnulib/import/m4/locale-ja.m4: Update.
307         * gnulib/import/m4/locale-zh.m4: Update.
308         * gnulib/import/m4/localtime-buffer.m4: Update.
309         * gnulib/import/m4/longlong.m4: Update.
310         * gnulib/import/m4/lstat.m4: Update.
311         * gnulib/import/m4/malloc.m4: Update.
312         * gnulib/import/m4/malloca.m4: Update.
313         * gnulib/import/m4/math_h.m4: Update.
314         * gnulib/import/m4/mbrtowc.m4: Update.
315         * gnulib/import/m4/mbsinit.m4: Update.
316         * gnulib/import/m4/mbsrtowcs.m4: Update.
317         * gnulib/import/m4/mbstate_t.m4: Update.
318         * gnulib/import/m4/memchr.m4: Update.
319         * gnulib/import/m4/memmem.m4: Update.
320         * gnulib/import/m4/mempcpy.m4: Update.
321         * gnulib/import/m4/memrchr.m4: Update.
322         * gnulib/import/m4/mkdir.m4: Update.
323         * gnulib/import/m4/mkstemp.m4: Update.
324         * gnulib/import/m4/mmap-anon.m4: Update.
325         * gnulib/import/m4/mode_t.m4: Update.
326         * gnulib/import/m4/msvc-inval.m4: Update.
327         * gnulib/import/m4/msvc-nothrow.m4: Update.
328         * gnulib/import/m4/multiarch.m4: Update.
329         * gnulib/import/m4/nocrash.m4: Update.
330         * gnulib/import/m4/off_t.m4: Update.
331         * gnulib/import/m4/onceonly.m4: Update.
332         * gnulib/import/m4/open-cloexec.m4: Update.
333         * gnulib/import/m4/open.m4: Update.
334         * gnulib/import/m4/openat.m4: Update.
335         * gnulib/import/m4/opendir.m4: Update.
336         * gnulib/import/m4/pathmax.m4: Update.
337         * gnulib/import/m4/rawmemchr.m4: Update.
338         * gnulib/import/m4/readdir.m4: Update.
339         * gnulib/import/m4/readlink.m4: Update.
340         * gnulib/import/m4/realloc.m4: Update.
341         * gnulib/import/m4/rename.m4: Update.
342         * gnulib/import/m4/rewinddir.m4: Update.
343         * gnulib/import/m4/rmdir.m4: Update.
344         * gnulib/import/m4/save-cwd.m4: Update.
345         * gnulib/import/m4/secure_getenv.m4: Update.
346         * gnulib/import/m4/setenv.m4: Update.
347         * gnulib/import/m4/signal_h.m4: Update.
348         * gnulib/import/m4/ssize_t.m4: Update.
349         * gnulib/import/m4/stat-time.m4: Update.
350         * gnulib/import/m4/stat.m4: Update.
351         * gnulib/import/m4/std-gnu11.m4: Update.
352         * gnulib/import/m4/stdbool.m4: Update.
353         * gnulib/import/m4/stddef_h.m4: Update.
354         * gnulib/import/m4/stdint.m4: Update.
355         * gnulib/import/m4/stdio_h.m4: Update.
356         * gnulib/import/m4/stdlib_h.m4: Update.
357         * gnulib/import/m4/strchrnul.m4: Update.
358         * gnulib/import/m4/strdup.m4: Update.
359         * gnulib/import/m4/strerror.m4: Update.
360         * gnulib/import/m4/string_h.m4: Update.
361         * gnulib/import/m4/strstr.m4: Update.
362         * gnulib/import/m4/strtok_r.m4: Update.
363         * gnulib/import/m4/sys_socket_h.m4: Update.
364         * gnulib/import/m4/sys_stat_h.m4: Update.
365         * gnulib/import/m4/sys_time_h.m4: Update.
366         * gnulib/import/m4/sys_types_h.m4: Update.
367         * gnulib/import/m4/tempname.m4: Update.
368         * gnulib/import/m4/time_h.m4: Update.
369         * gnulib/import/m4/unistd-safer.m4: Update.
370         * gnulib/import/m4/unistd_h.m4: Update.
371         * gnulib/import/m4/warn-on-use.m4: Update.
372         * gnulib/import/m4/wchar_h.m4: Update.
373         * gnulib/import/m4/wchar_t.m4: Update.
374         * gnulib/import/m4/wctype_h.m4: Update.
375         * gnulib/import/m4/wint_t.m4: Update.
376         * gnulib/import/malloc.c: Update.
377         * gnulib/import/malloc/scratch_buffer.h: Update.
378         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
379         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
380         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
381         * gnulib/import/malloca.c: Update.
382         * gnulib/import/malloca.h: Update.
383         * gnulib/import/malloca.valgrind: Update.
384         * gnulib/import/math.in.h: Update.
385         * gnulib/import/mbrtowc.c: Update.
386         * gnulib/import/mbsinit.c: Update.
387         * gnulib/import/mbsrtowcs-impl.h: Update.
388         * gnulib/import/mbsrtowcs-state.c: Update.
389         * gnulib/import/mbsrtowcs.c: Update.
390         * gnulib/import/memchr.c: Update.
391         * gnulib/import/memmem.c: Update.
392         * gnulib/import/mempcpy.c: Update.
393         * gnulib/import/memrchr.c: Update.
394         * gnulib/import/mkdir.c: Update.
395         * gnulib/import/mkstemp.c: Update.
396         * gnulib/import/msvc-inval.c: Update.
397         * gnulib/import/msvc-inval.h: Update.
398         * gnulib/import/msvc-nothrow.c: Update.
399         * gnulib/import/msvc-nothrow.h: Update.
400         * gnulib/import/open.c: Update.
401         * gnulib/import/openat-die.c: Update.
402         * gnulib/import/openat-priv.h: Update.
403         * gnulib/import/openat-proc.c: Update.
404         * gnulib/import/openat.c: Update.
405         * gnulib/import/openat.h: Update.
406         * gnulib/import/opendir.c: Update.
407         * gnulib/import/pathmax.h: Update.
408         * gnulib/import/pipe-safer.c: Update.
409         * gnulib/import/rawmemchr.c: Update.
410         * gnulib/import/readdir.c: Update.
411         * gnulib/import/readlink.c: Update.
412         * gnulib/import/realloc.c: Update.
413         * gnulib/import/ref-add.sin: Update.
414         * gnulib/import/ref-del.sin: Update.
415         * gnulib/import/rename.c: Update.
416         * gnulib/import/rewinddir.c: Update.
417         * gnulib/import/rmdir.c: Update.
418         * gnulib/import/same-inode.h: Update.
419         * gnulib/import/save-cwd.c: Update.
420         * gnulib/import/save-cwd.h: Update.
421         * gnulib/import/scratch_buffer.h: Update.
422         * gnulib/import/secure_getenv.c: Update.
423         * gnulib/import/setenv.c: Update.
424         * gnulib/import/signal.in.h: Update.
425         * gnulib/import/stat-time.c: Update.
426         * gnulib/import/stat-time.h: Update.
427         * gnulib/import/stat-w32.c: Update.
428         * gnulib/import/stat-w32.h: Update.
429         * gnulib/import/stat.c: Update.
430         * gnulib/import/stdbool.in.h: Update.
431         * gnulib/import/stddef.in.h: Update.
432         * gnulib/import/stdint.in.h: Update.
433         * gnulib/import/stdio.in.h: Update.
434         * gnulib/import/stdlib.in.h: Update.
435         * gnulib/import/str-two-way.h: Update.
436         * gnulib/import/strchrnul.c: Update.
437         * gnulib/import/strdup.c: Update.
438         * gnulib/import/streq.h: Update.
439         * gnulib/import/strerror-override.c: Update.
440         * gnulib/import/strerror-override.h: Update.
441         * gnulib/import/strerror.c: Update.
442         * gnulib/import/string.in.h: Update.
443         * gnulib/import/stripslash.c: Update.
444         * gnulib/import/strnlen1.c: Update.
445         * gnulib/import/strnlen1.h: Update.
446         * gnulib/import/strstr.c: Update.
447         * gnulib/import/strtok_r.c: Update.
448         * gnulib/import/sys_stat.in.h: Update.
449         * gnulib/import/sys_time.in.h: Update.
450         * gnulib/import/sys_types.in.h: Update.
451         * gnulib/import/tempname.c: Update.
452         * gnulib/import/tempname.h: Update.
453         * gnulib/import/time.in.h: Update.
454         * gnulib/import/unistd--.h: Update.
455         * gnulib/import/unistd-safer.h: Update.
456         * gnulib/import/unistd.in.h: Update.
457         * gnulib/import/unsetenv.c: Update.
458         * gnulib/import/verify.h: Update.
459         * gnulib/import/extra/snippet/warn-on-use.h: Update.
460         * gnulib/import/wchar.in.h: Update.
461         * gnulib/import/wctype.in.h: Update.
462         * gnulib/import/xalloc-oversized.h: Update.
463         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
464         "53e2c179f26a890fa6685af4b6c1397ee370433b".
465
466 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
467
468         * record-btrace.c (get_thread_current_frame): Remove
469         old_inferior_ptid.
470
471 2018-09-10  Jerome Guitton  <guitton@adacore.com>
472
473         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
474         with check_tag to 1 if and only if the type is tagged and the
475         component being searched cannot been found in the current
476         view. Otherwise, always call ada_to_fixed_type with
477         check_tag to 0.
478
479 2018-09-10  Xavier Roirand  <roirand@adacore.com>
480
481         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
482         declaration.
483         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
484         * ada-varobj.c (ada_varobj_get_number_of_children,
485         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
486
487 2018-09-10  Xavier Roirand  <roirand@adacore.com>
488
489         * ada-valprint.c (ada_value_print): Use type instead of
490         enclosing type.
491
492 2018-09-10  Xavier Roirand  <roirand@adacore.com>
493
494         * ada-lang.c (ada_value_subscript): Handle case when parameter is
495         an array of access to unconstrained array.
496
497 2018-09-10  Xavier Roirand  <roirand@adacore.com>
498
499         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
500         (ada_check_typedef): Use it.
501
502 2018-09-10  Xavier Roirand  <roirand@adacore.com>
503
504         * ada-varobj.c (ada_varobj_describe_struct_child)
505         (ada_varobj_describe_child): Handle union case like struct one.
506
507 2018-09-10  Tom Tromey  <tom@tromey.com>
508
509         PR python/18380:
510         * python/python.c (_initialize_python): Make example in "python"
511         help work in Python 3.
512
513 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
514
515         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
516         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
517         $(EXEEXT) to the script, as it is not a program.
518
519 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
520
521         * python/py-prettyprint.c (pretty_print_one_value): Return
522         gdbpy_ref<>.
523         (print_string_repr): Adjust.
524         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
525         * python/python-internal.h (apply_varobj_pretty_printer): Return
526         gdbpy_ref<>.
527         * varobj.c (varobj_value_get_print_value): Adjust.
528
529 2018-09-08  Tom Tromey  <tom@tromey.com>
530
531         PR python/16047:
532         * python/py-prettyprint.c (pretty_print_one_value): Check for
533         to_string method.
534
535 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
536
537         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
538         replace_operator_with_call.
539
540 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
541
542         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
543
544 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
545
546         * ada-typeprint.c (print_range): Print the bounds using TYPE
547         rather than its TYPE_TARGET_TYPE.
548
549 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
550
551         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
552         call to ada_to_fixed_value_create.
553
554 2018-09-08  Jerome Guitton  <guitton@adacore.com>
555
556         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
557
558 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
559
560         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
561         by calls to error.
562
563 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
564
565         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
566         Move update of loop variable "fi".
567
568 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
569
570         * ada-lang.c (value_assign_to_component): In the case of
571         big-endian targets, extract the bits of the given VAL
572         using an src_offset of zero if container is not a scalar.
573
574 2018-09-06  Simon Ser  <contact@emersion.fr>
575
576         PR gdb/23105
577         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
578         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
579         * fbsd-tdep.c (fbsd_make_note_desc): New.
580         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
581         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
582         * target.h (enum target_object) Add FreeBSD-specific
583         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
584
585 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
586
587         * compile/compile-c.h (generate_c_for_variable_locations):
588         Change reference to pointer.
589         * compile/compile-c-support.c (compile_program) <compute>:
590         Likewise.
591         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
592         (generate_c_for_for_one_variable): Likewise
593         (generate_c_for_variable_locations): Likewise
594         * compile/compile-c-types.c (compile_c_instance::convert_type):
595         Likewise
596         * compile/compile-cplus-symbols.c (convert_one_symbol):
597         std::move the scope passed to enter_scope.
598         * compile/compile-cplus-types.c
599         (compile_cplus_instance::enter_scope): Make parameter
600         rvalue-reference.
601         (compile_cplus_instance::new_scope): Change reference to
602         pointer.
603         (compile_cplus_instance::convert_type): Likewise
604         (compile_cplus_convert_typedef): std::move the scope passed to
605         enter_scope.
606         (compile_cplus_convert_struct_or_union): Likewise.
607         (compile_cplus_convert_enum): Likewise.
608         (compile_cplus_convert_namespace): Likewise.
609         * compile/compile-cplus.h (compile_cplus_instance)
610         <enter_scope>: Make parameter rvalue-reference.
611         * compile/compile-internal.h (compile_instance)
612         <get_cached_type>: Likewise
613         * compile/compile-loc2c.c (push): Likewise
614         (pushf): Likewise
615         (unary): Likewise
616         (binary): Likewise
617         (print_label): Likewise
618         (pushf_register_address): Likewise
619         (pushf_register): Likewise
620         (do_compile_dwarf_expr_to_c): Likewise
621         (compile_dwarf_expr_to_c): Likewise
622         (compile_dwarf_bounds_to_c): Likewise
623         * compile/compile.c (compile_instance::get_cached_type):
624         Likewise
625         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
626         (compile_dwarf_bounds_to_c): Likewise
627         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
628         (dwarf2_compile_property_to_c): Likewise
629         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
630         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
631         Likewise
632
633 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
634
635         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
636         * tui/tui-data.c (init_content_element): Don't initialize it.
637
638 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
639
640         * tui/tui-data.h (struct tui_win_info)
641         <detail::opaque>: Remove.
642         * tui/tui-data.c (init_win_info): Remove assignment.
643
644 2018-09-05  Tom Tromey  <tom@tromey.com>
645
646         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
647         -Wformat-nonliteral.
648         * target-float.c (host_float_ops<T>::to_string)
649         (host_float_ops<T>::from_string): Use
650         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
651         * configure: Rebuild.
652
653 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
654
655         * printcmd.c (printf_c_string): Use
656         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
657         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
658
659 2018-09-05  Tom Tromey  <tom@tromey.com>
660
661         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
662
663 2018-09-05  Tom de Vries  <tdevries@suse.de>
664
665         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
666         with resolve_abstract_p == true.
667         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
668         defaulting to false. Propagate resolve_abstract_p to
669         dwarf2_fetch_die_loc_sect_off.
670         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
671         parameter, defaulting to false.
672         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
673         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
674         parameter.
675         * dwarf2read.h (struct die_info): Forward-declare.
676         (die_info_ptr): New typedef.
677         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
678
679 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
680
681         GDB 8.2 released.
682
683 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
684             Pedro Alves  <palves@redhat.com>
685
686         * gnulib/Makefile.in (aclocal_m4_deps): Move to
687         "aclocal-m4-deps.mk".  Include file here.
688         $(srcdir)/aclocal.m4: Add "configure.ac".
689         * gnulib/aclocal-m4-deps.mk: New file.
690         * gnulib/update-gnulib.sh: Automatically update
691         "aclocal-m4-deps.mk".
692
693 2018-09-04  Tom Tromey  <tom@tromey.com>
694
695         * configure: Rebuild.
696         * configure.ac: Remove multi-ice code.
697
698 2018-09-04  Tom Tromey  <tom@tromey.com>
699
700         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
701         (ada-exp.o): Update.
702
703 2018-09-04  Tom Tromey  <tom@tromey.com>
704
705         * Makefile.in (printcmd.o, target-float.o): Remove.
706         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
707
708 2018-09-04  Tom Tromey  <tom@tromey.com>
709
710         * gnulib/Makefile.in: Remove obsolete comment.
711         * Makefile.in: Remove obsolete comment.
712
713 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
714
715         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
716         line with '+'.
717
718 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
719
720         * riscv-tdep.c: Add 'prologue-value.h' include.
721         (struct riscv_unwind_cache): New struct.
722         (riscv_debug_unwinder): New global.
723         (riscv_scan_prologue): Update arguments, capture register details
724         from prologue scan.
725         (riscv_skip_prologue): Reformat arguments line, move end of
726         prologue calculation into riscv_scan_prologue.
727         (riscv_frame_cache): Update return type, create
728         riscv_unwind_cache, scan the prologue, and fill in remaining cache
729         details.
730         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
731         (riscv_frame_prev_register): Use the trad_frame within the
732         riscv_unwind_cache.
733         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
734         flag.
735
736 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
737
738         * trad-frame.h (trad_frame_set_realreg): Declare.
739         (trad_frame_set_addr): Declare.
740         * trad-frame.c (trad_frame_set_realreg): Define new function.
741         (trad_frame_set_addr): Define new function.
742         (trad_frame_set_reg_realreg): Use new function.
743         (trad_frame_set_reg_addr): Use new function.
744
745 2018-09-01  Keith Seitz  <keiths@redhat.com>
746
747         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
748         pulongest instead of "%lld".
749         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
750         ATTRIBUTE_UNUSED.
751
752 2018-08-31  Tom Tromey  <tom@tromey.com>
753
754         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
755         variant part type.
756
757 2018-08-31  Pedro Alves  <palves@redhat.com>
758
759         * gdbarch.h: Regenerate.
760
761 2018-08-31  Pedro Alves  <palves@redhat.com>
762
763         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
764         * target.h (Hardware watchpoint interfaces): Describe
765         continuable/steppable/non-steppable watchpoints.
766         * gdbarch.h, gdbarch.c: Regenerate.
767
768 2018-08-31  Pedro Alves  <palves@redhat.com>
769
770         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
771         Delete.
772         * s390-linux-nat.c
773         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
774         * target.h (target_ops::have_continuable_watchpoint): Delete.
775         (target_have_continuable_watchpoint): Delete.
776         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
777         * target-delegates.c: Regenerate.
778
779 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
780
781         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
782         the files present in "gnulib/import/m4/".
783
784 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
785
786         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
787         c.sw, c.swsp, and c.sdsp.
788
789 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
790
791         * riscv-tdep.c (struct riscv_inferior_data): Delete.
792         (riscv_read_misa_reg): Don't cache value read into inferior data.
793         (riscv_new_inferior_data): Delete.
794         (riscv_inferior_data_cleanup): Delete.
795         (riscv_inferior_data): Delete.
796         (riscv_invalidate_inferior_data): Delete.
797         (_initialize_riscv_tdep): Remove initialisation of inferior data.
798
799 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
800
801         * compile/compile-cplus-types.c
802         (compile_cplus_instance::leave_scope): Take the address of scope
803         object.
804         (compile_cplus_instance::convert_qualified_base): Compare quals
805         to 0.
806
807 2018-08-30  Keith Seitz  <keiths@redhat.com>
808
809         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
810         Use "%s" and host_address_to_string instead of "%p" in printf.
811
812 2018-08-29  Keith Seitz  <keiths@redhat.com>
813
814         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
815         and compile-cplus-types.c.
816         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
817         * c-lang.c (cplus_language_defn): Set C++ compile functions.
818         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
819         Declare.
820         * compile/compile-c-support.c: Include compile-cplus.h.
821         (load_libcompile): Templatize.
822         (get_compile_context): "New" function.
823         (c_get_compile_context): Use get_compile_context.
824         (cplus_get_compile_context): New function.
825         (cplus_push_user_expression, cplus_pop_user_expression)
826         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
827         (cplus_compute_program): Define new structs/functions.
828         * compile/compile-cplus-symmbols.c: New file.
829         * compile/compile-cplus-types.c: New file.
830         * compile/compile-cplus.h: New file.
831         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
832         Declare.
833         * compile/compile-object-load.c (get_out_value_type): Use
834         strncmp_iw when comparing symbol names.
835         (compile_object_load): Add mst_bss and mst_data.
836         * compile/compile.c (_initialize_compile): Remove
837         -Wno-implicit-function-declaration from `compile_args'.
838         * compile/gcc-cp-plugin.h: New file.
839         * NEWS: Mention C++ compile support and new debug options.
840
841 2018-08-29  Keith Seitz  <keiths@redhat.com>
842
843         * linespec.c (collect_info::add_symbol): Make virtual.
844         (struct symbol_searcher_collect_info): New struct.
845         (symbol_searcher::find_all_symbols): New method.
846         * symtab.h (class symbol_searcher): New class.
847
848 2018-08-29  Keith Seitz  <keiths@redhat.com>
849
850         * linespec.c (struct linespec) <function_symbols, label_symbols>:
851         Change to vector of block_symbol.  Update all users.
852         (struct collect_info) <symbols>: Likewise.
853         (collect_info::add_symbol): Take block_symbol as argument.
854         Update all callers.
855         (decode_compound_collector) <m_symbols>: Change type to vector
856         of block_symbol.  Update all users.
857         (decode_compound_collector::operator ()): Change parameter type
858         to block_symbol.
859         (find_method, find_function_symbols, find_linespec_symbols)
860         (find_label_symbols_in_block, find_label_symbols): Change symbol
861         vectors to block_symbol vectors.
862         * symtab.h (symbol_found_callback_ftype): Change parameter type to
863         block_symbol.
864
865 2018-08-29  Keith Seitz  <keiths@redhat.com>
866
867         * linespec.c (symbolp): Remove typedef and VEC definitions.
868         (bound_minimal_symbol_d): Likewise.
869
870 2018-08-29  Keith Seitz  <keiths@redhat.com>
871
872         * linespec.c (decode_compound_collector::decode_compound_collector):
873         Remove initialization for `m_symtabs'.
874         (decode_compound_collector::release_symbols): Change return type
875         to std::vector.  Update all callers.
876         (class decode_compound_collector) <m_symbols>: Change type to
877         std::vector.
878         (lookup_prefix_sym): Change return type to std::vector.  Update all
879         callers.
880         (compare_symbols): Remove.
881         (std_compare_symbols): Rename to `compare_symbols'.
882         (find_method): Change `sym_classes' parameter to std::vector.
883         Update all callers.  Use std::sort to sort sym_classes.
884         (find_linespec_symbols): Remove cleanup.
885
886 2018-08-29  Keith Seitz  <keiths@redhat.com>
887
888         * linespec.c (struct linespec) <minimal_symbols>: Change type to
889         std::vector.  Update all users.
890         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
891         (struct collect_info) <minimal_symbols>: Likewise.
892         (compare_msymbols): Return bool.  Change parameters to const
893         bound_minimal_symbol references.
894         (find_method, find_function_symbols, find_linespec_symbols): Change
895         `minsyms' parameter to std::vector.  Update all callers.
896
897 2018-08-29  Keith Seitz  <keiths@redhat.com>
898
899         * linespec.c (struct linespec) <label_symbols>: Change type to
900         std::vector.  Update all users.
901         (find_label_symbols_in_block): Change `result' parameter to
902         std::vector.  Update all callers.
903         (find_label_symbols): Return std::vector.  Update all callers.
904
905 2018-08-29  Keith Seitz  <keiths@redhat.com>
906
907         * linespec.c (struct linespec) <function_symbols>: Change type to
908         std::vector.  Update all users.
909         (struct collect_info) <function_symbols>: Likewise.
910         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
911         (std_compare_symbols): New function.
912         (find_method, find_function_symbols, find_linespec_symbols)
913         (find_label_symbols_in_block): Change `symbols' parameter to
914         std::vector.  Update all callers.
915         (find_label_symbols): Likewise for `function_symbols' and
916         `label_funcs_ret'.
917
918 2018-08-29  Keith Seitz  <keiths@redhat.com>
919
920         * linespec.c (symtab_vector_up): Define.
921         (struct linespec) <file_symtabs>: Change type to std::vector *.
922         Update all uses.
923         (struct collect_info) <file_symtabs>: Likewise.
924         (collect_symtabs_from_filename): Return symtab_vector_up.
925         Update all callers.
926         (decode_objc): Remove cleanup.
927         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
928         (symtab_collector::release_symtabs): Return symtab_vector_up.
929         Update all callers.
930         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
931         Update all users.
932         (collect_symtabs_from_filename, symtabs_from_filename): Return
933         symtab_vector_up.  Update all callers.
934
935 2018-08-29  Tom Tromey  <tom@tromey.com>
936
937         * csky-tdep.c (csky_analyze_prologue): Use
938         core_addr_to_string_nz.
939
940 2018-08-29  Tom Tromey  <tom@tromey.com>
941
942         * windows-nat.c (struct xlate_exception) <them>: Change type to
943         DWORD.
944         (xlate): Fix formatting.  Remove last entry.
945         (struct xlate_exception, xlate): Comment out.
946         (windows_nat_target::resume): Use ranged for.
947
948 2018-08-29  Jim Wilson  <jimw@sifive.com>
949
950         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
951         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
952         of NT_PRFPREG.
953         (riscv_linux_nat_target::store_registers): Likewise.
954
955 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
956
957         PR gdb/23555
958         PR gdb/23558
959         * gnulib/aclocal.m4: Regenerate.
960         * gnulib/config.in: Regenerate.
961         * gnulib/configure: Regenerate.
962         * gnulib/import/Makefile.am: Update.
963         * gnulib/import/Makefile.in: Update.
964         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
965         * gnulib/import/_Noreturn.h: ... this.
966         * gnulib/import/alloca.in.h: Update.
967         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
968         * gnulib/import/arg-nonnull.h: ... this.
969         * gnulib/import/assure.h: Update.
970         * gnulib/import/at-func.c: Update.
971         * gnulib/import/basename-lgpl.c: Update.
972         * gnulib/import/extra/snippet/c++defs.h: Rename to...
973         * gnulib/import/c++defs.h: ... this.
974         * gnulib/import/canonicalize-lgpl.c: Update.
975         * gnulib/import/cdefs.h: Update.
976         * gnulib/import/chdir-long.c: Update.
977         * gnulib/import/chdir-long.h: Update.
978         * gnulib/import/cloexec.c: Update.
979         * gnulib/import/cloexec.h: Update.
980         * gnulib/import/close.c: Update.
981         * gnulib/import/closedir.c: Update.
982         * gnulib/import/config.charset: Update.
983         * gnulib/import/dirent-private.h: Update.
984         * gnulib/import/dirent.in.h: Update.
985         * gnulib/import/dirfd.c: Update.
986         * gnulib/import/dirname-lgpl.c: Update.
987         * gnulib/import/dirname.h: Update.
988         * gnulib/import/dosname.h: Update.
989         * gnulib/import/dup-safer-flag.c: Update.
990         * gnulib/import/dup-safer.c: Update.
991         * gnulib/import/dup.c: Update.
992         * gnulib/import/dup2.c: Update.
993         * gnulib/import/errno.in.h: Update.
994         * gnulib/import/error.c: Update.
995         * gnulib/import/error.h: Update.
996         * gnulib/import/exitfail.c: Update.
997         * gnulib/import/exitfail.h: Update.
998         * gnulib/import/extra/update-copyright: Update.
999         * gnulib/import/fchdir.c: Update.
1000         * gnulib/import/fcntl.c: Update.
1001         * gnulib/import/fcntl.in.h: Update.
1002         * gnulib/import/fd-hook.c: Update.
1003         * gnulib/import/fd-hook.h: Update.
1004         * gnulib/import/fd-safer-flag.c: Update.
1005         * gnulib/import/fd-safer.c: Update.
1006         * gnulib/import/fdopendir.c: Update.
1007         * gnulib/import/filename.h: Update.
1008         * gnulib/import/filenamecat-lgpl.c: Update.
1009         * gnulib/import/filenamecat.h: Update.
1010         * gnulib/import/flexmember.h: Update.
1011         * gnulib/import/float+.h: Update.
1012         * gnulib/import/float.c: Update.
1013         * gnulib/import/float.in.h: Update.
1014         * gnulib/import/fnmatch.c: Update.
1015         * gnulib/import/fnmatch.in.h: Update.
1016         * gnulib/import/fnmatch_loop.c: Update.
1017         * gnulib/import/fpucw.h: Update.
1018         * gnulib/import/frexp.c: Update.
1019         * gnulib/import/frexpl.c: Update.
1020         * gnulib/import/fstat.c: Update.
1021         * gnulib/import/fstatat.c: Update.
1022         * gnulib/import/getcwd-lgpl.c: Update.
1023         * gnulib/import/getcwd.c: Update.
1024         * gnulib/import/getdtablesize.c: Update.
1025         * gnulib/import/getlogin_r.c: Update.
1026         * gnulib/import/getprogname.c: Update.
1027         * gnulib/import/getprogname.h: Update.
1028         * gnulib/import/gettext.h: Update.
1029         * gnulib/import/gettimeofday.c: Update.
1030         * gnulib/import/glob-libc.h: Update.
1031         * gnulib/import/glob.c: Update.
1032         * gnulib/import/glob.in.h: Update.
1033         * gnulib/import/glob_internal.h: Update.
1034         * gnulib/import/glob_pattern_p.c: Update.
1035         * gnulib/import/globfree.c: Update.
1036         * gnulib/import/hard-locale.c: Update.
1037         * gnulib/import/hard-locale.h: Update.
1038         * gnulib/import/intprops.h: Update.
1039         * gnulib/import/inttypes.in.h: Update.
1040         * gnulib/import/isnan.c: Update.
1041         * gnulib/import/isnand-nolibm.h: Update.
1042         * gnulib/import/isnand.c: Update.
1043         * gnulib/import/isnanl-nolibm.h: Update.
1044         * gnulib/import/isnanl.c: Update.
1045         * gnulib/import/itold.c: Update.
1046         * gnulib/import/libc-config.h: Update.
1047         * gnulib/import/limits.in.h: Update.
1048         * gnulib/import/localcharset.c: Update.
1049         * gnulib/import/localcharset.h: Update.
1050         * gnulib/import/localtime-buffer.c: Update.
1051         * gnulib/import/localtime-buffer.h: Update.
1052         * gnulib/import/lstat.c: Update.
1053         * gnulib/import/m4/00gnulib.m4: Update.
1054         * gnulib/import/m4/__inline.m4: Update.
1055         * gnulib/import/m4/absolute-header.m4: Update.
1056         * gnulib/import/m4/alloca.m4: Update.
1057         * gnulib/import/m4/builtin-expect.m4: Update.
1058         * gnulib/import/m4/canonicalize.m4: Update.
1059         * gnulib/import/m4/chdir-long.m4: Update.
1060         * gnulib/import/m4/close.m4: Update.
1061         * gnulib/import/m4/closedir.m4: Update.
1062         * gnulib/import/m4/configmake.m4: Update.
1063         * gnulib/import/m4/d-ino.m4: Update.
1064         * gnulib/import/m4/d-type.m4: Update.
1065         * gnulib/import/m4/dirent_h.m4: Update.
1066         * gnulib/import/m4/dirfd.m4: Update.
1067         * gnulib/import/m4/dirname.m4: Update.
1068         * gnulib/import/m4/double-slash-root.m4: Update.
1069         * gnulib/import/m4/dup.m4: Update.
1070         * gnulib/import/m4/dup2.m4: Update.
1071         * gnulib/import/m4/eealloc.m4: Update.
1072         * gnulib/import/m4/environ.m4: Update.
1073         * gnulib/import/m4/errno_h.m4: Update.
1074         * gnulib/import/m4/error.m4: Update.
1075         * gnulib/import/m4/exponentd.m4: Update.
1076         * gnulib/import/m4/exponentl.m4: Update.
1077         * gnulib/import/m4/extensions.m4: Update.
1078         * gnulib/import/m4/extern-inline.m4: Update.
1079         * gnulib/import/m4/fchdir.m4: Update.
1080         * gnulib/import/m4/fcntl-o.m4: Update.
1081         * gnulib/import/m4/fcntl.m4: Update.
1082         * gnulib/import/m4/fcntl_h.m4: Update.
1083         * gnulib/import/m4/fdopendir.m4: Update.
1084         * gnulib/import/m4/filenamecat.m4: Update.
1085         * gnulib/import/m4/flexmember.m4: Update.
1086         * gnulib/import/m4/float_h.m4: Update.
1087         * gnulib/import/m4/fnmatch.m4: Update.
1088         * gnulib/import/m4/fnmatch_h.m4: Update.
1089         * gnulib/import/m4/fpieee.m4: Update.
1090         * gnulib/import/m4/frexp.m4: Update.
1091         * gnulib/import/m4/frexpl.m4: Update.
1092         * gnulib/import/m4/fstat.m4: Update.
1093         * gnulib/import/m4/fstatat.m4: Update.
1094         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1095         * gnulib/import/m4/getcwd-path-max.m4: Update.
1096         * gnulib/import/m4/getcwd.m4: Update.
1097         * gnulib/import/m4/getdtablesize.m4: Update.
1098         * gnulib/import/m4/getlogin.m4: Update.
1099         * gnulib/import/m4/getlogin_r.m4: Update.
1100         * gnulib/import/m4/getpagesize.m4: Update.
1101         * gnulib/import/m4/getprogname.m4: Update.
1102         * gnulib/import/m4/gettimeofday.m4: Update.
1103         * gnulib/import/m4/glibc21.m4: Update.
1104         * gnulib/import/m4/glob.m4: Update.
1105         * gnulib/import/m4/glob_h.m4: Update.
1106         * gnulib/import/m4/gnulib-cache.m4: Update.
1107         * gnulib/import/m4/gnulib-common.m4: Update.
1108         * gnulib/import/m4/gnulib-comp.m4: Update.
1109         * gnulib/import/m4/gnulib-tool.m4: Update.
1110         * gnulib/import/m4/hard-locale.m4: Update.
1111         * gnulib/import/m4/include_next.m4: Update.
1112         * gnulib/import/m4/inttypes-pri.m4: Update.
1113         * gnulib/import/m4/inttypes.m4: Update.
1114         * gnulib/import/m4/isnand.m4: Update.
1115         * gnulib/import/m4/isnanl.m4: Update.
1116         * gnulib/import/m4/largefile.m4: Update.
1117         * gnulib/import/m4/limits-h.m4: Update.
1118         * gnulib/import/m4/localcharset.m4: Update.
1119         * gnulib/import/m4/locale-fr.m4: Update.
1120         * gnulib/import/m4/locale-ja.m4: Update.
1121         * gnulib/import/m4/locale-zh.m4: Update.
1122         * gnulib/import/m4/localtime-buffer.m4: Update.
1123         * gnulib/import/m4/longlong.m4: Update.
1124         * gnulib/import/m4/lstat.m4: Update.
1125         * gnulib/import/m4/malloc.m4: Update.
1126         * gnulib/import/m4/malloca.m4: Update.
1127         * gnulib/import/m4/math_h.m4: Update.
1128         * gnulib/import/m4/mbrtowc.m4: Update.
1129         * gnulib/import/m4/mbsinit.m4: Update.
1130         * gnulib/import/m4/mbsrtowcs.m4: Update.
1131         * gnulib/import/m4/mbstate_t.m4: Update.
1132         * gnulib/import/m4/memchr.m4: Update.
1133         * gnulib/import/m4/memmem.m4: Update.
1134         * gnulib/import/m4/mempcpy.m4: Update.
1135         * gnulib/import/m4/memrchr.m4: Update.
1136         * gnulib/import/m4/mkdir.m4: Update.
1137         * gnulib/import/m4/mkstemp.m4: Update.
1138         * gnulib/import/m4/mmap-anon.m4: Update.
1139         * gnulib/import/m4/mode_t.m4: Update.
1140         * gnulib/import/m4/msvc-inval.m4: Update.
1141         * gnulib/import/m4/msvc-nothrow.m4: Update.
1142         * gnulib/import/m4/multiarch.m4: Update.
1143         * gnulib/import/m4/nocrash.m4: Update.
1144         * gnulib/import/m4/off_t.m4: Update.
1145         * gnulib/import/m4/onceonly.m4: Update.
1146         * gnulib/import/m4/open-cloexec.m4: Update.
1147         * gnulib/import/m4/open.m4: Update.
1148         * gnulib/import/m4/openat.m4: Update.
1149         * gnulib/import/m4/opendir.m4: Update.
1150         * gnulib/import/m4/pathmax.m4: Update.
1151         * gnulib/import/m4/rawmemchr.m4: Update.
1152         * gnulib/import/m4/readdir.m4: Update.
1153         * gnulib/import/m4/readlink.m4: Update.
1154         * gnulib/import/m4/realloc.m4: Update.
1155         * gnulib/import/m4/rename.m4: Update.
1156         * gnulib/import/m4/rewinddir.m4: Update.
1157         * gnulib/import/m4/rmdir.m4: Update.
1158         * gnulib/import/m4/save-cwd.m4: Update.
1159         * gnulib/import/m4/secure_getenv.m4: Update.
1160         * gnulib/import/m4/setenv.m4: Update.
1161         * gnulib/import/m4/signal_h.m4: Update.
1162         * gnulib/import/m4/ssize_t.m4: Update.
1163         * gnulib/import/m4/stat-time.m4: Update.
1164         * gnulib/import/m4/stat.m4: Update.
1165         * gnulib/import/m4/std-gnu11.m4: Update.
1166         * gnulib/import/m4/stdbool.m4: Update.
1167         * gnulib/import/m4/stddef_h.m4: Update.
1168         * gnulib/import/m4/stdint.m4: Update.
1169         * gnulib/import/m4/stdio_h.m4: Update.
1170         * gnulib/import/m4/stdlib_h.m4: Update.
1171         * gnulib/import/m4/strchrnul.m4: Update.
1172         * gnulib/import/m4/strdup.m4: Update.
1173         * gnulib/import/m4/strerror.m4: Update.
1174         * gnulib/import/m4/string_h.m4: Update.
1175         * gnulib/import/m4/strstr.m4: Update.
1176         * gnulib/import/m4/strtok_r.m4: Update.
1177         * gnulib/import/m4/sys_socket_h.m4: Update.
1178         * gnulib/import/m4/sys_stat_h.m4: Update.
1179         * gnulib/import/m4/sys_time_h.m4: Update.
1180         * gnulib/import/m4/sys_types_h.m4: Update.
1181         * gnulib/import/m4/tempname.m4: Update.
1182         * gnulib/import/m4/time_h.m4: Update.
1183         * gnulib/import/m4/unistd-safer.m4: Update.
1184         * gnulib/import/m4/unistd_h.m4: Update.
1185         * gnulib/import/m4/warn-on-use.m4: Update.
1186         * gnulib/import/m4/wchar_h.m4: Update.
1187         * gnulib/import/m4/wchar_t.m4: Update.
1188         * gnulib/import/m4/wctype_h.m4: Update.
1189         * gnulib/import/m4/wint_t.m4: Update.
1190         * gnulib/import/malloc.c: Update.
1191         * gnulib/import/malloc/scratch_buffer.h: Update.
1192         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1193         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1194         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1195         * gnulib/import/malloca.c: Update.
1196         * gnulib/import/malloca.h: Update.
1197         * gnulib/import/malloca.valgrind: Update.
1198         * gnulib/import/math.in.h: Update.
1199         * gnulib/import/mbrtowc.c: Update.
1200         * gnulib/import/mbsinit.c: Update.
1201         * gnulib/import/mbsrtowcs-impl.h: Update.
1202         * gnulib/import/mbsrtowcs-state.c: Update.
1203         * gnulib/import/mbsrtowcs.c: Update.
1204         * gnulib/import/memchr.c: Update.
1205         * gnulib/import/memmem.c: Update.
1206         * gnulib/import/mempcpy.c: Update.
1207         * gnulib/import/memrchr.c: Update.
1208         * gnulib/import/mkdir.c: Update.
1209         * gnulib/import/mkstemp.c: Update.
1210         * gnulib/import/msvc-inval.c: Update.
1211         * gnulib/import/msvc-inval.h: Update.
1212         * gnulib/import/msvc-nothrow.c: Update.
1213         * gnulib/import/msvc-nothrow.h: Update.
1214         * gnulib/import/open.c: Update.
1215         * gnulib/import/openat-die.c: Update.
1216         * gnulib/import/openat-priv.h: Update.
1217         * gnulib/import/openat-proc.c: Update.
1218         * gnulib/import/openat.c: Update.
1219         * gnulib/import/openat.h: Update.
1220         * gnulib/import/opendir.c: Update.
1221         * gnulib/import/pathmax.h: Update.
1222         * gnulib/import/pipe-safer.c: Update.
1223         * gnulib/import/rawmemchr.c: Update.
1224         * gnulib/import/readdir.c: Update.
1225         * gnulib/import/readlink.c: Update.
1226         * gnulib/import/realloc.c: Update.
1227         * gnulib/import/ref-add.sin: Update.
1228         * gnulib/import/ref-del.sin: Update.
1229         * gnulib/import/rename.c: Update.
1230         * gnulib/import/rewinddir.c: Update.
1231         * gnulib/import/rmdir.c: Update.
1232         * gnulib/import/same-inode.h: Update.
1233         * gnulib/import/save-cwd.c: Update.
1234         * gnulib/import/save-cwd.h: Update.
1235         * gnulib/import/scratch_buffer.h: Update.
1236         * gnulib/import/secure_getenv.c: Update.
1237         * gnulib/import/setenv.c: Update.
1238         * gnulib/import/signal.in.h: Update.
1239         * gnulib/import/stat-time.c: Update.
1240         * gnulib/import/stat-time.h: Update.
1241         * gnulib/import/stat-w32.c: Update.
1242         * gnulib/import/stat-w32.h: Update.
1243         * gnulib/import/stat.c: Update.
1244         * gnulib/import/stdbool.in.h: Update.
1245         * gnulib/import/stddef.in.h: Update.
1246         * gnulib/import/stdint.in.h: Update.
1247         * gnulib/import/stdio.in.h: Update.
1248         * gnulib/import/stdlib.in.h: Update.
1249         * gnulib/import/str-two-way.h: Update.
1250         * gnulib/import/strchrnul.c: Update.
1251         * gnulib/import/strdup.c: Update.
1252         * gnulib/import/streq.h: Update.
1253         * gnulib/import/strerror-override.c: Update.
1254         * gnulib/import/strerror-override.h: Update.
1255         * gnulib/import/strerror.c: Update.
1256         * gnulib/import/string.in.h: Update.
1257         * gnulib/import/stripslash.c: Update.
1258         * gnulib/import/strnlen1.c: Update.
1259         * gnulib/import/strnlen1.h: Update.
1260         * gnulib/import/strstr.c: Update.
1261         * gnulib/import/strtok_r.c: Update.
1262         * gnulib/import/sys_stat.in.h: Update.
1263         * gnulib/import/sys_time.in.h: Update.
1264         * gnulib/import/sys_types.in.h: Update.
1265         * gnulib/import/tempname.c: Update.
1266         * gnulib/import/tempname.h: Update.
1267         * gnulib/import/time.in.h: Update.
1268         * gnulib/import/unistd--.h: Update.
1269         * gnulib/import/unistd-safer.h: Update.
1270         * gnulib/import/unistd.in.h: Update.
1271         * gnulib/import/unsetenv.c: Update.
1272         * gnulib/import/verify.h: Update.
1273         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1274         * gnulib/import/wchar.in.h: Update.
1275         * gnulib/import/wctype.in.h: Update.
1276         * gnulib/import/xalloc-oversized.h: Update.
1277         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1278         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1279
1280 2018-08-16  Gary Benson <gbenson@redhat.com>
1281
1282         PR gdb/13000:
1283         * gdb/main.c (captured_main_1): Exit with nonzero status
1284         in batch mode if the last command to be executed failed.
1285         * NEWS: Mention the above.
1286
1287 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
1288
1289         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
1290         end of warning message.
1291
1292 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
1293
1294         PR gdb/22943:
1295         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
1296         (aarch64_extract_return_value): Use
1297         aapcs_is_vfp_call_or_return_candidate.
1298         (aarch64_return_in_memory): Likewise.
1299         (aarch64_store_return_value): Likewise.
1300
1301 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
1302
1303         * aarch64-tdep.c
1304         (aapcs_is_vfp_call_or_return_candidate): Make static
1305         (pass_in_v_or_stack): Remove function.
1306         (pass_in_v_vfp_candidate): New function.
1307         (aarch64_push_dummy_call): Check for float register candidates.
1308
1309 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
1310
1311         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
1312         (aapcs_is_vfp_call_or_return_candidate_1): New function.
1313         (aapcs_is_vfp_call_or_return_candidate): Likewise.
1314
1315 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
1316
1317         PR build/23399
1318         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
1319         (struct ipa_sym_addresses): Rename to...
1320         (struct ipa_sym_addresses_common): ... this.
1321         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
1322
1323 2018-08-28  Tom Tromey  <tom@tromey.com>
1324
1325         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
1326         (token_fifo): Now a std::vector.
1327         (yylex, c_parse): Update.
1328         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
1329         (token_fifo): Now a std::vector.
1330         (yylex, d_parse): Update.
1331         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
1332         (token_fifo): Now a std::vector.
1333         (yylex, go_parse): Update.
1334
1335 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
1336
1337         * parser-defs.h (struct type_stack) <elements>: Change type to
1338         std::vector<union type_stack_elt>.
1339         <depth, size>: Remove.
1340         * parse.c (parse_exp_in_context_1): Adjust.
1341         (type_stack_reserve): Remove.
1342         (check_type_stack_depth): Remove.
1343         (insert_into_type_stack): Adjust to std::vector.
1344         (insert_type): Likewise.
1345         (push_type): Likewise.
1346         (push_type_int): Likewise.
1347         (insert_type_address_space): Likewise.
1348         (pop_type): Likewise.
1349         (pop_type_int): Likewise.
1350         (pop_typelist): Likewise.
1351         (pop_type_stack): Likewise.
1352         (append_type_stack): Likewise.
1353         (push_type_stack): Likewise.
1354         (get_type_stack): Likewise.
1355         (type_stack_cleanup): Likewise.
1356         (push_typelist): Likewise.
1357         (follow_types): Likewise.
1358         (_initialize_parse): Likewise.
1359
1360 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1361
1362         * NEWS: Mention csky target.
1363
1364 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
1365             Hafiz Abid Qadeer  <abidh@codesourcery.com>
1366             Don Breazeal  <donb@codesourcery.com>
1367
1368         * csky-linux-tdep.c: New file.
1369         * csky-tdep.c: Likewise.
1370         * csky-tdep.h: Likewise.
1371         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
1372         csky-tdep.o.
1373         (HFILES_NO_SRCDIR): Add csky-tdep.h.
1374         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
1375         * configure.tgt: Add csky support.
1376
1377 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
1378
1379         * python/py-framefilter.c (py_print_frame): Print frame architecture
1380         when printing on an MI output.
1381
1382 2018-08-27  Tom Tromey  <tom@tromey.com>
1383
1384         PR build/23087:
1385         * configure: Rebuild.
1386         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
1387
1388 2018-08-27  Tom Tromey  <tom@tromey.com>
1389
1390         * aarch64-linux-tdep.c
1391         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
1392         casts to int.
1393
1394 2018-08-27  Tom Tromey  <tom@tromey.com>
1395
1396         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
1397         unsigned.
1398         (ppc64_standard_linkage1, ppc64_standard_linkage2)
1399         (ppc64_standard_linkage3, ppc64_standard_linkage4)
1400         (ppc64_standard_linkage5, ppc64_standard_linkage6)
1401         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
1402         unsigned.
1403
1404 2018-08-27  Tom Tromey  <tom@tromey.com>
1405
1406         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
1407         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
1408
1409 2018-08-27  Tom Tromey  <tom@tromey.com>
1410
1411         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
1412         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
1413         ULONGEST_MAX.
1414         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
1415         ULONGEST_MAX.
1416         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
1417         ULONGEST_MAX.
1418         * sparc-linux-tdep.c (sparc32_linux_sigframe)
1419         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
1420         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
1421         ULONGEST_MAX.
1422         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
1423         (ppc64_linux_sigaction_tramp_frame)
1424         (ppc32_linux_sighandler_tramp_frame)
1425         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
1426         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
1427         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
1428         * mn10300-linux-tdep.c (am33_linux_sigframe)
1429         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
1430         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
1431         * mips-linux-tdep.c (mips_linux_o32_sigframe)
1432         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
1433         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
1434         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
1435         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
1436         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
1437         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
1438         * microblaze-linux-tdep.c
1439         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
1440         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
1441         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
1442         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
1443         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
1444         * common/common-types.h (ULONGEST_MAX): New define.
1445         (CORE_ADDR_MAX): Fix formatting.
1446         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
1447         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
1448         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
1449         (arm_linux_rt_sigreturn_tramp_frame)
1450         (arm_eabi_linux_sigreturn_tramp_frame)
1451         (arm_eabi_linux_rt_sigreturn_tramp_frame)
1452         (thumb2_eabi_linux_sigreturn_tramp_frame)
1453         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
1454         (arm_linux_restart_syscall_tramp_frame)
1455         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
1456         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
1457         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
1458         ULONGEST_MAX.
1459         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
1460
1461 2018-08-27  Tom Tromey  <tom@tromey.com>
1462
1463         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
1464         CORE_ADDR_MAX.
1465         * mips-tdep.c (mips_deal_with_atomic_sequence)
1466         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
1467         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
1468         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
1469         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
1470         CORE_ADDR_MAX.
1471         * aarch64-tdep.c (aarch64_software_single_step): Use
1472         CORE_ADDR_MAX.
1473
1474 2018-08-27  Tom Tromey  <tom@tromey.com>
1475
1476         * linespec.c (complete_linespec_component): Add cast to "char".
1477         * completer.c (completion_tracker::build_completion_result): Add
1478         cast to "char".
1479
1480 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
1481
1482         * solist.h (struct solist, struct target_so_ops): Fix
1483         indentation.
1484
1485 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
1486
1487         * ada-tasks.c (ada_task_info_s): Remove typedef.
1488         (DEF_VEC_O(ada_task_info_s)): Remove.
1489         (struct ada_tasks_inferior_data): Initialize fields.
1490         <task_list>: Make an std::vector.
1491         (get_ada_tasks_inferior_data): Allocate with new.
1492         (ada_get_task_number): Adjust.
1493         (get_task_number_from_id): Likewise.
1494         (valid_task_id): Likewise.
1495         (ada_get_task_info_from_ptid): Likewise.
1496         (iterate_over_live_ada_tasks): Likewise.
1497         (add_ada_task): Likewise.
1498         (read_known_tasks): Likewise.
1499         (ada_build_task_list): Likewise.
1500         (print_ada_task_info): Likewise.
1501         (info_task): Likewise.
1502         (task_command_1): Likewise.
1503
1504 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
1505
1506         * ada-lang.c (add_angle_brackets): Return std::string.
1507
1508 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
1509
1510         * python/py-threadevent.c (py_get_event_thread): Initialize
1511         pythread.
1512
1513 2018-08-24  Pedro Alves  <palves@redhat.com>
1514
1515         * python/py-bpevent.c (create_breakpoint_event_object): Use
1516         copy-initialization.
1517         * python/py-continueevent.c (emit_continue_event): Use
1518         copy-initialization.
1519         * python/py-exitedevent.c (create_exited_event_object): Return a
1520         gdbpy_ref<>.
1521         (emit_exited_event): Use copy-initialization.
1522         * python/py-inferior.c (python_new_inferior)
1523         (python_inferior_deleted, add_thread_object): Use
1524         copy-initialization.
1525         * python/py-infevents.c (create_inferior_call_event_object)
1526         (create_register_changed_event_object)
1527         (create_memory_changed_event_object): Return a gdbpy_ref<>.
1528         (emit_inferior_call_event, emit_memory_changed_event)
1529         (emit_register_changed_event): Use copy-initialization.
1530         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1531         Return a gdbpy_ref<>.
1532         (emit_new_objfile_event): Use copy-initialization.
1533         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
1534         (emit_clear_objfiles_event): Use copy-initialization.
1535         * python/py-signalevent.c (create_signal_event_object): Use
1536         copy-initialization.
1537         * python/py-threadevent.c (create_thread_event_object): Use
1538         copy-initialization.
1539
1540 2018-08-24  Pedro Alves  <palves@redhat.com>
1541             Simon Marchi  <simon.marchi@ericsson.com>
1542
1543         PR gdb/23379
1544         * python/py-continueevent.c: Include "gdbthread.h".
1545         (create_continue_event_object): Add intro comment.  Add 'ptid'
1546         parameter.  Use it to find thread to pass to
1547         create_thread_event_object.
1548         (emit_continue_event): Pass PTID down to
1549         create_continue_event_object.
1550         * python/py-event.h (py_get_event_thread): Declare.
1551         (create_thread_event_object): Remove default from 'thread'
1552         parameter.
1553         * python/py-stopevent.c (create_stop_event_object): Use
1554         py_get_event_thread.
1555         * python/py-threadevent.c (get_event_thread): Rename to ...
1556         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
1557         and use it to find the thread.
1558         (create_thread_event_object): Assert that THREAD isn't null.
1559         Don't find the event thread here.
1560
1561 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
1562
1563         * block.h (blockrange, blockranges): New struct declarations.
1564         (struct block): Add new field named `ranges'.
1565         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
1566         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
1567         macros for accessing ranges in struct block.
1568         (make_blockranges): New declaration.
1569         block.c (make_blockranges): New function.
1570         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
1571         for block.
1572         * symtab.h (find_pc_partial_function): Add new parameter `block'.
1573         * blockframe.c (cache_pc_function_block): New static global.
1574         (clear_pc_function_cache): Clear cache_pc_function_block.
1575         (find_pc_partial_function): Move comment to symtab.h.  Add
1576         support for non-contiguous blocks.
1577         * cli/cli-cmds.c (block.h): Include.
1578         (print_disassembly): Handle printing of non-contiguous blocks.
1579         (disassemble_current_function): Likewise.
1580         (disassemble_command): Likewise.
1581
1582         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
1583         BLOCK_START.
1584         * blockframe.c (get_pc_function_start): Likewise.
1585         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
1586         (gcc_symbol_address): Likewise.
1587         * compile/compile-object-run.c (compile_object_run): Likewise.
1588         * compile/compile.c (get_expr_block_and_pc): Likewise.
1589         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
1590         (func_addr_to_tail_call_list): Likewise.
1591         * findvar.c (default_read_var_value): Likewise.
1592         * inline-frame.c (inline_frame_this_id): Likewise.
1593         (skip-inline_frames): Likewise.
1594         * infcmd.c (until_next_command): Likewise.
1595         * linespec.c (convert_linespec_to_sals): Likewise.
1596         * parse.c (parse_exp_in_context_1): Likewise.
1597         * printcmd.c (build_address_symbolic): likewise.
1598         (info_address_command): Likewise.
1599         symtab.c (find_function_start_sal): Likewise.
1600         (skip_prologue_sal): Likewise.
1601         (find_function_alias_target): Likewise.
1602         (find_gnu_ifunc): Likewise.
1603         * stack.c (find_frame_funname): Likewise.
1604         * symtab.c (fixup_symbol_section): Likewise.
1605         (find_function_start_sal): Likewise.
1606         (skip_prologue_sal): Likewsie.
1607         (find_function_alias_target): Likewise.
1608         (find_gnu_ifunc): Likewise.
1609         * tracepoint.c (info_scope_command): Likewise.
1610         * value.c (value_fn_field): Likewise.
1611
1612         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
1613         in place of find_pc_partial_function.
1614         * blockframe.c (find_function_entry_range_from_pc): New function.
1615         * symtab.h (find_function_entry_range_from_pc): Declare and document.
1616         * objfiles.c (objfile_relocate1): Relocate start and end addresses
1617         for each range in a block.
1618
1619
1620 2018-08-23  Xavier Roirand  <roirand@adacore.com>
1621
1622         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
1623         incrementation.
1624
1625 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1626
1627         * solib-svr4.c (read_program_headers_from_bfd): Return
1628         gdb::optional<gdb::byte_vector>.
1629         (svr4_exec_displacement): Adjust.
1630
1631 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1632
1633         * solib-svr4.c (read_program_header): Return
1634         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
1635         (find_program_interpreter): Return
1636         gdb::optional<gdb::byte_vector>.
1637         (scan_dyntag_auxv): Adjust.
1638         (enable_break): Adjust.
1639         (svr4_exec_displacement): Adjust.
1640
1641 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1642
1643         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
1644         * inf-child.c (inf_child_target::terminal_save_inferior): New.
1645
1646 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1647
1648         * guile/scm-string.c (gdbscm_scm_from_printf): Use
1649         string_vprintf.
1650         * guile/scm-utils.c (gdbscm_printf): Likewise.
1651         * serial.c (serial_printf): Likewise.
1652         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
1653
1654 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
1655
1656         * stack.c (print_frame): Print frame architecture when printing on
1657         an MI output.
1658         * NEWS: Mention new "arch" attribute in frame output.
1659
1660 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
1661
1662         * arch/aarch64.h (aarch64_regnum): Update comment.
1663
1664 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
1665
1666         * NEWS: Add SVE to 8.2 section.
1667
1668 2018-08-21  Pedro Alves  <palves@redhat.com>
1669
1670         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
1671         out from gdbscm_parse_function_args.
1672         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
1673         gdbscm_parse_function_args_1.
1674
1675 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
1676
1677         PR gdb/17816
1678         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
1679         operator.
1680
1681 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
1682
1683         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
1684
1685 2018-08-19  Michael Spang  <spang@google.com>
1686
1687         PR gdb/11786
1688         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
1689         for PT_TLS segments.
1690
1691 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
1692
1693         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
1694         dwarf_variable_value.
1695         * dwarf2-frame.c (class dwarf_expr_executor):
1696         Add override for dwarf_variable_value.
1697         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
1698         (class symbol_needs_eval_context): Likewise.
1699         (indirect_synthetic_pointer): Add forward declaration.
1700         (sect_variable_value): New function.
1701         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
1702         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
1703         for DW_OP_GNU_variable_value.
1704
1705 2018-08-16  Tom Tromey  <tom@tromey.com>
1706
1707         * top.c (read_command_file): Update.
1708         (command_line_input): Remove "repeat" argument.
1709         * ada-lang.c (get_selections): Update.
1710         * linespec.c (decode_line_2): Update.
1711         * defs.h (command_line_input): Remove argument.
1712         * cli/cli-script.c (read_next_line): Update.
1713         * python/py-gdb-readline.c: Update.
1714
1715 2018-08-17  Tom Tromey  <tom@tromey.com>
1716
1717         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
1718         command_line_input.
1719
1720 2018-08-15  Tom Tromey  <tom@tromey.com>
1721
1722         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
1723
1724 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
1725
1726         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
1727         If used, use find_pc_partial_function to find address range
1728         to disassemble.
1729         * mi/mi-main.c (mi_cmd_list_features): Report
1730         "data-disassemble-a-option" feature.
1731         * NEWS: Mention new -data-disassemble option -a.
1732
1733 2018-08-13  Tom Tromey  <tom@tromey.com>
1734
1735         * common/common-defs.h (_FORTIFY_SOURCE): Define.
1736
1737 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1738
1739         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
1740         (aarch64_linux_collect_sve_regset): Likewise.
1741         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
1742         * regcache.h (regcache_map_entry_size): New function.
1743
1744 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1745
1746         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
1747         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
1748         (SVE_HEADER_VL_LENGTH): Likewise.
1749         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
1750         (SVE_HEADER_FLAGS_LENGTH): Likewise.
1751         (SVE_HEADER_RESERVED_LENGTH): Likewise.
1752         (SVE_HEADER_SIZE_OFFSET): Likewise.
1753         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
1754         (SVE_HEADER_VL_OFFSET): Likewise.
1755         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
1756         (SVE_HEADER_FLAGS_OFFSET): Likewise.
1757         (SVE_HEADER_RESERVED_OFFSET): Likewise.
1758         (SVE_HEADER_SIZE): Likewise.
1759         (aarch64_linux_core_read_vq): Add function.
1760         (aarch64_linux_core_read_description): Check for SVE section.
1761
1762 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1763
1764         * aarch64-fbsd-tdep.c
1765         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
1766         collect_size.
1767         * aarch64-linux-tdep.c
1768         (aarch64_linux_iterate_over_regset_sections): Likewise.
1769         * alpha-linux-tdep.c
1770         (alpha_linux_iterate_over_regset_sections):
1771         * alpha-nbsd-tdep.c
1772         (alphanbsd_iterate_over_regset_sections): Likewise.
1773         * amd64-fbsd-tdep.c
1774         (amd64fbsd_iterate_over_regset_sections): Likewise.
1775         * amd64-linux-tdep.c
1776         (amd64_linux_iterate_over_regset_sections): Likewise.
1777         * arm-bsd-tdep.c
1778         (armbsd_iterate_over_regset_sections): Likewise.
1779         * arm-fbsd-tdep.c
1780         (arm_fbsd_iterate_over_regset_sections): Likewise.
1781         * arm-linux-tdep.c
1782         (arm_linux_iterate_over_regset_sections): Likewise.
1783         * corelow.c (get_core_registers_cb): Likewise.
1784         (core_target::fetch_registers): Likewise.
1785         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
1786         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
1787         * gdbarch.h (void): Regenerate.
1788         * gdbarch.sh: Add supply_size and collect_size.
1789         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
1790         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
1791         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
1792         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
1793         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
1794         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
1795         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
1796         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
1797         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
1798         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
1799         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
1800         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
1801         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
1802         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
1803         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
1804         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
1805         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
1806         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
1807         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
1808         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
1809         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
1810         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
1811         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
1812         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
1813         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
1814         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
1815         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
1816         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
1817         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
1818         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
1819
1820 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
1821
1822         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
1823         with string_printf.
1824
1825 2018-08-10  Keith Seitz  <keiths@redhat.com>
1826
1827         * compile/compile-c-support.c (add_code_header, add_code_footer):
1828         Move into policy class.
1829         (c_push_user_expression, pop_user_expression_nop)
1830         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
1831         (compile_program): New host class.
1832         (c_compile_program): New typedef.
1833         (c_compute_porgram): Use c_compile_program.
1834
1835 2018-08-10  Keith Seitz  <keiths@redhat.com>
1836
1837         * compile/compile-internal.h (compile_instance::~compile_instance):
1838         Remove calls to htab_delete.
1839         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
1840         * compile.c (compile_instance::compile_instance): Initialize
1841         htab unique pointers.
1842         (compile_instance::get_cached_type, compile_instance::insert_type)
1843         (compile_instance::error_symbol_once): Update for unique_ptr.
1844
1845 2018-08-10  Keith Seitz  <keiths@redhat.com>
1846
1847         * compile/compile-c-symbols.c (struct symbol_error)
1848         (hash_symbol_error, eq_symbol_error, del_symbol_error)
1849         (compile_instance::insert_symbol_error)
1850         (compile_instance::error_symbol_once): Move to ...
1851         * compile/compile.c: ... here.
1852
1853 2018-08-10  Keith Seitz  <keiths@redhat.com>
1854
1855         * compile/compile-c-support.c (c_get_compile_context): Use `new'
1856         instead of `new_compile_instance'.
1857         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
1858         Update description.
1859         If the symbol error map is not initialized, create it.
1860         (generate_c_for_for_one_symbol): Do not check/initialize
1861         the symbol error map.
1862         * compile/compile-c-types.c (compile_c_instance): Make a class.
1863         Update all callers.
1864         (compile_instance::compile_instance): Initialize the type cache.
1865         (get_cached_type): New function.
1866         (insert_type): Update description.
1867         (compile_c_instance::m_default_cflags): Define.
1868         (convert_type): Update description.  Use get_cached_type.
1869         (delete_instance): Moved to destructor.
1870         (new_compile_instance): Moved to constructor.
1871         * compile/compile-c.h (compile_c_instance): Make class inheriting
1872         from compile_instance.
1873         <base>: Remove field.
1874         <type_map, symbol_err_map>: Move to base class.
1875         <c_plugin>: Rename to `m_plugin' and remove pointer type.
1876         * compile/compile-internal.h (compile_instance): Make class.
1877         <type_map_t, symbol_err_map_t>: Define.
1878         <fe>: Rename to `m_gcc_fe'.
1879         <scope, block, gcc_target_options>: Add `m_' prefix.
1880         <m_type_map, m_symbol_err_map>: New fields, moved from
1881         compile_c_instance.
1882         <destroy>: Remove.
1883         (convert_type, new_compile_instance): Remove.
1884         * compile/compile.c (cleanup_compile_instance): Remove.
1885         (compile_to_object): Use unique_ptr to eliminate cleanups.
1886         (compile_instance::set_print_callback, compile_instance::version)
1887         (compile_instance::set_verbose)
1888         (compile_instance::set_driver_filename)
1889         (compile_instance::set_triplet_regexp)
1890         (compile_instance::set_arguments)
1891         (compile_instance::set_source_file)
1892         (compile_instance::compile): Define.
1893
1894 2018-08-10  Keith Seitz  <keiths@redhat.com>
1895
1896         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
1897         * compile/compile-c-types.c: Define GCC_METHODN macros and include
1898         gcc-c-fe.def to define C plugin.
1899         (delete_instance): Delete `c_plugin'.
1900         (new_compile_instance): Initialize `c_plugin'.
1901         * compile/compile-c.h: Include gcc_c_plugin.h.
1902         (struct compile_c_instance) <c_plugin>: New member.
1903         * gcc-c-plugin.h: New file.
1904         Update all callers with API change.
1905
1906 2018-08-10  Keith Seitz  <keiths@redhat.com>
1907
1908         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
1909         (HFILES_NO_SRCDIR): ... to here.
1910         Add compile-internal.h and compile-c.h.
1911         * compile/compile-c-support.c: Include compile-c.h.
1912         * compile/compile-c-symbols.c: Include compile-c.h.
1913         (generate_c_for_variable_locations): Update comment.
1914         * compile/compile-c-types.c: Include compile-c.h.
1915         * compile/compile-c.h: New file -- moved C language declarations
1916         from other files here.
1917         * compile/compile-internal.h: Do not include hashtab.h or
1918         common/enum-flags.h.
1919         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
1920         (gcc_convert_symbol, gcc_symbol_address)
1921         (generate_c_for_variable_locations, c_get_mode_for_size)
1922         (c_get_range_decl_name): Definitions moved to compile-c.h.
1923         * compile/compile-loc2c.c: Include compile-c.h.
1924
1925 2018-08-10  Keith Seitz  <keiths@redhat.com>
1926
1927         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
1928         (c_symbol_substitution_name): ... this.
1929         Update all callers.
1930
1931 2018-08-10  Keith Seitz  <keiths@redhat.com>
1932
1933         * compile/compile-c-support.c (c_compute_program): Use
1934         unique_xmalloc_ptr to eliminate cleanup.
1935         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
1936         Return a unique_xmalloc_ptr and eliminate cleanup.
1937         * compile/compile-internal.h (generate_c_for_variable_locations):
1938         Return unique_xmalloc_ptr and update description.
1939
1940 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
1941
1942         * corelow.c (core_target::get_core_register_section): Rename
1943         min_size to section_min_size.
1944
1945 2018-08-09  Jim Wilson  <jimw@sifive.com>
1946
1947         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
1948         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
1949         * NEWS: Mention new GNU/Linux RISC-V target.
1950         * configure.host: Add riscv*-*-linux*.
1951         * configure.nat: Add riscv*.
1952         * configure.tgt: Add riscv*-*-linux*.
1953         * riscv-linux-nat.c: New file.
1954         * riscv-linux-tdep.c: New file.
1955
1956 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
1957
1958         * infrun.c (resume): Make static, add forward declaration.
1959         (proceed): Update header comment.
1960         * infrun.h (resume): Delete declaration.
1961
1962 2018-08-09  Tom Tromey  <tom@tromey.com>
1963
1964         * riscv-tdep.h: Minor formatting fixes.
1965
1966 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
1967
1968         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
1969         * dwarf-index-cache.c (create_dir_and_check): Likewise.
1970         (test_mkdir_recursive): Likewise.
1971         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
1972
1973 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
1974
1975         * valarith.c (value_subscripted_rvalue): If an array is not in
1976         memory, and we don't know the upper bound, then we can't know that
1977         the requested element exists or not.
1978
1979 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
1980
1981         * target.c (str_comma_list_concat_elem): Fix typo in comment.
1982         (target_options_to_string): Add comment.
1983
1984 2018-08-08  Tom Tromey  <tom@tromey.com>
1985
1986         * unittests/scoped_mmap-selftests.c: Check result of "write".
1987
1988 2018-08-08  Jim Wilson  <jimw@sifive.com>
1989
1990         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
1991         (decode_register_index_short): New.
1992         (decode_j_type_insn, decode_cj_type_insn): New.
1993         (decode_b_type_insn, decode_cb_type_insn): New.
1994         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
1995         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
1996         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
1997         is_c_sw_insn instead of is_sw_insn.
1998         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
1999         (riscv_software_single_step): New.
2000         * riscv-tdep.h (riscv_software_single_step): Declare.
2001
2002         * riscv-tdep.c (riscv_isa_xlen): Drop static.
2003         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
2004
2005 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
2006
2007         PR gdb/18050:
2008         * target.c (dispose_inferior): Don't dispose of inferiors that are
2009         already killed.
2010
2011 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
2012
2013         * remote.c (remote_target::download_tracepoint): Change char* to
2014         const char*.
2015
2016 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
2017
2018         * target.h (target_options_to_string): Return an std::string.
2019         * target.c (str_comma_list_concat_elem): Return void, use
2020         std::string.
2021         (do_option): Likewise.
2022         (target_options_to_string): Return an std::string.
2023         * linux-nat.c (linux_nat_target::wait): Adjust.
2024         * target-debug.h (target_debug_print_options): Adjust.
2025
2026 2018-08-07  Tom Tromey  <tom@tromey.com>
2027
2028         * Makefile.in (CPPFLAGS): New variable.
2029         (INTERNAL_CPPFLAGS): Use it.
2030
2031 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2032
2033         * NEWS: Mention the index cache.
2034
2035 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2036
2037         * common/pathstuff.h (get_standard_cache_dir): New.
2038         * common/pathstuff.c (get_standard_cache_dir): New.
2039         * build-id.h (build_id_to_string): New.
2040         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
2041         DEBUG_STR_SUFFIX): Move to here.
2042         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
2043         DEBUG_STR_SUFFIX): Move from there.
2044         (write_psymtabs_to_index): Make non-static, add basename
2045         parameter.  Write to temporary files, rename when done.
2046         (save_gdb_index_command): Adjust call to
2047         write_psymtabs_to_index.
2048         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
2049         field.
2050         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
2051         (get_gdb_index_contents_from_cache): New.
2052         (get_gdb_index_contents_from_cache_dwz): New.
2053         (dwarf2_initialize_objfile): Read index from cache.
2054         (dwarf2_build_psymtabs): Save to index.
2055         * dwarf-index-cache.h: New file.
2056         * dwarf-index-cache.c: New file.
2057         * dwarf-index-write.h: New file.
2058
2059 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2060
2061         * gnulib/aclocal.m4: Re-generate.
2062         * gnulib/config.in: Re-generate.
2063         * gnulib/configure: Re-generate.
2064         * gnulib/import/Makefile.am: Re-generate.
2065         * gnulib/import/Makefile.in: Re-generate.
2066         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2067         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2068         * gnulib/import/m4/mkdir.m4: New file.
2069         * gnulib/import/mkdir.c: New file.
2070         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
2071         module.
2072
2073 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2074
2075         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
2076         * common/scoped_mmap.c: New file.
2077         * common/scoped_mmap.h (destroy): New method.
2078         (~scoped_mmap, reset): Use destroy.
2079         (scoped_mmap): New move constructor.
2080         (mmap_file): New declaration.
2081         * unittests/scoped_mmap-selftests.c (test_normal,
2082         test_invalid_filename, run_tests): New functions.
2083         (_initialize_scoped_mmap_selftests): Register selftest.
2084
2085 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2086
2087         * dwarf2read.c (read_gdb_index_from_section): Rename to...
2088         (read_gdb_index_from_buffer): ... this.  Remove section
2089         parameter, add buffer parameter.
2090         (get_gdb_index_contents_ftype,
2091         get_gdb_index_contents_dwz_ftype): New typedefs.
2092         (dwarf2_read_gdb_index): Add callback parameters to get the
2093         index contents.
2094         (get_gdb_index_contents_from_section): New.
2095         (dwarf2_initialize_objfile): Update call to
2096         dwarf2_read_gdb_index.
2097
2098 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2099
2100         * common/filestuff.h (gdb_fopen_cloexec): New overload.
2101         (gdb_open_cloexec): Likewise.
2102         * nat/linux-osdata.c (command_from_pid): Use string_printf.
2103         (commandline_from_pid): Likewise.
2104         (linux_xfer_osdata_threads): Likewise.
2105         (linux_xfer_osdata_fds): Likewise.
2106         * ada-lang.c (is_package_name): Likewise.
2107         * auxv.c (procfs_xfer_auxv): Likewise.
2108         * breakpoint.c (print_one_breakpoint_location): Use
2109         uiout::field_fmt.
2110         (print_one_catch_solib): Use string_printf.
2111         * coff-pe-read.c (add_pe_exported_sym): Likewise.
2112         (add_pe_forwarded_sym): Likewise.
2113         * dwarf2read.c (create_type_unit_group): Likewise.
2114         (build_error_marker_type): Likewise.
2115         * infcall.c (get_function_name): Likewise.
2116         * valprint.c (print_converted_chars_to_obstack): Likewise.
2117         * xtensa-tdep.c (xtensa_register_type): Likewise.
2118
2119 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
2120
2121         * remote.c (remote_target::download_tracepoint): Fix format
2122         string errors.
2123
2124 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2125
2126         * tracefile.c: Include common/byte-vector.h.
2127         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
2128         with trace_regblock_size if needed.  Update uses of buf.
2129
2130 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2131
2132         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
2133         std::vector<unsigned char>.
2134         * tracepoint.c (collection_list::collection_list): Remove
2135         m_regs_mask initializer from initializer list.  Resize
2136         m_regs_mask using the largest remote register number.
2137         (collection_list::add_remote_register): Remove size check on
2138         m_regs_mask.  Use at to access element.
2139         (collection_list::stringify): Change type of temp_buf to
2140         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
2141         stringify the register mask.  Use pack_hex_byte for the register
2142         mask.
2143
2144 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2145
2146         * tracepoint.h (class collection_list) <add_register>: Remove.
2147         <add_remote_register, add_ax_registers, add_local_register>:
2148         Declare.
2149         <add_memrange>: Add scope parameter.
2150         * tracepoint.c (encode_actions_1): Likewise.
2151         (collection_list::add_register): Rename to ...
2152         (collection_list::add_remote_register): ... this.  Update
2153         comment.
2154         (collection_list::add_ax_registers, add_local_register): New
2155         methods.
2156         (collection_list::add_memrange): Add scope parameter.  Call
2157         add_local_register instead of add_register.
2158         (finalize_tracepoint_aexpr): New function.
2159         (collection_list::collect_symbol): Update calls to add_memrange.
2160         Call add_local_register instead of add_register.  Call
2161         add_ax_registers.  Call finalize_tracepoint_aexpr.
2162         (encode_actions_1): Get remote regnos for $reg action.  Call
2163         add_remote_register, add_ax_registers, and add_local_register.
2164         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
2165         (validate_actionline): Call finalize_tracepoint_aexpr.
2166
2167 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2168
2169         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
2170         Replace array buf with gdb::char_vector buf, of size
2171         get_remote_packet_size ().  Replace references to buf and
2172         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
2173         and xsnprintf with snprintf.  Raise errors if the buffer is too
2174         small.
2175
2176 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2177
2178         * remote.c (remote_target::download_tracepoint): Fix the has_more
2179         predicate in the QTDP action list iteration.
2180
2181 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2182
2183         * remote.c (remote_target::download_tracepoint): Fix indentation
2184         in for block.
2185
2186 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2187
2188         * proc-api.c (_initialize_proc_api): Remove c, unused.
2189         * procfs.c (procfs_init_inferior): Remove signals, unused.
2190         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
2191         unused.
2192
2193 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
2194             Andrew Burgess  <andrew.burgess@embecosm.com>
2195
2196         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
2197         'W_STOPCODE (0)' as this could be ambiguous.
2198
2199 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
2200
2201         * ser-tcp.c (net_open): Fix thinko when deciding whether to
2202         disable TCP's Nagle algorithm (use "ai_protocol" instead of
2203         "ai_socktype").
2204
2205 2018-08-02  Tom Tromey  <tom@tromey.com>
2206
2207         PR symtab/16842.
2208         * dwarf2read.c (read_func_scope): Set symtab on template parameter
2209         symbols.
2210         (process_structure_scope): Likewise.
2211
2212 2018-08-02  Xavier Roirand  <roirand@adacore.com>
2213
2214         PR gdb/22629:
2215         * darwin-nat.c (darwin_kill_inferior): Fix handling of
2216         kill inferior.
2217
2218 2018-08-02  Tom Tromey  <tom@tromey.com>
2219
2220         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
2221         (darwin_suspend_inferior, darwin_resume_inferior)
2222         (darwin_decode_notify_message, darwin_resume_inferior_threads)
2223         (darwin_check_new_threads): Check result of get_darwin_inferior.
2224
2225 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
2226
2227         GDB 8.1.1 released.
2228
2229 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
2230
2231         * varobj.c (varobj_get_path_expr_parent): Report an error if
2232         parent is a dynamic varobj.
2233
2234 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
2235
2236         * gnulib/aclocal.m4: Re-generate.
2237         * gnulib/config.in: Re-generate.
2238         * gnulib/configure: Re-generate.
2239         * gnulib/import/Makefile.in: Re-generate.
2240         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2241         * gnulib/import/m4/onceonly.m4: Re-generate.
2242
2243 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
2244
2245         * target-descriptions.c (struct xml_test_tdesc): New.
2246         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
2247         (record_xml_tdesc): Update.
2248         (maintenance_check_xml_descriptions): Update.
2249         * target-descriptions.h (record_xml_tdesc): Update comment.
2250
2251 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2252
2253         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
2254         checking array bounds are defined.
2255
2256 2018-07-30  Tom Tromey  <tom@tromey.com>
2257
2258         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
2259         irreflexivity violation.
2260
2261 2018-07-30  Tom Tromey  <tom@tromey.com>
2262
2263         * cli/cli-decode.c (lookup_cmd): Remove lint code.
2264         * value.c (unpack_long): Remove lint code.
2265         * valops.c (value_ind): Remove lint code.
2266         * valarith.c (value_x_binop, value_x_unop, value_equal)
2267         (value_pos): Remove lint code.
2268
2269 2018-07-28  Tom de Vries  <tdevries@suse.de>
2270
2271         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
2272         with undefined upper bound as <optimized out>.
2273
2274 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
2275
2276         * gcore.in: Rename variable "name" to "prefix".  Expand
2277         "usage" text.
2278
2279 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
2280
2281         * windows-nat.c (windows_nat_target::create_inferior): Update to
2282         call close() in global namespace.
2283
2284 2018-07-26  Tom Tromey  <tom@tromey.com>
2285
2286         * dwarf-index-write.c (add_address_entry): Don't add objfile
2287         offsets.
2288         * dbxread.c (find_stab_function): Rename from
2289         find_stab_function_addr.  Return a bound_minimal_symbol.
2290         (read_dbx_symtab): Use raw_text_low, raw_text_high.
2291         Don't add objfile offsets.
2292         (end_psymtab): Use raw_text_low, raw_text_high,
2293         MSYMBOL_VALUE_RAW_ADDRESS.
2294         (read_ofile_symtab): Update.
2295         (process_one_symbol): Update.
2296         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
2297         offsets.
2298         (dw2_relocate): Remove.
2299         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
2300         searching addrmap.
2301         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
2302         Update.
2303         (process_psymtab_comp_unit_reader, add_partial_symbol)
2304         (add_partial_subprogram, dwarf2_ranges_read): Update.
2305         (load_partial_dies): Update.
2306         (add_address_entry): Don't add objfile offsets.
2307         (dwarf2_build_include_psymtabs): Update.
2308         (create_addrmap_from_aranges): Don't add objfile offsets.
2309         (dw2_find_pc_sect_compunit_symtab): Update.
2310         * mdebugread.c (parse_symbol): Don't add objfile offsets.
2311         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
2312         Update.
2313         (parse_partial_symbols): Don't add objfile offsets.  Use
2314         raw_text_low, raw_text_high.  Update.
2315         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
2316         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
2317         or call 'relocate' quick function.  Clear psymbol_map.
2318         * psympriv.h (struct partial_symbol) <address>: Add section
2319         offset.
2320         <set_unrelocated_address>: Rename from set_address.
2321         <raw_text_low, raw_text_high>: New methods.
2322         <text_low, text_high>: Add objfile parameter.
2323         (add_psymbol_to_bcache): Add 'section' parameter.  Call
2324         set_unrelocated_address.
2325         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
2326         (find_pc_psymbol): Update.
2327         (fixup_psymbol_section, relocate_psymtabs): Remove.
2328         (dump_psymtab, psym_functions): Update.
2329         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
2330         parameter.
2331         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
2332         (start_psymtab_common): Update.
2333         * symfile-debug.c (debug_qf_relocate): Remove.
2334         (debug_sym_quick_functions): Update.
2335         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
2336         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
2337         Update.
2338
2339 2018-07-26  Tom Tromey  <tromey@redhat.com>
2340
2341         * dbxread.c (end_psymtab): Use text_high_valid and
2342         text_low_valid.
2343         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
2344         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
2345         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
2346         Update comment.
2347         <text_low_valid, text_high_valid>: New fields.
2348         <set_text_low, set_text_high>: Update.
2349         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
2350
2351 2018-07-26  Tom Tromey  <tom@tromey.com>
2352
2353         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
2354         Update.
2355         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
2356         textlow and texthigh fields.
2357         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
2358         Update.
2359         * mdebugread.c (parse_lines, parse_partial_symbols)
2360         (psymtab_to_symtab_1): Update.
2361         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
2362         Rename fields.  Update comment.  Now private.
2363         <text_low, text_high, set_text_low, set_text_high>: New methods.
2364         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
2365         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
2366         (start_psymtab_common, maintenance_info_psymtabs)
2367         (maintenance_check_psymtabs): Update.
2368         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
2369         texthigh fields.
2370         (scan_xcoff_symtab): Update.
2371
2372 2018-07-26  Tom Tromey  <tromey@redhat.com>
2373
2374         * psympriv.h (struct partial_symbol) <unrelocated_address,
2375         address, set_address>: New methods.
2376         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
2377         (fixup_psymbol_section, relocate_psymtabs): Update.
2378         (print_partial_symbols): Add 'objfile' parameter.  Update.
2379         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
2380         Update.
2381
2382 2018-07-26  Tom Tromey  <tom@tromey.com>
2383
2384         * dwarf-index-write.c (write_psymbols, debug_names::insert)
2385         (debug_names::write_psymbols): Update.
2386         * psympriv.h (struct partial_symbol): Derive from
2387         general_symbol_info.
2388         <obj_section>: New method.
2389         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
2390         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
2391         (find_pc_sect_psymbol, fixup_psymbol_section)
2392         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
2393         (print_partial_symbols, recursively_search_psymtabs)
2394         (compare_psymbols, psymbol_hash, psymbol_compare)
2395         (add_psymbol_to_bcache, maintenance_check_psymtabs)
2396         (psymbol_name_matches, psym_fill_psymbol_map): Update.
2397
2398 2018-07-26  Tom Tromey  <tromey@redhat.com>
2399
2400         * dbxread.c (end_psymtab): Remove dead code.
2401
2402 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2403
2404         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
2405         DWARF unwinders are disabled.
2406         * dwarf2-frame.c: Add dwarf2read.h include.
2407         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
2408         disabled.
2409         (dwarf2_frame_unwinders_enabled_p): Define.
2410         (show_dwarf_unwinders_enabled_p): New function.
2411         (_initialize_dwarf2_frame): Register switch to control DWARF
2412         unwinder use.
2413         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
2414         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
2415         (show_dwarf_cmdlist): Remove static keyword.
2416         * dwarf2read.h (set_dwarf_cmdlist): Declare.
2417         (show_dwarf_cmdlist): Declare.
2418         * NEWS: Document new feature.
2419
2420 2018-07-26  Tom de Vries  <tdevries@suse.de>
2421
2422         PR breakpoints/23366
2423         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
2424
2425 2018-07-26  Tom de Vries  <tdevries@suse.de>
2426
2427         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
2428         DW_AT_count can't be translated to a dynamic prop.
2429
2430 2018-07-25  Tom de Vries  <tdevries@suse.de>
2431
2432         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
2433         try/catch.
2434
2435 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
2436
2437         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
2438
2439 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
2440
2441         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
2442
2443 2018-07-24  Keith Seitz  <keiths@redhat.comt
2444
2445         PR symtab/23010
2446         * dwarf2read.c (dw2_add_symbol_to_list): New function.
2447         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
2448         instead of add_symbol_to_list.
2449         (read_file_scope): Call prepare_one_comp_unit before reading
2450         any other DIEs.
2451
2452 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
2453
2454         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
2455
2456 2018-07-24  Tom Tromey  <tom@tromey.com>
2457
2458         * utils.c (malloc, realloc, free): Don't declare.
2459         * configure, config.in: Rebuild.
2460         * configure.ac: Don't check for declarations of free, malloc, or
2461         realloc.
2462
2463 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
2464
2465         * aarch64-linux-nat.c
2466         (aarch64_linux_nat_target::stopped_data_address): Remove unused
2467         variable.
2468         * arm-linux-nat.c (fetch_regs): Likewise.
2469         (store_regs): Likewise.
2470         (fetch_vfp_regs): Likewise.
2471         (store_vfp_regs): Likewise.
2472         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
2473         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
2474         (arm_linux_nat_target::insert_watchpoint): Likewise.
2475         (arm_linux_nat_target::remove_watchpoint): Likewise.
2476         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
2477         Likewise.
2478         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
2479         Likewise.
2480         * ppc-linux-nat.c (fetch_register): Likewise.
2481         (fetch_all_gp_regs): Likewise.
2482         (fetch_ppc_registers): Likewise.
2483         (store_all_gp_regs): Likewise.
2484         (store_ppc_registers): Likewise.
2485         (hwdebug_insert_point): Likewise.
2486         (can_use_watchpoint_cond_accel): Likewise.
2487         * remote-sim.c (gdb_os_write_stdout): Likewise.
2488
2489 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
2490             Tom Tromey  <tom@tromey.com>
2491
2492         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
2493         test for it.
2494         * configure: Rebuild.
2495
2496 2018-07-22  Tom Tromey  <tom@tromey.com>
2497
2498         * regformats/regdat.sh: Define xmltarget_${name} inside
2499         #ifndef IN_PROCESS_AGENT.
2500
2501 2018-07-22  Tom Tromey  <tom@tromey.com>
2502
2503         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
2504
2505 2018-07-22  Tom Tromey  <tom@tromey.com>
2506
2507         * symfile.c (reread_symbols): Notify iter, not objfile.
2508
2509 2018-07-22  Tom Tromey  <tom@tromey.com>
2510
2511         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
2512         Use arch_ops.
2513         (ravenscar_thread_target::prepare_to_store): Likewise.
2514
2515 2018-07-22  Tom Tromey  <tom@tromey.com>
2516
2517         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
2518         unused variable.  Call value_fetch_lazy when needed.
2519         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
2520         Remove unused variable.  Call value_fetch_lazy when needed.
2521
2522 2018-07-22  Tom Tromey  <tom@tromey.com>
2523
2524         * m32c-tdep.c (mark_dma): Return void.
2525         (make_regs): Remove unused declarations.
2526
2527 2018-07-22  Tom Tromey  <tom@tromey.com>
2528
2529         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
2530         cmdscm_get_valid_command_smob_arg_unsafe for effect.
2531         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
2532         bkscm_get_valid_block_smob_arg_unsafe for effect.
2533
2534 2018-07-22  Tom Tromey  <tom@tromey.com>
2535
2536         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
2537         value_type.
2538
2539 2018-07-22  Tom Tromey  <tom@tromey.com>
2540
2541         * windows-nat.c (saved_context): Conditionally define.
2542         * remote.c (remote_target::remote_btrace_maybe_reopen):
2543         Conditionally declare "warned".
2544         * inflow.c (sigquit_ours): Conditionally define.
2545         (new_tty): Move "tty" declaration inside #if.
2546         * guile/guile.c (guile_datadir): Conditionally define.
2547         * charset.c (set_be_le_names): Move some declarations inside #if.
2548         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
2549         #if.
2550         (parse_xml_btrace_conf): Likewise.
2551
2552 2018-07-22  Tom Tromey  <tom@tromey.com>
2553
2554         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
2555
2556 2018-07-22  Tom Tromey  <tom@tromey.com>
2557
2558         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
2559         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
2560         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
2561         * buildsym-legacy.c (get_macro_table): Remove unused variable.
2562         * stack.c (frame_apply_level_command): Remove unused variable.
2563         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
2564         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
2565         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
2566         unused variable.
2567         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
2568         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
2569         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
2570         variable.
2571         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
2572         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
2573         variable.
2574         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
2575         Remove unused variable.
2576         * cli/cli-script.c (recurse_read_control_structure): Remove unused
2577         variable.
2578         * common/tdesc.c (print_xml_feature::visit): Remove unused
2579         variable.
2580         * compile/compile-object-load.c (store_regs): Remove unused
2581         variables.
2582         * complaints.c (clear_complaints): Remove unused variable.
2583         * corelow.c (core_target_open): Remove unused variable.
2584         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
2585         variable.
2586         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
2587         variable.
2588         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
2589         variable.
2590         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
2591         variable.
2592         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
2593         variable.
2594         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
2595         variable.
2596         * ia64-tdep.c (examine_prologue): Remove unused variable.
2597         * infcall.c (run_inferior_call): Remove unused variable.
2598         * inferior.c (exit_inferior): Remove unused variable.
2599         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
2600         * linespec.c (decode_line_2): Remove unused variable.
2601         * linux-nat.c (super_close): Remove.
2602         * linux-tdep.c (linux_info_proc): Remove unused variable.
2603         * mi/mi-main.c (mi_execute_command): Remove unused variable.
2604         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
2605         Remove unused variable.
2606         * parse.c (find_minsym_type_and_address): Remove unused variable.
2607         * printcmd.c (info_symbol_command, printf_floating): Remove unused
2608         variable.
2609         * python/py-breakpoint.c (bppy_set_commands): Remove unused
2610         variable.
2611         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
2612         variables.
2613         * record-btrace.c (record_btrace_target::store_registers): Remove
2614         unused variable.
2615         (cmd_show_record_btrace_cpu): Remove unused variable.
2616         * riscv-tdep.c (riscv_register_reggroup_p)
2617         (riscv_push_dummy_call, riscv_return_value): Remove unused
2618         variable.
2619         * rust-exp.y (literal): Remove unused variable.
2620         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
2621         unused variable.
2622         <STRUCTOP_ANONYMOUS>: Likewise.
2623         * s390-linux-tdep.c (s390_linux_init_abi_31)
2624         (s390_linux_init_abi_64): Remove unused variable.
2625         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
2626         (file_select_thread, net_windows_open, _initialize_ser_windows):
2627         Remove unused variables.
2628         * symtab.c (find_pc_sect_line): Remove unused variable.
2629         * target-memory.c (compute_garbled_blocks): Remove unused
2630         variable.
2631         (target_write_memory_blocks): Remove unused variable.
2632         * target.c (target_stack::unpush): Remove unused variables.
2633         * tracepoint.c (start_tracing, all_tracepoint_actions)
2634         (merge_uploaded_trace_state_variables)
2635         (print_one_static_tracepoint_marker): Remove unused variable.
2636         * unittests/basic_string_view/element_access/char/1.cc (test01):
2637         Remove unused variable.
2638         * windows-nat.c (windows_continue, windows_add_all_dlls)
2639         (do_initial_windows_stuff, windows_nat_target::create_inferior):
2640         Remove unused variables.
2641
2642 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
2643
2644         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
2645         attr_profile in HAVE_ELF.
2646         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
2647         HAVE_ELF.
2648
2649 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
2650
2651         * frame.c (frame_register_unwind): Change parameter name.
2652         (frame_unwind_register): Likewise.
2653         (frame_unwind_register_value): Likewise.
2654         (frame_unwind_register_signed): Likewise.
2655         (frame_unwind_register_unsigned): Likewise.
2656         * frame.h (frame_register_unwind): Likewise.
2657         (frame_unwind_register): Likewise.
2658         (frame_unwind_register_value): Likewise.
2659         (frame_unwind_register_signed): Likewise.
2660         (frame_unwind_register_unsigned): Likewise.
2661         (frame_unwind_arch): Likewise.
2662
2663 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
2664
2665         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
2666         ISA maintenance.
2667
2668 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
2669
2670         * mips-linux-nat.c (mips_linux_nat_target::read_description):
2671         Call `get_ptrace_pid' rather than extracting the ptrace PID by
2672         hand.
2673
2674 2018-07-20  Keith Seitz  <keiths@redhat.com>
2675
2676         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
2677         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
2678         m_compunit_symtab, m_language>: Add "m_" prefix.
2679         Update all uses.
2680         * buildsym.c: Update all uses.
2681
2682 2018-07-20  Tom Tromey  <tom@tromey.com>
2683
2684         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
2685         * buildsym.h (record_line_ftype): Remove typedef.
2686
2687 2018-07-20  Tom Tromey  <tom@tromey.com>
2688
2689         * buildsym-legacy.h (augment_type_symtab): Don't declare.
2690         (end_expandable_symtab): Likewise.
2691         (end_symtab_get_static_block): Likewise.
2692         (end_symtab_from_static_block): Likewise.
2693         * buildsym-legacy.c (augment_type_symtab): Remove.
2694         (end_expandable_symtab): Remove.
2695         (end_symtab_get_static_block): Remove.
2696         (end_symtab_from_static_block): Remove.
2697
2698 2018-07-20  Tom Tromey  <tom@tromey.com>
2699
2700         * dwarf2read.c: Include buildsym.h.
2701         (struct dwarf2_cu) <builder>: New method.
2702         (fixup_go_packaging): Update.
2703         (process_full_comp_unit, process_full_type_unit): Update.  Don't
2704         use scoped_free_pendings.
2705         (using_directives): Add "cu" parameter, remove "language".
2706         (read_import_statement, setup_type_unit_groups, )
2707         (read_func_scope, read_lexical_block_scope)
2708         (dwarf2_record_block_ranges, read_namespace): Update.
2709         (lnp_state_machine::lnp_state_machine): Add cu parameter.
2710         (lnp_state_machine::handle_end_sequence): Update.
2711         (class lnp_state_machine) <m_cu>: New member.
2712         <m_record_line_callback>: Remove.
2713         <m_currently_recording_lines>: New member.
2714         (lnp_state_machine::handle_set_file): Update.
2715         (noop_record_line): Remove.
2716         (dwarf_record_line_p): Add cu parameter.
2717         (dwarf_record_line_1, dwarf_finish_line): Likewise.
2718         (lnp_state_machine::record_line)
2719         (lnp_state_machine::lnp_state_machine)
2720         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
2721         (dwarf_decode_lines): Update.
2722         (dwarf2_start_subfile): Add cu parameter.
2723         (dwarf2_start_symtab, new_symbol): Update.
2724         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
2725         Remove dwarf2_per_objfile parameter.
2726         (dwarf_decode_macros): Update.
2727
2728 2018-07-20  Tom Tromey  <tom@tromey.com>
2729
2730         * stabsread.c (define_symbol): Update.
2731         * buildsym-legacy.h (get_buildsym_compunit): Declare.
2732         * dwarf2read.c (new_symbol): Update.
2733         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
2734         * cp-namespace.c: Include buildsym.h.
2735         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
2736         * buildsym-legacy.c (get_buildsym_compunit): New function.
2737
2738 2018-07-20  Tom Tromey  <tom@tromey.com>
2739
2740         * xcoffread.c: Include buildsym-legacy.h.
2741         * windows-nat.c: Include buildsym-legacy.h.
2742         * stabsread.c: Include buildsym-legacy.h.
2743         * mdebugread.c: Include buildsym-legacy.h.
2744         * buildsym-legacy.h: New file.
2745         * buildsym-legacy.c: New file, from buildsym.c.
2746         * go32-nat.c: Include buildsym-legacy.h.
2747         * dwarf2read.c: Include buildsym-legacy.h.
2748         * dbxread.c: Include buildsym-legacy.h.
2749         * cp-namespace.c: Include buildsym-legacy.h.
2750         * coffread.c: Include buildsym-legacy.h.
2751         * buildsym.h: Move some contents to buildsym-legacy.h.
2752         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
2753         buildsym-legacy.c.
2754         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
2755
2756 2018-07-20  Tom Tromey  <tom@tromey.com>
2757
2758         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
2759         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
2760         (buildsym_compunit::buildsym_compunit)
2761         (buildsym_compunit::~buildsym_compunit)
2762         (buildsym_compunit::get_macro_table): Define.
2763
2764 2018-07-20  Tom Tromey  <tom@tromey.com>
2765
2766         * buildsym.c (reset_symtab_globals): Remove.
2767         (buildsym_compunit::end_symtab_from_static_block): Update.
2768         (buildsym_compunit::augment_type_symtab): Update.
2769         (end_symtab_from_static_block): Call free_buildsym_compunit.
2770         (augment_type_symtab, end_symtab, end_expandable_symtab):
2771         Likewise.
2772
2773 2018-07-20  Tom Tromey  <tom@tromey.com>
2774
2775         * arch-utils.c: Do not include buildsym.h.
2776         * mipsread.c: Do not include buildsym.h.
2777         * machoread.c: Do not include buildsym.h.
2778         * elfread.c: Do not include buildsym.h.
2779
2780 2018-07-20  Tom Tromey  <tom@tromey.com>
2781
2782         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
2783         initialization.
2784         (buildsym_compunit): Add new constructor.
2785         (struct buildsym_compunit) <get_last_source_file, finish_block,
2786         record_block_range, start_subfile, patch_subfile_names,
2787         push_subfile, pop_subfile, record_line, get_compunit_symtab,
2788         set_last_source_start_addr, get_last_source_start_addr,
2789         get_local_using_directives, set_local_using_directives,
2790         get_global_using_directives, outermost_context_p,
2791         get_current_context_stack, get_context_stack_depth,
2792         get_current_subfile, get_local_symbols, get_file_symbols,
2793         get_global_symbols, record_debugformat, record_producer,
2794         push_context, pop_context, end_symtab_get_static_block,
2795         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
2796         New public methods.
2797         <record_pending_block, finish_block_internal, make_blockvector,
2798         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
2799         private methods.
2800         Update all users.
2801
2802 2018-05-22  Tom Tromey  <tom@tromey.com>
2803
2804         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
2805         parameter.
2806         (finish_block_internal): Update.
2807
2808 2018-07-20  Tom Tromey  <tom@tromey.com>
2809
2810         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
2811         parameter.
2812         (finish_block_internal): Update.
2813
2814 2018-07-20  Tom Tromey  <tom@tromey.com>
2815
2816         * buildsym.h (EXTERN): Don't define or undef.
2817         * buildsym.c (EXTERN): Don't define.
2818
2819 2018-07-20  Tom Tromey  <tom@tromey.com>
2820
2821         * buildsym.c: Remove TODO comment.
2822
2823 2018-07-20  Tom Tromey  <tom@tromey.com>
2824
2825         * coffread.c (coff_symtab_read): Update.
2826         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
2827         (xcoff_new_init): Update.
2828         * mipsread.c (mipscoff_new_init): Update.
2829         * mdebugread.c (mdebug_build_psymtabs): Update.
2830         * elfread.c (elf_new_init): Update.
2831         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
2832         Update.
2833         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
2834         (coffstab_build_psymtabs, elfstab_build_psymtabs)
2835         (stabsect_build_psymtabs): Update.
2836         * buildsym.h (buildsym_init): Don't declare.
2837         * buildsym.c: Update comment.
2838         (prepare_for_building): Remove.
2839         (start_symtab, restart_symtab): Update.
2840         (reset_symtab_globals): Update comment.
2841         (buildsym_init): Remove.
2842
2843 2018-07-20  Tom Tromey  <tom@tromey.com>
2844
2845         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
2846         * stabsread.c (patch_block_stabs, define_symbol, read_type)
2847         (read_enum_type, common_block_start, common_block_end)
2848         (cleanup_undefined_types_1, finish_global_stabs): Update.
2849         * mdebugread.c (psymtab_to_symtab_1): Update.
2850         * dwarf2read.c (fixup_go_packaging, read_func_scope)
2851         (read_lexical_block_scope, new_symbol): Update.
2852         * dbxread.c (process_one_symbol): Update.
2853         * coffread.c (coff_symtab_read, process_coff_symbol)
2854         (coff_read_enum_type): Update.
2855         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
2856         declare.
2857         (get_local_symbols, get_file_symbols, get_global_symbols): New
2858         functions.
2859         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
2860         m_global_symbols.
2861         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
2862         (~scoped_free_pendings): Update.
2863         (finish_block, prepare_for_building, reset_symtab_globals)
2864         (end_symtab_get_static_block, end_symtab_with_blockvector)
2865         (augment_type_symtab, push_context): Update.
2866         (get_local_symbols, get_file_symbols, get_global_symbols): New
2867         functions.
2868         (buildsym_init): Update.
2869
2870 2018-07-20  Tom Tromey  <tom@tromey.com>
2871
2872         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
2873         (process_full_type_unit): Likewise.
2874         (dwarf2_start_symtab): Set list_in_scope.
2875
2876 2018-07-20  Tom Tromey  <tom@tromey.com>
2877
2878         * dwarf2read.c (process_psymtab_comp_unit_reader)
2879         (build_type_psymtabs_reader): Do not set list_in_scope.
2880
2881 2018-07-20  Tom Tromey  <tom@tromey.com>
2882
2883         * buildsym.c (free_pendings): Remove.
2884         (add_symbol_to_list, scoped_free_pendings)
2885         (finish_block_internal, buildsym_init): Update.
2886
2887 2018-07-20  Tom Tromey  <tom@tromey.com>
2888
2889         * xcoffread.c (read_xcoff_symtab): Update.
2890         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
2891         Update.
2892         * dbxread.c (process_one_symbol): Update.
2893         * coffread.c (coff_symtab_read): Update.
2894         * buildsym.h (finish_block): Update.
2895         * buildsym.c (finish_block): Remove "listhead" argument.
2896         (end_symtab_get_static_block): Update.
2897
2898 2018-07-20  Tom Tromey  <tom@tromey.com>
2899
2900         * buildsym.h (class scoped_free_pendings): Remove constructor.
2901         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
2902         method.
2903         <m_pending_block_obstack, m_pending_blocks>: New members.
2904         (pending_block_obstack, pending_blocks): Remove.
2905         (scoped_free_pendings::scoped_free_pendings): Default.
2906         (~scoped_free_pendings): Update.
2907         (free_pending_blocks): Remove.
2908         (finish_block_internal, record_pending_block, make_blockvector)
2909         (end_symtab_get_static_block, augment_type_symtab, push_context)
2910         (buildsym_init): Update.
2911
2912 2018-07-20  Tom Tromey  <tom@tromey.com>
2913
2914         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
2915         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
2916         members.
2917         (pending_addrmap, pending_addrmap_obstack)
2918         (pending_addrmap_interesting): Remove.
2919         (scoped_free_pendings, record_block_range, make_blockvector)
2920         (prepare_for_building, reset_symtab_globals, buildsym_init):
2921         Update.
2922
2923 2018-07-20  Tom Tromey  <tom@tromey.com>
2924
2925         * xcoffread.c (process_linenos): Update.
2926         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
2927         * mdebugread.c (psymtab_to_symtab_1): Update.
2928         * dwarf2read.c (setup_type_unit_groups)
2929         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
2930         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
2931         * dbxread.c (process_one_symbol): Update.
2932         * coffread.c (coff_symtab_read, enter_linenos)
2933         (process_coff_symbol): Update.
2934         * buildsym.h (current_subfile): Don't declare.
2935         (get_current_subfile): Declare.
2936         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
2937         member.
2938         (start_subfile, free_buildsym_compunit, push_subfile)
2939         (prepare_for_building, start_symtab): Update.
2940         (get_current_subfile): New function.
2941
2942 2018-07-20  Tom Tromey  <tom@tromey.com>
2943
2944         * coffread.c (coff_symtab_read): Update.
2945         * xcoffread.c (read_xcoff_symtab): Update.
2946         * dwarf2read.c (new_symbol): Update.
2947         (read_func_scope, read_lexical_block_scope): Update.
2948         * dbxread.c (process_one_symbol): Update.
2949         * buildsym.h (context_stack, context_stack_depth): Don't declare.
2950         (outermost_context_p): Remove macro.
2951         (outermost_context_p, get_current_context_stack)
2952         (get_context_stack_depth): Declare.
2953         (pop_context): Return struct context_stack.
2954         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
2955         member.
2956         (context_stack_size): Remove.
2957         (INITIAL_CONTEXT_STACK_SIZE): Remove.
2958         (prepare_for_building, end_symtab_get_static_block)
2959         (augment_type_symtab, push_context): Update.
2960         (pop_context): Return struct context_stack.
2961         (outermost_context_p, get_current_context_stack)
2962         (get_context_stack_depth): New functions.
2963         (buildsym_init): Update.
2964
2965 2018-07-20  Tom Tromey  <tom@tromey.com>
2966
2967         * rust-exp.y: Now a pure parser.  Update all rules.
2968         (%union): Move earlier.
2969         (current_parser, work_obstack): Remove globals.
2970         (rust_parser, ~rust_parser): Update.
2971         (class rust_parser) <copy_name, concat3, crate_name, super_name,
2972         lex_character, lex_number, lex_string, lex_identifier,
2973         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
2974         convert_name, convert_params_to_expression,
2975         convert_ast_to_expression, ast_basic_type, ast_operation,
2976         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
2977         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
2978         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
2979         ast_array_type, ast_slice_type, ast_reference_type,
2980         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
2981         (rust_parse): Update.
2982         (rustyyerror, rustyylex): Add parser parameter.
2983         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
2984         (rust_lex_stringish_test, rust_lex_test_sequence)
2985         (rust_lex_test_trailing_dot, rust_lex_test_completion)
2986         (rust_lex_test_push_back, rust_lex_tests): Update.
2987
2988 2018-07-19  Pedro Alves  <palves@redhat.com>
2989
2990         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
2991         gdb::unique_xmalloc_ptr.
2992         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
2993         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
2994         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
2995         copy-initialization.
2996         * guile/scm-pretty-print.c (ppscm_print_children): Use
2997         gdb::unique_xmalloc_ptr instead of cleanups.
2998         (gdbscm_apply_val_pretty_printer): Remove cleanups.
2999         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
3000         gdb::unique_xmalloc_ptr.
3001         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
3002         Adjust to use gdb::unique_xmalloc_ptr.
3003         * guile/scm-utils.c (extract_arg): Adjust.
3004         * guile/scm-value.c (gdbscm_value_field): Adjust to use
3005         gdb::unique_xmalloc_ptr instead of a cleanup.
3006
3007 2018-07-19  Tom Tromey  <tom@tromey.com>
3008
3009         * utils.c (do_value_free_to_mark)
3010         (make_cleanup_value_free_to_mark): Remove.
3011         * utils.h (make_cleanup_value_free_to_mark): Remove.
3012
3013 2018-07-19  Pedro Alves  <palves@redhat.com>
3014
3015         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
3016         forwarding reference.
3017
3018 2018-07-18  Pedro Alves  <palves@redhat.com>
3019
3020         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
3021         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
3022         cleanup.
3023
3024 2018-07-18  Pedro Alves  <palves@redhat.com>
3025
3026         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
3027         exceptions.
3028         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
3029         (gdbscm_wrap): New.
3030         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
3031         directly instead of a cleanup.
3032         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
3033         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
3034         (vlscm_binop_gdbthrow): New, factored out from ...
3035         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
3036         (vlscm_rich_compare): Use gdbscm_wrap.
3037         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
3038         instead of a cleanup.
3039         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
3040         cleanup.
3041         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
3042         Use xfree directly instead of a cleanup.
3043         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
3044         Adjust to use gdbscm_wrap and scoped_value_mark.
3045         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
3046         (gdbscm_value_address, gdbscm_value_dereference)
3047         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
3048         scoped_value_mark.
3049         (gdbscm_value_dynamic_type): Use scoped_value_mark.
3050         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
3051         scoped_value_mark.
3052         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
3053         gdbscm_wrap and scoped_value_mark.
3054         (gdbscm_value_to_string): Use xfree directly instead of a
3055         cleanup.  Move 'buffer' unique_ptr to TRY scope.
3056         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
3057         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
3058         scoped_value_mark.
3059         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
3060         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
3061         scoped_value_mark.
3062         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
3063         gdbscm_wrap.
3064
3065 2018-07-18  Tom de Vries  <tdevries@suse.de>
3066
3067         * findvar.c (default_read_var_value): Also resolve dynamic type for
3068         LOC_OPTIMIZED_OUT vars.
3069
3070 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
3071
3072         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
3073         decoding.
3074
3075 2018-07-17  Tom Tromey  <tom@tromey.com>
3076
3077         * guile/scm-param.c (pascm_set_func, pascm_show_func)
3078         (compute_enum_list, pascm_set_param_value_x)
3079         (gdbscm_parameter_value): Update.
3080         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
3081         (gdbscm_scm_to_host_string): Update.
3082         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
3083         Update.
3084         * guile/scm-cmd.c (cmdscm_add_completion): Update.
3085         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
3086         * guile/scm-string.c (gdbscm_scm_to_string): Return
3087         unique_xmalloc_ptr.
3088         (gdbscm_scm_to_host_string): Likewise.
3089
3090 2018-07-17  Tom Tromey  <tom@tromey.com>
3091
3092         * guile/guile.c (gdbscm_eval_from_control_command): Update.
3093         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
3094         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
3095         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
3096         unique_xmalloc_ptr.
3097
3098 2018-07-17  Tom Tromey  <tom@tromey.com>
3099
3100         * guile/scm-param.c (pascm_signal_setshow_error): Update.
3101         * guile/guile-internal.h (gdbscm_exception_message_to_string):
3102         Update.
3103         * guile/scm-cmd.c (cmdscm_function): Update.
3104         * guile/scm-pretty-print.c
3105         (ppscm_print_exception_unless_memory_error): Update.
3106         * guile/scm-exception.c (gdbscm_exception_message_to_string):
3107         Return unique_xmalloc_ptr.
3108
3109 2018-07-17  Tom Tromey  <tom@tromey.com>
3110
3111         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
3112         Use string_printf.
3113
3114 2018-07-17  Jim Wilson  <jimw@sifive.com>
3115
3116         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
3117         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
3118         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
3119         unecessary braces after EF_RISCV_RVC test.  Delete call to
3120         set_gdbarch_decr_pc_after_break.
3121
3122         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
3123         RISCV_LAST_FP_REGNUM + 1.
3124         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
3125
3126 2018-07-17  Tom Tromey  <tom@tromey.com>
3127
3128         * configure.ac: Remove --disable-gdbcli.
3129         * configure: Rebuild.
3130         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
3131         (SUBDIR_CLI_CFLAGS): Remove.
3132         (SFILES): Use SUBDIR_CLI_SRCS.
3133         (COMMON_OBS): Use SUBDIR_CLI_OBS.
3134
3135 2018-07-17  Tom Tromey  <tom@tromey.com>
3136
3137         PR gdb/18624:
3138         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
3139
3140 2018-07-16  Jim Wilson  <jimw@sifive.com>
3141
3142         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
3143
3144 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3145
3146         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
3147         variable.
3148         (libunwind_frame_sniffer): Likewise.
3149         (libunwind_frame_prev_register): Likewise.
3150         (libunwind_sigtramp_frame_sniffer): Likewise.
3151         * ia64-tdep.c (ia64_access_reg): Likewise.
3152         (ia64_access_rse_reg): Likewise.
3153         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
3154         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
3155
3156 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3157
3158         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
3159
3160 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3161
3162         * remote-sim.c (gdbsim_target::close,
3163         gdbsim_target::mourn_inferior): Remove unused variables.
3164
3165 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
3166
3167         * ia64-tdep.c (ktab_buf): New global.
3168         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
3169         (get_kernel_table): Adjust.
3170
3171 2018-07-16  Tom Tromey  <tom@tromey.com>
3172
3173         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
3174         * dwarf2read.c (using_directives, new_symbol): Use
3175         outermost_context_p.
3176         * dbxread.c (process_one_symbol): Use outermost_context_p.
3177         * coffread.c (coff_symtab_read): Use outermost_context_p.
3178
3179 2018-07-16  Tom Tromey  <tom@tromey.com>
3180
3181         * dwarf2read.c (using_directives, read_func_scope)
3182         (read_lexical_block_scope): Update.
3183         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
3184         * buildsym.h (local_using_directives, global_using_directives):
3185         Don't declare.
3186         (get_local_using_directives, set_local_using_directives)
3187         (get_global_using_directives): Declare.
3188         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
3189         m_global_using_directives>: New members.
3190         (finish_block_internal, prepare_for_building)
3191         (reset_symtab_globals, end_symtab_get_static_block)
3192         (push_context): Update.
3193         (get_local_using_directives, set_local_using_directives)
3194         (get_global_using_directives): New functions.
3195         (buildsym_init): Update.
3196
3197 2018-07-16  Tom Tromey  <tom@tromey.com>
3198
3199         * xcoffread.c (xcoff_initial_scan): Don't call
3200         free_pending_blocks.
3201         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
3202         * buildsym.h (class scoped_free_pendings): Add constructor.
3203         (free_pending_blocks): Don't declare.
3204         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
3205         (free_pending_blocks): Now static.
3206
3207 2018-07-16  Tom Tromey  <tom@tromey.com>
3208
3209         * buildsym.h (push_subfile, pop_subfile): Update declarations.
3210         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
3211         member.
3212         (struct subfile_stack): Remove.
3213         (subfile_stack): Remove.
3214         (push_subfile, pop_subfile, buildsym_init): Update.
3215
3216 2018-07-16  Tom Tromey  <tom@tromey.com>
3217
3218         * buildsym.c (push_subfile): Use gdb_assert.
3219         (pop_subfile): Use gdb_assert.
3220
3221 2018-07-16  Tom Tromey  <tom@tromey.com>
3222
3223         * buildsym.h (merge_symbol_lists): Remove.
3224         * buildsym.c (merge_symbol_lists): Remove.
3225
3226 2018-07-16  Tom Tromey  <tom@tromey.com>
3227
3228         * stabsread.c (scan_file_globals): Update comment.
3229         * stabsread.h (scan_file_globals): Move from buildsym.h.
3230         * buildsym.h (scan_file_globals): Move to stabsread.h.
3231
3232 2018-07-16  Tom Tromey  <tom@tromey.com>
3233
3234         * xcoffread.c (xcoff_new_init): Update.
3235         * mipsread.c (mipscoff_new_init): Update.
3236         * mdebugread.c (mdebug_build_psymtabs): Update.
3237         * elfread.c (elf_new_init): Update.
3238         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
3239         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
3240         * buildsym.h (buildsym_new_init): Don't declare.
3241         * buildsym.c (buildsym_new_init): Remove.
3242
3243 2018-07-16  Tom Tromey  <tom@tromey.com>
3244
3245         * stabsread.h (within_function): Move from buildsym.h.
3246         * stabsread.c (start_stabs): Clear within_function.
3247         * coffread.c (coff_start_symtab): Clear within_function.
3248         * buildsym.h (within_function): Move to stabsread.h.
3249         * buildsym.c (prepare_for_building): Update.
3250
3251 2018-07-16  Tom Tromey  <tom@tromey.com>
3252
3253         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
3254         * dwarf2read.c (dwarf2_start_symtab): Don't set
3255         processing_gcc_compilation.
3256         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
3257
3258 2018-07-16  Tom Tromey  <tom@tromey.com>
3259
3260         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
3261         (next_symbol_text_func): Move from buildsym.h.
3262         * stabsread.c (hashname): Move from buildsym.c.
3263         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
3264         (next_symbol_text_func, hashname): Move to stabsread.h.
3265         * buildsym.c: Don't include bcache.h
3266         (hashname): Move to stasbread.c.
3267
3268 2018-07-16  Tom Tromey  <tom@tromey.com>
3269
3270         * buildsym.h (context_stack_size): Don't declare.
3271         * buildsym.c (context_stack_size): New global.
3272
3273 2018-07-16  Tom Tromey  <tom@tromey.com>
3274
3275         * dbxread.c (processing_acc_compilation): New global.
3276         * buildsym.h (processing_acc_compilation): Don't declare.
3277
3278 2018-07-16  Tom Tromey  <tom@tromey.com>
3279
3280         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
3281         * dbxread.c (read_ofile_symtab): Update.
3282         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
3283         * buildsym.h (last_source_start_addr): Remove.
3284         (set_last_source_start_addr, get_last_source_start_addr):
3285         Declare.
3286         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
3287         parameter.
3288         (struct buildsym_compunit) <m_last_source_start_addr>: New
3289         member.
3290         (prepare_for_building): Remove start_addr parameter.
3291         (start_symtab, restart_symtab, end_symtab_get_static_block)
3292         (end_symtab_with_blockvector): Update.
3293         (set_last_source_start_addr, get_last_source_start_addr): New
3294         functions.
3295
3296 2018-07-16  Tom Tromey  <tom@tromey.com>
3297
3298         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
3299         member.
3300         (have_line_numbers): Remove.
3301         (record_line, prepare_for_building, end_symtab_get_static_block)
3302         (augment_type_symtab): Update.
3303
3304 2018-07-16  Tom Tromey  <tom@tromey.com>
3305
3306         * buildsym.c (~buildsym_compunit): Free the macro table.
3307         (struct buildsym_compunit) <get_macro_table, release_macros>: New
3308         methods.
3309         <m_pending_macros>: New member.
3310         (pending_macros): Remove.
3311         (~scoped_free_pendings, get_macro_table, prepare_for_building)
3312         (reset_symtab_globals, end_symtab_get_static_block)
3313         (end_symtab_with_blockvector, augment_type_symtab)
3314         (buildsym_init): Update.
3315
3316 2018-07-16  Tom Tromey  <tom@tromey.com>
3317
3318         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
3319         parameter.
3320         (buildsym_compunit::set_last_source_file): New method.
3321         <m_last_source_file>: New member.
3322         (prepare_for_building): Remove "name" parameter.
3323         (start_symtab, restart_symtab, reset_symtab_globals): Update.
3324         (last_source_file): Remove.
3325         (set_last_source_file, get_last_source_file): Update.
3326
3327 2018-07-16  Tom Tromey  <tom@tromey.com>
3328
3329         * buildsym.c (prepare_for_building): Add assert.
3330
3331 2018-07-16  Tom Tromey  <tom@tromey.com>
3332
3333         * buildsym.c (~buildsym_compunit): Update.
3334         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
3335         (start_subfile, patch_subfile_names)
3336         (end_symtab_with_blockvector): Update.
3337
3338 2018-07-16  Tom Tromey  <tom@tromey.com>
3339
3340         * buildsym.c (struct buildsym_compunit): Add constructor,
3341         destructor, initializers.
3342         (start_buildsym_compunit): Remove.
3343         (free_buildsym_compunit): Use "delete".
3344         (start_symtab, restart_symtab): Use "new".
3345
3346 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
3347
3348         * symfile.c (set_objfile_default_section_offset): Remove struct
3349         keyword.
3350
3351 2018-07-14  Stafford Horne  <shorne@gmail.com>
3352
3353         * (Responsible Maintainers): Add myself as or1k maintainer.
3354
3355 2018-07-13  Tom Tromey  <tom@tromey.com>
3356
3357         * symfile.c (set_objfile_default_section_offset): Use extra braces
3358         around initializer.
3359
3360 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
3361
3362         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
3363         non-branching basr.
3364
3365 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3366
3367         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
3368         unittests/cli-utils-selftests.c
3369         * unittests/cli-utils-selftests.c: New file.
3370
3371 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3372
3373         * NEWS: Mention new commands. Mention change to 'thread apply'.
3374
3375 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3376
3377         * thread.c (thr_try_catch_cmd): New function.
3378         (thread_apply_all_command): Handle qcs flags.
3379         (thread_apply_command): Handle qcs flags.
3380         (taas_command): New function.
3381         (tfaas_command): New function.
3382         (_initialize_thread): Update to setup the new commands 'taas
3383         and 'tfaas'. Change doc string for 'thread apply'.
3384
3385 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3386
3387         * stack.c: (trailing_outermost_frame): New function, mostly
3388         extracted from backtrace_command_1.
3389         (leading_innermost_frame): New function.
3390         (backtrace_command_1): Update to call trailing_outermost_frame.
3391         (frame_apply_command_count): New function.
3392         (frame_apply_level_command): New function.
3393         (frame_apply_all_command): New function.
3394         (frame_apply_command): New function.
3395         (faas_command): New function.
3396         (frame_cmd_list): New variable.
3397         (_initialize_stack): Update to setup the new commands 'frame apply'
3398         and 'faas'.
3399
3400 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3401
3402         * cli-utils.c (number_or_range_parser::get_number): Only handle
3403         numbers or convenience var as numbers.
3404         (parse_flags): New function.
3405         (parse_flags_qcs): New function.
3406         (number_or_range_parser::finished): Ensure parsing end is detected
3407         before end of string.
3408         * cli-utils.h (parse_flags): New function.
3409         (parse_flags_qcs): New function.
3410         (number_or_range_parser): Remove m_finished bool.
3411         (number_or_range_parser::skip_range): Set m_in_range to false.
3412
3413 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3414
3415         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
3416         on Windows.
3417
3418 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
3419             Jan Kratochvil  <jan.kratochvil@redhat.com>
3420             Paul Fertser  <fercerpav@gmail.com>
3421             Tsutomu Seki  <sekiriki@gmail.com>
3422             Pedro Alves  <palves@redhat.com>
3423
3424         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
3425         'unittests/parse-connection-spec-selftests.c'.
3426         (COMMON_SFILES): Add 'common/netstuff.c'.
3427         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
3428         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
3429         * common/netstuff.c: New file.
3430         * common/netstuff.h: New file.
3431         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
3432         (wait_for_connect): Update comment.  New parameter
3433         'gdb::optional<int> sock' instead of 'struct serial *scb'.
3434         Use 'sock' directly instead of 'scb->fd'.
3435         (try_connect): New function, with code from 'net_open'.
3436         (net_open): Rewrite main loop to deal with multiple
3437         sockets/addresses.  Handle IPv6-style hostnames; implement
3438         support for IPv6 connections.
3439         * unittests/parse-connection-spec-selftests.c: New file.
3440
3441 2018-07-11  Pedro Alves  <palves@redhat.com>
3442
3443         PR gdb/23377
3444         * remote.c (remote_target::remote_detach_pid): Call
3445         set_current_process.
3446
3447 2018-07-11  Pedro Alves  <palves@redhat.com>
3448
3449         * h8300-tdep.c (h8300_gdbarch_init): Remove
3450         set_gdbarch_ecoff_reg_to_regnum calls.
3451
3452 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
3453
3454         PR c++/23373
3455         * c-typeprint.c (c_type_print_base_struct_union): Don't print
3456         offsets/sizes for static members of a class/struct.
3457
3458 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
3459
3460         * target-descriptions.c (tdesc_register_bitsize): Rename.
3461         * target-descriptions.h (tdesc_register_bitsize): Likewise.
3462         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
3463         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
3464
3465 2018-07-10  Tom Tromey  <tom@tromey.com>
3466
3467         * breakpoint.c (moribund_locations): Now static and a
3468         std::vector.
3469         (breakpoint_init_inferior, moribund_breakpoint_here_p)
3470         (build_bpstat_chain, update_global_location_list)
3471         (breakpoint_retire_moribund): Update.
3472         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
3473         VEC.
3474
3475 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3476
3477         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
3478         (riscv_register_reggroup_p): Use new function, remove unneeded
3479         parenthesis.
3480         (riscv_push_dummy_call): Extend assert to compare against xlen or
3481         flen based on register type.
3482
3483 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3484
3485         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
3486
3487 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3488
3489         * remote.c (show_hardware_watchpoint_limit): New function.
3490         (show_hardware_watchpoint_length_limit): New function.
3491         (show_hardware_breakpoint_limit): New function.
3492         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
3493         where appropriate, update help text.
3494
3495 2018-07-09  Tom Tromey  <tom@tromey.com>
3496
3497         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
3498         (CLIBS): Don't mention NAT_CLIBS.
3499
3500 2018-07-09  Tom Tromey  <tom@tromey.com>
3501
3502         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
3503         (LIBGDB_OBS, clean mostlyclean): Update.
3504         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
3505
3506 2018-07-09  Tom Tromey  <tom@tromey.com>
3507
3508         * Makefile.in (%.c: %.y): Use ECHO_YACC.
3509         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
3510         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
3511
3512 2018-07-09  Tom Tromey  <tom@tromey.com>
3513
3514         * Makefile.in (ALLDEPFILES): Remove exec.c.
3515         (COMMON_OBS): Remove exec.o.
3516         (COMMON_SFILES): Add exec.c.
3517
3518 2018-07-09  Tom Tromey  <tom@tromey.com>
3519
3520         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
3521
3522 2018-07-09  Tom Tromey  <tom@tromey.com>
3523
3524         * Makefile.in (clean mostlyclean): Remove stamp-version.
3525         (version.c): Depend on stamp-version.
3526         (stamp-version): New rule, from version.c rule.
3527
3528 2018-07-09  Tom Tromey  <tom@tromey.com>
3529
3530         * Makefile.in (init.c): Depend on stamp-init.
3531         (stamp-init): New rule, from init.c rule.
3532         (clean mostlyclean): Remove stamp-init.
3533
3534 2018-07-09  Tom Tromey  <tom@tromey.com>
3535
3536         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
3537         SUBDIR_GCC_COMPILE_SRCS.
3538
3539 2018-07-09  Tom Tromey  <tom@tromey.com>
3540
3541         * Makefile.in (init.c): Remove some unused sed rules.
3542
3543 2018-07-09  Tom Tromey  <tom@tromey.com>
3544
3545         * Makefile.in (TSOBS): Remove.
3546         (INIT_FILES): Update.
3547         (LIBGDB_OBS): Update.
3548         (COMMON_SFILES): Add inflow.c.
3549         (SFILES): Remove inflow.c.
3550
3551 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
3552
3553         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
3554
3555 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
3556
3557         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
3558         get_saveloc_name, is_signal_frame_name, step_name,
3559         init_remote_name, create_addr_space_name,
3560         destroy_addr_space_name, search_unwind_table_name,
3561         find_dyn_list_name): Constify.
3562
3563 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
3564
3565         * darwin-nat.c (darwin_pthread_kill): New function.
3566         (darwin_resume_thread): Use darwin_pthread_kill.
3567
3568 2018-07-05  Tom de Vries  <tdevries@suse.de>
3569
3570         * macroexp.c (macro_buffer) <operator=>: New member function.
3571
3572 2018-07-04  Tom Tromey  <tom@tromey.com>
3573
3574         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
3575
3576 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
3577
3578         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
3579         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
3580         * maint.c: Likewise.
3581         * top.c: Likewise.
3582
3583 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
3584
3585         * NEWS: Create a new section for the next release branch.
3586         Rename the section of the current branch, now that it has
3587         been cut.
3588
3589 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
3590
3591         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
3592         * version.in: Bump version to 8.2.50.DATE-git.
3593
3594 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
3595             Pedro Alves  <palves@redhat.com>
3596
3597         * linux-nat.c (linux_init_ptrace): Rename to ...
3598         (linux_init_ptrace_procfs): ... this.  Call
3599         linux_proc_init_warnings.
3600         (linux_nat_target::post_attach)
3601         (linux_nat_target::post_startup_inferior): Adjust.
3602         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
3603         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
3604
3605 2018-07-04  Tom de Vries  <tdevries@suse.de>
3606
3607         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
3608         check ...
3609         (read_comp_unit_head): ... here.
3610
3611 2018-07-03  Tom Tromey  <tom@tromey.com>
3612
3613         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
3614         (stop_tracing, tstatus_command)
3615         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
3616         (print_one_static_tracepoint_marker): Update.
3617         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
3618         std::vector.
3619         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
3620         VEC.
3621         (all_tracepoints, static_tracepoints_here): Return std::vector.
3622
3623 2018-07-03  Tom Tromey  <tom@tromey.com>
3624
3625         * common/ptid.c (ptid_equal): Remove.
3626         * common/ptid.h (ptid_equal): Don't declare.
3627         * ada-tasks.c: Update.
3628         * breakpoint.c: Update.
3629         * common/agent.c: Update.
3630         * corelow.c: Update.
3631         * darwin-nat-info.c: Update.
3632         * darwin-nat.c: Update.
3633         * dcache.c: Update.
3634         * dtrace-probe.c: Update.
3635         * dummy-frame.c: Update.
3636         * fbsd-nat.c: Update.
3637         * frame.c: Update.
3638         * gdbthread.h: Update.
3639         * gnu-nat.c: Update.
3640         * go32-nat.c: Update.
3641         * inf-loop.c: Update.
3642         * inf-ptrace.c: Update.
3643         * infcall.c: Update.
3644         * infcmd.c: Update.
3645         * inflow.c: Update.
3646         * infrun.c: Update.
3647         * linux-fork.c: Update.
3648         * linux-nat.c: Update.
3649         * linux-thread-db.c: Update.
3650         * mi/mi-cmd-var.c: Update.
3651         * mi/mi-interp.c: Update.
3652         * mi/mi-main.c: Update.
3653         * nto-procfs.c: Update.
3654         * ppc-linux-tdep.c: Update.
3655         * procfs.c: Update.
3656         * python/py-inferior.c: Update.
3657         * python/py-record-btrace.c: Update.
3658         * python/py-record.c: Update.
3659         * ravenscar-thread.c: Update.
3660         * regcache.c: Update.
3661         * remote-sim.c: Update.
3662         * remote.c: Update.
3663         * sol-thread.c: Update.
3664         * solib.c: Update.
3665         * target.c: Update.
3666         * tui/tui-stack.c: Update.
3667         * varobj.c: Update.
3668         * windows-nat.c: Update.
3669         * windows-tdep.c: Update.
3670
3671 2018-07-03  Tom Tromey  <tom@tromey.com>
3672
3673         * common/ptid.c (ptid_match): Remove.
3674         * common/ptid.h (ptid_match): Don't declare.
3675         * fbsd-nat.c: Update.
3676         * infcmd.c: Update.
3677         * infrun.c: Update.
3678         * linux-nat.c: Update.
3679         * record-btrace.c: Update.
3680         * regcache.c: Update.
3681         * remote.c: Update.
3682
3683 2018-07-03  Tom Tromey  <tom@tromey.com>
3684
3685         * common/ptid.c (ptid_tid_p): Remove.
3686         * common/ptid.h (ptid_tid_p): Don't declare.
3687         * sol-thread.c: Update.
3688
3689 2018-07-03  Tom Tromey  <tom@tromey.com>
3690
3691         * common/ptid.c (ptid_lwp_p): Remove.
3692         * common/ptid.h (ptid_lwp_p): Don't declare.
3693         * fbsd-nat.c: Update.
3694         * linux-nat.c: Update.
3695         * nat/linux-procfs.c: Update.
3696         * nat/x86-linux-dregs.c: Update.
3697         * sol-thread.c: Update.
3698
3699 2018-07-03  Tom Tromey  <tom@tromey.com>
3700
3701         * common/ptid.c (ptid_is_pid): Remove.
3702         * common/ptid.h (ptid_is_pid): Don't declare.
3703         * infrun.c: Update.
3704         * linux-nat.c: Update.
3705         * mi/mi-interp.c: Update.
3706         * remote.c: Update.
3707         * thread.c: Update.
3708
3709 2018-07-03  Tom Tromey  <tom@tromey.com>
3710
3711         * common/ptid.c (ptid_get_tid): Remove.
3712         * common/ptid.h (ptid_get_tid): Don't declare.
3713         * ada-tasks.c: Update.
3714         * aix-thread.c: Update.
3715         * bsd-uthread.c: Update.
3716         * darwin-nat.c: Update.
3717         * fbsd-nat.c: Update.
3718         * i386-darwin-nat.c: Update.
3719         * infrun.c: Update.
3720         * linux-tdep.c: Update.
3721         * nto-procfs.c: Update.
3722         * ppc-ravenscar-thread.c: Update.
3723         * python/py-infthread.c: Update.
3724         * ravenscar-thread.c: Update.
3725         * sol-thread.c: Update.
3726         * sparc-ravenscar-thread.c: Update.
3727         * windows-nat.c: Update.
3728
3729 2018-07-03  Tom Tromey  <tom@tromey.com>
3730
3731         * common/ptid.c (ptid_get_lwp): Remove.
3732         * common/ptid.h (ptid_get_lwp): Don't declare.
3733         * aarch64-linux-nat.c: Update.
3734         * ada-tasks.c: Update.
3735         * aix-thread.c: Update.
3736         * amd64-linux-nat.c: Update.
3737         * arm-linux-nat.c: Update.
3738         * corelow.c: Update.
3739         * fbsd-nat.c: Update.
3740         * fbsd-tdep.c: Update.
3741         * gnu-nat.c: Update.
3742         * i386-cygwin-tdep.c: Update.
3743         * i386-gnu-nat.c: Update.
3744         * i386-linux-nat.c: Update.
3745         * ia64-linux-nat.c: Update.
3746         * inf-ptrace.c: Update.
3747         * infrun.c: Update.
3748         * linux-fork.c: Update.
3749         * linux-nat.c: Update.
3750         * linux-tdep.c: Update.
3751         * linux-thread-db.c: Update.
3752         * mips-linux-nat.c: Update.
3753         * nat/aarch64-linux-hw-point.c: Update.
3754         * nat/aarch64-linux.c: Update.
3755         * nat/linux-btrace.c: Update.
3756         * nat/linux-osdata.c: Update.
3757         * nat/linux-procfs.c: Update.
3758         * nat/x86-linux-dregs.c: Update.
3759         * obsd-nat.c: Update.
3760         * ppc-fbsd-nat.c: Update.
3761         * ppc-linux-nat.c: Update.
3762         * procfs.c: Update.
3763         * python/py-infthread.c: Update.
3764         * ravenscar-thread.c: Update.
3765         * remote.c: Update.
3766         * s390-linux-nat.c: Update.
3767         * sol-thread.c: Update.
3768         * sol2-tdep.c: Update.
3769         * spu-linux-nat.c: Update.
3770         * x86-linux-nat.c: Update.
3771         * xtensa-linux-nat.c: Update.
3772
3773 2018-07-03  Tom Tromey  <tom@tromey.com>
3774
3775         * common/ptid.c (ptid_get_pid): Remove.
3776         * common/ptid.h (ptid_get_pid): Don't declare.
3777         * aarch64-linux-nat.c: Update.
3778         * ada-lang.c: Update.
3779         * aix-thread.c: Update.
3780         * alpha-bsd-nat.c: Update.
3781         * amd64-fbsd-nat.c: Update.
3782         * amd64-linux-nat.c: Update.
3783         * arm-linux-nat.c: Update.
3784         * arm-nbsd-nat.c: Update.
3785         * auxv.c: Update.
3786         * break-catch-syscall.c: Update.
3787         * breakpoint.c: Update.
3788         * bsd-uthread.c: Update.
3789         * corelow.c: Update.
3790         * ctf.c: Update.
3791         * darwin-nat.c: Update.
3792         * fbsd-nat.c: Update.
3793         * fbsd-tdep.c: Update.
3794         * gcore.c: Update.
3795         * gnu-nat.c: Update.
3796         * hppa-nbsd-nat.c: Update.
3797         * hppa-obsd-nat.c: Update.
3798         * i386-fbsd-nat.c: Update.
3799         * ia64-linux-nat.c: Update.
3800         * inf-ptrace.c: Update.
3801         * infcmd.c: Update.
3802         * inferior.c: Update.
3803         * inferior.h: Update.
3804         * inflow.c: Update.
3805         * infrun.c: Update.
3806         * linux-fork.c: Update.
3807         * linux-nat.c: Update.
3808         * linux-tdep.c: Update.
3809         * linux-thread-db.c: Update.
3810         * m68k-bsd-nat.c: Update.
3811         * mi/mi-interp.c: Update.
3812         * mi/mi-main.c: Update.
3813         * mips-linux-nat.c: Update.
3814         * mips-nbsd-nat.c: Update.
3815         * mips64-obsd-nat.c: Update.
3816         * nat/aarch64-linux-hw-point.c: Update.
3817         * nat/aarch64-linux.c: Update.
3818         * nat/linux-btrace.c: Update.
3819         * nat/linux-osdata.c: Update.
3820         * nat/linux-procfs.c: Update.
3821         * nat/x86-linux-dregs.c: Update.
3822         * nto-procfs.c: Update.
3823         * obsd-nat.c: Update.
3824         * ppc-linux-nat.c: Update.
3825         * ppc-nbsd-nat.c: Update.
3826         * ppc-obsd-nat.c: Update.
3827         * proc-service.c: Update.
3828         * procfs.c: Update.
3829         * python/py-inferior.c: Update.
3830         * python/py-infthread.c: Update.
3831         * ravenscar-thread.c: Update.
3832         * record.c: Update.
3833         * remote-sim.c: Update.
3834         * remote.c: Update.
3835         * rs6000-nat.c: Update.
3836         * s390-linux-nat.c: Update.
3837         * sh-nbsd-nat.c: Update.
3838         * sol-thread.c: Update.
3839         * sparc-nat.c: Update.
3840         * sparc64-tdep.c: Update.
3841         * spu-linux-nat.c: Update.
3842         * spu-tdep.c: Update.
3843         * target-debug.h: Update.
3844         * target.c: Update.
3845         * thread.c: Update.
3846         * tid-parse.c: Update.
3847         * tracefile-tfile.c: Update.
3848         * vax-bsd-nat.c: Update.
3849         * windows-nat.c: Update.
3850         * x86-linux-nat.c: Update.
3851         * x86-nat.c: Update.
3852
3853 2018-07-03  Tom Tromey  <tom@tromey.com>
3854
3855         * common/ptid.c (pid_to_ptid): Remove.
3856         * common/ptid.h (pid_to_ptid): Don't declare.
3857         * aix-thread.c: Update.
3858         * arm-linux-nat.c: Update.
3859         * common/ptid.c: Update.
3860         * common/ptid.h: Update.
3861         * corelow.c: Update.
3862         * ctf.c: Update.
3863         * darwin-nat.c: Update.
3864         * fbsd-nat.c: Update.
3865         * fork-child.c: Update.
3866         * gnu-nat.c: Update.
3867         * go32-nat.c: Update.
3868         * inf-ptrace.c: Update.
3869         * infcmd.c: Update.
3870         * inferior.c: Update.
3871         * infrun.c: Update.
3872         * linux-fork.c: Update.
3873         * linux-nat.c: Update.
3874         * nat/aarch64-linux-hw-point.c: Update.
3875         * nat/fork-inferior.c: Update.
3876         * nat/x86-linux-dregs.c: Update.
3877         * nto-procfs.c: Update.
3878         * obsd-nat.c: Update.
3879         * procfs.c: Update.
3880         * progspace.c: Update.
3881         * remote.c: Update.
3882         * rs6000-nat.c: Update.
3883         * s390-linux-nat.c: Update.
3884         * sol-thread.c: Update.
3885         * spu-linux-nat.c: Update.
3886         * target.c: Update.
3887         * top.c: Update.
3888         * tracefile-tfile.c: Update.
3889         * windows-nat.c: Update.
3890
3891 2018-07-03  Tom Tromey  <tom@tromey.com>
3892
3893         * common/ptid.h (ptid_build): Don't declare.
3894         * common/ptid.c (ptid_build): Remove.
3895         * aix-thread.c: Update.
3896         * bsd-kvm.c: Update.
3897         * bsd-uthread.c: Update.
3898         * common/agent.c: Update.
3899         * common/ptid.c: Update.
3900         * common/ptid.h: Update.
3901         * corelow.c: Update.
3902         * darwin-nat.c: Update.
3903         * fbsd-nat.c: Update.
3904         * gnu-nat.c: Update.
3905         * linux-fork.c: Update.
3906         * linux-nat.c: Update.
3907         * linux-thread-db.c: Update.
3908         * nat/linux-osdata.c: Update.
3909         * nat/linux-procfs.c: Update.
3910         * nto-procfs.c: Update.
3911         * obsd-nat.c: Update.
3912         * proc-service.c: Update.
3913         * procfs.c: Update.
3914         * ravenscar-thread.c: Update.
3915         * remote-sim.c: Update.
3916         * remote.c: Update.
3917         * sol-thread.c: Update.
3918         * target.c: Update.
3919         * windows-nat.c: Update.
3920
3921 2018-07-03  Tom Tromey  <tom@tromey.com>
3922
3923         * infrun.c (follow_exec): Use exit_inferior_silent.
3924         * inferior.c (exit_inferior_num_silent): Remove.
3925         * inferior.h (exit_inferior_num_silent): Don't declare.
3926
3927 2018-07-03  Tom Tromey  <tom@tromey.com>
3928
3929         PR cli/23340:
3930         * darwin-nat.c (darwin_attach_pid): Reset inferior and
3931         inferior_ptid on error.
3932
3933 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
3934             Simon Marchi  <simon.marchi@polymtl.ca>
3935
3936         PR tdep/8282
3937         * disasm.h (gdb_disassembler): Add
3938         `m_disassembler_options_holder'. member
3939         * disasm.c (get_all_disassembler_options): New function.
3940         (gdb_disassembler::gdb_disassembler): Use it.
3941         (gdb_buffered_insn_length_init_dis): Likewise.
3942         (gdb_buffered_insn_length): Adjust accordingly.
3943         (set_disassembler_options): Handle options with arguments.
3944         (show_disassembler_options_sfunc): Likewise.  Add a leading new
3945         line if showing options with descriptions.
3946         (disassembler_options_completer): Adapt to using the
3947         `disasm_options_and_args_t' structure.
3948         * mips-tdep.c (mips_disassembler_options): New variable.
3949         (mips_disassembler_options_o32): Likewise.
3950         (mips_disassembler_options_n32): Likewise.
3951         (mips_disassembler_options_n64): Likewise.
3952         (gdb_print_insn_mips): Don't set `disassembler_options'.
3953         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
3954         functions.
3955         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
3956         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
3957         `gdbarch_disassembler_options_implicit' and
3958         `gdbarch_valid_disassembler_options'.
3959         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
3960         `disasm_options_and_args_t' structure.
3961         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
3962         method.
3963         (valid_disassembler_options): Switch from `disasm_options_t' to
3964         the `disasm_options_and_args_t' structure.
3965         * NEWS: Document `set disassembler-options' support for the MIPS
3966         target.
3967         * gdbarch.h: Regenerate.
3968         * gdbarch.c: Regenerate.
3969
3970 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
3971
3972         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
3973
3974 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
3975
3976         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
3977         parameter in call to amd64_target_description.
3978         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
3979         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
3980         (amd64fbsd_init_abi): Likewise.
3981         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
3982         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
3983         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
3984         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
3985
3986 2018-06-29  Pedro Alves  <palves@redhat.com>
3987
3988         * gdb/amd64-tdep.h (amd64_create_target_description): Add
3989         "segments" parameter.
3990         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
3991         (_initialize_amd64_tdep): Update call to
3992         amd64_create_target_description.
3993         (amd64_target_description): Add "segments" parameter.  Adjust
3994         the implementation to use it.
3995         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
3996         call to amd64_create_target_description.
3997         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
3998         * gdb/arch/amd64.h (amd64_create_target_description): Add
3999         "segments" register.
4000         * gdb/arch/amd64.c (amd64_create_target_description): Add
4001         "segments" parameter.  Call create_feature_i386_64bit_segments
4002         only if SEGMENTS is true.
4003         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
4004         call to amd64_create_target_description.
4005
4006 2018-06-29  Pedro Alves  <palves@redhat.com>
4007
4008         * thread.c (thread_target_id_str): New, factored out from ...
4009         (print_thread_info_1): ... here.  Use it to compute the max
4010         "Target Id" column width.
4011
4012 2018-06-29  Pedro Alves  <palves@redhat.com>
4013
4014         * remote.c (remote_target::extra_thread_info): Delete
4015         'display_buf' and 'n' locals.  from the cache, regardless of
4016         packet mechanims is in use.  Use cache for qThreadExtra and qP
4017         methods too.
4018
4019 2018-06-29  Pedro Alves  <palves@redhat.com>
4020
4021         * blockframe.c (find_pc_sect_containing_function): New function.
4022         * breakpoint.c (print_breakpoint_location): Don't call
4023         find_pc_sect_function.
4024         * linespec.c (create_sals_line_offset): Record the location's
4025         symbol in the sal.
4026         * linespec.c (convert_address_location_to_sals): Fill in sal's
4027         symbol with find_pc_sect_containing_function.
4028         * symtab.c (find_function_start_sal): Rename to ...
4029         (find_function_start_sal_1): ... this.
4030         (find_function_start_sal): Reimplement as wrapper around
4031         find_function_start_sal_1, and use
4032         find_pc_sect_containing_function to fill in the sal's symbol.
4033         (find_function_start_sal(symbol*, bool)): Adjust.
4034         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
4035         comments.
4036         (find_pc_sect_containing_function): Declare.
4037
4038 2018-06-29  Pedro Alves  <palves@redhat.com>
4039
4040         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
4041         true if the the location has no symbol.
4042
4043 2018-06-28  Tom Tromey  <tom@tromey.com>
4044
4045         * NEWS: Mention --enable-codesign.
4046         * silent-rules.mk (ECHO_SIGN): New variable.
4047         * configure.ac: Add --enable-codesign.
4048         * configure: Rebuild.
4049         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
4050         (gdb$(EXEEXT)): Optionally invoke codesign.
4051
4052 2018-06-28  Pedro Alves  <palves@redhat.com>
4053
4054         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
4055         comments.
4056         (switch_to_thread_no_regs): Adjust comment.
4057         * infcmd.c (stop_pc): Delete.
4058         (post_create_inferior, info_program_command): Replace references
4059         to stop_pc with references to thread_info->suspend.stop_pc.
4060         * inferior.h (stop_pc): Delete declaration.
4061         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
4062         (handle_inferior_event_1, handle_signal_stop)
4063         (process_event_stop_test, keep_going_stepped_thread)
4064         (handle_step_into_function, handle_step_into_function_backward)
4065         (print_stop_location): Replace references to stop_pc with
4066         references to thread_info->suspend.stop_pc.
4067         (struct infcall_suspend_state) <stop_pc>: Delete field.
4068         (save_infcall_suspend_state, restore_infcall_suspend_state):
4069         Remove references to inf_stat->stop_pc.
4070         * linux-fork.c (fork_load_infrun_state): Likewise.
4071         * record-btrace.c (record_btrace_set_replay): Likewise.
4072         * record-full.c (record_full_goto_entry): Likewise.
4073         * remote.c (print_one_stopped_thread): Likewise.
4074         * target.c (target_resume): Extend comment.
4075         * thread.c (set_executing_thread): New.
4076         (set_executing): Use it.
4077         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
4078         Remove references to stop_pc.
4079
4080 2018-06-28  Pedro Alves  <palves@redhat.com>
4081
4082         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
4083         Moving fetching stop_pc until after ecs->event_thread is refreshed.
4084
4085 2018-06-28  Tom Tromey  <tom@tromey.com>
4086
4087         * coffread.c (coff_symfile_finish): Update.
4088         * xcoffread.c (xcoff_symfile_finish): Update.
4089         * elfread.c (elf_symfile_finish): Update.
4090         * symfile.h (dwarf2_free_objfile): Don't declare.
4091         * dwarf2read.c (_initialize_dwarf2_read): Use
4092         register_objfile_data_with_cleanup.
4093         (dwarf2_free_objfile): Now static.  Change signature.
4094
4095 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4096
4097         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
4098         option "-o" to add-symbol-file-load to add an offset to each
4099         section's load address.
4100         * symfile.c (set_objfile_default_section_offset): New function.
4101
4102 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4103
4104         * symfile.c (add_symbol_file_command): Make sure that sections
4105         with the same name are sorted in the same order.
4106
4107 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4108
4109         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
4110         require the second argument.  If omitted, load sections at the
4111         addresses specified in the file.
4112
4113 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4114
4115         * symfile.c (symbol_file_command, symbol_file_add_main_1)
4116         (_initialize_symfile): Add option "-o" to symbol-file to add an
4117         offset to each section of the symbol file.
4118
4119 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4120
4121         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
4122
4123 2018-06-27  Tom Tromey  <tom@tromey.com>
4124
4125         * stack.c (_initialize_stack): Update "func" help text.
4126
4127 2018-06-27  Tom Tromey  <tom@tromey.com>
4128
4129         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
4130         std::vector.
4131         (unwind_infopy_str, pyuw_create_unwind_info)
4132         (unwind_infopy_add_saved_register, pyuw_sniffer)
4133         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
4134         Update.
4135         (struct saved_reg): Add constructor.
4136         <value>: Now a gdbpy_ref<>.
4137
4138 2018-06-27  Tom Tromey  <tom@tromey.com>
4139
4140         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
4141
4142 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4143
4144         * gdb-gdb.py.in: Format using autopep8.
4145
4146 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4147
4148         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
4149         (type_lookup_function): Recognize CORE_ADDR values.
4150
4151 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4152
4153         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
4154         print tag_name.
4155
4156 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4157
4158         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
4159         <__lt__>: Add.
4160
4161 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4162
4163         * gdb-gdb.py: Move to...
4164         * gdb-gdb.py.in: ... here.
4165         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
4166         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
4167         dependencies.
4168         (distclean): Remove gdb-gdb.py when cleaning.
4169         (gdb-gdb.py, gdb-gdb.gdb): New rules.
4170         * configure: Re-generate.
4171
4172 2018-06-27  Pedro Alves  <palves@redhat.com>
4173
4174         * proc-service.c (get_ps_regcache): New.
4175         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
4176         (ps_lsetfpregs): Use it.
4177
4178 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
4179
4180         PR gdb/21695
4181         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
4182         (dwarf_decode_lines_1): Adjust.
4183
4184 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4185
4186         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
4187         override.
4188         <info_proc>: Likewise.
4189
4190 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
4191
4192         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
4193         to windows_fetch_one_register, and only handle the case of
4194         fetching one register.  Move the code that reloads the context
4195         and iterates over all registers if R is negative to...
4196         (windows_nat_target::fetch_registers): ... here.
4197         (do_windows_store_inferior_registers): Rename to
4198         windows_store_one_register, and only handle the case of storing
4199         one register.  Move the code that handles the case where r is
4200         negative to...
4201         (windows_nat_target::store_registers) ... here.
4202
4203 2018-06-26  Tom Tromey  <tom@tromey.com>
4204
4205         PR rust/22574:
4206         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
4207         * rust-lang.c (rust_print_struct_def): Add podata parameter.
4208         Update.
4209         (rust_internal_print_type): Add podata parameter.
4210         (rust_print_type): Update.
4211
4212 2018-06-26  Tom Tromey  <tom@tromey.com>
4213
4214         * typeprint.h (struct print_offset_data) <update, finish,
4215         maybe_print_hole>: New methods.
4216         <indentation>: New constant.
4217         * typeprint.c (print_offset_data::indentation): Define.
4218         (print_offset_data::maybe_print_hole, print_offset_data::update)
4219         (print_offset_data::finish): Move from c-typeprint.c and rename.
4220         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
4221         (print_spaces_filtered_with_print_options): Update.
4222         (c_print_type_union_field_offset, maybe_print_hole)
4223         (c_print_type_struct_field_offset): Move to typeprint.c and
4224         rename.
4225         (c_type_print_base_struct_union): Update.
4226
4227 2018-06-25  Pedro Alves  <palves@redhat.com>
4228
4229         * gdbthread.h (thread_info_ref, delete_thread)
4230         (delete_thread_silent, first_thread_of_inferior)
4231         (any_thread_of_inferior, switch_to_thread)
4232         (enable_thread_stack_temporaries)
4233         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
4234         (get_last_thread_stack_temporary)
4235         (value_in_thread_stack_temporaries, can_access_registers_thread):
4236         Spell out "struct thread_info" instead of just "thread_info".
4237         * inferior.h (notice_new_inferior): Likewise.
4238
4239 2018-06-25  Pedro Alves  <palves@redhat.com>
4240
4241         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
4242         pass thread_info pointer to delete_thread.
4243         (windows_nat_target::detach): Pass inferior pointer to
4244         detach_inferior.
4245         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
4246         delete_thread.
4247         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
4248         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
4249         and pass a thread_info pointer to delete_thread.
4250         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
4251         pass thread_info pointer to delete_thread.
4252         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
4253         delete_thread_silent call.
4254         * procfs.c (procfs_target::detach): Pass inferior pointer to
4255         detach_inferior.
4256         (procfs_target::wait): Pass thread_info pointer to delete_thread.
4257         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
4258         delete_thread_silent call.
4259         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
4260         pass thread_info pointer to delete_thread.
4261         (windows_nat_target::detach): Pass inferior pointer to
4262         delete_inferior.
4263
4264 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
4265
4266         * regcache.c (readable_regcache::read_part): Fix asserts.
4267         (reg_buffer::raw_collect_part): New function.
4268         (regcache::write_part): Fix asserts.
4269         (reg_buffer::raw_supply_part): New function.
4270         (regcache::transfer_regset_register): New helper function.
4271         (regcache::transfer_regset): Call new functions.
4272         (regcache_supply_regset): Use gdb_byte*.
4273         (regcache::supply_regset): Likewise.
4274         (regcache_collect_regset): Likewise.
4275         (regcache::collect_regset): Likewise.
4276         * regcache.h (reg_buffer::raw_collect_part): New declaration.
4277         (reg_buffer::raw_supply_part): Likewise.
4278         (regcache::transfer_regset_register): Likewise.
4279         (regcache::transfer_regset): Use gdb_byte*.
4280
4281 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
4282
4283         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
4284
4285 2018-06-21  Pedro Alves  <palves@redhat.com>
4286
4287         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
4288         instead of a ptid_t.  All callers adjusted.
4289         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
4290         adjusted.
4291         (print_ada_task_info, display_current_task_id, task_command_1):
4292         Adjust.
4293         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
4294         inferior_thread.
4295         (breakpoint_kind): Adjust.
4296         (remove_breakpoints_pid): Rename to ...
4297         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
4298         pointer.  All callers adjusted.
4299         (bpstat_clear_actions): Use inferior_thread.
4300         (get_bpstat_thread): New.
4301         (bpstat_do_actions): Use it.
4302         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
4303         to take a thread_info pointer.  All callers adjusted.
4304         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
4305         (breakpoint_re_set_thread): Use inferior_thread.
4306         * breakpoint.h (struct inferior): Forward declare.
4307         (bpstat_stop_status): Update.
4308         (remove_breakpoints_pid): Delete.
4309         (remove_breakpoints_inf): New.
4310         * bsd-uthread.c (bsd_uthread_target::wait)
4311         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
4312         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
4313         (maint_btrace_packet_history_cmd)
4314         (maint_btrace_clear_packet_history_cmd): Adjust.
4315         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
4316         inferior_thread.
4317         * cli/cli-interp.c: Include "inferior.h".
4318         * common/refcounted-object.h (struct
4319         refcounted_object_ref_policy): New.
4320         * compile/compile-object-load.c: Include gdbthread.h.
4321         (store_regs): Use inferior_thread.
4322         * corelow.c (core_target::close): Use current_inferior.
4323         (core_target_open): Adjust to use first_thread_of_inferior and use
4324         the current inferior.
4325         * ctf.c (ctf_target::close): Adjust to use current_inferior.
4326         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
4327         <thread>: ... this new field.  All references adjusted.
4328         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
4329         Take a thread_info pointer instead of a ptid_t.
4330         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
4331         (dummy_frame_discard, register_dummy_frame_dtor): Take a
4332         thread_info pointer instead of a ptid_t.
4333         * elfread.c: Include "inferior.h".
4334         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
4335         Use inferior_thread.
4336         * eval.c (evaluate_subexp): Likewise.
4337         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
4338         inferior_thread.
4339         * gdb_proc_service.h (struct thread_info): Forward declare.
4340         (struct ps_prochandle) <ptid>: Delete, replaced by ...
4341         <thread>: ... this new field.  All references adjusted.
4342         * gdbarch.h, gdbarch.c: Regenerate.
4343         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
4344         'thread' parameter.  All implementations and callers adjusted.
4345         * gdbthread.h (thread_info) <set_running>: New method.
4346         (delete_thread, delete_thread_silent): Take a thread_info pointer
4347         instead of a ptid.
4348         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
4349         (first_thread_of_process): Delete, replaced by ...
4350         (first_thread_of_inferior): ... this new function.  All callers
4351         adjusted.
4352         (any_live_thread_of_process): Delete, replaced by ...
4353         (any_live_thread_of_inferior): ... this new function.  All callers
4354         adjusted.
4355         (switch_to_thread, switch_to_no_thread): Declare.
4356         (is_executing): Delete.
4357         (enable_thread_stack_temporaries): Update comment.
4358         <enable_thread_stack_temporaries>: Take a thread_info pointer
4359         instead of a ptid_t.  Incref the thread.
4360         <~enable_thread_stack_temporaries>: Decref the thread.
4361         <m_ptid>: Delete
4362         <m_thr>: New.
4363         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
4364         (get_last_thread_stack_temporary)
4365         (value_in_thread_stack_temporaries, can_access_registers_thread):
4366         Take a thread_info pointer instead of a ptid_t.  All callers
4367         adjusted.
4368         * infcall.c (get_call_return_value): Use inferior_thread.
4369         (run_inferior_call): Work with thread pointers instead of ptid_t.
4370         (call_function_by_hand_dummy): Work with thread pointers instead
4371         of ptid_t.  Use thread_info_ref.
4372         * infcmd.c (proceed_thread_callback): Access thread's state
4373         directly.
4374         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
4375         access thread's state directly.
4376         (continue_command): Use inferior_thread.
4377         (info_program_command): Use find_thread_ptid and access thread
4378         state directly.
4379         (proceed_after_attach_callback): Use thread state directly.
4380         (notice_new_inferior): Take a thread_info pointer instead of a
4381         ptid_t.  All callers adjusted.
4382         (exit_inferior): Take an inferior pointer instead of a pid.  All
4383         callers adjusted.
4384         (exit_inferior_silent): New.
4385         (detach_inferior): Delete.
4386         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
4387         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
4388         (detach_inferior_command, kill_inferior_command): Use
4389         find_inferior_id instead of valid_gdb_inferior_id and
4390         gdb_inferior_id_to_pid.
4391         (inferior_command): Use inferior and thread pointers.
4392         * inferior.h (struct thread_info): Forward declare.
4393         (notice_new_inferior): Take a thread_info pointer instead of a
4394         ptid_t.  All callers adjusted.
4395         (detach_inferior): Delete declaration.
4396         (exit_inferior, exit_inferior_silent): Take an inferior pointer
4397         instead of a pid.  All callers adjusted.
4398         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
4399         (valid_gdb_inferior_id): Delete.
4400         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
4401         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
4402         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
4403         ...
4404         <inf>: ... this new field.
4405         <step_ptid>: Delete, replaced by ...
4406         <step_thread>: ... this new field.
4407         (get_displaced_stepping_state): Take an inferior pointer instead
4408         of a pid.  All callers adjusted.
4409         (displaced_step_in_progress_any_inferior): Adjust.
4410         (displaced_step_in_progress_thread): Take a thread pointer instead
4411         of a ptid_t.  All callers adjusted.
4412         (displaced_step_in_progress, add_displaced_stepping_state): Take
4413         an inferior pointer instead of a pid.  All callers adjusted.
4414         (get_displaced_step_closure_by_addr): Adjust.
4415         (remove_displaced_stepping_state): Take an inferior pointer
4416         instead of a pid.  All callers adjusted.
4417         (displaced_step_prepare_throw, displaced_step_prepare)
4418         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
4419         All callers adjusted.
4420         (start_step_over): Adjust.
4421         (infrun_thread_ptid_changed): Remove bit updating ptids in the
4422         displaced step queue.
4423         (do_target_resume): Adjust.
4424         (fetch_inferior_event): Use inferior_thread.
4425         (context_switch, get_inferior_stop_soon): Take an
4426         execution_control_state pointer instead of a ptid_t.  All callers
4427         adjusted.
4428         (switch_to_thread_cleanup): Delete.
4429         (stop_all_threads): Use scoped_restore_current_thread.
4430         * inline-frame.c: Include "gdbthread.h".
4431         (inline_state) <inline_state>: Take a thread pointer instead of a
4432         ptid_t.  All callers adjusted.
4433         <ptid>: Delete, replaced by ...
4434         <thread>: ... this new field.
4435         (find_inline_frame_state): Take a thread pointer instead of a
4436         ptid_t.  All callers adjusted.
4437         (skip_inline_frames, step_into_inline_frame)
4438         (inline_skipped_frames, inline_skipped_symbol): Take a thread
4439         pointer instead of a ptid_t.  All callers adjusted.
4440         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
4441         (inline_skipped_frames, inline_skipped_symbol): Likewise.
4442         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
4443         pointers directly.
4444         * linux-nat.c (get_detach_signal): Likewise.
4445         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
4446         (thread_db_notice_clone): Adjust.
4447         (thread_db_find_new_threads_silently)
4448         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
4449         a thread pointer instead of a ptid_t.  All callers adjusted.
4450         * mi/mi-cmd-var.c: Include "inferior.h".
4451         (mi_cmd_var_update_iter): Update to use thread pointers.
4452         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
4453         inferior directly.
4454         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
4455         out to ...
4456         (mi_output_running): ... this new function.
4457         (mi_on_resume_1): Adjust to use it.
4458         (mi_user_selected_context_changed): Adjust to use inferior_thread.
4459         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
4460         directly.
4461         (interrupt_thread_callback): : Adjust to use thread and inferior
4462         pointers.
4463         * proc-service.c: Include "gdbthread.h".
4464         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
4465         * progspace-and-thread.c: Include "inferior.h".
4466         * progspace.c: Include "inferior.h".
4467         * python/py-exitedevent.c (create_exited_event_object): Adjust to
4468         hold a reference to an inferior_object.
4469         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
4470         inferior_thread.
4471         * python/py-inferior.c (struct inferior_object): Give the type a
4472         tag name instead of a typedef.
4473         (python_on_normal_stop): No need to check if the current thread is
4474         listed.
4475         (inferior_to_inferior_object): Change return type to
4476         inferior_object.  All callers adjusted.
4477         (find_thread_object): Delete, bits factored out to ...
4478         (thread_to_thread_object): ... this new function.
4479         * python/py-infthread.c (create_thread_object): Use
4480         inferior_to_inferior_object.
4481         (thpy_is_stopped): Use thread pointer directly.
4482         (gdbpy_selected_thread): Use inferior_thread.
4483         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
4484         field, replaced with ...
4485         <thread>: ... this new field.  All users adjusted.
4486         (btpy_insn_or_gap_new): Drop const.
4487         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
4488         callers adjusted.
4489         * python/py-record.c: Include "gdbthread.h".
4490         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
4491         a ptid_t.  All callers adjusted.
4492         (gdbpy_current_recording): Use inferior_thread.
4493         * python/py-record.h (recpy_record_object) <ptid>: Delete
4494         field, replaced with ...
4495         <thread>: ... this new field.  All users adjusted.
4496         (recpy_element_object) <ptid>: Delete
4497         field, replaced with ...
4498         <thread>: ... this new field.  All users adjusted.
4499         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
4500         a ptid_t.  All callers adjusted.
4501         * python/py-threadevent.c: Include "gdbthread.h".
4502         (get_event_thread): Use thread_to_thread_object.
4503         * python/python-internal.h (struct inferior_object): Forward
4504         declare.
4505         (find_thread_object, find_inferior_object): Delete declarations.
4506         (thread_to_thread_object, inferior_to_inferior_object): New
4507         declarations.
4508         * record-btrace.c: Include "inferior.h".
4509         (require_btrace_thread): Use inferior_thread.
4510         (record_btrace_frame_sniffer)
4511         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
4512         (get_thread_current_frame): Use scoped_restore_current_thread and
4513         switch_to_thread.
4514         (get_thread_current_frame): Use thread pointer directly.
4515         (record_btrace_replay_at_breakpoint): Use thread's inferior
4516         pointer directly.
4517         * record-full.c: Include "inferior.h".
4518         * regcache.c: Include "gdbthread.h".
4519         (get_thread_arch_regcache): Use the inferior's address space
4520         directly.
4521         (get_thread_regcache, registers_changed_thread): New.
4522         * regcache.h (get_thread_regcache(thread_info *thread)): New
4523         overload.
4524         (registers_changed_thread): New.
4525         (remote_target) <remote_detach_1>: Swap order of parameters.
4526         (remote_add_thread): <remote_add_thread>: Return the new thread.
4527         (get_remote_thread_info(ptid_t)): New overload.
4528         (remote_target::remote_notice_new_inferior): Use thread pointers
4529         directly.
4530         (remote_target::process_initial_stop_replies): Use
4531         thread_info::set_running.
4532         (remote_target::remote_detach_1, remote_target::detach)
4533         (extended_remote_target::detach): Adjust.
4534         * stack.c (frame_show_address): Use inferior_thread.
4535         * target-debug.h (target_debug_print_thread_info_pp): New.
4536         * target-delegates.c: Regenerate.
4537         * target.c (default_thread_address_space): Delete.
4538         (memory_xfer_partial_1): Use current_inferior.
4539         (target_detach): Use current_inferior.
4540         (target_thread_address_space): Delete.
4541         (generic_mourn_inferior): Use current_inferior.
4542         * target.h (struct target_ops) <thread_address_space>: Delete.
4543         (target_thread_address_space): Delete.
4544         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
4545         pointers directly.
4546         (delete_thread_1, delete_thread, delete_thread_silent): Take a
4547         thread pointer instead of a ptid_t.  Adjust all callers.
4548         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
4549         (first_thread_of_process): Delete, replaced by ...
4550         (first_thread_of_inferior): ... this new function.  All callers
4551         adjusted.
4552         (any_thread_of_process): Rename to ...
4553         (any_thread_of_inferior): ... this, and take an inferior pointer.
4554         (any_live_thread_of_process): Rename to ...
4555         (any_live_thread_of_inferior): ... this, and take an inferior
4556         pointer.
4557         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
4558         (value_in_thread_stack_temporaries)
4559         (get_last_thread_stack_temporary): Take a thread pointer instead
4560         of a ptid_t.  Adjust all callers.
4561         (thread_info::set_running): New.
4562         (validate_registers_access): Use inferior_thread.
4563         (can_access_registers_ptid): Rename to ...
4564         (can_access_registers_thread): ... this, and take a thread
4565         pointer.
4566         (print_thread_info_1): Adjust to compare thread pointers instead
4567         of ptids.
4568         (switch_to_no_thread, switch_to_thread): Make extern.
4569         (scoped_restore_current_thread::~scoped_restore_current_thread):
4570         Use m_thread pointer directly.
4571         (scoped_restore_current_thread::scoped_restore_current_thread):
4572         Use inferior_thread.
4573         (thread_command): Use thread pointer directly.
4574         (thread_num_make_value_helper): Use inferior_thread.
4575         * top.c (execute_command): Use inferior_thread.
4576         * tui/tui-interp.c: Include "inferior.h".
4577         * varobj.c (varobj_create): Use inferior_thread.
4578         (value_of_root_1): Use find_thread_global_id instead of
4579         global_thread_id_to_ptid.
4580
4581 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
4582
4583         * regcache.c (readable_regcache::read_part): Avoid memcpy when
4584         possible.
4585         (regcache::write_part): Likewise.
4586         (readable_regcache::cooked_read_part): Update comment.
4587         (readable_regcache::cooked_write_part): Likewise.
4588         * regcache.h: (readable_regcache::read_part): Likewise.
4589         (regcache::write_part): Likewise.
4590
4591 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
4592             Dirk Schubert  <dirk.schubert@arm.com>
4593
4594         * aarch64-linux-nat.c (post_attach): New.
4595         (aarch64_linux_nat_target::post_attach): Override post_attach to
4596         record the number of hardware debug registers.
4597
4598 2018-06-20  Tom Tromey  <tom@tromey.com>
4599
4600         * python/py-param.c (add_setshow_generic): Make parameters const.
4601         (parmpy_init): Update.
4602
4603 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
4604
4605         * regcache.h (regcache_cooked_read_ftype): Rename to...
4606         (register_read_ftype): ...this, change type to function_view.
4607         (class reg_buffer) <save>: Remove src parameter.
4608         (readonly_detached_regcache) <readonly_detached_regcache>: Make
4609         parameter non-const in first overload.  Remove src parameter in
4610         second overload.
4611         * regcache.c (do_cooked_read): Remove.
4612         (readonly_detached_regcache::readonly_detached_regcache): Make
4613         parameter non-const, adjust call to other constructor.
4614         (reg_buffer::save): Remove src parameter.
4615         * frame.c (do_frame_register_read): Remove.
4616         (frame_save_as_regcache): Use lambda function.
4617         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
4618         parameter to ppu2spu_data *.
4619         (ppu2spu_sniffer): Use lambda function.
4620
4621 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
4622
4623         * record-full.c (record_full_target::insert_breakpoint): Remove
4624         "struct" keyword, add const.
4625
4626 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
4627
4628         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
4629         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
4630         * configure.ac: Remove AC_PREREQ, add missing quoting.
4631         * gnulib/configure.ac: Modernize usage of
4632         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
4633         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
4634         (AUTOMAKE_VERSION): Bump to 1.15.1.
4635         * configure: Re-generate.
4636         * config.in: Re-generate.
4637         * aclocal.m4: Re-generate.
4638         * gnulib/aclocal.m4: Re-generate.
4639         * gnulib/config.in: Re-generate.
4640         * gnulib/configure: Re-generate.
4641         * gnulib/import/Makefile.in: Re-generate.
4642
4643 2018-06-19  Pedro Alves  <palves@redhat.com>
4644
4645         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
4646         (lookup_minimal_symbol_by_pc_section): ... here with
4647         gdb_assert_not_reached added.
4648
4649 2018-06-19  Pedro Alves  <palves@redhat.com>
4650
4651         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
4652         parameter with a block parameter.  Compare location's block symbol
4653         with the frame's block instead of addresses.
4654         (skip_inline_frames): Pass the current block instead of the
4655         frame's address.  Break out as soon as we determine the frame
4656         should not be skipped.
4657
4658 2018-06-18  Tom Tromey  <tom@tromey.com>
4659
4660         * solib-aix.c (solib_aix_get_section_offsets): Return
4661         unique_xmalloc_ptr.
4662         (solib_aix_solib_create_inferior_hook): Update.
4663
4664 2018-06-18  Tom Tromey  <tom@tromey.com>
4665
4666         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
4667
4668 2018-06-18  Tom Tromey  <tom@tromey.com>
4669
4670         * solib-frv.c (frv_relocate_main_executable): Use
4671         unique_xmalloc_ptr.
4672         * solib-dsbt.c (dsbt_relocate_main_executable): Use
4673         unique_xmalloc_ptr.
4674
4675 2018-06-18  Tom Tromey  <tom@tromey.com>
4676
4677         * objfiles.h (inhibit_section_map_updates): Update.
4678         (resume_section_map_updates, resume_section_map_updates_cleanup):
4679         Remove.
4680         * solib-svr4.c (svr4_handle_solib_event): Update.
4681         * objfiles.c (inhibit_section_map_updates): Return
4682         scoped_restore_tmpl<int>.
4683         (resume_section_map_updates, resume_section_map_updates_cleanup):
4684         Remove.
4685
4686 2018-06-18  Tom Tromey  <tom@tromey.com>
4687
4688         * valprint.h (read_string): Update.
4689         * valprint.c (read_string): Change type of "buffer".
4690         (val_print_string): Update.
4691         * python/py-value.c (valpy_string): Update.
4692         * language.h (struct language_defn) <la_get_string>: Change
4693         type of "buffer".
4694         (default_get_string, c_get_string): Update.
4695         * language.c (default_get_string): Change type of "buffer".
4696         * guile/scm-value.c (gdbscm_value_to_string): Update.
4697         * c-lang.c (c_get_string): Change type of "buffer".
4698
4699 2018-06-18  Tom Tromey  <tom@tromey.com>
4700
4701         * ser-mingw.c (struct pipe_state_destroyer): New.
4702         (pipe_state_up): New typedef.
4703         (cleanup_pipe_state): Remove.
4704         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
4705
4706 2018-06-18  Tom Tromey  <tom@tromey.com>
4707
4708         * rust-lang.h (rust_yyerror): Don't declare.
4709         * rust-lang.c (rust_language_defn): Update.
4710         * rust-exp.y (yyerror): Now static.
4711         * parse.c (parse_exp_in_context_1): Update.
4712         * p-lang.h (p_yyerror): Don't declare.
4713         * p-lang.c (p_language_defn): Update.
4714         * p-exp.y (yyerror): Now static.
4715         * opencl-lang.c (opencl_language_defn): Update.
4716         * objc-lang.c (objc_language_defn): Update.
4717         * m2-lang.h (m2_yyerror): Don't declare.
4718         * m2-lang.c (m2_language_defn): Update.
4719         * m2-exp.y (yyerror): Now static.
4720         * language.h (struct language_defn) <la_error>: Remove.
4721         * language.c (unk_lang_error): Remove.
4722         (unknown_language_defn, auto_language_defn): Remove.
4723         * go-lang.h (go_yyerror): Don't declare.
4724         * go-lang.c (go_language_defn): Update.
4725         * go-exp.y (yyerror): Now static.
4726         * f-lang.h (f_yyerror): Don't declare.
4727         * f-lang.c (f_language_defn): Update.
4728         * f-exp.y (yyerror): Now static.
4729         * d-lang.h (d_yyerror): Don't declare.
4730         * d-lang.c (d_language_defn): Update.
4731         * d-exp.y (yyerror): Now static.
4732         * c-lang.h (c_yyerror): Don't declare.
4733         * c-lang.c (c_language_defn, cplus_language_defn)
4734         (asm_language_defn, minimal_language_defn): Update.
4735         * c-exp.y (yyerror): Now static.
4736         * ada-lang.h (ada_yyerror): Don't declare.
4737         * ada-lang.c (ada_language_defn): Update.
4738         * ada-exp.y (yyerror): Now static.
4739
4740 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
4741
4742         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
4743         (store_sveregs_to_thread): Likewise.
4744         (aarch64_linux_fetch_inferior_registers): Check for SVE.
4745         (aarch64_linux_store_inferior_registers): Likewise.
4746         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
4747         function.
4748         (aarch64_sve_regs_copy_to_regcache): Likewise.
4749         (aarch64_sve_regs_copy_from_regcache): Likewise.
4750         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
4751         declaration.
4752         (aarch64_sve_regs_copy_to_regcache): Likewise.
4753         (aarch64_sve_regs_copy_from_regcache): Likewise.
4754         (sve_context): Structure from Linux headers.
4755         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
4756         (SVE_SIG_ZREG_SIZE): Likewise.
4757         (SVE_SIG_PREG_SIZE): Likewise.
4758         (SVE_SIG_FFR_SIZE): Likewise.
4759         (SVE_SIG_REGS_OFFSET): Likewise.
4760         (SVE_SIG_ZREGS_OFFSET): Likewise.
4761         (SVE_SIG_ZREG_OFFSET): Likewise.
4762         (SVE_SIG_ZREGS_SIZE): Likewise.
4763         (SVE_SIG_PREGS_OFFSET): Likewise.
4764         (SVE_SIG_PREG_OFFSET): Likewise.
4765         (SVE_SIG_PREGS_SIZE): Likewise.
4766         (SVE_SIG_FFR_OFFSET): Likewise.
4767         (SVE_SIG_REGS_SIZE): Likewise.
4768         (SVE_SIG_CONTEXT_SIZE): Likewise.
4769         (SVE_PT_REGS_MASK): Likewise.
4770         (SVE_PT_REGS_FPSIMD): Likewise.
4771         (SVE_PT_REGS_SVE): Likewise.
4772         (SVE_PT_VL_INHERIT): Likewise.
4773         (SVE_PT_VL_ONEXEC): Likewise.
4774         (SVE_PT_REGS_OFFSET): Likewise.
4775         (SVE_PT_FPSIMD_OFFSET): Likewise.
4776         (SVE_PT_FPSIMD_SIZE): Likewise.
4777         (SVE_PT_SVE_ZREG_SIZE): Likewise.
4778         (SVE_PT_SVE_PREG_SIZE): Likewise.
4779         (SVE_PT_SVE_FFR_SIZE): Likewise.
4780         (SVE_PT_SVE_FPSR_SIZE): Likewise.
4781         (SVE_PT_SVE_FPCR_SIZE): Likewise.
4782         (__SVE_SIG_TO_PT): Likewise.
4783         (SVE_PT_SVE_OFFSET): Likewise.
4784         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
4785         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
4786         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
4787         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
4788         (SVE_PT_SVE_PREG_OFFSET): Likewise.
4789         (SVE_PT_SVE_PREGS_SIZE): Likewise.
4790         (SVE_PT_SVE_FFR_OFFSET): Likewise.
4791         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
4792         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
4793         (SVE_PT_SVE_SIZE): Likewise.
4794         (SVE_PT_SIZE): Likewise.
4795         (HAS_SVE_STATE): New define.
4796
4797 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
4798
4799         * nat/aarch64-sve-linux-sigcontext.h: New file.
4800         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
4801         new files.
4802         (SVE_VQ_MIN): Likewise.
4803         (SVE_VQ_MAX): Likewise.
4804         (SVE_VL_MIN): Likewise.
4805         (SVE_VL_MAX): Likewise.
4806         (SVE_NUM_ZREGS): Likewise.
4807         (SVE_NUM_PREGS): Likewise.
4808         (sve_vl_valid): Likewise.
4809         (struct user_sve_header): Likewise.
4810
4811 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
4812             Richard Bunt <Richard.Bunt@arm.com>
4813
4814         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
4815         was requested by GDB.
4816
4817 2018-06-15  Tom de Vries  <tdevries@suse.de>
4818
4819         * MAINTAINERS (Write After Approval): Add Tom de Vries.
4820
4821 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
4822
4823         * gnulib/update-gnulib.sh: Print expected versions of
4824         autoconf/aclocal.
4825
4826 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
4827
4828         * arch-utils.c (default_type_align): Use type_length_units.
4829         * gdbtypes.c (type_align): Use type_length_units.
4830
4831 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4832
4833         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
4834         of 'define' command.
4835
4836 2018-06-14  Tom de Vries  <tdevries@suse.de>
4837
4838         PR cli/22573
4839         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
4840         get_no_prettyformat_print_options.
4841
4842 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
4843
4844         * sparc-nat.h: Include target.h.
4845         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
4846         <fetch_registers>: Remove this argument in function call.
4847         <store_registers>: Remove this argument in function call, remove
4848         extra semicolon.
4849         <low_forget_process>: Call sparc64_forget_process instead of
4850         sparc_forget_process.
4851
4852 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4853
4854         * procfs.c (_initialize_procfs): Use add_inf_child_target.
4855         (procfs_target::make_corefile_notes): Adjust to new
4856         target_read_alloc return type.
4857
4858 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4859             Stephen Roberts  <stephen.roberts@arm.com>
4860
4861         PR gdb/22882
4862         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
4863         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
4864         Move should_notify_stop local into more inner scope.
4865
4866 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4867             Stephen Roberts  <stephen.roberts@arm.com>
4868
4869         PR gdb/22882
4870         * infrun.c (resume_1): Add call to mark_async_event_handler.
4871
4872 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4873
4874         * infrun.c (do_target_wait): Change old version of $pc printed.
4875
4876 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
4877
4878         * dwarf2read.c (read_index_from_section): Rename to...
4879         (read_gdb_index_from_section): ... this, update all callers.
4880         (dwarf2_read_index): Rename to...
4881         (dwarf2_read_gdb_index): ... this, update all callers.
4882
4883 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
4884
4885         * gdb/hppa-linux-nat.c
4886         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
4887         hppa_linux_nat_target::fetch_registers.
4888
4889 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4890
4891         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
4892         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
4893         (AARCH64_DWARF_SVE_FFR): Likewise.
4894         (AARCH64_DWARF_SVE_P0): Likewise.
4895         (AARCH64_DWARF_SVE_Z0): Likewise.
4896
4897 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4898
4899         * common/common-regcache.h (raw_compare): New function.
4900         * regcache.c (regcache::raw_compare): Likewise.
4901         * regcache.h (regcache::raw_compare): New declaration.
4902
4903 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4904
4905         * common/common-regcache.h (reg_buffer_common): New structure.
4906         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
4907         (reg_buffer::raw_supply): Likewise.
4908         (reg_buffer::raw_supply_integer): Likewise.
4909         (reg_buffer::raw_supply_zeroed): Likewise.
4910         (reg_buffer::raw_collect): Likewise.
4911         (reg_buffer::raw_collect_integer): Likewise.
4912         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
4913         (reg_buffer::raw_supply): Likewise.
4914         (reg_buffer::raw_supply_integer): Likewise.
4915         (reg_buffer::raw_supply_zeroed): Likewise.
4916         (reg_buffer::raw_collect): Likewise.
4917         (reg_buffer::raw_collect_integer): Likewise.
4918
4919 2018-06-10  Tom Tromey  <tom@tromey.com>
4920
4921         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
4922         (class remote_state) <stop_reply_queue>: Now std::vector.
4923         (remote_state::~remote_state)
4924         (remote_target::stop_reply_queue_length): Update.
4925         (struct queue_iter_param, remove_child_of_pending_fork)
4926         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
4927         (check_pending_event_prevents_wildcard_vcont_callback)
4928         (remove_stop_reply_for_inferior)
4929         (remove_stop_reply_of_remote_state)
4930         (remote_notif_remove_once_on_match)
4931         (stop_reply_match_ptid_and_ws)
4932         (remote_kill_child_of_pending_fork): Remove.
4933         (remote_target::remove_new_fork_children)
4934         (remote_target::check_pending_events_prevent_wildcard_vcont)
4935         (remote_target::discard_pending_stop_replies)
4936         (remote_target::discard_pending_stop_replies_in_queue)
4937         (remote_target::remote_notif_remove_queued_reply)
4938         (remote_target::queued_stop_reply)
4939         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
4940         (remote_target::wait, remote_target::kill_new_fork_children)
4941         (remote_target::async): Update.
4942
4943 2018-06-10  Tom Tromey  <tom@tromey.com>
4944
4945         * record-full.c (record_full_arch_list_cleanups): Remove.
4946         (record_full_message): Use try/catch.
4947         (record_full_wait_cleanups): Remove.
4948         (record_full_wait_1): Use try/catch.
4949         (record_full_restore): Likewise.
4950
4951 2018-06-10  Tom Tromey  <tom@tromey.com>
4952
4953         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
4954         declare VEC.  Add constructor.
4955         <in_target_beneath>: Now bool.
4956         (record_full_breakpoints): Now a std::vector, static.
4957         (record_full_sync_record_breakpoints)
4958         (record_full_init_record_breakpoints)
4959         (record_full_target::insert_breakpoint)
4960         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
4961
4962 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
4963
4964         * dwarf2read.c (process_cu_includes): Remove struct keyword.
4965         * serial.c (serial_interface_lookup): Remove struct keyword.
4966
4967 2018-06-10  Tom Tromey  <tom@tromey.com>
4968
4969         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
4970         method.
4971         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
4972         a method.
4973         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
4974         method.
4975         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
4976         "beneath" as a method.
4977         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
4978         Use "beneath" as a method.
4979
4980 2018-06-10  Tom Tromey  <tom@tromey.com>
4981
4982         * tracefile.c (struct trace_file_writer_deleter): New.
4983         <operator()>: Rename from trace_file_writer_xfree.
4984         (trace_file_writer_up): New typedef.
4985         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
4986
4987 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
4988
4989         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
4990         <m_registers, m_register_status>: Change type to
4991         std::unique_ptr.
4992         * regcache.c (reg_buffer::reg_buffer): Use new instead of
4993         XCNEWVEC.
4994
4995 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
4996
4997         * common/common-regcache.h (enum register_status): Add
4998         underlying type "signed char".
4999         * regcache.h (reg_buffer) <m_register_status>: Change type to
5000         register_status *.
5001         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
5002         register_status instead of signed char.
5003         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
5004         (reg_buffer::get_register_status): Remove cast.
5005         (readable_regcache::raw_read): Remove cast.
5006         (readable_regcache::cooked_read): Remove cast.
5007
5008 2018-06-09  Tom Tromey  <tom@tromey.com>
5009
5010         * source.c (reverse_search_command, forward_search_command): Use
5011         scoped_fd.
5012
5013 2018-06-09  Tom Tromey  <tom@tromey.com>
5014
5015         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
5016         (serial_ops_list): Now static, std::vector.
5017         (serial_interface_lookup, serial_add_interface): Update.
5018
5019 2018-06-09  Tom Tromey  <tom@tromey.com>
5020
5021         * dwarf2read.c (process_cu_includes): Update.
5022         (process_full_comp_unit): Update.
5023         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
5024         std::vector.
5025
5026 2018-06-08  Paul Koning  <paul_koning@dell.com>
5027
5028         PR gdb/23252
5029
5030         * python/python.c (do_start_initialization):
5031         Avoid call to internal Python API.
5032         (init__gdb_module): New function.
5033
5034 2018-06-08  Gary Benson <gbenson@redhat.com>
5035
5036         * linux-thread-db.c (valprint.h): New include.
5037         (struct check_thread_db_info): New structure.
5038         (check_thread_db_on_load, tdb_testinfo): New static globals.
5039         (check_thread_db, check_thread_db_callback): New functions.
5040         (try_thread_db_load_1): Run integrity checks if requested.
5041         (maintenance_check_libthread_db): New function.
5042         (_initialize_thread_db): Register "maint check libthread-db"
5043         and "maint set/show check-libthread-db".
5044         * NEWS: Mention the above new commands.
5045
5046 2018-06-08  Tom Tromey  <tom@tromey.com>
5047
5048         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
5049         now a method.
5050
5051 2018-06-08  Tom Tromey  <tom@tromey.com>
5052
5053         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
5054
5055 2018-06-08  Tom Tromey  <tom@tromey.com>
5056
5057         * common/btrace-common.h (struct btrace_data): Add constructor,
5058         destructor, move assignment operator.
5059         <empty, clear, fini>: New methods.
5060         <format>: Initialize.
5061         (btrace_data_init, btrace_data_fini, btrace_data_clear)
5062         (btrace_data_empty): Don't declare.
5063         * common/btrace-common.c (btrace_data_init): Remove.
5064         (btrace_data::fini): Rename from btrace_data_fini.
5065         (btrace_data::empty): Rename from btrace_data_empty.
5066         (btrace_data::clear): Rename from btrace_data_clear.  Return
5067         bool.
5068         * btrace.h (make_cleanup_btrace_data): Don't declare.
5069         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
5070         (parse_xml_btrace): Update.
5071         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
5072         (maint_btrace_clear_packet_history_cmd): Update.
5073
5074 2018-06-07  Pedro Alves  <palves@redhat.com>
5075
5076         * target.h (target_ops) <beneath>: Now a method.  All references
5077         updated.
5078         (class target_stack): New.
5079         * target.c (g_target_stack): New.
5080         (g_current_top_target): Delete.
5081         (current_top_target): Get the top target out of g_target_stack.
5082         (target_stack::push, target_stack::unpush): New.
5083         (push_target, unpush_target): Reimplement.
5084         (target_is_pushed): Reimplement in terms of g_target_stack.
5085         (target_ops::beneath, target_stack::find_beneath): New.
5086
5087 2018-06-07  Pedro Alves  <palves@redhat.com>
5088
5089         * target.h (find_target_beneath): Delete declaration.
5090         * target.c (find_target_beneath): Delete definition.
5091         * aix-thread.c: All callers of find_target_beneath adjusted to
5092         call target_ops::beneath instead.
5093         * bsd-uthread.c: Likewise.
5094         * linux-thread-db.c: Likewise.
5095         * ravenscar-thread.c: Likewise.
5096         * sol-thread.c: Likewise.
5097         * spu-multiarch.c: Likewise.
5098
5099 2018-06-07  Pedro Alves  <palves@redhat.com>
5100
5101         * target.h (target_ops) <beneath>: Now a method.  All references
5102         updated.
5103         (target_ops) <m_beneath>: New.
5104         * target.c (target_ops::beneath): New.
5105         * corelow.c: Adjust all references to target_ops::beneath.
5106         * linux-thread-db.c: Likewise.
5107         * make-target-delegates: Likewise.
5108         * record-btrace.c: Likewise.
5109         * record-full.c: Likewise.
5110         * remote.c: Likewise.
5111         * target.c: Likewise.
5112         * target-delegates.c: Regenerate.
5113
5114 2018-06-07  Pedro Alves  <palves@redhat.com>
5115
5116         * target.h (target_stack): Delete.
5117         (current_top_target): Declare function.
5118         * target.c (target_stack): Delete.
5119         (g_current_top_target): New.
5120         (current_top_target): New function.
5121         * auxv.c: Use current_top_target instead of target_stack
5122         throughout.
5123         * avr-tdep.c: Likewise.
5124         * breakpoint.c: Likewise.
5125         * corefile.c: Likewise.
5126         * elfread.c: Likewise.
5127         * eval.c: Likewise.
5128         * exceptions.c: Likewise.
5129         * frame.c: Likewise.
5130         * gdbarch-selftests.c: Likewise.
5131         * gnu-v3-abi.c: Likewise.
5132         * ia64-tdep.c: Likewise.
5133         * ia64-vms-tdep.c: Likewise.
5134         * infcall.c: Likewise.
5135         * infcmd.c: Likewise.
5136         * infrun.c: Likewise.
5137         * linespec.c: Likewise.
5138         * linux-tdep.c: Likewise.
5139         * minsyms.c: Likewise.
5140         * ppc-linux-nat.c: Likewise.
5141         * ppc-linux-tdep.c: Likewise.
5142         * procfs.c: Likewise.
5143         * regcache.c: Likewise.
5144         * remote.c: Likewise.
5145         * rs6000-tdep.c: Likewise.
5146         * s390-linux-nat.c: Likewise.
5147         * s390-tdep.c: Likewise.
5148         * solib-aix.c: Likewise.
5149         * solib-darwin.c: Likewise.
5150         * solib-dsbt.c: Likewise.
5151         * solib-spu.c: Likewise.
5152         * solib-svr4.c: Likewise.
5153         * solib-target.c: Likewise.
5154         * sparc-tdep.c: Likewise.
5155         * sparc64-tdep.c: Likewise.
5156         * spu-tdep.c: Likewise.
5157         * symfile.c: Likewise.
5158         * symtab.c: Likewise.
5159         * target-descriptions.c: Likewise.
5160         * target-memory.c: Likewise.
5161         * target.c: Likewise.
5162         * target.h: Likewise.
5163         * tracefile-tfile.c: Likewise.
5164         * tracepoint.c: Likewise.
5165         * valops.c: Likewise.
5166         * valprint.c: Likewise.
5167         * value.c: Likewise.
5168         * windows-tdep.c: Likewise.
5169         * mi/mi-main.c: Likewise.
5170
5171 2018-06-07  Tom Tromey  <tom@tromey.com>
5172
5173         * valprint.h (build_address_symbolic): Declare.
5174         * printcmd.c (print_address_symbolic): Update.
5175         (build_address_symbolic): Change "name" and "filename" to
5176         std::string.
5177         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
5178         Update.
5179         * defs.h (build_address_symbolic): Remove declaration.
5180
5181 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
5182
5183         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
5184         (aarch64_vnv_type): Add function.
5185         (aarch64_pseudo_register_name): Add V regs for SVE.
5186         (aarch64_pseudo_register_type): Likewise.
5187         (aarch64_pseudo_register_reggroup_p): Likewise.
5188         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
5189         (aarch64_pseudo_read_value): Add V regs for SVE.
5190         (aarch64_pseudo_write_2): Use V0 offset for SVE
5191         (aarch64_pseudo_write): Add V regs for SVE.
5192         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
5193
5194 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
5195
5196         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
5197         (sve_vl_from_vq): Likewise.
5198
5199 2018-06-05  Tom Tromey  <tom@tromey.com>
5200
5201         * cli/cli-cmds.c (show_version): Update.
5202         * top.c (print_gdb_version): Add "interactive" parameter.
5203         Update.
5204         * main.c (captured_main_1): Update.
5205         * top.h (print_gdb_version): Add "interactive" parameter and a
5206         comment.
5207
5208 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
5209
5210         * common/enum-flags.h: Add trailing semicolon to example in
5211         comment.
5212
5213 2018-06-05  Tom Tromey  <tom@tromey.com>
5214
5215         PR cli/12326:
5216         * NEWS: Add entry about pager.
5217         * utils.c (pagination_disabled_for_command): New global.
5218         (prompt_for_continue): Allow "c" response to prompt.
5219         (reinitialize_more_filter): Clear
5220         pagination_disabled_for_command.
5221         (fputs_maybe_filtered): Check pagination_disabled_for_command.
5222
5223 2018-06-04  Tom Tromey  <tom@tromey.com>
5224
5225         * ada-lang.h (ada_lookup_symbol_list): Update.
5226         * ada-lang.c (resolve_subexp): Update.
5227         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
5228         parameter.
5229         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
5230         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
5231         results parameter to std::vector.
5232         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
5233         Update.
5234         * ada-exp.y (block_lookup): Update.
5235         (select_possible_type_sym): Change type of syms.  Remove nsyms
5236         parameter.
5237         (write_var_or_type, write_name_assoc): Update.
5238
5239 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
5240
5241         * windows-nat.c (windows_nat_target::xfer_partial): Return
5242         TARGET_XFER_E_IO if we need to delegate to the target beneath
5243         but BENEATH is NULL.
5244
5245 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
5246
5247         * Makefile.in (config.status): Add configure.nat as a
5248         dependency.
5249
5250 2018-06-04  Tom Tromey  <tom@tromey.com>
5251
5252         * cp-name-parser.y (cpname_state): Add method declarations.
5253         (HANDLE_QUAL): Update.
5254         (cpname_state::d_grab, cpname_state::fill_comp)
5255         (cpname_state::make_operator, cpname_state::make_dtor)
5256         (cpname_state::make_builtin_type, cpname_state::make_name)
5257         (cpname_state::d_qualify, cpname_state::d_int_type)
5258         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
5259         (%union): Move earlier.
5260
5261 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5262
5263         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
5264
5265 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5266
5267         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
5268         (aarch64_pseudo_write_1): Likewise.
5269         (aarch64_pseudo_read_value): Use helper.
5270         (aarch64_pseudo_write): Likewise.
5271
5272 2018-06-04  Pedro Alves  <palves@redhat.com>
5273
5274         * darwin-nat.c (darwin_ops): Delete.
5275         (darwin_attach_pid): Use get_native_target.
5276
5277 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5278
5279         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
5280         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
5281
5282 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5283
5284         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
5285         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
5286         (aarch64_gdbarch_init): Check for SVE.
5287         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
5288
5289 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5290
5291         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
5292         * aarch64-tdep.h (aarch64_read_description): Likewise.
5293         * arch/aarch64.c (aarch64_create_target_description): Likewise.
5294         * arch/aarch64.h (aarch64_create_target_description): Likewise.
5295         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
5296         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
5297         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
5298
5299 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
5300
5301         * value.c (value_fetch_lazy_bitfield): New.
5302         (value_fetch_lazy_memory): New.
5303         (value_fetch_lazy_register): New.
5304         (value_fetch_lazy): Factor out to smaller functions.
5305
5306 2018-06-01  Tom Tromey  <tom@tromey.com>
5307
5308         * cp-name-parser.y (backslashable, represented): Now const.
5309
5310 2018-06-01  Tom Tromey  <tom@tromey.com>
5311
5312         * cp-name-parser.y: Include parser-defs.h.
5313         (parser_fprintf): Remove declaration.
5314
5315 2018-06-01  Tom Tromey  <tom@tromey.com>
5316
5317         * cp-name-parser.y: Use %pure-parser, %lex-param, and
5318         %parse-param.
5319         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
5320         (global_result): Remove globals.
5321         (struct cpname_state): New.
5322         (yyparse): Don't declare.
5323         (yylex, yyerror): Move declarations after %union.
5324         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
5325         (make_name): Add state parameter.
5326         Update all callers.
5327         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
5328         parameter.
5329         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
5330         Update.
5331         (yylex): Add lvalp, state parameters.
5332         (yyerror): Add state parameter.
5333         (cp_demangled_name_to_comp): Update.
5334
5335 2018-06-01  Tom Tromey  <tom@tromey.com>
5336
5337         * cp-name-parser.y (parser_fprintf): Declare.
5338         (GDB_YY_REMAP_PREFIX): Define.
5339         Include yy-remap.h.  Don't redefine yy* identifiers.
5340
5341 2018-06-01  Tom Tromey  <tom@tromey.com>
5342
5343         * python/py-type.c (typy_legacy_template_argument): Update.
5344         * cp-support.h (cp_demangled_name_to_comp): Update.
5345         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
5346         parameter to be a "std::string *".
5347         (main): Update.
5348
5349 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
5350
5351         * ada-lex.l: Include "diagnostics.h" instead of
5352         "common/diagnostics.h".
5353         * unittests/environ-selftests.c: Likewise.
5354         * common/diagnostics.h: Moved to ../include.
5355
5356 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
5357
5358         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
5359         to language_mode_manual while calling breakpoint_re_set_one.
5360
5361 2018-06-01  Tom Tromey  <tom@tromey.com>
5362
5363         * valops.c (value_cast_structs, destructor_name_p): Update.
5364         * symtab.c (gdb_mangle_name): Update.
5365         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
5366         Update.
5367         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
5368         (pascal_object_print_value_fields, pascal_object_print_value):
5369         Update.
5370         * p-typeprint.c (pascal_type_print_derivation_info): Update.
5371         * linespec.c (find_methods): Update.
5372         * gdbtypes.h (type_name_no_tag): Remove.
5373         (type_name_or_error): Rename from type_name_no_tag_or_error.
5374         * gdbtypes.c (type_name_no_tag): Remove.
5375         (type_name_or_error): Rename from type_name_no_tag_or_error.
5376         (lookup_struct_elt_type, check_typedef): Update.
5377         * expprint.c (print_subexp_standard): Update.
5378         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
5379         * d-namespace.c (d_lookup_nested_symbol): Update.
5380         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
5381         (cp_print_class_member): Update.
5382         * cp-namespace.c (cp_lookup_nested_symbol): Update.
5383         * completer.c (add_struct_fields): Update.
5384         * c-typeprint.c (cp_type_print_derivation_info)
5385         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
5386         Update.
5387         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
5388         (ada_prefer_type, ada_is_exception_sym): Update.
5389
5390 2018-06-01  Tom Tromey  <tom@tromey.com>
5391
5392         * valops.c (enum_constant_from_type, value_namespace_elt)
5393         (value_maybe_namespace_elt): Update.
5394         * valarith.c (find_size_for_pointer_math): Update.
5395         * target-descriptions.c (make_gdb_type): Update.
5396         * symmisc.c (print_symbol): Update.
5397         * stabsread.c (define_symbol, read_type)
5398         (complain_about_struct_wipeout, add_undefined_type)
5399         (cleanup_undefined_types_1): Update.
5400         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
5401         (rust_range_type_p, val_print_struct, rust_print_struct_def)
5402         (rust_internal_print_type, rust_composite_type)
5403         (rust_evaluate_funcall, rust_evaluate_subexp)
5404         (rust_inclusive_range_type_p): Update.
5405         * python/py-type.c (typy_get_tag): Update.
5406         * p-typeprint.c (pascal_type_print_base): Update.
5407         * mdebugread.c (parse_symbol, parse_type): Update.
5408         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
5409         Update.
5410         * guile/scm-type.c (gdbscm_type_tag): Update.
5411         * go-lang.c (sixg_string_p): Update.
5412         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
5413         Update.
5414         * gdbtypes.h (struct main_type) <tag_name>: Remove.
5415         (TYPE_TAG_NAME): Remove.
5416         * gdbtypes.c (type_name_no_tag): Simplify.
5417         (check_typedef, check_types_equal, recursive_dump_type)
5418         (copy_type_recursive, arch_composite_type): Update.
5419         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
5420         in summary mode when needed.
5421         * eval.c (evaluate_funcall): Update.
5422         * dwarf2read.c (fixup_go_packaging, read_structure_type)
5423         (process_structure_scope, read_enumeration_type)
5424         (read_namespace_type, read_module_type, determine_prefix): Update.
5425         * cp-support.c (inspect_type): Update.
5426         * coffread.c (process_coff_symbol, decode_base_type): Update.
5427         * c-varobj.c (c_is_path_expr_parent): Update.
5428         * c-typeprint.c (c_type_print_base_struct_union): Update.
5429         (c_type_print_base_1): Update.  Print struct/class/union/enum in
5430         summary when using C language.
5431         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
5432         (gen_maybe_namespace_elt): Update.
5433         * ada-lang.c (ada_type_name): Simplify.
5434         (empty_record, ada_template_to_fixed_record_type_1)
5435         (template_to_static_fixed_type)
5436         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
5437
5438 2018-06-01  Tom Tromey  <tom@tromey.com>
5439
5440         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
5441         c_print_type.
5442         * c-typeprint.c (c_print_type_1): Add "language" parameter.
5443         (c_print_type): Update.
5444         (c_print_type): New overload.
5445         (c_type_print_varspec_prefix, c_type_print_args)
5446         (c_type_print_varspec_suffix, c_print_type_no_offsets)
5447         (c_type_print_base_struct_union, c_type_print_base_1)
5448         (cp_type_print_method_args): Add "language" parameter.
5449         (c_type_print_base): Update.
5450         * c-lang.h (c_print_type): Add new overload.
5451
5452 2018-06-01  Tom Tromey  <tom@tromey.com>
5453
5454         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
5455         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
5456
5457 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
5458
5459         * aarch64-tdep.c (aarch64_sve_register_names): New const
5460         var.
5461         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
5462         (AARCH64_SVE_Z_REGS_NUM): New define.
5463         (AARCH64_SVE_P_REGS_NUM): Likewise.
5464         (AARCH64_SVE_NUM_REGS): Likewise.
5465
5466 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
5467
5468         * nat/linux-ptrace.h [__alpha__]
5469         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
5470         definitions.
5471
5472 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
5473
5474         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
5475         the endianness selected.
5476         * NEWS: Document `set endian auto' mode operation update.
5477
5478 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
5479
5480         * Makefile.in: Add new header.
5481         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
5482         (sve_vl_from_vg): Likewise.
5483         (sve_vq_from_vl): Likewise.
5484         (sve_vl_from_vq): Likewise.
5485         (sve_vq_from_vg): Likewise.
5486         (sve_vg_from_vq): Likewise.
5487         * configure.nat: Add new c file.
5488         * nat/aarch64-sve-linux-ptrace.c: New file.
5489         * nat/aarch64-sve-linux-ptrace.h: New file.
5490
5491 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
5492
5493         * aarch64-linux-nat.c (aarch64_linux_read_description):
5494         Add parmeter zero.
5495         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
5496         Likewise.
5497         * aarch64-tdep.c (tdesc_aarch64_list): Add.
5498         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
5499         (aarch64_gdbarch_init): Add parmeter zero.
5500         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
5501         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
5502         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
5503         parmeter.
5504         * doc/gdb.texinfo: Describe SVE feature
5505         * features/aarch64-sve.c: New file.
5506
5507 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
5508
5509         PR gdb/23210
5510         * gdbarch.sh (significant_addr_bit): Default to zero when
5511         not set by target architecture.
5512         * gdbarch.c: Re-generated.
5513         * utils.c (address_significant): Update.
5514
5515 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
5516
5517         * stack.c (func_command): Remove trailing newline in call to error.
5518
5519 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5520
5521         * regcache.h (regcache_raw_collect): Remove, update callers to
5522         use regcache::raw_collect.
5523         * regcache.c (regcache_raw_collect): Remove.
5524
5525 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5526
5527         * regcache.h (regcache_raw_supply): Remove, update callers to
5528         use detached_regcache::raw_supply.
5529         * regcache.c (regcache_raw_supply): Remove.
5530
5531 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5532
5533         * regcache.h (regcache_cooked_write_part): Remove, update
5534         callers to use regcache::cooked_write_part.
5535         * regcache.c (regcache_cooked_write_part): Remove.
5536
5537 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5538
5539         * regcache.h (regcache_cooked_read_part): Remove, update callers
5540         to use readable_regcache::cooked_read_part.
5541         * regcache.c (regcache_cooked_read_part): Remove.
5542
5543 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5544
5545         * regcache.h (regcache_cooked_read_value): Remove, update
5546         callers to use readable_regcache::cooked_read_value.
5547         * regcache.c (regcache_cooked_read_value): Remove.
5548
5549 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5550
5551         * regcache.h (regcache_cooked_write): Remove, update callers to
5552         use regcache::cooked_write.
5553         * regcache.c (regcache_cooked_write): Remove.
5554
5555 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5556
5557         * regcache.h (regcache_invalidate): Remove, update callers to
5558         use detached_regcache::invalidate instead.
5559         * regcache.c (regcache_invalidate): Remove.
5560
5561 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5562
5563         * regcache.h (regcache_raw_write_part): Remove, update callers
5564         to use regcache::raw_write_part instead.
5565         * regcache.c (regcache_raw_write_part): Remove.
5566
5567 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5568
5569         * regcache.h (regcache_raw_read_part): Remove, update callers to
5570         use readable_regcache::raw_read_part instead.
5571         * regcache.c (regcache_raw_read_part): Remove.
5572
5573 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5574
5575         * regcache.h (regcache_cooked_read): Remove, update callers to
5576         use readable_regcache::cooked_read instead.
5577         * regcache.c (regcache_cooked_read): Remove.
5578
5579 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5580
5581         * regcache.h (regcache_raw_write): Remove, update callers to use
5582         regcache::raw_write instead.
5583         * regcache.c (regcache_raw_write): Remove.
5584
5585 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5586
5587         * regcache.h (regcache_raw_read): Remove, update callers to use
5588         readable_regcache::raw_read instead.
5589         * regcache.c (regcache_raw_read): Remove.
5590
5591 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5592
5593         * regcache.h (regcache_raw_update): Remove, update callers to
5594         use readable_regcache::raw_update instead.
5595         * regcache.c (regcache_raw_update): Remove.
5596
5597 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5598
5599         * regcache.h (regcache_register_status): Remove, update callers
5600         to use reg_buffer::get_register_status directly instead.
5601         * regcache.c (regcache_register_status): Remove.
5602
5603 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5604
5605         * regcache.h (regcache_get_ptid): Remove, update all callers to
5606         call regcache::ptid instead.
5607         * regcache.c (regcache_get_ptid): Remove.
5608
5609 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5610
5611         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
5612
5613 2018-05-30  Pedro Alves  <palves@redhat.com>
5614
5615         * common/common-exceptions.h (exception_rethrow): Use
5616         ATTRIBUTE_NORETURN.
5617
5618 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
5619
5620         * breakpoint.c (print_solib_event, check_status_catch_solib):
5621         Remove struct keyword in range-based for loops.
5622         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
5623         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
5624         Likewise.
5625         * linespec.c (find_superclass_methods, search_minsyms_for_name):
5626         Likewise.
5627         * symfile.c (addr_info_make_relative): Likewise.
5628         * thread.c (value_in_thread_stack_temporaries): Likewise.
5629
5630 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
5631
5632         PR gdb/16841
5633         * valops.c (value_struct_elt_for_reference): Call check_typedef on
5634         aggregate type to get its real type before accessing it.
5635
5636 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
5637
5638         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
5639         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
5640         * coff-pe-read.c (add_pe_forwarded_sym): Replace
5641         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
5642         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
5643         * jit.c (jit_breakpoint_re_set_internal): Likewise.
5644         * printcmd.c (info_address_command): Likewise.
5645
5646 2018-05-29  Tom Tromey  <tom@tromey.com>
5647
5648         * windows-nat.c (handle_exception): Update fall-through comment.
5649
5650 2018-05-29  Tom Tromey  <tom@tromey.com>
5651
5652         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
5653         (struct program_space) <added_solibs>: Now a std::vector.
5654         * breakpoint.c (print_solib_event): Update.
5655         (check_status_catch_solib): Update.
5656         * progspace.c (clear_program_space_solib_cache): Update.
5657         * solib.c (update_solib_list): Update.
5658
5659 2018-05-29  Tom Tromey  <tom@tromey.com>
5660
5661         * python/py-type.c (typy_richcompare): Update.
5662         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
5663         * gdbtypes.h (types_deeply_equal): Return bool.
5664         (types_equal): Likewise.
5665         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
5666         declare VEC.
5667         (check_types_equal): Change worklist to std::vector.  Return
5668         bool.
5669         (struct type_equality_entry): Add constructor.
5670         (compare_maybe_null_strings): Return bool.
5671         (check_types_worklist): Return bool.  Change worklist to
5672         std::vector.
5673         (types_deeply_equal): Use std::vector.
5674         (types_equal): Return bool.
5675         (compare_maybe_null_strings): Simplify.
5676
5677 2018-05-29  Tom Tromey  <tom@tromey.com>
5678
5679         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
5680
5681 2018-05-29  Tom Tromey  <tom@tromey.com>
5682
5683         * objc-lang.h: Don't include cp-support.h.
5684         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
5685         declare VEC.
5686
5687 2018-05-27  Tom Tromey  <tom@tromey.com>
5688
5689         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
5690
5691 2018-05-25  Tom Tromey  <tom@tromey.com>
5692
5693         * value.c (value::location): Initialize.
5694
5695 2018-05-25  Tom Tromey  <tom@tromey.com>
5696
5697         * dbxread.c (init_bincl_list): Remove.
5698         (bincl_list): Now a std::vector.
5699         (bincls_allocated, next_bincl): Remove.
5700         (free_bincl_list, do_free_bincl_list_cleanup)
5701         (make_cleanup_free_bincl_list): Remove.
5702         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
5703         unique_xmalloc_ptr.
5704         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
5705         (struct header_file_location): Add constructor.
5706         (add_bincl_to_list): Remove.
5707
5708 2018-05-25  Tom Tromey  <tom@tromey.com>
5709
5710         * tui/tui.c (tui_enable): Update.
5711         * mi/mi-interp.c (mi_interp::init): Update.
5712         * interps.h (class interp) <name>: New method.
5713         <m_name>: Rename from name.
5714         (~scoped_restore_interp): Update.
5715         * interps.c (interp::interp): Update.
5716         (interp_add, interp_set, interp_lookup_existing)
5717         (current_interp_named_p): Update.
5718
5719 2018-05-25  Tom Tromey  <tom@tromey.com>
5720
5721         * interps.c (interp_name): Remove.
5722         * mi/mi-interp.c (mi_interp::init): Update.
5723         * interps.h (interp_name): Remove.
5724         (~scoped_restore_interp): Update.
5725         * tui/tui.c (tui_enable): Update.
5726
5727 2018-05-25  Tom Tromey  <tom@tromey.com>
5728
5729         * utils.c (fputs_maybe_filtered): Update.
5730         * linespec.c (decode_line_full): Update.
5731         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
5732         (mi_print_breakpoint_for_event, mi_solib_loaded)
5733         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
5734         (mi_user_selected_context_changed): Update.
5735         * mi/mi-main.c (mi_execute_command): Update.
5736         * cli/cli-script.c (execute_control_command): Update.
5737         * python/python.c (execute_gdb_command): Update.
5738         * solib.c (info_sharedlibrary_command): Update.
5739         * interps.c (interp_ui_out): Remove.
5740         * interps.h (interp_ui_out): Remove.
5741
5742 2018-05-25  Tom Tromey  <tom@tromey.com>
5743
5744         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
5745         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
5746         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
5747
5748 2018-05-25  Tom Tromey  <tom@tromey.com>
5749
5750         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
5751         * interps.c (interp_exec): Use scoped_restore.
5752
5753 2018-05-25  Tom Tromey  <tom@tromey.com>
5754
5755         * remote.c (remote_target::remote_file_get): Use
5756         gdb::byte_vector.
5757         (remote_target::remote_file_put): Likewise.
5758
5759 2018-05-25  Tom Tromey  <tom@tromey.com>
5760
5761         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
5762         a std::string.
5763         (get_pe_section_index, add_pe_exported_sym): Update.
5764         (read_pe_exported_syms): Use gdb::def_vector.
5765
5766 2018-05-25  Tom Tromey  <tom@tromey.com>
5767
5768         * frame.c (remove_prev_frame): Remove.
5769         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
5770
5771 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
5772
5773         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
5774         Remove prototypes.
5775         * mips-linux-nat.c (supply_fpregset): Always call
5776         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
5777         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
5778         `mips_fill_fpregset'.
5779         * mips-linux-tdep.c (mips_supply_fpregset)
5780         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
5781         (mips_fill_fpregset_wrapper): Remove functions.
5782         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
5783         (mips_linux_fpregset): Remove variable.
5784         (mips_linux_iterate_over_regset_sections): Use
5785         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
5786         (mips_linux_o32_sigframe_init): Remove comment.
5787
5788 2018-05-25  Pedro Alves  <palves@redhat.com>
5789
5790         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
5791         (struct readahead_cache, struct packet_reg, struct
5792         remote_arch_state, class remote_state): Move higher up in the
5793         file.
5794         (remote_target::m_remote_state): Now an object instead of a pointer.
5795         (remote_target::get_remote_state): Adjust.
5796
5797 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
5798
5799         * stack.c (select_and_print_frame): Delete.
5800         (struct function_bounds): Move struct within function.
5801         (func_command): Most content moved into new function
5802         find_frame_for_function, use new function, print result, add
5803         function comment.
5804         (find_frame_for_function): New function, now returns a result.
5805
5806 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5807
5808         * stack.c (iterate_over_block_arg_vars): Fix comment.
5809         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
5810
5811 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
5812
5813         PR gdb/23203
5814         * frame.c
5815         (scoped_restore_selected_frame::scoped_restore_selected_frame):
5816         Define.
5817         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
5818         Define.
5819         * frame.h (class scoped_restore_selected_frame): New class.
5820         * stack.c (print_frame_local_vars): Remove catching and rethrowing
5821         of any exception, use scoped_restore_selected_frame to restore the
5822         frame instead.
5823
5824 2018-05-24  Pedro Alves  <palves@redhat.com>
5825
5826         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
5827         override.
5828
5829 2018-05-23  Tom Tromey  <tom@tromey.com>
5830
5831         * complaints.c (struct complaints): Remove.
5832         (symfile_complaint_book): Remove.
5833         (series): New global.
5834         (complaint_internal): Update.
5835         (clear_complaints): Update.
5836
5837 2018-05-23  Tom Tromey  <tom@tromey.com>
5838
5839         * complaints.c (counters): New global.
5840         (struct complain): Remove.
5841         (struct complaints) <root>: Remove.
5842         (complaint_sentinel): Remove.
5843         (symfile_complaint_book): Update.
5844         (find_complaint) Remove.
5845         (complaint_internal, clear_complaints): Update.
5846
5847 2018-05-23  Tom Tromey  <tom@tromey.com>
5848
5849         * complaints.c (struct complain) <file, line>: Remove.
5850         (find_complaint): Remove file, line parameters.
5851         (complaint_internal): Update.
5852
5853 2018-05-23  Tom Tromey  <tom@tromey.com>
5854
5855         * complaints.c (vcomplaint): Remove.
5856         (complaint_internal) Merge in contents of vcomplaint.
5857
5858 2018-05-23  Tom Tromey  <tom@tromey.com>
5859
5860         * complaints.c (struct complaints) <explanation>: Remove.
5861         (symfile_explanations): Remove.
5862         (symfile_complaint_book): Update.
5863         (vcomplaint): Update.
5864         (struct explanation): Remove.
5865
5866 2018-05-23  Tom Tromey  <tom@tromey.com>
5867
5868         * complaints.c (symfile_complaints): Remove.
5869         (complaint_internal): Remove "complaints" parameter.
5870         (clear_complaints, vcomplaint): Remove "c" parameter.
5871         (get_complaints): Remove.
5872         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
5873         (dwarf2_debug_line_missing_file_complaint)
5874         (dwarf2_debug_line_missing_end_sequence_complaint)
5875         (dwarf2_complex_location_expr_complaint)
5876         (dwarf2_const_value_length_mismatch_complaint)
5877         (dwarf2_section_buffer_overflow_complaint)
5878         (dwarf2_macro_malformed_definition_complaint)
5879         (dwarf2_invalid_attrib_class_complaint)
5880         (create_addrmap_from_index, dw2_symtab_iter_next)
5881         (dw2_expand_marked_cus)
5882         (dw2_debug_names_iterator::find_vec_in_debug_names)
5883         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
5884         (create_debug_type_hash_table, init_cutu_and_read_dies)
5885         (partial_die_parent_scope, add_partial_enumeration)
5886         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
5887         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
5888         (read_import_statement, read_file_scope, create_dwo_cu_reader)
5889         (create_cus_hash_table, create_dwp_hash_table)
5890         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
5891         (dwarf2_rnglists_process, dwarf2_ranges_process)
5892         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
5893         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
5894         (handle_struct_member_die, process_structure_scope)
5895         (read_array_type, read_common_block, read_module_type)
5896         (read_tag_pointer_type, read_typedef, read_base_type)
5897         (read_subrange_type, load_partial_dies, partial_die_info::read)
5898         (partial_die_info::read, partial_die_info::read)
5899         (partial_die_info::read, read_checked_initial_length_and_offset)
5900         (dwarf2_string_attr, read_formatted_entries)
5901         (dwarf_decode_line_header)
5902         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5903         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
5904         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
5905         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
5906         (get_signatured_type, get_DW_AT_signature_type)
5907         (decode_locdesc, file_file_name, consume_improper_spaces)
5908         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
5909         (dwarf_decode_macro_bytes, dwarf_decode_macros)
5910         (dwarf2_symbol_mark_computed, set_die_type)
5911         (read_attribute_value): Update.
5912         * stap-probe.c (handle_stap_probe, get_stap_base_address):
5913         Update.
5914         * dbxread.c (unknown_symtype_complaint)
5915         (lbrac_mismatch_complaint, repeated_header_complaint)
5916         (set_namestring, function_outside_compilation_unit_complaint)
5917         (read_dbx_symtab, process_one_symbol): Update.
5918         * gdbtypes.c (stub_noname_complaint): Update.
5919         * windows-nat.c (handle_unload_dll): Update.
5920         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
5921         (decode_base_type): Update.
5922         * xcoffread.c (bf_notfound_complaint, ef_complaint)
5923         (eb_complaint, record_include_begin, record_include_end)
5924         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
5925         (process_xcoff_symbol, read_symbol)
5926         (function_outside_compilation_unit_complaint)
5927         (scan_xcoff_symtab): Update.
5928         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
5929         * buildsym.c (finish_block_internal, make_blockvector)
5930         (end_symtab_get_static_block, augment_type_symtab): Update.
5931         * dtrace-probe.c (dtrace_process_dof)
5932         (dtrace_static_probe_ops::get_probes): Update.
5933         * complaints.h (struct complaint): Don't declare.
5934         (symfile_complaints): Remove.
5935         (complaint_internal): Remove "complaints" parameter.
5936         (complaint): Likewise.
5937         (clear_complaints): Likewise.
5938         * symfile.c (syms_from_objfile_1, finish_new_objfile)
5939         (reread_symbols): Update.
5940         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
5941         (dwarf2_frame_cache, decode_frame_entry): Update.
5942         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
5943         * objc-lang.c (lookup_objc_class, lookup_child_selector)
5944         (info_selectors_command): Update.
5945         * macrotab.c (macro_include, check_for_redefinition)
5946         (macro_undef): Update.
5947         * objfiles.c (filter_overlapping_sections): Update.
5948         * stabsread.c (invalid_cpp_abbrev_complaint)
5949         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
5950         (define_symbol, error_type, read_type, rs6000_builtin_type)
5951         (stabs_method_name_from_physname, read_member_functions)
5952         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
5953         (attach_fields_to_type, complain_about_struct_wipeout)
5954         (read_range_type, read_args, common_block_start)
5955         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
5956         Update.
5957         * mdebugread.c (index_complaint, unknown_ext_complaint)
5958         (basic_type_complaint, bad_tag_guess_complaint)
5959         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
5960         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
5961         (parse_procedure, parse_lines)
5962         (function_outside_compilation_unit_complaint)
5963         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
5964         (bad_tag_guess_complaint, reg_value_complaint): Update.
5965         * cp-support.c (demangled_name_complaint): Update.
5966         * macroscope.c (sal_macro_scope): Update.
5967         * dwarf-index-write.c (class debug_names): Update.
5968
5969 2018-05-23  Tom Tromey  <tom@tromey.com>
5970
5971         * complaints.c (clear_complaints): Remove "noisy" parameter.
5972         * complaints.h (clear_complaints): Update.
5973         * symfile.c (syms_from_objfile_1, finish_new_objfile)
5974         (reread_symbols): Update.
5975
5976 2018-05-23  Tom Tromey  <tom@tromey.com>
5977
5978         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
5979         SUBSEQUENT_MESSAGE.
5980         (vcomplaint, clear_complaints): Update.
5981         (symfile_explanations): Remove some messages.
5982
5983 2018-05-23  Tom Tromey  <tom@tromey.com>
5984
5985         * complaints.c (internal_complaint): Remove.
5986         * complaints.h (internal_complaint): Remove.
5987
5988 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
5989
5990         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
5991
5992 2018-05-22  Pedro Alves  <palves@redhat.com>
5993
5994         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
5995         (remote_fileio_badfd, remote_fileio_return_errno)
5996         (remote_fileio_return_success, remote_fileio_func_open)
5997         (remote_fileio_func_open, remote_fileio_func_close)
5998         (remote_fileio_func_read, remote_fileio_func_write)
5999         (remote_fileio_func_lseek, remote_fileio_func_rename)
6000         (remote_fileio_func_unlink, remote_fileio_func_stat)
6001         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
6002         (remote_fileio_func_isatty, remote_fileio_func_system): Add
6003         remote_target parameter.
6004         (remote_fio_func_map) <func>: Add remote_target parameter.
6005         (do_remote_fileio_request, remote_fileio_request):
6006         * remote-fileio.h (remote_fileio_request):
6007         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
6008         remote_target parameter.
6009         (remote_notif_process, handle_notification): Adjust to pass down
6010         the remote.
6011         (remote_notif_state_allocate): Add remote_target parameter.  Save
6012         it.
6013         * remote-notif.h (struct remote_target): Forward declare.
6014         (struct notif_client) <parse, ack, can_get_pending_events>: Add
6015         remote_target parameter.
6016         (struct remote_notif_state) <remote>: New field.
6017         (remote_notif_ack, remote_notif_parse): Add remote_target
6018         parameter.
6019         (remote_notif_state_allocate, remote_notif_state_allocate): Add
6020         remote_target parameter.
6021         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
6022         (threads_listing_context, rmt_thread_action, protocol_feature)
6023         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
6024         (packet_result, struct threads_listing_context, remote_state):
6025         Move definitions and declarations higher up.
6026         (remote_target) <~remote_target>: Declare.
6027         (remote_download_command_source, remote_file_put, remote_file_get)
6028         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
6029         (remote_hostio_pread_vFile, remote_hostio_send_command)
6030         (remote_hostio_set_filesystem, remote_hostio_open)
6031         (remote_hostio_close, remote_hostio_unlink, remote_state)
6032         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
6033         (get_memory_write_packet_size, get_memory_read_packet_size)
6034         (append_pending_thread_resumptions, remote_detach_1)
6035         (append_resumption, remote_resume_with_vcont)
6036         (add_current_inferior_and_thread, wait_ns, wait_as)
6037         (process_stop_reply, remote_notice_new_inferior)
6038         (process_initial_stop_replies, remote_add_thread)
6039         (btrace_sync_conf, remote_btrace_maybe_reopen)
6040         (remove_new_fork_children, kill_new_fork_children)
6041         (discard_pending_stop_replies, stop_reply_queue_length)
6042         (check_pending_events_prevent_wildcard_vcont)
6043         (discard_pending_stop_replies_in_queue, stop_reply)
6044         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
6045         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
6046         (remote_interrupt_as, remote_interrupt_ns)
6047         (remote_get_noisy_reply, remote_query_attached)
6048         (remote_add_inferior, remote_current_thread, get_current_thread)
6049         (set_thread, set_general_thread, set_continue_thread)
6050         (set_general_process, write_ptid)
6051         (remote_unpack_thread_info_response, remote_get_threadinfo)
6052         (parse_threadlist_response, remote_get_threadlist)
6053         (remote_threadlist_iterator, remote_get_threads_with_ql)
6054         (remote_get_threads_with_qxfer)
6055         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
6056         (get_offsets, remote_check_symbols, remote_supported_packet)
6057         (remote_query_supported, remote_packet_size)
6058         (remote_serial_quit_handler, remote_detach_pid)
6059         (remote_vcont_probe, remote_resume_with_hc)
6060         (send_interrupt_sequence, interrupt_query)
6061         (remote_notif_get_pending_events, fetch_register_using_p)
6062         (send_g_packet, process_g_packet, fetch_registers_using_g)
6063         (store_register_using_P, store_registers_using_G)
6064         (set_remote_traceframe, check_binary_download)
6065         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
6066         (remote_xfer_live_readonly_partial, remote_read_bytes)
6067         (remote_send_printf, remote_flash_write, readchar)
6068         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
6069         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
6070         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
6071         (extended_remote_disable_randomization, extended_remote_run)
6072         (send_environment_packet, extended_remote_environment_support)
6073         (extended_remote_set_inferior_cwd, remote_write_qxfer)
6074         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
6075         (packet_command): Now methods of ...
6076         (remote_target): ... this class.
6077         (m_remote_state) <remote_target>: New field.
6078         (struct remote_state) <stop_reply_queue,
6079         remote_async_inferior_event_token, wait_forever_enabled_p>: New
6080         fields.
6081         (remote_state::remote_state): Allocate stop_reply_queue.
6082         (remote_state): Delete global.
6083         (get_remote_state_raw): Delete.
6084         (remote_target::get_remote_state): Allocate m_remote_state on
6085         demand.
6086         (get_current_remote_target): New.
6087         (remote_ops, extended_remote_ops): Delete.
6088         (wait_forever_enabled_p, remote_async_inferior_event_token):
6089         Delete, moved to struct remote_state.
6090         (remote_target::close): Delete self.  Destruction bits split to
6091         ...
6092         (remote_target::~remote_target): ... this.
6093         (show_memory_packet_size): Adjust to use
6094         get_current_remote_target.
6095         (struct protocol_feature) <func>: Add remote_target parameter.
6096         All callers adjusted.
6097         (curr_quit_handler_target): New.
6098         (remote_serial_quit_handler): Reimplement.
6099         (remote_target::open_1): Adjust to use get_current_remote_target.
6100         Heap-allocate remote_target/extended_remote_target instances.
6101         (vcont_builder::vcont_builder): Add remote_target parameter, and
6102         save it in m_remote.  All callers adjusted.
6103         (vcont_builder::m_remote): New field.
6104         (vcont_builder::restart, vcont_builder::flush)
6105         (vcont_builder::push_action): Use it.
6106         (remote_target::commit_resume): Use it.
6107         (struct queue_iter_param) <remote>: New field.
6108         (remote_target::remove_new_fork_children): Fill in 'remote' field.
6109         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
6110         (check_pending_event_prevents_wildcard_vcont_callback)
6111         (remote_target::check_pending_events_prevent_wildcard_vcont)
6112         (remote_target::discard_pending_stop_replies)
6113         (remote_target::discard_pending_stop_replies_in_queue)
6114         (remote_target::remote_notif_remove_queued_reply): Fill in
6115         'remote' field.
6116         (remote_notif_get_pending_events): New.
6117         (remote_target::readchar, remote_target::remote_serial_write):
6118         Save/restore curr_quit_handler_target.
6119         (putpkt): New.
6120         (kill_new_fork_children): Fill in 'remote' field.
6121         (packet_command): Use get_current_remote_target, defer to
6122         remote_target method of same name.
6123         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
6124         parameter, and save it in m_remote.  All callers adjusted.
6125         (scoped_remote_fd::release): Use m_remote.
6126         (scoped_remote_fd::m_remote): New field.
6127         (remote_file_put, remote_file_get, remote_file_delete): Use
6128         get_current_remote_target, defer to remote_target method of same
6129         name.
6130         (remote_btrace_reset): Add remote_state paremeter.  Update all
6131         callers.
6132         (remote_async_inferior_event_handler). Pass down 'data'.
6133         (remote_new_objfile): Use get_current_remote_target.
6134         (remote_target::vcont_r_supported): New.
6135         (set_range_stepping): Use get_current_remote_target and
6136         remote_target::vcont_r_supported.
6137         (_initialize_remote): Don't allocate 'remote_state' and
6138         'stop_reply_queue' globals.
6139         * remote.h (struct remote_target): Forward declare.
6140         (getpkt, putpkt, remote_notif_get_pending_events): Add
6141         'remote_target' parameter.
6142
6143 2018-05-22  Pedro Alves  <palves@redhat.com>
6144
6145         * remote.c (vcont_builder): Now a class.  Make all data members
6146         private.
6147         (vcont_builder) <vcont_builder, restart, flush, push_action>:
6148         Declare methods.
6149         (vcont_builder_restart): Rename to ...
6150         (vcont_builder::restart): ... this.
6151         (vcont_builder_flush): Rename to ...
6152         (vcont_builder::flush): ... this.
6153         (vcont_builder_push_action): Rename to ...
6154         (vcont_builder::push_action): ... this.
6155         (remote_target::commit_resume): Adjust.
6156
6157 2018-05-22  Pedro Alves  <palves@redhat.com>
6158
6159         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
6160         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
6161         (get_fixed_memory_packet_size): New.
6162         (get_memory_packet_size): Use it.
6163         (set_memory_packet_size): Don't override the config size with
6164         DEFAULT_MAX_MEMORY_PACKET_SIZE.
6165         (show_memory_packet_size): Use get_fixed_memory_packet_size.
6166         Don't refer to get_memory_packet_size if not connected to a remote
6167         target.  Show "(default)" if configured size is 0.
6168
6169 2018-05-22  Pedro Alves  <palves@redhat.com>
6170
6171         * remote.c (remote_target::mourn_inferior): Move
6172         discard_pending_stop_replies call here from ...
6173         (_initialize_remote): ... here.
6174
6175 2018-05-22  Pedro Alves  <palves@redhat.com>
6176
6177         * remote.c (compare_section_command): Remove set_general_process
6178         call.
6179
6180 2018-05-22  Pedro Alves  <palves@redhat.com>
6181
6182         * remote.c (struct packet_reg, struct remote_arch_state):
6183         Move higher up in the file.
6184         (remote_state) <m_arch_states>: Store remote_arch_state values
6185         instead of remote_arch_state pointers.
6186         (remote_state::get_remote_arch_state): Adjust.
6187
6188 2018-05-22  Pedro Alves  <palves@redhat.com>
6189
6190         * remote.c: Include <unordered_map>.
6191         (remote_state): Now a class.
6192         (remote_state) <get_remote_arch_state>: Declare method.
6193         <get_remote_arch_state>: New field.
6194         (remote_arch_state) <remote_arch_state>: Declare ctor.
6195         <regs>: Now a unique_ptr.
6196         (remote_gdbarch_data_handle): Delete.
6197         (get_remote_arch_state): Delete.
6198         (remote_state::get_remote_arch_state): New.
6199         (get_remote_state): Adjust to call remote_state's
6200         get_remote_arch_state method.
6201         (init_remote_state): Delete, bits factored out to ...
6202         (remote_arch_state::remote_arch_state): ... this new method.
6203         (get_remote_packet_size, get_memory_packet_size)
6204         (process_g_packet, remote_target::fetch_registers)
6205         (remote_target::prepare_to_store, store_registers_using_G)
6206         (remote_target::store_registers, remote_target::get_trace_status):
6207         Adjust to call remote_state's method.
6208         (_initialize_remote): Remove reference to
6209         remote_gdbarch_data_handle.
6210
6211 2018-05-22  Pedro Alves  <palves@redhat.com>
6212
6213         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
6214         pread>: New method declarations.
6215         (remote_target::open_1): Adjust.
6216         (readahead_cache_invalidate): Rename to ...
6217         (readahead_cache::invalidate): ... this, and adjust to be a class
6218         method.
6219         (readahead_cache_invalidate_fd): Rename to ...
6220         (readahead_cache::invalidate_fd): ... this, and adjust to be a
6221         class method.
6222         (remote_hostio_pwrite): Adjust.
6223         (remote_hostio_pread_from_cache): Rename to ...
6224         (readahead_cache::pread): ... this, and adjust to be a class
6225         method.
6226         (remote_hostio_close): Adjust.
6227
6228 2018-05-22  Pedro Alves  <palves@redhat.com>
6229
6230         * remote.c (remote_hostio_close_cleanup): Delete.
6231         (class scoped_remote_fd): New.
6232         (remote_file_put, remote_file_get): Use it.
6233
6234 2018-05-22  Pedro Alves  <palves@redhat.com>
6235
6236         (struct vCont_action_support): Use bool and initialize all fields.
6237         (struct readahead_cache): Initialize all fields.
6238         (remote_state): Use bool and initialize all fields.
6239         (remote_state::remote_state, remote_state::~remote_state): New.
6240         (new_remote_state): Delete.
6241         (_initialize_remote): Use new to allocate remote_state.
6242
6243 2018-05-22  Pedro Alves  <palves@redhat.com>
6244             張俊芝  <zjz@zjz.name>
6245
6246         PR gdb/22973
6247         * c-exp.y: Include "c-support.h".
6248         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
6249         of tolower.  Use c_ident_is_alpha to scan names.
6250         * c-lang.c: Include "c-support.h".
6251         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
6252         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
6253         * c-support.h: New file, with bits factored out from ...
6254         * cp-name-parser.y: ... this file.
6255         Include "c-support.h".
6256         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
6257         c-support.h and renamed.
6258         (symbol_end, yylex): Adjust.
6259
6260 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6261
6262         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
6263         parameter type to CORE_ADDR.
6264         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
6265         parameter type in declaration to CORE_ADDR.
6266         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
6267         target_auxv_search to get AT_HWCAP and use the result to get the
6268         target description.
6269         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
6270         to CORE_ADDR. Remove the cast of the return value to unsigned
6271         long. Fix error predicate of target_auxv_search.
6272         (ppc_linux_nat_target::read_description): Change the type of the
6273         hwcap variable to CORE_ADDR.
6274
6275 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6276
6277         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
6278         if the size of fpscr is larger than 32 bits.
6279
6280 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6281
6282         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
6283         (ppc32_linux_vsxregmap): New global.
6284         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
6285         regcache_supply_regset, and regcache_collect_regset.
6286         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
6287         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
6288         (fetch_vsx_register, store_vsx_register): Remove.
6289         (fetch_vsx_registers): Add regno parameter. Get regset using
6290         ppc_linux_vsxregset. Use regset to supply registers.
6291         (store_vsx_registers): Add regno parameter. Get regset using
6292         ppc_linux_vsxregset. Use regset to collect registers.
6293         (fetch_register): Call fetch_vsx_registers instead of
6294         fetch_vsx_register.
6295         (store_register): Call store_vsx_registers instead of
6296         store_vsx_register.
6297         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
6298         new regno parameter.
6299         (store_ppc_registers): Call store_vsx_registers with -1 for the
6300         new regno parameter.
6301         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
6302         (ppc_collect_vsxregset): Remove.
6303
6304 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6305
6306         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
6307         offset fields.
6308         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
6309         for vector register offset fields.
6310         (ppc64_fbsd_reg_offsets): Likewise.
6311         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
6312         to vector register offset fields.
6313         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
6314         to vector register offset fields.
6315         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
6316         vector register offset fields.
6317         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
6318         initializers for vector register offset fields.
6319         (rs6000_aix64_reg_offsets): Likewise.
6320         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
6321         (ppc_supply_vrregset): Remove.
6322         (ppc_collect_vrregset): Remove.
6323         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
6324         (ppc_linux_vrregset) : New function.
6325         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
6326         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
6327         (ppc32_linux_vrregset): Remove.
6328         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
6329         and use result instead of ppc32_linux_vrregset.
6330         (ppc32_linux_reg_offsets): Remove initializers for vector register
6331         offset fields.
6332         (ppc64_linux_reg_offsets): Likewise.
6333         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
6334         * ppc-linux-nat.c: Include regset.h.
6335         (gdb_vrregset_t): Adjust comment to account for little-endian
6336         mode.
6337         (supply_vrregset, fill_vrregset): Remove.
6338         (fetch_altivec_register, store_altivec_register): Remove.
6339         (fetch_altivec_registers): Add regno parameter. Get regset using
6340         ppc_linux_vrregset. Use regset to supply registers.
6341         (store_altivec_registers): Add regno parameter. Get regset using
6342         ppc_linux_vrregset. Use regset to collect registers.
6343         (fetch_register): Call fetch_altivec_registers instead of
6344         fetch_altivec_register.
6345         (store_register): Call store_altivec_registers instead of
6346         store_altivec_register.
6347         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
6348         the new regno parameter.
6349         (store_ppc_registers): Call store_altivec_registers with -1 for
6350         the new regno parameter.
6351
6352 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6353
6354         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
6355         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
6356         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
6357         (gdb_vrregset_t): Change array type size to
6358         PPC_LINUX_SIZEOF_VRREGSET.
6359         (gdb_vsxregset_t): Change array type size to
6360         PPC_LINUX_SIZEOF_VSXREGSET.
6361         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
6362         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
6363         PPC_LINUX_SIZEOF_VSXREGSET.
6364
6365 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6366
6367         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
6368         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
6369         nat/ppc-linux.c.
6370         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
6371         ppc_linux_target_wordsize with tid.
6372         (ppc_linux_nat_target::read_description): Call ppc_linux_target
6373         wordsize with tid.
6374         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
6375         (ppc64_64bit_inferior_p): Add static and inline specifiers.
6376         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
6377         tid parameter. Remove static specifier.
6378         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
6379         (ppc_linux_target_wordsize): New declaration.
6380
6381 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6382
6383         * arch/ppc-linux-common.c: New file.
6384         * arch/ppc-linux-common.h: New file.
6385         * arch/ppc-linux-tdesc.h: New file.
6386         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
6387         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
6388         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
6389         arch/ppc-linux-tdesc.h.
6390         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
6391         arch/ppc-linux-tdesc.h.
6392         (ppc_linux_nat_target::read_description): Remove target
6393         description matching code. Fill a ppc_linux_features struct and
6394         call ppc_linux_match_description with it. Move comment about ISA
6395         2.05 to ppc-linux-common.c.
6396         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
6397         arch/ppc-linux-tdesc.h.
6398         (ppc_linux_core_read_description): Remove target description
6399         matching code. Fill a ppc_linux_features struct and call
6400         ppc_linux_match_description with it.
6401         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
6402         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
6403         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
6404         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
6405         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
6406         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
6407         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
6408         (tdesc_powerpc_e500l): Remove.
6409
6410 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
6411
6412         * ada-lang.c (catch_assert_command): Pass empty string instead
6413         of NULL for excep_string argument.
6414
6415 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
6416
6417         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
6418         the width of the requested register exceeds the width of the
6419         `ptrace' data type.
6420
6421 2018-05-21  Tom Tromey  <tom@tromey.com>
6422
6423         * printcmd.c (output_command): Remove.
6424         (output_command_const): Rename to output_command.
6425         * valprint.h (output_command): Rename from output_command_const.
6426         * tracepoint.c (trace_dump_actions): Call output_command.
6427
6428 2018-05-21  Tom Tromey  <tom@tromey.com>
6429
6430         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
6431         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
6432         * ada-lang.h (create_ada_exception_catchpoint): Update.
6433         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
6434         std::string.
6435         (create_excep_cond_exprs, ~ada_catchpoint)
6436         (should_stop_exception, print_one_exception)
6437         (print_mention_exception, print_recreate_exception): Update.
6438         (ada_get_next_arg): Remove.
6439         (catch_ada_exception_command_split): Use std::string.  Change type
6440         of "excep_string", "cond_string".
6441         (catch_ada_exception_command): Update.
6442         (create_ada_exception_catchpoint): Change type of excep_string.
6443         (ada_exception_sal): Remove excep_string parameter.
6444         (~ada_catchpoint): Remove.
6445
6446 2018-05-21  Tom Tromey  <tom@tromey.com>
6447
6448         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
6449         cleanup.
6450
6451 2018-05-21  Tom Tromey  <tom@tromey.com>
6452
6453         * ada-lang.c (ada_exception_message_1, ada_exception_message):
6454         Return unique_xmalloc_ptr.
6455         (print_it_exception): Update.
6456
6457 2018-05-21  Tom Tromey  <tom@tromey.com>
6458
6459         * tracepoint.c (trace_dump_actions): Use std::string.
6460
6461 2018-05-21  Tom Tromey  <tom@tromey.com>
6462
6463         * symfile.c (reread_symbols): Use std::string for original_name.
6464
6465 2018-05-21  Tom Tromey  <tom@tromey.com>
6466
6467         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
6468         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
6469         constructor.
6470
6471 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
6472
6473         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
6474         instance to...
6475         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
6476         * objfiles.c (get_objfile_bfd_data): Allocate
6477         objfile_per_bfd_storage with obstack_new when allocating on
6478         obstack.
6479
6480 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
6481
6482         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
6483         OBSTACK_ZALLOC.
6484         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
6485         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
6486         * mdebugread.c (mdebug_build_psymtabs): Likewise.
6487         (add_pending): Likewise.
6488         (parse_symbol): Likewise.
6489         (parse_partial_symbols): Likewise.
6490         (psymtab_to_symtab_1): Likewise.
6491         (new_psymtab): Likewise.
6492         (elfmdebug_build_psymtabs): Likewise.
6493         * minsyms.c (terminate_minimal_symbol_table): Likewise.
6494         * objfiles.c (get_objfile_bfd_data): Likewise.
6495         (objfile_register_static_link): Likewise.
6496         * psymtab.c (allocate_psymtab): Likewise.
6497         * stabsread.c (read_member_functions): Likewise.
6498         * xcoffread.c (xcoff_end_psymtab): Likewise.
6499
6500 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
6501
6502         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
6503         compiler supports std::is_trivially_constructible.
6504         * common/poison.h: Include obstack.h.
6505         (IsMallocable): Define to is_trivially_constructible if the
6506         compiler supports it, define to true_type otherwise.
6507         (xobnew): New.
6508         (XOBNEW): Redefine.
6509         (xobnewvec): New.
6510         (XOBNEWVEC): Redefine.
6511         * gdb_obstack.h (obstack_zalloc): New.
6512         (OBSTACK_ZALLOC): Redefine.
6513         (obstack_calloc): New.
6514         (OBSTACK_CALLOC): Redefine.
6515         (obstack_new): New.
6516         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
6517         (gdbarch_obstack): New declaration in gdbarch.h, definition in
6518         gdbarch.c.
6519         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
6520         obstack_calloc/obstack_zalloc.
6521         (gdbarch_obstack_zalloc): Remove.
6522         * target-descriptions.c (tdesc_data_init): Use obstack_new.
6523
6524 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6525
6526         * stack.c (backtrace_command_1): Remove useless variable int i.
6527
6528 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6529
6530         * stack.c (print_frame_info): Fix comment.
6531
6532 2018-05-18  Tom Tromey  <tom@tromey.com>
6533
6534         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
6535         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
6536         (~dwarf2_per_objfile): Update
6537         (dwarf2_get_dwz_file): Use new.
6538         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
6539         unique_ptr.
6540
6541 2018-05-18  Tom Tromey  <tom@tromey.com>
6542
6543         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
6544         unique_ptr.
6545         * dwarf2read.c (struct dwp_file): Add constructor and
6546         initializers.
6547         (open_and_init_dwp_file): Return a unique_ptr.
6548         (dwarf2_per_objfile, create_dwp_hash_table)
6549         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
6550         (lookup_dwo_unit_in_dwp): Update.
6551         (open_and_init_dwp_file, get_dwp_file): Update.
6552
6553 2018-05-18  Tom Tromey  <tom@tromey.com>
6554
6555         * dwarf2read.c (dwarf2_per_objfile): Update.
6556         (struct mapped_index): Add initializers.
6557         (dwarf2_read_index): Use new.
6558         (dw2_symtab_iter_init): Update.
6559         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
6560         unique_ptr.
6561
6562 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
6563
6564         * dwarf2read.c (mapped_index) <total_size>: Remove.
6565
6566 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
6567
6568         * unittests/format_pieces-selftests.c (test_format_specifier):
6569         Add ARI comments.
6570
6571 2018-05-18  Tom Tromey  <tom@tromey.com>
6572
6573         * c-typeprint.c (maybe_print_hole): New function.
6574         (c_print_type_struct_field_offset): Update.
6575         (c_type_print_base_struct_union): Call maybe_print_hole.
6576
6577 2018-05-17  Keith Seitz  <keiths@redhat.com>
6578
6579         * breakpoint.c (build_bpstat_chain): New function, moved from
6580         bpstat_stop_status.
6581         (bpstat_stop_status): Add optional parameter, `stop_chain'.
6582         If no stop chain is passed, call build_bpstat_chain to build it.
6583         * breakpoint.h (build_bpstat_chain): Declare.
6584         (bpstat_stop_status): Move documentation here from breakpoint.c.
6585         * infrun.c (handle_signal_stop): Before eliding inlined frames,
6586         build the stop chain and pass it to skip_inline_frames.
6587         Pass this stop chain to bpstat_stop_status.
6588         * inline-frame.c: Include breakpoint.h.
6589         (stopped_by_user_bp_inline_frame): New function.
6590         (skip_inline_frames): Add parameter `stop_chain'.
6591         Move documention to inline-frame.h.
6592         If non-NULL, use stopped_by_user_bp_inline_frame to determine
6593         whether the frame should be elided.
6594         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
6595         Add moved documentation and update for new parameter.
6596
6597 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
6598
6599         PR cli/14975
6600         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6601         unittests/format_pieces-selftests.c.
6602         * common/format.h (format_piece) <operator==>: New.
6603         (format_pieces) <operator[]>: Remove.
6604         * common/format.c (format_pieces::format_pieces): Handle \e.
6605         * unittests/format_pieces-selftests.c: New.
6606
6607 2018-05-17  Tom Tromey  <tom@tromey.com>
6608
6609         PR symtab/23010:
6610         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
6611         (dw2_instantiate_symtab): Add skip_partial parameter.
6612         (dw2_find_last_source_symtab, dw2_map_expand_apply)
6613         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
6614         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
6615         (dw2_expand_symtabs_matching_one)
6616         (dw2_find_pc_sect_compunit_symtab)
6617         (dw2_debug_names_lookup_symbol)
6618         (dw2_debug_names_expand_symtabs_for_function): Update.
6619         (init_cutu_and_read_dies): Add skip_partial parameter.
6620         (process_psymtab_comp_unit, build_type_psymtabs_1)
6621         (process_skeletonless_type_unit, load_partial_comp_unit)
6622         (psymtab_to_symtab_1): Update.
6623         (load_full_comp_unit): Add skip_partial parameter.
6624         (process_imported_unit_die, dwarf2_read_addr_index)
6625         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
6626         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
6627         (read_signatured_type): Update.
6628
6629 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
6630
6631         * value.c (release_value): Remove unused variable.
6632         (record_latest_value): Likewise.
6633         (access_value_history): Likewise.
6634         (preserve_values): Likewise.
6635
6636 2018-05-17  Tom Tromey  <tom@tromey.com>
6637
6638         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
6639         Initialize.
6640
6641 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
6642
6643         PR gdb/22286
6644         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
6645         Also handle registers whose width is not a multiple of
6646         PTRACE_TYPE_RET.
6647         (linux_nat_trad_target::store_register): Likewise.
6648
6649 2018-05-16  Tom Tromey  <tom@tromey.com>
6650
6651         * gdbcore.h (core_bfd): Redefine.
6652         * corelow.c (core_target::close): Update.
6653         (core_target_open): Update.
6654         * progspace.h (struct program_space) <cbfd>: Now a
6655         gdb_bfd_ref_ptr.
6656
6657 2018-05-16  Tom Tromey  <tom@tromey.com>
6658
6659         PR cli/19551:
6660         * symfile-add-flags.h (enum symfile_add_flags)
6661         <SYMFILE_NOT_FILENAME>: New constant.
6662         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
6663         objfile name from BFD.
6664         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
6665         * minidebug.c (find_separate_debug_file_in_section): Put
6666         ".gnu_debugdata" into BFD's file name.
6667
6668 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
6669
6670         * regcache.c (regcache_read_ftype, regcache_write_ftype):
6671         Remove.
6672
6673 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
6674
6675         PR binutils/21446
6676         * aarch64-tdep.c (aarch64_analyze_prologue,
6677         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
6678         Indicate not interested in errors.
6679
6680 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
6681
6682         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
6683         Supply the MIPS_ZERO_REGNUM register.
6684
6685 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
6686
6687         * mips-tdep.c (mask_address_var): Make variable static.
6688
6689 2018-05-14  Tom Tromey  <tom@tromey.com>
6690
6691         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
6692
6693 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
6694
6695         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
6696         FXSAVE_ADDR for the mxcsr register.
6697
6698 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
6699
6700         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
6701
6702 2018-05-11  Pedro Alves  <palves@redhat.com>
6703
6704         * corelow.c (core_target) <core_target>: No longer inline.
6705         Initialize m_core_gdbarch, m_core_vec and build the section table
6706         here.
6707         <~core_target>: New.
6708         <core_gdbarch, get_core_register_section>: New methods.
6709         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
6710         factored out from ...
6711         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
6712         (core_ops): Delete.
6713         (sniff_core_bfd): Add gdbarch parameter.
6714         (core_close): Delete, merged into ...
6715         (core_target::close): ... here.  Delete self.
6716         (core_close_cleanup): Delete.
6717         (core_target_open): Allocate a core_target on the heap.  Use a
6718         unique_ptr instead of a cleanup.  Bits moved into the core_target
6719         ctor.  Adjust to use core_target methods instead of globals.
6720         (get_core_register_section): Rename to ...
6721         (core_target::get_core_register_section): ... this and adjust.
6722         (struct get_core_registers_cb_data): New.
6723         (get_core_registers_cb): Use it.  Use bool.
6724         (core_target::fetch_registers, core_target::files_info)
6725         (core_target::xfer_partial, core_target::read_description)
6726         (core_target::pid_to, core_target::thread_name): Adjust to
6727         reference class fields instead of globals.
6728         * target.h (struct target_ops_deleter, target_ops_up): New.
6729
6730 2018-05-11  Pedro Alves  <palves@redhat.com>
6731
6732         * corefile.c (core_file_command): Move to corelow.c.
6733         * corelow.c (the_core_target): Delete.
6734         (core_file_command): Moved from corefile.c.  Check exec_bfd
6735         instead of the_core_target.  Use target_detach instead of calling
6736         into the_core_target directly.
6737         (maybe_say_no_core_file_now): New.
6738         (core_target::detach): Use it.
6739         (_initialize_corelow): Remove references to the_core_target.
6740         * gdbcore.h (the_core_target): Delete.
6741
6742 2018-05-11  Tom Tromey  <tromey@redhat.com>
6743             Pedro Alves  <palves@redhat.com>
6744
6745         * corefile.c (core_bfd): Remove.
6746         * gdbcore.h (core_bfd): Now a macro.
6747         * progspace.h (struct program_space) <cbfd>: New field.
6748
6749 2018-05-11  Tom Tromey  <tom@tromey.com>
6750
6751         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
6752         gdb::def_vector.
6753
6754 2018-05-10  Tom Tromey  <tom@tromey.com>
6755
6756         * configure: Rebuild.
6757         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
6758
6759 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
6760
6761         PR server/23158:
6762         * regformats/regdat.sh: Adjust script, following the addition
6763         of the new expedite_regs parameter to init_target_desc.
6764
6765 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
6766     
6767         PR gdb/23127
6768         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
6769         set_gdbarch_significant_addr_bit.
6770         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
6771         set_gdbarch_significant_addr_bit.
6772         * utils.c (address_significant): Update to sign extend addr.
6773
6774 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
6775
6776         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
6777         (xtensa_linux_init_abi): Limit tdep->num_regs by
6778         tdep->num_nopriv_regs.
6779         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
6780         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
6781         not initialized.
6782
6783 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
6784
6785         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
6786
6787 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
6788
6789         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
6790         (I387_MXCSR_INIT_VAL): New constant.
6791         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
6792         buffer if it was supplied by the inferior.
6793         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
6794         (i387_xsave_get_clear_bv): New function.
6795         (i387_supply_xsave): Only read x87 control registers from the
6796         xsave buffer if the feature is enabled, and the state will have
6797         been written, otherwise, provide a suitable default.
6798         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
6799         including x87 control registers.  Update control registers if they
6800         have changed from the default value, and mark features as enabled
6801         as required.
6802         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
6803
6804 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
6805
6806         * spu-tdep.c (info_spu_event_command): Fix output formatting.
6807
6808 2018-05-07  Tom Tromey  <tom@tromey.com>
6809
6810         * configure: Rebuild.
6811         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
6812
6813 2018-05-07  Tom Tromey  <tom@tromey.com>
6814
6815         PR tdep/20362:
6816         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
6817         bit.  Use correct value for VDIV.
6818
6819 2018-05-04  Tom Tromey  <tom@tromey.com>
6820
6821         * configure: Rebuild.
6822         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
6823
6824 2018-05-04  Tom Tromey  <tom@tromey.com>
6825
6826         * linux-record.c (record_linux_system_call) <case
6827         RECORD_SYS_RECVFROM>: Add "break".
6828
6829 2018-05-04  Tom Tromey  <tom@tromey.com>
6830
6831         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
6832         Add missing "break".
6833         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
6834         Add missing "break".
6835
6836 2018-05-04  Tom Tromey  <tom@tromey.com>
6837
6838         * rs6000-tdep.c (ppc_process_record_op4)
6839         (ppc_process_record_op63): Add fall-through comment.
6840
6841 2018-05-04  Tom Tromey  <tom@tromey.com>
6842
6843         * i386-tdep.c (i386_process_record): Add fall-through comment.
6844
6845 2018-05-04  Tom Tromey  <tom@tromey.com>
6846
6847         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
6848         comment.
6849
6850 2018-05-04  Tom Tromey  <tom@tromey.com>
6851
6852         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
6853         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
6854         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
6855         comment.
6856         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
6857         comment.
6858         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
6859         comment.
6860
6861 2018-05-04  Tom Tromey  <tom@tromey.com>
6862
6863         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
6864
6865 2018-05-04  Tom Tromey  <tom@tromey.com>
6866
6867         * s390-tdep.c (s390_process_record): Fix fall-through comments.
6868         * xcoffread.c (scan_xcoff_symtab): Move comment later.
6869         * symfile.c (section_is_mapped): Fix fall-through comment.
6870         * stabsread.c (define_symbol, read_member_functions): Fix
6871         fall-through comment.
6872         * s390-linux-tdep.c (s390_process_record): Fix fall-through
6873         comment.
6874         * remote.c (remote_wait_as): Fix fall-through comment.
6875         * p-exp.y (yylex): Fix fall-through comment.
6876         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
6877         comment.
6878         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
6879         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
6880         * jv-exp.y (yylex): Fix fall-through comment.
6881         * go-exp.y (lex_one_token): Fix fall-through comment.
6882         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
6883         fall-through comment.
6884         * f-exp.y (yylex): Fix fall-through comment.
6885         * dwarf2read.c (process_die): Fix fall-through comments.
6886         * dbxread.c (process_one_symbol): Fix fall-through comment.
6887         * d-exp.y (lex_one_token): Fix fall-through comment.
6888         * cp-name-parser.y (yylex): Fix fall-through comment.
6889         * coffread.c (coff_symtab_read): Fix fall-through comment.
6890         * c-exp.y (lex_one_token): Fix fall-through comment.
6891         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
6892         comment.
6893         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
6894         comment.
6895
6896 2018-05-04  Tom Tromey  <tom@tromey.com>
6897
6898         PR python/22730:
6899         * NEWS: Mention gdb.execute change.
6900         * gdbcmd.h (execute_control_command): Don't declare.
6901         * python/python.c (execute_gdb_command): Use read_command_lines_1,
6902         execute_control_commands, execute_control_commands_to_string.
6903         * cli/cli-script.h (execute_control_commands)
6904         (execute_control_commands_to_string): Declare.
6905         (execute_control_command): Add from_tty parameter.
6906         * cli/cli-script.c (execute_control_commands)
6907         (execute_control_commands_to_string): New functions.
6908         (execute_user_command): Use execute_control_commands.
6909         (execute_control_command_1): Add "from_tty" parameter.  Update.
6910         (execute_control_command): Likewise.
6911
6912 2018-05-04  Tom Tromey  <tom@tromey.com>
6913
6914         PR python/22731:
6915         * NEWS: Mention that breakpoint commands are writable.
6916         * python/py-breakpoint.c (bppy_set_commands): New function.
6917         (breakpoint_object_getset) <"commands">: Use it.
6918
6919 2018-05-04  Tom Tromey  <tom@tromey.com>
6920
6921         * tracepoint.c (actions_command): Update.
6922         * mi/mi-cmd-break.c (mi_command_line_array)
6923         (mi_command_line_array_cnt, mi_command_line_array_ptr)
6924         (mi_read_next_line): Remove.
6925         (mi_cmd_break_commands): Update.
6926         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
6927         function_view.
6928         * cli/cli-script.c (get_command_line): Update.
6929         (process_next_line): Use function_view.  Constify.
6930         (recurse_read_control_structure, read_command_lines)
6931         (read_command_lines_1): Change argument types to function_view.
6932         (do_define_command, document_command): Update.
6933         * breakpoint.h (check_tracepoint_command): Don't declare.
6934         * breakpoint.c (check_tracepoint_command): Remove.
6935         (commands_command_1, create_tracepoint_from_upload): Update.
6936
6937 2018-05-04  Tom Tromey  <tom@tromey.com>
6938
6939         PR gdb/11750:
6940         * cli/cli-script.h (enum command_control_type) <define_control>:
6941         New constant.
6942         * cli/cli-script.c (multi_line_command_p): Handle define_control.
6943         (build_command_line, execute_control_command_1)
6944         (process_next_line): Likewise.
6945         (do_define_command): New function, extracted from define_command.
6946         (define_command): Use it.
6947
6948 2018-05-04  Tom Tromey  <tom@tromey.com>
6949
6950         * tracepoint.c (actions_command): Update.
6951         * cli/cli-script.h (read_command_lines): Update.
6952         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
6953         (MAX_TMPBUF): Remove define.
6954         (define_command): Use string_printf.
6955         (document_command): Likewise.
6956         * breakpoint.c (commands_command_1): Update.
6957
6958 2018-05-04  Tom Tromey  <tom@tromey.com>
6959
6960         * top.c (execute_command): Update.
6961         * cli/cli-script.h (print_command_lines): Now varargs.
6962         * cli/cli-script.c (print_command_lines): Now varargs.
6963         (execute_control_command_1) <case while_control, case if_control>:
6964         Update.
6965
6966 2018-05-04  Tom Tromey  <tom@tromey.com>
6967
6968         * tracepoint.c (all_tracepoint_actions): Rename from
6969         all_tracepoint_actions_and_cleanup.  Change return type.
6970         (actions_command, encode_actions_1, encode_actions)
6971         (trace_dump_actions, tdump_command): Update.
6972         * remote.c (remote_download_command_source): Update.
6973         * python/python.c (gdbpy_eval_from_control_command)
6974         (python_command, python_interactive_command): Update.
6975         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
6976         * guile/guile.c (guile_command)
6977         (gdbscm_eval_from_control_command, guile_command): Update.
6978         * compile/compile.c (compile_code_command)
6979         (compile_print_command, compile_to_object): Update.
6980         * cli/cli-script.h (struct command_lines_deleter): New.
6981         (counted_command_line): New typedef.
6982         (struct command_line): Add constructor, destructor.
6983         <body_list>: Remove.
6984         <body_list_0, body_list_1>: New members.
6985         (command_line_up): Remove typedef.
6986         (read_command_lines, read_command_lines_1, get_command_line):
6987         Update.
6988         (copy_command_lines): Don't declare.
6989         * cli/cli-script.c (build_command_line): Use "new".
6990         (get_command_line): Return counted_command_line.
6991         (print_command_lines, execute_user_command)
6992         (execute_control_command_1, while_command, if_command): Update.
6993         (realloc_body_list): Remove.
6994         (process_next_line, recurse_read_control_structure): Update.
6995         (read_command_lines, read_command_lines_1): Return counted_command_line.
6996         (free_command_lines): Use "delete".
6997         (copy_command_lines): Remove.
6998         (define_command, document_command, show_user_1): Update.
6999         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
7000         a counted_command_line.
7001         * breakpoint.h (counted_command_line): Remove typedef.
7002         (breakpoint_set_commands): Update.
7003         * breakpoint.c (check_no_tracepoint_commands)
7004         (validate_commands_for_breakpoint): Update.
7005         (breakpoint_set_commands): Change commands to be a
7006         counted_command_line.
7007         (commands_command_1, update_dprintf_command_list)
7008         (create_tracepoint_from_upload): Update.
7009
7010 2018-05-04  Tom Tromey  <tom@tromey.com>
7011
7012         * cli/cli-decode.h (cmd_list_element): New constructor.
7013         (~cmd_list_element): New destructor.
7014         (struct cmd_list_element): Add initializers.
7015         * cli/cli-decode.c (do_add_cmd): Use "new".
7016         (delete_cmd): Use "delete".
7017
7018 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
7019             Pedro Alves <palves@redhat.com>
7020
7021         PR breakpoints/19806 and support for PR external/20207.
7022         * NEWS: Mention Aarch64 watchpoint improvements.
7023         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
7024         watchpoints and PR external/20207 watchpoints.
7025         * nat/aarch64-linux-hw-point.c
7026         (kernel_supports_any_contiguous_range): New.
7027         (aarch64_watchpoint_offset): New.
7028         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
7029         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
7030         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
7031         (aarch64_align_watchpoint): New parameters aligned_offset_p and
7032         next_addr_orig_p.  Support PR external/20207 watchpoints.
7033         (aarch64_downgrade_regs): New.
7034         (aarch64_dr_state_insert_one_point): New parameters offset and
7035         addr_orig.
7036         (aarch64_dr_state_remove_one_point): Likewise.
7037         (aarch64_handle_breakpoint): Update caller.
7038         (aarch64_handle_aligned_watchpoint): Likewise.
7039         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
7040         aligned_offset.
7041         (aarch64_linux_set_debug_regs): Remove const from state.  Call
7042         aarch64_downgrade_regs.
7043         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
7044         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
7045         (DR_CONTROL_MASK): ... this.
7046         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
7047         (unsigned int aarch64_watchpoint_offset): New prototype.
7048         (aarch64_linux_set_debug_regs): Remove const from state.
7049         * utils.c (align_up, align_down): Move to ...
7050         * common/common-utils.c (align_up, align_down): ... here.
7051         * utils.h (align_up, align_down): Move to ...
7052         * common/common-utils.h (align_up, align_down): ... here.
7053
7054 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
7055
7056         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
7057         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
7058         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
7059         Re-implement to match the ABI as summarized in GCC's
7060         gcc/config/sparc/sparc.c.  All callers updated.
7061         (sparc32_store_arguments): Remove assertion.
7062
7063 2018-05-04  Tom Tromey  <tom@tromey.com>
7064
7065         * printcmd.c: Don't include tui.h.
7066         (decode_format): Use skip_spaces.
7067
7068 2018-05-04  Tom Tromey  <tom@tromey.com>
7069
7070         PR gdb/22619:
7071         * printcmd.c (last_count): New global.
7072         (x_command): Use saved count when repeating.
7073
7074 2018-05-04  Tom Tromey  <tom@tromey.com>
7075
7076         * nto-procfs.c (do_closedir_cleanup): Remove.
7077         (procfs_pidlist): Use gdb_dir_up.
7078         * procfs.c (do_closedir_cleanup): Remove.
7079         (proc_update_threads): Use gdb_dir_up.
7080         * common/filestuff.h (struct gdb_dir_deleter): New.
7081         (gdb_dir_up): New typedef.
7082
7083 2018-05-04  Tom Tromey  <tom@tromey.com>
7084
7085         * ada-lang.c (print_mention_exception): Use std::string.
7086
7087 2018-05-04  Tom Tromey  <tom@tromey.com>
7088
7089         * ada-lang.c (create_excep_cond_exprs): Update.
7090         (ada_exception_catchpoint_cond_string): Use std::string.
7091
7092 2018-05-04  Tom Tromey  <tom@tromey.com>
7093
7094         * ada-lang.c (xget_renaming_scope): Return std::string.
7095         (old_renaming_is_invisible): Update.
7096
7097 2018-05-04  Tom Tromey  <tom@tromey.com>
7098
7099         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
7100         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
7101
7102 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
7103
7104         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
7105
7106 2018-05-04  Tom Tromey  <tom@tromey.com>
7107
7108         * remote.c (remote_query_supported_append): Change type.
7109         (remote_check_symbols): Update.
7110
7111 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
7112
7113         PR gdb/11420
7114         * configure.ac: Prepend libpython.
7115         * python/python-config.py: Likewise.
7116         * configure: Regenerate.
7117
7118 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
7119
7120         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
7121
7122 2018-05-03  Pedro Alves  <palves@redhat.com>
7123
7124         * s390-linux-nat.c
7125         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
7126         override.  Write 'true' instead of '1'.
7127         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
7128         declaration.
7129
7130 2018-05-02  Pedro Alves  <palves@redhat.com>
7131
7132         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
7133         add_inf_child_target.
7134         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
7135         add_inf_child_target.
7136         * aix-thread.c (aix_thread_target_info): New.
7137         (aix_thread_target) <shortname, longname, doc>: Delete.
7138         <info>: New.
7139         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
7140         add_inf_child_target.
7141         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
7142         add_inf_child_target.
7143         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
7144         add_inf_child_target.
7145         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
7146         add_inf_child_target.
7147         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
7148         add_inf_child_target.
7149         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
7150         add_inf_child_target.
7151         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
7152         add_inf_child_target.
7153         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
7154         add_inf_child_target.
7155         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
7156         add_inf_child_target.
7157         * bfd-target.c (target_bfd_target_info): New.
7158         (target_bfd) <shortname, longname, doc>: Delete.
7159         <info>: New.
7160         * bsd-kvm.c (bsd_kvm_target_info): New.
7161         (bsd_kvm_target) <shortname, longname, doc>: Delete.
7162         <info>: New.
7163         (bsd_kvm_target::open): Rename to ...
7164         (bsd_kvm_target_open): ... this.  Adjust.
7165         * bsd-uthread.c (bsd_uthread_target_info): New.
7166         (bsd_uthread_target) <shortname, longname, doc>: Delete.
7167         <info>: New.
7168         * corefile.c (core_file_command): Adjust.
7169         * corelow.c (core_target_info): New.
7170         (core_target) <shortname, longname, doc>: Delete.
7171         <info>: New.
7172         (core_target::open): Rename to ...
7173         (core_target_open): ... this.  Adjust.
7174         * ctf.c (ctf_target_info): New.
7175         (ctf_target) <shortname, longname, doc>: Delete.
7176         <info>: New.
7177         (ctf_target::open): Rename to ...
7178         (ctf_target_open): ... this.
7179         (_initialize_ctf): Adjust.
7180         * exec.c (exec_target_info): New.
7181         (exec_target) <shortname, longname, doc>: Delete.
7182         <info>: New.
7183         (exec_target::open): Rename to ...
7184         (exec_target_open): ... this.
7185         * gdbcore.h (core_target_open): Declare.
7186         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
7187         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
7188         add_inf_child_target.
7189         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
7190         add_inf_child_target.
7191         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
7192         add_inf_child_target.
7193         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
7194         add_inf_child_target.
7195         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
7196         add_inf_child_target.
7197         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
7198         add_inf_child_target.
7199         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
7200         add_inf_child_target.
7201         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
7202         add_inf_child_target.
7203         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
7204         add_inf_child_target.
7205         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
7206         add_inf_child_target.
7207         * inf-child.c (inf_child_target_info): New.
7208         (inf_child_target::info): New.
7209         (inf_child_open_target): Remove 'target' parameter.  Use
7210         get_native_target instead.
7211         (inf_child_target::open): Delete.
7212         (add_inf_child_target): New.
7213         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
7214         Delete.
7215         <info>: New.
7216         (add_inf_child_target): Declare.
7217         (inf_child_open_target): Declare.
7218         * linux-thread-db.c (thread_db_target_info): New.
7219         (thread_db_target) <shortname, longname, doc>: Delete.
7220         <info>: New.
7221         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
7222         add_inf_child_target.
7223         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
7224         add_inf_child_target.
7225         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
7226         add_inf_child_target.
7227         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
7228         add_inf_child_target.
7229         * make-target-delegates (print_class): Adjust.
7230         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
7231         add_inf_child_target.
7232         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
7233         add_inf_child_target.
7234         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
7235         add_inf_child_target.
7236         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
7237         add_inf_child_target.
7238         * nto-procfs.c (nto_native_target_info): New.
7239         (nto_procfs_target_native) <shortname, longname, doc>:
7240         Delete.
7241         <info>: New.
7242         (nto_procfs_target_info): New.
7243         (nto_procfs_target_procfs) <shortname, longname, doc>:
7244         Delete.
7245         <info>: New.
7246         (init_procfs_targets): Adjust.
7247         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
7248         add_inf_child_target.
7249         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
7250         add_inf_child_target.
7251         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
7252         add_inf_child_target.
7253         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
7254         add_inf_child_target.
7255         * ravenscar-thread.c (ravenscar_target_info): New.
7256         (ravenscar_thread_target) <shortname, longname, doc>:
7257         Delete.
7258         <info>: New.
7259         * record-btrace.c (record_btrace_target_info):
7260         (record_btrace_target) <shortname, longname, doc>: Delete.
7261         <info>: New.
7262         (record_btrace_target::open): Rename to ...
7263         (record_btrace_target_open): ... this.  Adjust.
7264         * record-full.c (record_longname, record_doc): New.
7265         (record_full_base_target) <shortname, longname, doc>: Delete.
7266         <info>: New.
7267         (record_full_target_info): New.
7268         (record_full_target): <shortname>: Delete.
7269         <info>: New.
7270         (record_full_core_open_1, record_full_open_1): Update comments.
7271         (record_full_base_target::open): Rename to ...
7272         (record_full_open): ... this.
7273         (cmd_record_full_restore): Update.
7274         (_initialize_record_full): Update.
7275         * remote-sim.c (remote_sim_target_info): New.
7276         (gdbsim_target) <shortname, longname, doc>: Delete.
7277         <info>: New.
7278         (gdbsim_target::open): Rename to ...
7279         (gdbsim_target_open): ... this.
7280         (_initialize_remote_sim): Adjust.
7281         * remote.c (remote_doc): New.
7282         (remote_target_info): New.
7283         (remote_target) <shortname, longname, doc>: Delete.
7284         <info>: New.
7285         (extended_remote_target_info): New.
7286         (extended_remote_target) <shortname, longname, doc>: Delete.
7287         <info>: New.
7288         (remote_target::open_1): Make static.  Adjust.
7289         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
7290         * s390-linux-nat.c (_initialize_s390_nat): Use
7291         add_inf_child_target.
7292         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
7293         add_inf_child_target.
7294         * sol-thread.c (thread_db_target_info): New.
7295         (sol_thread_target) <shortname, longname, doc>: Delete.
7296         <info>: New.
7297         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
7298         add_inf_child_target.
7299         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
7300         add_inf_child_target.
7301         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
7302         add_inf_child_target.
7303         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
7304         add_inf_child_target.
7305         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
7306         add_inf_child_target.
7307         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
7308         add_inf_child_target.
7309         * spu-linux-nat.c (_initialize_spu_nat): Use
7310         add_inf_child_target.
7311         * spu-multiarch.c (spu_multiarch_target_info): New.
7312         (spu_multiarch_target) <shortname, longname, doc>: Delete.
7313         <info>: New.
7314         * target-delegates.c: Regenerate.
7315         * target.c: Include <unordered_map>.
7316         (target_ops_p): Delete.
7317         (DEF_VEC_P(target_ops_p)): Delete.
7318         (target_factories): New.
7319         (test_target_info): New.
7320         (test_target_ops::info): New.
7321         (open_target): Adjust to use target_factories.
7322         (add_target_with_completer): Rename to ...
7323         (add_target): ... this.  Change prototype.  Register target_info
7324         and open callback in target_factories.  Register target_info in
7325         command context instead of target_ops.
7326         (add_target): Delete old implementation.
7327         (add_deprecated_target_alias): Change prototype.  Adjust.
7328         (the_native_target): New.
7329         (set_native_target, get_native_target): New.
7330         (find_default_run_target): Use the_native_target.
7331         (find_attach_target, find_run_target): Simplify.
7332         (target_ops::open): Delete.
7333         (dummy_target_info): New.
7334         (dummy_target::shortname, dummy_target::longname)
7335         (dummy_target::doc): Delete.
7336         (dummy_target::info): New.
7337         (debug_target::shortname, debug_target::longname)
7338         (debug_target::doc): Delete.
7339         (debug_target::info): New.
7340         * target.h (struct target_info): New.
7341         (target_ops::~target_ops): Add comment.
7342         (target_ops::info): New.
7343         (target_ops::shortname, target_ops::longname, target_ops::doc): No
7344         longer virtual.  Implement in terms of target_info.
7345         (set_native_target, get_native_target): Declare.
7346         (target_open_ftype): New.
7347         (add_target, add_target_with_completer)
7348         (add_deprecated_target_alias): Change prototype.
7349         (test_target) <shortname, longname, doc>: Delete.
7350         <info>: New.
7351         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
7352         add_inf_child_target.
7353         * tracefile-tfile.c (tfile_target_info): New.
7354         (tfile_target) <shortname, longname, doc>: Delete.
7355         <info>: New.
7356         (tfile_target::open): Rename to ...
7357         (tfile_target_open): ... this.
7358         (_initialize_tracefile_tfile): Adjust.
7359         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
7360         add_inf_child_target.
7361         * windows-nat.c (_initialize_windows_nat): Use
7362         add_inf_child_target.
7363         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
7364         add_inf_child_target.
7365
7366 2018-05-02  Pedro Alves  <palves@redhat.com>
7367
7368         * linux-nat.h (linux_nat_target) <low_new_thread,
7369         low_delete_thread, low_new_fork, low_forget_process,
7370         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
7371         New virtual methods.
7372         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
7373         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
7374         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
7375         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
7376         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
7377         Delete.
7378         * linux-fork.c (delete_fork): Adjust to call low method.
7379         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
7380         (linux_nat_new_fork, linux_nat_forget_process_hook)
7381         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
7382         (linux_nat_status_is_event):
7383         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
7384         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
7385         to call low method.
7386         (sigtrap_is_event): Rename to ...
7387         (linux_nat_target::low_status_is_event): ... this.
7388         (linux_nat_set_status_is_event): Delete.
7389         (save_stop_reason, linux_nat_wait_1)
7390         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
7391         low methods.
7392         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
7393         (linux_nat_set_new_fork, linux_nat_set_forget_process)
7394         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
7395         (linux_nat_set_prepare_to_resume): Delete.
7396         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
7397         low virtual methods.
7398         * amd64-linux-nat.c: Likewise.
7399         * arm-linux-nat.c: Likewise.
7400         * i386-linux-nat.c: Likewise.
7401         * ia64-linux-nat.c: Likewise.
7402         * mips-linux-nat.c: Likewise.
7403         * ppc-linux-nat.c: Likewise.
7404         * s390-linux-nat.c: Likewise.
7405         * sparc64-linux-nat.c: Likewise.
7406         * x86-linux-nat.c: Likewise.
7407         * x86-linux-nat.h: Include "nat/x86-linux.h".
7408         (x86_linux_nat_target) <low_new_fork, low_forget_process,
7409         low_prepare_to_resume, low_new_thread, low_delete_thread>:
7410         Override methods.
7411
7412 2018-05-02  Pedro Alves  <palves@redhat.com>
7413
7414         * target.h (target_ops)
7415         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
7416         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
7417         stopped_by_watchpoint, have_continuable_watchpoint,
7418         stopped_data_address, watchpoint_addr_within_range,
7419         can_accel_watchpoint_condition, can_run, thread_alive,
7420         has_all_memory, has_memory, has_stack, has_registers,
7421         has_execution, can_async_p, is_async_p, supports_non_stop,
7422         always_non_stop_p, can_execute_reverse, supports_multi_process,
7423         supports_enable_disable_tracepoint,
7424         supports_disable_randomization, supports_string_tracing,
7425         supports_evaluation_of_breakpoint_conditions,
7426         can_run_breakpoint_commands, filesystem_is_local,
7427         can_download_tracepoint, get_trace_state_variable_value,
7428         set_trace_notes, get_tib_address, use_agent, can_use_agent,
7429         record_is_replaying, record_will_replay,
7430         augmented_libraries_svr4_read>: Adjust to return bool.
7431         * aarch64-linux-nat.c: All implementations adjusted.
7432         * aix-thread.c: All implementations adjusted.
7433         * arm-linux-nat.c: All implementations adjusted.
7434         * breakpoint.c: All implementations adjusted.
7435         * bsd-kvm.c: All implementations adjusted.
7436         * bsd-uthread.c: All implementations adjusted.
7437         * corelow.c: All implementations adjusted.
7438         * ctf.c: All implementations adjusted.
7439         * darwin-nat.c: All implementations adjusted.
7440         * darwin-nat.h: All implementations adjusted.
7441         * exec.c: All implementations adjusted.
7442         * fbsd-nat.c: All implementations adjusted.
7443         * fbsd-nat.h: All implementations adjusted.
7444         * gnu-nat.c: All implementations adjusted.
7445         * gnu-nat.h: All implementations adjusted.
7446         * go32-nat.c: All implementations adjusted.
7447         * ia64-linux-nat.c: All implementations adjusted.
7448         * inf-child.c: All implementations adjusted.
7449         * inf-child.h: All implementations adjusted.
7450         * inf-ptrace.c: All implementations adjusted.
7451         * inf-ptrace.h: All implementations adjusted.
7452         * linux-nat.c: All implementations adjusted.
7453         * linux-nat.h: All implementations adjusted.
7454         * mips-linux-nat.c: All implementations adjusted.
7455         * nto-procfs.c: All implementations adjusted.
7456         * ppc-linux-nat.c: All implementations adjusted.
7457         * procfs.c: All implementations adjusted.
7458         * ravenscar-thread.c: All implementations adjusted.
7459         * record-btrace.c: All implementations adjusted.
7460         * record-full.c: All implementations adjusted.
7461         * remote-sim.c: All implementations adjusted.
7462         * remote.c: All implementations adjusted.
7463         * s390-linux-nat.c: All implementations adjusted.
7464         * sol-thread.c: All implementations adjusted.
7465         * spu-multiarch.c: All implementations adjusted.
7466         * target-delegates.c: All implementations adjusted.
7467         * target.c: All implementations adjusted.
7468         * target.h: All implementations adjusted.
7469         * tracefile-tfile.c: All implementations adjusted.
7470         * tracefile.c: All implementations adjusted.
7471         * tracefile.h: All implementations adjusted.
7472         * windows-nat.c: All implementations adjusted.
7473         * x86-linux-nat.h: All implementations adjusted.
7474         * x86-nat.h: All implementations adjusted.
7475
7476 2018-05-02  Pedro Alves  <palves@redhat.com>
7477
7478         * make-target-delegates (scan_target_h): Don't trim lines here.
7479         Replace sequences of tabs and/or whitespace with a single
7480         whitespace.
7481         (top level, parsing methods): Trim each line before processing it
7482         here.
7483
7484 2018-05-02  Pedro Alves  <palves@redhat.com>
7485             John Baldwin  <jhb@freebsd.org>
7486
7487         * target.h (enum strata) <debug_stratum>: New.
7488         (struct target_ops) <all delegation methods>: Replace by C++
7489         virtual methods, and drop "to_" prefix.  All references updated
7490         throughout.
7491         <to_shortname, to_longname, to_doc, to_data,
7492         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
7493         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
7494         virtual methods.  All references updated throughout.
7495         <can_attach, supports_terminal_ours, can_create_inferior,
7496         get_thread_control_capabilities, attach_no_wait>: New
7497         virtual methods.
7498         <insert_breakpoint, remove_breakpoint>: Now
7499         TARGET_DEFAULT_NORETURN methods.
7500         <info_proc>: Now returns bool.
7501         <to_magic>: Delete.
7502         (OPS_MAGIC): Delete.
7503         (current_target): Delete.  All references replaced by references
7504         to ...
7505         (target_stack): ... this.  New.
7506         (target_shortname, target_longname): Adjust.
7507         (target_can_run): Now a function declaration.
7508         (default_child_has_all_memory, default_child_has_memory)
7509         (default_child_has_stack, default_child_has_registers)
7510         (default_child_has_execution): Remove target_ops parameter.
7511         (complete_target_initialization): Delete.
7512         (memory_breakpoint_target): New template class.
7513         (test_target_ops): Refactor as a C++ class with virtual methods.
7514         * make-target-delegates (NAME_PART): Tighten.
7515         (POINTER_PART, CP_SYMBOL): New.
7516         (SIMPLE_RETURN_PART): Reimplement.
7517         (VEC_RETURN_PART): Expect less.
7518         (RETURN_PART, VIRTUAL_PART): New.
7519         (METHOD): Adjust to C++ virtual methods.
7520         (scan_target_h): Remove reference to C99.
7521         (dname): Output "target_ops::" prefix.
7522         (write_function_header): Adjust to output a C++ class method.
7523         (write_declaration): New.
7524         (write_delegator): Adjust to output a C++ class method.
7525         (tdname): Output "dummy_target::" prefix.
7526         (write_tdefault, write_debugmethod): Adjust to output a C++ class
7527         method.
7528         (tdefault_names, debug_names): Delete.
7529         (return_types, tdefaults, styles, argtypes_array): New.
7530         (top level): All methods are delegators.
7531         (print_class): New.
7532         (top level): Print dummy_target and debug_target classes.
7533         * target-delegates.c: Regenerate.
7534         * target-debug.h (target_debug_print_enum_info_proc_what)
7535         (target_debug_print_thread_control_capabilities)
7536         (target_debug_print_thread_info_p): New.
7537         * target.c (dummy_target): Delete.
7538         (the_dummy_target, the_debug_target): New.
7539         (target_stack): Now extern.
7540         (set_targetdebug): Push/unpush debug target.
7541         (default_child_has_all_memory, default_child_has_memory)
7542         (default_child_has_stack, default_child_has_registers)
7543         (default_child_has_execution): Remove target_ops parameter.
7544         (complete_target_initialization): Delete.
7545         (add_target_with_completer): No longer call
7546         complete_target_initialization.
7547         (target_supports_terminal_ours): Use regular delegation.
7548         (update_current_target): Delete.
7549         (push_target): No longer check magic number.  Don't call
7550         update_current_target.
7551         (unpush_target): Don't call update_current_target.
7552         (target_is_pushed): No longer check magic number.
7553         (target_require_runnable): Skip for all stratums over
7554         process_stratum.
7555         (target_ops::info_proc): New.
7556         (target_info_proc): Use find_target_at and
7557         find_default_run_target.
7558         (target_supports_disable_randomization): Use regular delegation.
7559         (target_get_osdata): Use find_target_at.
7560         (target_ops::open, target_ops::close, target_ops::can_attach)
7561         (target_ops::attach, target_ops::can_create_inferior)
7562         (target_ops::create_inferior, target_ops::can_run)
7563         (target_can_run): New.
7564         (default_fileio_target): Use regular delegation.
7565         (target_ops::fileio_open, target_ops::fileio_pwrite)
7566         (target_ops::fileio_pread, target_ops::fileio_fstat)
7567         (target_ops::fileio_close, target_ops::fileio_unlink)
7568         (target_ops::fileio_readlink): New.
7569         (target_fileio_open_1, target_fileio_unlink)
7570         (target_fileio_readlink): Always call the target method.  Handle
7571         FILEIO_ENOSYS.
7572         (return_zero, return_zero_has_execution): Delete.
7573         (init_dummy_target): Delete.
7574         (dummy_target::dummy_target, dummy_target::shortname)
7575         (dummy_target::longname, dummy_target::doc)
7576         (debug_target::debug_target, debug_target::shortname)
7577         (debug_target::longname, debug_target::doc): New.
7578         (target_supports_delete_record): Use regular delegation.
7579         (setup_target_debug): Delete.
7580         (maintenance_print_target_stack): Skip debug_stratum.
7581         (initialize_targets): Instantiate the_dummy_target and
7582         the_debug_target.
7583         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
7584         use target_stack.
7585         (target_auxv_search, fprint_target_auxv): Adjust.
7586         (info_auxv_command): Adjust to use target_stack.
7587         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
7588         * exceptions.c (print_flush): Handle a NULL target_stack.
7589         * regcache.c (target_ops_no_register): Refactor as class with
7590         virtual methods.
7591
7592         * exec.c (exec_target): New class.
7593         (exec_ops): Now an exec_target.
7594         (exec_open, exec_close_1, exec_get_section_table)
7595         (exec_xfer_partial, exec_files_info, exec_has_memory)
7596         (exec_make_note_section): Refactor as exec_target methods.
7597         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
7598         Delete.
7599         (exec_target::find_memory_regions): New.
7600         (_initialize_exec): Don't call init_exec_ops.
7601         * gdbcore.h (exec_file_clear): Delete.
7602
7603         * corefile.c (core_target): Delete.
7604         (core_file_command): Adjust.
7605         * corelow.c (core_target): New class.
7606         (the_core_target): New.
7607         (core_close): Remove target_ops parameter.
7608         (core_close_cleanup): Adjust.
7609         (core_target::close): New.
7610         (core_open, core_detach, get_core_registers, core_files_info)
7611         (core_xfer_partial, core_thread_alive, core_read_description)
7612         (core_pid_to_str, core_thread_name, core_has_memory)
7613         (core_has_stack, core_has_registers, core_info_proc): Rework as
7614         core_target methods.
7615         (ignore, core_remove_breakpoint, init_core_ops): Delete.
7616         (_initialize_corelow): Initialize the_core_target.
7617         * gdbcore.h (core_target): Delete.
7618         (the_core_target): New.
7619
7620         * ctf.c: (ctf_target): New class.
7621         (ctf_ops): Now a ctf_target.
7622         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
7623         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
7624         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
7625         methods.
7626         (init_ctf_ops): Delete.
7627         (_initialize_ctf): Don't call it.
7628         * tracefile-tfile.c (tfile_target): New class.
7629         (tfile_ops): Now a tfile_target.
7630         (tfile_open, tfile_close, tfile_files_info)
7631         (tfile_get_tracepoint_status, tfile_trace_find)
7632         (tfile_fetch_registers, tfile_xfer_partial)
7633         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
7634         Refactor as tfile_target methods.
7635         (tfile_xfer_partial_features): Remove target_ops parameter.
7636         (init_tfile_ops): Delete.
7637         (_initialize_tracefile_tfile): Don't call it.
7638         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
7639         (tracefile_has_stack, tracefile_has_registers)
7640         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
7641         tracefile_target methods.
7642         (init_tracefile_ops): Delete.
7643         (tracefile_target::tracefile_target): New.
7644         * tracefile.h: Include "target.h".
7645         (tracefile_target): New class.
7646         (init_tracefile_ops): Delete.
7647
7648         * spu-multiarch.c (spu_multiarch_target): New class.
7649         (spu_ops): Now a spu_multiarch_target.
7650         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
7651         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
7652         (spu_search_memory, spu_mourn_inferior): Refactor as
7653         spu_multiarch_target methods.
7654         (init_spu_ops): Delete.
7655         (_initialize_spu_multiarch): Remove references to init_spu_ops,
7656         complete_target_initialization.
7657
7658         * ravenscar-thread.c (ravenscar_thread_target): New class.
7659         (ravenscar_ops): Now a ravenscar_thread_target.
7660         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
7661         (ravenscar_thread_alive, ravenscar_pid_to_str)
7662         (ravenscar_fetch_registers, ravenscar_store_registers)
7663         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
7664         (ravenscar_stopped_by_hw_breakpoint)
7665         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
7666         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
7667         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
7668         methods.
7669         (init_ravenscar_thread_ops): Delete.
7670         (_initialize_ravenscar): Remove references to
7671         init_ravenscar_thread_ops and complete_target_initialization.
7672
7673         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
7674         (bsd_uthread_target): New class.
7675         (bsd_uthread_ops): Now a bsd_uthread_target.
7676         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
7677         (bsd_uthread_close, bsd_uthread_mourn_inferior)
7678         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
7679         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
7680         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
7681         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
7682         (bsd_uthread_target): Delete function.
7683         (_initialize_bsd_uthread): Remove reference to
7684         complete_target_initialization.
7685
7686         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
7687         (target_bfd): ... this new class.
7688         (target_bfd_xfer_partial, target_bfd_get_section_table)
7689         (target_bfd_close): Refactor as target_bfd methods.
7690         (target_bfd::~target_bfd): New.
7691         (target_bfd_reopen): Adjust.
7692         (target_bfd::close): New.
7693
7694         * record-btrace.c (record_btrace_target): New class.
7695         (record_btrace_ops): Now a record_btrace_target.
7696         (record_btrace_open, record_btrace_stop_recording)
7697         (record_btrace_disconnect, record_btrace_close)
7698         (record_btrace_async, record_btrace_info)
7699         (record_btrace_insn_history, record_btrace_insn_history_range)
7700         (record_btrace_insn_history_from, record_btrace_call_history)
7701         (record_btrace_call_history_range)
7702         (record_btrace_call_history_from, record_btrace_record_method)
7703         (record_btrace_is_replaying, record_btrace_will_replay)
7704         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
7705         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
7706         (record_btrace_store_registers, record_btrace_prepare_to_store)
7707         (record_btrace_to_get_unwinder)
7708         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
7709         (record_btrace_commit_resume, record_btrace_wait)
7710         (record_btrace_stop, record_btrace_can_execute_reverse)
7711         (record_btrace_stopped_by_sw_breakpoint)
7712         (record_btrace_supports_stopped_by_sw_breakpoint)
7713         (record_btrace_stopped_by_hw_breakpoint)
7714         (record_btrace_supports_stopped_by_hw_breakpoint)
7715         (record_btrace_update_thread_list, record_btrace_thread_alive)
7716         (record_btrace_goto_begin, record_btrace_goto_end)
7717         (record_btrace_goto, record_btrace_stop_replaying_all)
7718         (record_btrace_execution_direction)
7719         (record_btrace_prepare_to_generate_core)
7720         (record_btrace_done_generating_core): Refactor as
7721         record_btrace_target methods.
7722         (init_record_btrace_ops): Delete.
7723         (_initialize_record_btrace): Remove reference to
7724         init_record_btrace_ops.
7725         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
7726         the execution_direction global.
7727         (record_full_base_target, record_full_target)
7728         (record_full_core_target): New classes.
7729         (record_full_ops): Now a record_full_target.
7730         (record_full_core_ops): Now a record_full_core_target.
7731         (record_full_target::detach, record_full_target::disconnect)
7732         (record_full_core_target::disconnect)
7733         (record_full_target::mourn_inferior, record_full_target::kill):
7734         New.
7735         (record_full_open, record_full_close, record_full_async): Refactor
7736         as methods of the record_full_base_target class.
7737         (record_full_resume, record_full_commit_resume): Refactor
7738         as methods of the record_full_target class.
7739         (record_full_wait, record_full_stopped_by_watchpoint)
7740         (record_full_stopped_data_address)
7741         (record_full_stopped_by_sw_breakpoint)
7742         (record_full_supports_stopped_by_sw_breakpoint)
7743         (record_full_stopped_by_hw_breakpoint)
7744         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
7745         methods of the record_full_base_target class.
7746         (record_full_store_registers, record_full_xfer_partial)
7747         (record_full_insert_breakpoint, record_full_remove_breakpoint):
7748         Refactor as methods of the record_full_target class.
7749         (record_full_can_execute_reverse, record_full_get_bookmark)
7750         (record_full_goto_bookmark, record_full_execution_direction)
7751         (record_full_record_method, record_full_info, record_full_delete)
7752         (record_full_is_replaying, record_full_will_replay)
7753         (record_full_goto_begin, record_full_goto_end, record_full_goto)
7754         (record_full_stop_replaying): Refactor as methods of the
7755         record_full_base_target class.
7756         (record_full_core_resume, record_full_core_kill)
7757         (record_full_core_fetch_registers)
7758         (record_full_core_prepare_to_store)
7759         (record_full_core_store_registers, record_full_core_xfer_partial)
7760         (record_full_core_insert_breakpoint)
7761         (record_full_core_remove_breakpoint)
7762         (record_full_core_has_execution): Refactor
7763         as methods of the record_full_core_target class.
7764         (record_full_base_target::supports_delete_record): New.
7765         (init_record_full_ops): Delete.
7766         (init_record_full_core_ops): Delete.
7767         (record_full_save): Refactor as method of the
7768         record_full_base_target class.
7769         (_initialize_record_full): Remove references to
7770         init_record_full_ops and init_record_full_core_ops.
7771
7772         * remote.c (remote_target, extended_remote_target): New classes.
7773         (remote_ops): Now a remote_target.
7774         (extended_remote_ops): Now an extended_remote_target.
7775         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
7776         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
7777         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
7778         (remote_pass_signals, remote_set_syscall_catchpoint)
7779         (remote_program_signals, )
7780         (remote_thread_always_alive): Remove target_ops parameter.
7781         (remote_thread_alive, remote_thread_name)
7782         (remote_update_thread_list, remote_threads_extra_info)
7783         (remote_static_tracepoint_marker_at)
7784         (remote_static_tracepoint_markers_by_strid)
7785         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
7786         (remote_open): Refactor as methods of remote_target.
7787         (extended_remote_open, extended_remote_detach)
7788         (extended_remote_attach, extended_remote_post_attach):
7789         (extended_remote_supports_disable_randomization)
7790         (extended_remote_create_inferior): : Refactor as method of
7791         extended_remote_target.
7792         (remote_set_permissions, remote_open_1, remote_detach)
7793         (remote_follow_fork, remote_follow_exec, remote_disconnect)
7794         (remote_resume, remote_commit_resume, remote_stop)
7795         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
7796         (remote_terminal_ours, remote_wait, remote_fetch_registers)
7797         (remote_prepare_to_store, remote_store_registers)
7798         (remote_flash_erase, remote_flash_done, remote_files_info)
7799         (remote_kill, remote_mourn, remote_insert_breakpoint)
7800         (remote_remove_breakpoint, remote_insert_watchpoint)
7801         (remote_watchpoint_addr_within_range)
7802         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
7803         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
7804         (remote_supports_stopped_by_sw_breakpoint)
7805         (remote_stopped_by_hw_breakpoint)
7806         (remote_supports_stopped_by_hw_breakpoint)
7807         (remote_stopped_by_watchpoint, remote_stopped_data_address)
7808         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
7809         (remote_verify_memory): Refactor as methods of remote_target.
7810         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
7811         parameter.
7812         (remote_xfer_partial, remote_get_memory_xfer_limit)
7813         (remote_search_memory, remote_rcmd, remote_memory_map)
7814         (remote_pid_to_str, remote_get_thread_local_address)
7815         (remote_get_tib_address, remote_read_description): Refactor as
7816         methods of remote_target.
7817         (remote_target::fileio_open, remote_target::fileio_pwrite)
7818         (remote_target::fileio_pread, remote_target::fileio_close): New.
7819         (remote_hostio_readlink, remote_hostio_fstat)
7820         (remote_filesystem_is_local, remote_can_execute_reverse)
7821         (remote_supports_non_stop, remote_supports_disable_randomization)
7822         (remote_supports_multi_process, remote_supports_cond_breakpoints)
7823         (remote_supports_enable_disable_tracepoint)
7824         (remote_supports_string_tracing)
7825         (remote_can_run_breakpoint_commands, remote_trace_init)
7826         (remote_download_tracepoint, remote_can_download_tracepoint)
7827         (remote_download_trace_state_variable, remote_enable_tracepoint)
7828         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
7829         (remote_trace_start, remote_get_trace_status)
7830         (remote_get_tracepoint_status, remote_trace_stop)
7831         (remote_trace_find, remote_get_trace_state_variable_value)
7832         (remote_save_trace_data, remote_get_raw_trace_data)
7833         (remote_set_disconnected_tracing, remote_core_of_thread)
7834         (remote_set_circular_trace_buffer, remote_traceframe_info)
7835         (remote_get_min_fast_tracepoint_insn_len)
7836         (remote_set_trace_buffer_size, remote_set_trace_notes)
7837         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
7838         (remote_disable_btrace, remote_teardown_btrace)
7839         (remote_read_btrace, remote_btrace_conf)
7840         (remote_augmented_libraries_svr4_read, remote_load)
7841         (remote_pid_to_exec_file, remote_can_do_single_step)
7842         (remote_execution_direction, remote_thread_handle_to_thread_info):
7843         Refactor as methods of remote_target.
7844         (init_remote_ops, init_extended_remote_ops): Delete.
7845         (remote_can_async_p, remote_is_async_p, remote_async)
7846         (remote_thread_events, remote_upload_tracepoints)
7847         (remote_upload_trace_state_variables): Refactor as methods of
7848         remote_target.
7849         (_initialize_remote): Remove references to init_remote_ops and
7850         init_extended_remote_ops.
7851
7852         * remote-sim.c (gdbsim_target): New class.
7853         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
7854         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
7855         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
7856         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
7857         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
7858         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
7859         Refactor as methods of gdbsim_target.
7860         (gdbsim_ops): Now a gdbsim_target.
7861         (init_gdbsim_ops): Delete.
7862         (gdbsim_cntrl_c): Adjust.
7863         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
7864
7865         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
7866         (the_amd64_linux_nat_target): New.
7867         (amd64_linux_fetch_inferior_registers)
7868         (amd64_linux_store_inferior_registers): Refactor as methods of
7869         amd64_linux_nat_target.
7870         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
7871         * i386-linux-nat.c: Don't include "linux-nat.h".
7872         (i386_linux_nat_target): New class.
7873         (the_i386_linux_nat_target): New.
7874         (i386_linux_fetch_inferior_registers)
7875         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
7876         as methods of i386_linux_nat_target.
7877         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
7878         * inf-child.c (inf_child_ops): Delete.
7879         (inf_child_fetch_inferior_registers)
7880         (inf_child_store_inferior_registers): Delete.
7881         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
7882         methods of inf_child_target.
7883         (inf_child_target::supports_terminal_ours)
7884         (inf_child_target::terminal_init)
7885         (inf_child_target::terminal_inferior)
7886         (inf_child_target::terminal_ours_for_output)
7887         (inf_child_target::terminal_ours, inf_child_target::interrupt)
7888         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
7889         New.
7890         (inf_child_open, inf_child_disconnect, inf_child_close)
7891         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
7892         (inf_child_post_startup_inferior, inf_child_can_run)
7893         (inf_child_pid_to_exec_file): Refactor as methods of
7894         inf_child_target.
7895         (inf_child_follow_fork): Delete.
7896         (inf_child_target::can_create_inferior)
7897         (inf_child_target::can_attach): New.
7898         (inf_child_target::has_all_memory, inf_child_target::has_memory)
7899         (inf_child_target::has_stack, inf_child_target::has_registers)
7900         (inf_child_target::has_execution): New.
7901         (inf_child_fileio_open, inf_child_fileio_pwrite)
7902         (inf_child_fileio_pread, inf_child_fileio_fstat)
7903         (inf_child_fileio_close, inf_child_fileio_unlink)
7904         (inf_child_fileio_readlink, inf_child_use_agent)
7905         (inf_child_can_use_agent): Refactor as methods of
7906         inf_child_target.
7907         (return_zero, inf_child_target): Delete.
7908         (inf_child_target::inf_child_target): New.
7909         * inf-child.h: Include "target.h".
7910         (inf_child_target): Delete function prototype.
7911         (inf_child_target): New class.
7912         (inf_child_open_target, inf_child_mourn_inferior)
7913         (inf_child_maybe_unpush_target): Delete.
7914         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
7915         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
7916         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
7917         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
7918         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
7919         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
7920         (inf_ptrace_wait, inf_ptrace_xfer_partial)
7921         (inf_ptrace_thread_alive, inf_ptrace_files_info)
7922         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
7923         methods of inf_ptrace_target.
7924         (inf_ptrace_target): Delete function.
7925         * inf-ptrace.h: Include "inf-child.h".
7926         (inf_ptrace_target): Delete function declaration.
7927         (inf_ptrace_target): New class.
7928         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
7929         * linux-nat.c (linux_target): New.
7930         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
7931         (linux_nat_target::~linux_nat_target): New.
7932         (linux_child_post_attach, linux_child_post_startup_inferior)
7933         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
7934         (linux_child_remove_fork_catchpoint)
7935         (linux_child_insert_vfork_catchpoint)
7936         (linux_child_remove_vfork_catchpoint)
7937         (linux_child_insert_exec_catchpoint)
7938         (linux_child_remove_exec_catchpoint)
7939         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
7940         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
7941         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
7942         (linux_nat_stopped_data_address)
7943         (linux_nat_stopped_by_sw_breakpoint)
7944         (linux_nat_supports_stopped_by_sw_breakpoint)
7945         (linux_nat_stopped_by_hw_breakpoint)
7946         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
7947         (linux_nat_kill, linux_nat_mourn_inferior)
7948         (linux_nat_xfer_partial, linux_nat_thread_alive)
7949         (linux_nat_update_thread_list, linux_nat_pid_to_str)
7950         (linux_nat_thread_name, linux_child_pid_to_exec_file)
7951         (linux_child_static_tracepoint_markers_by_strid)
7952         (linux_nat_is_async_p, linux_nat_can_async_p)
7953         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
7954         (linux_nat_supports_multi_process)
7955         (linux_nat_supports_disable_randomization, linux_nat_async)
7956         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
7957         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
7958         (linux_nat_fileio_open, linux_nat_fileio_readlink)
7959         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
7960         methods of linux_nat_target.
7961         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
7962         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
7963         parameter.
7964         (check_stopped_by_watchpoint): Adjust.
7965         (linux_xfer_partial): Delete.
7966         (linux_target_install_ops, linux_target, linux_nat_add_target):
7967         Delete.
7968         (linux_nat_target::linux_nat_target): New.
7969         * linux-nat.h: Include "inf-ptrace.h".
7970         (linux_nat_target): New.
7971         (linux_target, linux_target_install_ops, linux_nat_add_target):
7972         Delete function declarations.
7973         (linux_target): Declare global.
7974         * linux-thread-db.c (thread_db_target): New.
7975         (thread_db_target::thread_db_target): New.
7976         (thread_db_ops): Delete.
7977         (the_thread_db_target): New.
7978         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
7979         (thread_db_update_thread_list, thread_db_pid_to_str)
7980         (thread_db_extra_thread_info)
7981         (thread_db_thread_handle_to_thread_info)
7982         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
7983         (thread_db_resume): Refactor as methods of thread_db_target.
7984         (init_thread_db_ops): Delete.
7985         (_initialize_thread_db): Remove reference to init_thread_db_ops.
7986         * x86-linux-nat.c: Don't include "linux-nat.h".
7987         (super_post_startup_inferior): Delete.
7988         (x86_linux_nat_target::~x86_linux_nat_target): New.
7989         (x86_linux_child_post_startup_inferior)
7990         (x86_linux_read_description, x86_linux_enable_btrace)
7991         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
7992         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
7993         methods of x86_linux_nat_target.
7994         (x86_linux_create_target): Delete.  Bits folded ...
7995         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
7996         pointer.
7997         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
7998         (x86_linux_nat_target): New class.
7999         (x86_linux_create_target): Delete.
8000         (x86_linux_add_target): Now takes a linux_nat_target pointer.
8001         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
8002         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
8003         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
8004         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
8005         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
8006         make extern.
8007         (x86_use_watchpoints): Delete.
8008         * x86-nat.h: Include "breakpoint.h" and "target.h".
8009         (x86_use_watchpoints): Delete.
8010         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
8011         (x86_stopped_by_watchpoint, x86_stopped_data_address)
8012         (x86_insert_watchpoint, x86_remove_watchpoint)
8013         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
8014         (x86_stopped_by_hw_breakpoint): New declarations.
8015         (x86_nat_target): New template class.
8016
8017         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
8018         (the_ppc_linux_nat_target): New.
8019         (ppc_linux_fetch_inferior_registers)
8020         (ppc_linux_can_use_hw_breakpoint)
8021         (ppc_linux_region_ok_for_hw_watchpoint)
8022         (ppc_linux_ranged_break_num_registers)
8023         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
8024         (ppc_linux_insert_mask_watchpoint)
8025         (ppc_linux_remove_mask_watchpoint)
8026         (ppc_linux_can_accel_watchpoint_condition)
8027         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
8028         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
8029         (ppc_linux_watchpoint_addr_within_range)
8030         (ppc_linux_masked_watch_num_registers)
8031         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
8032         (ppc_linux_read_description): Refactor as methods of
8033         ppc_linux_nat_target.
8034         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
8035
8036         * procfs.c (procfs_xfer_partial): Delete forward declaration.
8037         (procfs_target): New class.
8038         (the_procfs_target): New.
8039         (procfs_target): Delete function.
8040         (procfs_auxv_parse, procfs_attach, procfs_detach)
8041         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
8042         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
8043         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
8044         (procfs_create_inferior, procfs_update_thread_list)
8045         (procfs_thread_alive, procfs_pid_to_str)
8046         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
8047         (procfs_stopped_data_address, procfs_insert_watchpoint)
8048         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
8049         (proc_find_memory_regions, procfs_info_proc)
8050         (procfs_make_note_section): Refactor as methods of procfs_target.
8051         (_initialize_procfs): Adjust.
8052         * sol-thread.c (sol_thread_target): New class.
8053         (sol_thread_ops): Now a sol_thread_target.
8054         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
8055         (sol_thread_fetch_registers, sol_thread_store_registers)
8056         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
8057         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
8058         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
8059         (init_sol_thread_ops): Delete.
8060         (_initialize_sol_thread): Adjust.  Remove references to
8061         init_sol_thread_ops and complete_target_initialization.
8062
8063         * windows-nat.c (windows_nat_target): New class.
8064         (windows_fetch_inferior_registers)
8065         (windows_store_inferior_registers, windows_resume, windows_wait)
8066         (windows_attach, windows_detach, windows_pid_to_exec_file)
8067         (windows_files_info, windows_create_inferior)
8068         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
8069         (windows_close, windows_pid_to_str, windows_xfer_partial)
8070         (windows_get_tib_address, windows_get_ada_task_ptid)
8071         (windows_thread_name, windows_thread_alive): Refactor as
8072         windows_nat_target methods.
8073         (do_initial_windows_stuff): Adjust.
8074         (windows_target): Delete function.
8075         (_initialize_windows_nat): Adjust.
8076
8077         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
8078         (darwin_mourn_inferior, darwin_kill_inferior)
8079         (darwin_create_inferior, darwin_attach, darwin_detach)
8080         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
8081         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
8082         (darwin_supports_multi_process): Refactor as darwin_nat_target
8083         methods.
8084         (darwin_resume_to, darwin_files_info): Delete.
8085         (_initialize_darwin_inferior): Rename to ...
8086         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
8087         * darwin-nat.h: Include "inf-child.h".
8088         (darwin_nat_target): New class.
8089         (darwin_complete_target): Delete.
8090         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
8091         (darwin_target): New.
8092         (i386_darwin_fetch_inferior_registers)
8093         (i386_darwin_store_inferior_registers): Refactor as methods of
8094         darwin_nat_target.
8095         (darwin_complete_target): Delete, with ...
8096         (_initialize_i386_darwin_nat): ... bits factored out here.
8097
8098         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
8099         (the_alpha_linux_nat_target): New.
8100         (alpha_linux_register_u_offset): Refactor as
8101         alpha_linux_nat_target method.
8102         (_initialize_alpha_linux_nat): Adjust.
8103         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
8104         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
8105         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
8106         methods of linux_nat_trad_target.
8107         (linux_trad_target): Delete.
8108         * linux-nat-trad.h (linux_trad_target): Delete function.
8109         (linux_nat_trad_target): New class.
8110         * mips-linux-nat.c (mips_linux_nat_target): New class.
8111         (super_fetch_registers, super_store_registers, super_close):
8112         Delete.
8113         (the_mips_linux_nat_target): New.
8114         (mips64_linux_regsets_fetch_registers)
8115         (mips64_linux_regsets_store_registers)
8116         (mips64_linux_fetch_registers, mips64_linux_store_registers)
8117         (mips_linux_register_u_offset, mips_linux_read_description)
8118         (mips_linux_can_use_hw_breakpoint)
8119         (mips_linux_stopped_by_watchpoint)
8120         (mips_linux_stopped_data_address)
8121         (mips_linux_region_ok_for_hw_watchpoint)
8122         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
8123         (mips_linux_close): Refactor as methods of mips_linux_nat.
8124         (_initialize_mips_linux_nat): Adjust to C++ification.
8125
8126         * aix-thread.c (aix_thread_target): New class.
8127         (aix_thread_ops): Now an aix_thread_target.
8128         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
8129         (aix_thread_fetch_registers, aix_thread_store_registers)
8130         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
8131         (aix_thread_thread_alive, aix_thread_pid_to_str)
8132         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
8133         Refactor as methods of aix_thread_target.
8134         (init_aix_thread_ops): Delete.
8135         (_initialize_aix_thread): Remove references to init_aix_thread_ops
8136         and complete_target_initialization.
8137         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
8138         (rs6000_nat_target): New class.
8139         (the_rs6000_nat_target): New.
8140         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
8141         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
8142         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
8143         (super_create_inferior): Delete.
8144         (_initialize_rs6000_nat): Adjust to C++ification.
8145
8146         * arm-linux-nat.c (arm_linux_nat_target): New class.
8147         (the_arm_linux_nat_target): New.
8148         (arm_linux_fetch_inferior_registers)
8149         (arm_linux_store_inferior_registers, arm_linux_read_description)
8150         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
8151         (arm_linux_remove_hw_breakpoint)
8152         (arm_linux_region_ok_for_hw_watchpoint)
8153         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
8154         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
8155         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
8156         arm_linux_nat_target.
8157         (_initialize_arm_linux_nat): Adjust to C++ification.
8158
8159         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
8160         (the_aarch64_linux_nat_target): New.
8161         (aarch64_linux_fetch_inferior_registers)
8162         (aarch64_linux_store_inferior_registers)
8163         (aarch64_linux_child_post_startup_inferior)
8164         (aarch64_linux_read_description)
8165         (aarch64_linux_can_use_hw_breakpoint)
8166         (aarch64_linux_insert_hw_breakpoint)
8167         (aarch64_linux_remove_hw_breakpoint)
8168         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
8169         (aarch64_linux_region_ok_for_hw_watchpoint)
8170         (aarch64_linux_stopped_data_address)
8171         (aarch64_linux_stopped_by_watchpoint)
8172         (aarch64_linux_watchpoint_addr_within_range)
8173         (aarch64_linux_can_do_single_step): Refactor as methods of
8174         aarch64_linux_nat_target.
8175         (super_post_startup_inferior): Delete.
8176         (_initialize_aarch64_linux_nat): Adjust to C++ification.
8177
8178         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
8179         (the_hppa_linux_nat_target): New.
8180         (hppa_linux_fetch_inferior_registers)
8181         (hppa_linux_store_inferior_registers): Refactor as methods of
8182         hppa_linux_nat_target.
8183         (_initialize_hppa_linux_nat): Adjust to C++ification.
8184
8185         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
8186         (the_ia64_linux_nat_target): New.
8187         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
8188         (ia64_linux_stopped_data_address)
8189         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
8190         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
8191         ia64_linux_nat_target methods.
8192         (super_xfer_partial): Delete.
8193         (_initialize_ia64_linux_nat): Adjust to C++ification.
8194
8195         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
8196         (the_m32r_linux_nat_target): New.
8197         (m32r_linux_fetch_inferior_registers)
8198         (m32r_linux_store_inferior_registers): Refactor as
8199         m32r_linux_nat_target methods.
8200         (_initialize_m32r_linux_nat): Adjust to C++ification.
8201
8202         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
8203         (the_m68k_linux_nat_target): New.
8204         (m68k_linux_fetch_inferior_registers)
8205         (m68k_linux_store_inferior_registers): Refactor as
8206         m68k_linux_nat_target methods.
8207         (_initialize_m68k_linux_nat): Adjust to C++ification.
8208
8209         * s390-linux-nat.c (s390_linux_nat_target): New class.
8210         (the_s390_linux_nat_target): New.
8211         (s390_linux_fetch_inferior_registers)
8212         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
8213         (s390_insert_watchpoint, s390_remove_watchpoint)
8214         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
8215         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
8216         (s390_auxv_parse, s390_read_description): Refactor as methods of
8217         s390_linux_nat_target.
8218         (_initialize_s390_nat): Adjust to C++ification.
8219
8220         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
8221         (the_sparc_linux_nat_target): New.
8222         (_initialize_sparc_linux_nat): Adjust to C++ification.
8223         * sparc-nat.c (sparc_fetch_inferior_registers)
8224         (sparc_store_inferior_registers): Remove target_ops parameter.
8225         * sparc-nat.h (sparc_fetch_inferior_registers)
8226         (sparc_store_inferior_registers): Remove target_ops parameter.
8227         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
8228         (the_sparc64_linux_nat_target): New.
8229         (_initialize_sparc64_linux_nat): Adjust to C++ification.
8230
8231         * spu-linux-nat.c (spu_linux_nat_target): New class.
8232         (the_spu_linux_nat_target): New.
8233         (spu_child_post_startup_inferior, spu_child_post_attach)
8234         (spu_child_wait, spu_fetch_inferior_registers)
8235         (spu_store_inferior_registers, spu_xfer_partial)
8236         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
8237         methods.
8238         (_initialize_spu_nat): Adjust to C++ification.
8239
8240         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
8241         (the_tilegx_linux_nat_target): New.
8242         (fetch_inferior_registers, store_inferior_registers):
8243         Refactor as methods.
8244         (_initialize_tile_linux_nat): Adjust to C++ification.
8245
8246         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
8247         (the_xtensa_linux_nat_target): New.
8248         (xtensa_linux_fetch_inferior_registers)
8249         (xtensa_linux_store_inferior_registers): Refactor as
8250         xtensa_linux_nat_target methods.
8251         (_initialize_xtensa_linux_nat): Adjust to C++ification.
8252
8253         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
8254         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
8255         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
8256         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
8257         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
8258         (fbsd_stopped_by_sw_breakpoint)
8259         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
8260         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
8261         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
8262         (fbsd_post_startup_inferior, fbsd_post_attach)
8263         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
8264         (fbsd_set_syscall_catchpoint)
8265         (super_xfer_partial, super_resume, super_wait)
8266         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
8267         (fbsd_handle_debug_trap): Remove target_ops parameter.
8268         (fbsd_nat_add_target): Delete.
8269         * fbsd-nat.h: Include "inf-ptrace.h".
8270         (fbsd_nat_add_target): Delete.
8271         (USE_SIGTRAP_SIGINFO): Define.
8272         (fbsd_nat_target): New class.
8273
8274         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
8275         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
8276         (amd64bsd_target): Delete.
8277         * amd64-bsd-nat.h: New file.
8278         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
8279         "x86-bsd-nat.h".
8280         (amd64_fbsd_nat_target): New class.
8281         (the_amd64_fbsd_nat_target): New.
8282         (amd64fbsd_read_description): Refactor as method of
8283         amd64_fbsd_nat_target.
8284         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
8285         (_initialize_amd64fbsd_nat): Adjust to C++ification.
8286         * amd64-nat.h (amd64bsd_target): Delete function declaration.
8287         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
8288         (i386bsd_store_inferior_registers): Remove target_ops parameter.
8289         (i386bsd_target): Delete.
8290         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
8291         (i386bsd_fetch_inferior_registers)
8292         (i386bsd_store_inferior_registers): Declare.
8293         (i386_bsd_nat_target): New class.
8294         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
8295         (the_i386_fbsd_nat_target): New.
8296         (i386fbsd_resume, i386fbsd_read_description): Refactor as
8297         i386_fbsd_nat_target methods.
8298         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
8299         (_initialize_i386fbsd_nat): Adjust to C++ification.
8300         * x86-bsd-nat.c (super_mourn_inferior): Delete.
8301         (x86bsd_mourn_inferior, x86bsd_target): Delete.
8302         (_initialize_x86_bsd_nat): Adjust to C++ification.
8303         * x86-bsd-nat.h: Include "x86-nat.h".
8304         (x86bsd_target): Delete declaration.
8305         (x86bsd_nat_target): New class.
8306
8307         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
8308         (the_aarch64_fbsd_nat_target): New.
8309         (aarch64_fbsd_fetch_inferior_registers)
8310         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
8311         aarch64_fbsd_nat_target.
8312         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
8313         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
8314         (the_alpha_bsd_nat_target): New.
8315         (alphabsd_fetch_inferior_registers)
8316         (alphabsd_store_inferior_registers): Refactor as
8317         alpha_bsd_nat_target methods.
8318         (_initialize_alphabsd_nat): Refactor as methods of
8319         alpha_bsd_nat_target.
8320         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
8321         (the_amd64_nbsd_nat_target): New.
8322         (_initialize_amd64nbsd_nat): Adjust to C++ification.
8323         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
8324         (the_amd64_obsd_nat_target): New.
8325         (_initialize_amd64obsd_nat): Adjust to C++ification.
8326         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
8327         (the_arm_fbsd_nat_target): New.
8328         (arm_fbsd_fetch_inferior_registers)
8329         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
8330         (_initialize_arm_fbsd_nat): Refactor as methods of
8331         arm_fbsd_nat_target.
8332         (_initialize_arm_fbsd_nat): Adjust to C++ification.
8333         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
8334         (the_arm_netbsd_nat_target): New.
8335         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
8336         arm_netbsd_nat_target.
8337         (_initialize_arm_netbsd_nat): Adjust to C++ification.
8338         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
8339         (the_hppa_nbsd_nat_target): New.
8340         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
8341         hppa_nbsd_nat_target methods.
8342         (_initialize_hppanbsd_nat): Adjust to C++ification.
8343         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
8344         (the_hppa_obsd_nat_target): New.
8345         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
8346         methods of hppa_obsd_nat_target.
8347         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
8348         add_target.
8349         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
8350         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
8351         add_target.
8352         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
8353         (_initialize_i386obsd_nat): Use add_target.
8354         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
8355         (the_m68k_bsd_nat_target): New.
8356         (m68kbsd_fetch_inferior_registers)
8357         (m68kbsd_store_inferior_registers): Refactor as methods of
8358         m68k_bsd_nat_target.
8359         (_initialize_m68kbsd_nat): Adjust to C++ification.
8360         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
8361         (the_mips_fbsd_nat_target): New.
8362         (mips_fbsd_fetch_inferior_registers)
8363         (mips_fbsd_store_inferior_registers): Refactor as methods of
8364         mips_fbsd_nat_target.
8365         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
8366         add_target.
8367         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
8368         (the_mips_nbsd_nat_target): New.
8369         (mipsnbsd_fetch_inferior_registers)
8370         (mipsnbsd_store_inferior_registers): Refactor as methods of
8371         mips_nbsd_nat_target.
8372         (_initialize_mipsnbsd_nat): Adjust to C++ification.
8373         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
8374         (the_mips64_obsd_nat_target): New.
8375         (mips64obsd_fetch_inferior_registers)
8376         (mips64obsd_store_inferior_registers): Refactor as methods of
8377         mips64_obsd_nat_target.
8378         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
8379         add_target.
8380         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
8381         nbsd_nat_target.
8382         * nbsd-nat.h: Include "inf-ptrace.h".
8383         (nbsd_nat_target): New class.
8384         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
8385         (obsd_wait): Refactor as methods of obsd_nat_target.
8386         (obsd_add_target): Delete.
8387         * obsd-nat.h: Include "inf-ptrace.h".
8388         (obsd_nat_target): New class.
8389         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
8390         (the_ppc_fbsd_nat_target): New.
8391         (ppcfbsd_fetch_inferior_registers)
8392         (ppcfbsd_store_inferior_registers): Refactor as methods of
8393         ppc_fbsd_nat_target.
8394         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
8395         add_target.
8396         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
8397         (the_ppc_nbsd_nat_target): New.
8398         (ppcnbsd_fetch_inferior_registers)
8399         (ppcnbsd_store_inferior_registers): Refactor as methods of
8400         ppc_nbsd_nat_target.
8401         (_initialize_ppcnbsd_nat): Adjust to C++ification.
8402         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
8403         (the_ppc_obsd_nat_target): New.
8404         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
8405         methods of ppc_obsd_nat_target.
8406         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
8407         add_target.
8408         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
8409         (the_sh_nbsd_nat_target): New.
8410         (shnbsd_fetch_inferior_registers)
8411         (shnbsd_store_inferior_registers): Refactor as methods of
8412         sh_nbsd_nat_target.
8413         (_initialize_shnbsd_nat): Adjust to C++ification.
8414         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
8415         (inf_ptrace_xfer_partial): Delete.
8416         (sparc_xfer_partial, sparc_target): Delete.
8417         * sparc-nat.h (sparc_fetch_inferior_registers)
8418         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
8419         (sparc_target): Delete function declaration.
8420         (sparc_target): New template class.
8421         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
8422         (_initialize_sparcnbsd_nat): Adjust to C++ification.
8423         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
8424         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
8425         add_target.
8426         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
8427         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
8428         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
8429         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
8430         add_target.
8431         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
8432         (the_vax_bsd_nat_target): New.
8433         (vaxbsd_fetch_inferior_registers)
8434         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
8435         methods.
8436         (_initialize_vaxbsd_nat): Adjust to C++ification.
8437
8438         * bsd-kvm.c (bsd_kvm_target): New class.
8439         (bsd_kvm_ops): Now a bsd_kvm_target.
8440         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
8441         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
8442         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
8443         bsd_kvm_target.
8444         (bsd_kvm_return_one): Delete.
8445         (bsd_kvm_add_target): Adjust to C++ification.
8446
8447         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
8448         (nto_procfs_target_procfs): New classes.
8449         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
8450         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
8451         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
8452         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
8453         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
8454         (procfs_remove_hw_breakpoint, procfs_resume)
8455         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
8456         (procfs_kill_inferior, procfs_store_registers)
8457         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
8458         as methods of nto_procfs_target.
8459         (nto_procfs_ops): Now an nto_procfs_target_procfs.
8460         (nto_native_ops): Delete.
8461         (procfs_open, procfs_native_open): Delete.
8462         (nto_native_ops): Now an nto_procfs_target_native.
8463         (init_procfs_targets): Adjust to C++ification.
8464         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
8465         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
8466         Refactor as methods of nto_procfs_target.
8467
8468         * go32-nat.c (go32_nat_target): New class.
8469         (the_go32_nat_target): New.
8470         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
8471         (go32_store_registers, go32_xfer_partial, go32_files_info)
8472         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
8473         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
8474         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
8475         (go32_pid_to_str): Refactor as methods of go32_nat_target.
8476         (go32_target): Delete.
8477         (_initialize_go32_nat): Adjust to C++ification.
8478
8479         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
8480         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
8481         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
8482         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
8483         gnu_nat_target.
8484         (gnu_target): Delete.
8485         * gnu-nat.h (gnu_target): Delete.
8486         (gnu_nat_target): New class.
8487         * i386-gnu-nat.c (gnu_base_target): New.
8488         (i386_gnu_nat_target): New class.
8489         (the_i386_gnu_nat_target): New.
8490         (_initialize_i386gnu_nat): Adjust to C++ification.
8491
8492 2018-05-02  Pedro Alves  <palves@redhat.com>
8493
8494         * bfd-target.c (target_bfd_xclose): Rename to ...
8495         (target_bfd_close): ... this.
8496         (target_bfd_reopen): Adjust.
8497         * target.c (target_close): Remove references to to_xclose.
8498         * target.h (target_ops::to_xclose): Delete.
8499         (target_ops::to_close): Update comments.
8500
8501 2018-05-02  Pedro Alves  <palves@redhat.com>
8502
8503         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
8504         "linux-nat.h".
8505         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
8506         * inf-ptrace.c (inf_ptrace_register_u_offset)
8507         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
8508         (inf_ptrace_store_register, inf_ptrace_store_registers)
8509         (inf_ptrace_trad_target): Move to ...
8510         * linux-nat-trad.c: ... this new file.
8511         * linux-nat-trad.h: New file.
8512         * linux-nat.c (linux_target_install_ops): Make extern.
8513         (linux_trad_target): Delete.
8514         * linux-nat.h (linux_trad_target): Delete declaration.
8515         (linux_target_install_ops): Declare.
8516         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
8517         "linux-nat.h".
8518
8519 2018-05-02  Pedro Alves  <palves@redhat.com>
8520
8521         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
8522         procfs_target/add_target here.
8523         * procfs.c (procfs_target): Make static.
8524         (_initialize_procfs): Call add_target here.
8525         * procfs.h (struct target_ops): Remove forward declaration.
8526         (procfs_target): Remove declaration.
8527         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
8528
8529 2018-05-02  Pedro Alves  <palves@redhat.com>
8530
8531         * procfs.c (procfs_stopped_by_watchpoint)
8532         (procfs_insert_watchpoint, procfs_remove_watchpoint)
8533         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
8534         Forward declare.
8535         (procfs_use_watchpoints): Delete, move contents...
8536         (procfs_target): ... here.
8537         * procfs.h (procfs_use_watchpoints): Delete declaration.
8538         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
8539         procfs_use_watchpoints.
8540         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
8541         procfs_use_watchpoints.
8542
8543 2018-05-02  Tom Tromey  <tom@tromey.com>
8544
8545         PR python/20084:
8546         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
8547         and var_zuinteger_unlimited.
8548         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
8549         and PARAM_ZUINTEGER_UNLIMITED.
8550         (set_parameter_value): Handle var_zuinteger and
8551         var_zuinteger_unlimited.
8552         (add_setshow_generic): Likewise.
8553         (parmpy_init): Likewise.
8554
8555 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
8556
8557         PR rust/23124
8558         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
8559         pointer is not null before dereferencing it.
8560
8561 2018-04-30  Tom Tromey  <tom@tromey.com>
8562
8563         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
8564         is_mi_like_p.
8565
8566 2018-04-30  Tom Tromey  <tom@tromey.com>
8567
8568         * breakpoint.c (mention): Remove use of is_mi_like_p.
8569         (print_mention_ranged_breakpoint): Likewise.
8570         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
8571         of is_mi_like_p.
8572
8573 2018-04-30  Tom Tromey  <tom@tromey.com>
8574
8575         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
8576
8577 2018-04-30  Tom Tromey  <tom@tromey.com>
8578
8579         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
8580         (info_spu_event_command): Remove some uses of is_mi_like_p.
8581
8582 2018-04-30  Tom Tromey  <tom@tromey.com>
8583
8584         * python/py-framefilter.c (py_print_single_arg)
8585         (enumerate_locals, py_print_args, py_print_frame): Remove some
8586         uses of is_mi_like_p.
8587
8588 2018-04-30  Tom Tromey  <tom@tromey.com>
8589
8590         * ui-out.c: Update.
8591         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
8592         * ui-out.h (ui_out::is_mi_like_p): Now const.
8593         (ui_out::do_is_mi_like_p): Now const.
8594         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
8595
8596 2018-04-30  Tom Tromey  <tom@tromey.com>
8597
8598         * varobj.c (varobj_set_visualizer): Use new_reference.
8599         * python/python.c (gdbpy_decode_line): Use new_reference.
8600         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
8601         new_reference.
8602
8603 2018-04-30  Tom Tromey  <tom@tromey.com>
8604
8605         * varobj.c (install_new_value): Use new_reference.
8606         * value.h (value_incref): Return void.  Swap intro comment with
8607         value_decref.
8608         * value.c (set_value_parent): Use new_reference.
8609         (value_incref): Return void.  Update intro comment.
8610         (release_value): Use new_reference.
8611         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
8612
8613 2018-04-30  Tom Tromey  <tom@tromey.com>
8614
8615         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
8616         * gdb_bfd.h (new_bfd_ref): Remove.
8617         (gdb_bfd_open): Update comment.
8618         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
8619         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
8620         (gdb_bfd_fdopenr): Use new_reference.
8621         * exec.c (exec_file_attach): Use new_reference.
8622
8623 2018-04-30  Tom Tromey  <tom@tromey.com>
8624
8625         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
8626         method.
8627
8628 2018-04-30  Tom Tromey  <tom@tromey.com>
8629
8630         * jit.c (jit_read_code_entry): Use type_align.
8631         * i386-tdep.c (i386_gdbarch_init): Don't call
8632         set_gdbarch_long_long_align_bit.
8633         * gdbarch.sh: Remove long_long_align_bit.
8634         * gdbarch.c, gdbarch.h: Rebuild.
8635         * arc-tdep.c (arc_type_align): New function.
8636         (arc_gdbarch_init): Use arc_type_align.  Don't call
8637         set_gdbarch_long_long_align_bit.
8638
8639 2018-04-30  Tom Tromey  <tom@tromey.com>
8640
8641         * rust-lang.c (rust_type_alignment): Remove.
8642         (rust_composite_type): Use type_align.
8643
8644 2018-04-30  Tom Tromey  <tom@tromey.com>
8645
8646         * NEWS: Mention Type.align.
8647         * python/py-type.c (typy_get_alignof): New function.
8648         (type_object_getset): Add "alignof".
8649
8650 2018-04-30  Tom Tromey  <tom@tromey.com>
8651
8652         PR exp/17095:
8653         * NEWS: Update.
8654         * std-operator.def (UNOP_ALIGNOF): New operator.
8655         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
8656         New.
8657         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
8658         * c-lang.c (c_op_print_tab): Add alignof.
8659         * c-exp.y (ALIGNOF): New token.
8660         (exp): Add "ALIGNOF" production.
8661         (ident_tokens): Add _Alignof and alignof.
8662
8663 2018-04-30  Tom Tromey  <tom@tromey.com>
8664
8665         * i386-tdep.c (i386_type_align): New function.
8666         (i386_gdbarch_init): Update.
8667         * gdbarch.sh (type_align): New method.
8668         * gdbarch.c, gdbarch.h: Rebuild.
8669         * arch-utils.h (default_type_align): Declare.
8670         * arch-utils.c (default_type_align): New function.
8671         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
8672         (struct type) <align_log2>: New field.
8673         <instance_flags>: Now a bitfield.
8674         (TYPE_RAW_ALIGN): New macro.
8675         (type_align, type_raw_align, set_type_align): Declare.
8676         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
8677         functions.
8678         * dwarf2read.c (quirk_rust_enum): Set type alignment.
8679         (get_alignment, maybe_set_alignment): New functions.
8680         (read_structure_type, read_enumeration_type, read_array_type)
8681         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
8682         (read_subrange_type, read_base_type): Set type alignment.
8683
8684 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
8685
8686         * dwarf2read.c (read_index_from_section): Use bool.
8687
8688 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
8689
8690         PR gdb/22950
8691         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
8692         with #ifdef.
8693
8694 2018-04-29  John Reiser  <jreiser@BitWagon.com>
8695
8696         PR build/22873
8697         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
8698         last step, and do it atomically.
8699
8700 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
8701
8702         * compile/compile-c-types.c (convert_int, convert_float):
8703         Update for C FE v1.
8704
8705 2018-04-27  Tom Tromey  <tom@tromey.com>
8706
8707         PR rust/22545:
8708         * rust-lang.c (rust_inclusive_range_type_p): New function.
8709         (rust_range): Handle inclusive ranges.
8710         (rust_compute_range): Likewise.
8711         * rust-exp.y (struct rust_op) <inclusive>: New field.
8712         (DOTDOTEQ): New constant.
8713         (range_expr): Add "..=" productions.
8714         (operator_tokens): Add "..=" token.
8715         (ast_range): Add "inclusive" parameter.
8716         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
8717         ranges.
8718         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
8719         bounds values.
8720         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
8721         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
8722         Update comments.
8723         * expprint.c (print_subexp_standard): Handle new bounds values.
8724         (dump_subexp_body_standard): Likewise.
8725
8726 2018-04-27  Tom Tromey  <tom@tromey.com>
8727
8728         * configure: Rebuild.
8729         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
8730         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
8731         "OVERRIDE".
8732         (class symbol_needs_eval_context): Likewise.
8733         * dwarf2read.c (mock_mapped_index::symbol_name_count)
8734         (mock_mapped_index::symbol_name_at): Use "override".  Remove
8735         "virtual".
8736         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
8737         "override".
8738         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
8739         * aarch64-tdep.c (instruction_reader::read): Use "override".
8740         (instruction_reader_test::read): Likewise.
8741         * arm-tdep.c (instruction_reader::read): Use "override".
8742         (instruction_reader_thumb::read): Likewise.
8743
8744 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
8745
8746         PR remote/9665
8747         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
8748         instead of remote_send.
8749         (remote_send): Remove.
8750
8751 2018-04-26  Pedro Alves  <palves@redhat.com>
8752
8753         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
8754         find_function_start_sal instead of find_pc_line.
8755
8756 2018-04-26  Pedro Alves  <palves@redhat.com>
8757
8758         * breakpoint.c (set_breakpoint_location_function): Handle
8759         mst_data_gnu_ifunc.
8760         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
8761         * elfread.c (elf_symtab_read): Give data symbols with
8762         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
8763         (elf_rel_plt_read): Update comment.
8764         * linespec.c (convert_linespec_to_sals): Handle
8765         mst_data_gnu_ifunc.
8766         (minsym_found): Handle mst_data_gnu_ifunc.
8767         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
8768         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
8769         * parse.c (find_minsym_type_and_address): Handle
8770         mst_data_gnu_ifunc.
8771         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
8772         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
8773         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
8774         comment.
8775         <mst_data_gnu_ifunc>: New enumerator.
8776
8777 2018-04-26  Pedro Alves  <palves@redhat.com>
8778
8779         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
8780         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
8781         'want_trampoline' parameter by a lookup_msym_prefer parameter.
8782         Handle it.
8783         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
8784         (lookup_minimal_symbol_by_pc): Adjust.
8785         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
8786         (lookup_solib_trampoline_symbol_by_pc): Adjust.
8787         * minsyms.h (lookup_msym_prefer): New enum.
8788         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
8789         parameter by a lookup_msym_prefer parameter.
8790
8791 2018-04-26  Pedro Alves  <palves@redhat.com>
8792
8793         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
8794         ends in "@plt" instead of looking at the symbol's section.
8795
8796 2018-04-26  Pedro Alves  <palves@redhat.com>
8797
8798         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
8799         all references.
8800         (find_pc_partial_function_gnu_ifunc): Rename to ...
8801         (find_pc_partial_function): ... this, and remove references to
8802         'is_gnu_ifunc_p'.
8803         (find_pc_partial_function): Delete old implementation.
8804         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
8805
8806 2018-04-26  Pedro Alves  <palves@redhat.com>
8807
8808         * linespec.c (struct bound_minimal_symbol_search_key): New.
8809         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
8810         skip first line if we found a GNU ifunc minimal symbol by name.
8811         (compare_msymbols): Change parameters to work with a destructured
8812         lhs minsym.
8813         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
8814         functions.
8815
8816 2018-04-26  Pedro Alves  <palves@redhat.com>
8817
8818         * breakpoint.c (set_breakpoint_location_function): Don't resolve
8819         ifunc targets here.  Instead, if we have an ifunc minsym, use its
8820         address/name.
8821         (add_location_to_breakpoint): Store the minsym and the objfile in
8822         the breakpoint location.
8823         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
8824         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
8825         Record the minsym in the sal.
8826         * symtab.h (symtab_and_line) <msymbol>: New field.
8827
8828 2018-04-26  Pedro Alves  <palves@redhat.com>
8829
8830         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
8831         unless we actually resolved the ifunc.
8832
8833 2018-04-26  Pedro Alves  <palves@redhat.com>
8834
8835         * c-exp.y (variable production): Prefer ifunc minsyms over
8836         regular function symbols.
8837         * symtab.c (find_gnu_ifunc): New function.
8838         * minsyms.h (lookup_msym_prefer): New enum.
8839         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
8840         parameter by a lookup_msym_prefer parameter.
8841         * symtab.h (find_gnu_ifunc): New declaration.
8842
8843 2018-04-26  Pedro Alves  <palves@redhat.com>
8844
8845         * blockframe.c (find_gnu_ifunc_target_type): New function.
8846         (find_function_type): New.
8847         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
8848         return a value with a memory address.
8849         (eval_call): For calls to GNU ifunc functions, try to find the
8850         type of the target function from the type that the resolver
8851         returns.
8852         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
8853         symbols.
8854         * infcall.c (find_function_return_type): Delete.
8855         (find_function_addr): Add 'function_type' parameter.  For calls to
8856         GNU ifunc functions, try to find the type of the target function
8857         from the type that the resolver returns, and return it via
8858         FUNCTION_TYPE.
8859         (call_function_by_hand_dummy): Adjust to use the function type
8860         returned by find_function_addr.
8861         (find_function_addr): Add 'function_type' parameter and move
8862         description here.
8863         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
8864         declarations.
8865
8866 2018-04-26  Pedro Alves  <palves@redhat.com>
8867
8868         * c-exp.y (variable production): Skip finding an alias for ifunc
8869         symbols.
8870
8871 2018-04-26  Pedro Alves  <palves@redhat.com>
8872
8873         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
8874
8875 2018-04-25  Pedro Alves  <palves@redhat.com>
8876
8877         * infcmd.c (kill_command): Print the pid as string, not the whole
8878         thread's ptid.  Add comment.  s/has been killed/killed/ in output
8879         message.
8880         * remote.c (remote_detach_1): Print the pid as string, not the
8881         whole thread's ptid.
8882
8883 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
8884             Sergio Durigan Junior  <sergiodj@redhat.com>
8885             Pedro Alves  <palves@redhat.com>
8886
8887         * infcmd.c (kill_command): Print message when inferior has
8888         been killed.
8889         * inferior.c (print_inferior_events): Remove 'static'.  Set as
8890         '1'.
8891         (add_inferior): Improve message printed when
8892         'print_inferior_events' is on.
8893         (exit_inferior): Remove message printed when
8894         'print_inferior_events' is on.
8895         (detach_inferior): Improve message printed when
8896         'print_inferior_events' is on.
8897         (initialize_inferiors): Use 'add_inferior_silent' to set
8898         'current_inferior_'.
8899         * inferior.h (print_inferior_events): Declare here as
8900         'extern'.
8901         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
8902         '[Detaching...]' messages when 'print_inferior_events' is on.
8903         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
8904         as prefix/suffix for messages.  Remove periods.  Fix erroneous
8905         'Detaching after fork from child...', replace it by '... from
8906         parent...'.
8907         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
8908         prefix/suffix when printing 'Detaching...' messages.  Print
8909         them when 'print_inferior_events' is on.
8910         * remote.c (remote_detach_1): Print message when detaching
8911         from inferior and '!is_fork_parent'.
8912
8913 2018-04-24  Tom Tromey  <tom@tromey.com>
8914
8915         * cli-out.h: Reindent.
8916
8917 2018-04-24  Tom Tromey  <tom@tromey.com>
8918
8919         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
8920         (cli_ui_out::do_field_string): Use fputs_filtered.
8921         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
8922
8923 2018-04-23  Tom Tromey  <tom@tromey.com>
8924
8925         * guile/scm-frame.c (gdbscm_frame_read_var): Use
8926         gdb::unique_xmalloc_ptr.
8927
8928 2018-04-23  Tom Tromey  <tom@tromey.com>
8929
8930         * configure: Rebuild.
8931
8932 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
8933
8934         PR gdb/23095
8935         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
8936         prepare_for_testing.  Set normal_bp to r_debug_state if target
8937         is bsd.
8938
8939 2018-04-21  Pedro Alves  <palves@redhat.com>
8940             Rajendra SY  <rajendra.sy@gmail.com>
8941
8942         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
8943         * remote.c (extended_remote_attach): In all-stop mode, mark the
8944         thread as executing.
8945
8946 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8947
8948         * thread.c (thread_apply_all_command): Fix comment.
8949         (thread_command): Fix comment.
8950
8951 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
8952
8953         * common/tdesc.h (tdesc_create_feature): Remove xml filename
8954         parameter.
8955         * features/aarch64-core.c (create_feature_aarch64_core):
8956         Regenerate.
8957         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
8958         Likewise.
8959         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
8960         Likewise.
8961         * features/i386/32bit-avx512.c
8962         (create_feature_i386_32bit_avx512): Likewise.
8963         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
8964         Likewise.
8965         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
8966         Likewise.
8967         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
8968         Likewise.
8969         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
8970         Likewise.
8971         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
8972         Likewise.
8973         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
8974         Likewise.
8975         * features/i386/64bit-avx512.c
8976         (create_feature_i386_64bit_avx512): Likewise.
8977         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
8978         Likewise.
8979         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
8980         Likewise.
8981         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
8982         Likewise.
8983         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
8984         Likewise.
8985         * features/i386/64bit-segments.c
8986         (create_feature_i386_64bit_segments): Likewise.
8987         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
8988         Likewise.
8989         * features/i386/x32-core.c
8990         (create_feature_i386_x32_core): Likewise.
8991         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
8992         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
8993         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
8994         * target-descriptions.c: In generated code, don't pass xml
8995         filename.
8996
8997 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8998
8999         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
9000         (print_xml_feature::visit_post): Likewise.
9001         (print_xml_feature::visit): Likewise.
9002         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
9003         (print_xml_feature): Add new class.
9004         * regformats/regdat.sh: Null xmltarget on feature targets.
9005         * target-descriptions.c (struct target_desc): Add xmltarget.
9006         (maintenance_check_tdesc_xml_convert): Add unittest function.
9007         (tdesc_get_features_xml): Add function to get xml.
9008         (maintenance_check_xml_descriptions): Test xml generation.
9009         * xml-tdesc.c (string_read_description_xml): Add function.
9010         * xml-tdesc.h (string_read_description_xml): Add declaration.
9011
9012 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9013
9014         * features/Makefile: Add feature marker to targets with new style
9015         target descriptions.
9016         * regformats/aarch64.dat: Regenerate.
9017         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
9018         * regformats/i386/amd64-avx-linux.dat: Likewise.
9019         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
9020         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
9021         * regformats/i386/amd64-linux.dat: Likewise.
9022         * regformats/i386/amd64-mpx-linux.dat: Likewise.
9023         * regformats/i386/amd64.dat: Likewise.
9024         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
9025         * regformats/i386/i386-avx-linux.dat: Likewise.
9026         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
9027         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
9028         * regformats/i386/i386-linux.dat: Likewise.
9029         * regformats/i386/i386-mmx-linux.dat: Likewise.
9030         * regformats/i386/i386-mpx-linux.dat: Likewise.
9031         * regformats/i386/i386.dat: Likewise.
9032         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
9033         * regformats/i386/x32-avx-linux.dat: Likewise.
9034         * regformats/i386/x32-linux.dat: Likewise.
9035         * regformats/tic6x-c62x-linux.dat: Likewise.
9036         * regformats/tic6x-c64x-linux.dat: Likewise.
9037         * regformats/tic6x-c64xp-linux.dat: Likewise.
9038         * regformats/regdat.sh: Parse feature marker.
9039
9040 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9041
9042         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
9043         (tdesc_osabi_name): Likewise.
9044         * target-descriptions.c (tdesc_architecture_name): Add new
9045         function.
9046         (tdesc_osabi_name): Likewise.
9047
9048 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9049
9050         * common/tdesc.c (tdesc_predefined_type): Move to here.
9051         (tdesc_named_type): Likewise.
9052         (tdesc_create_vector): Likewise.
9053         (tdesc_create_struct): Likewise.
9054         (tdesc_set_struct_size): Likewise.
9055         (tdesc_create_union): Likewise.
9056         (tdesc_create_flags): Likewise.
9057         (tdesc_create_enum): Likewise.
9058         (tdesc_add_field): Likewise.
9059         (tdesc_add_typed_bitfield): Likewise.
9060         (tdesc_add_bitfield): Likewise.
9061         (tdesc_add_flag): Likewise.
9062         (tdesc_add_enum_value): Likewise.
9063         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
9064         (struct tdesc_type_vector): Likewise.
9065         (struct tdesc_type_field): Likewise.
9066         (struct tdesc_type_with_fields): Likewise.
9067         (tdesc_create_enum): Add declaration.
9068         (tdesc_add_typed_bitfield): Likewise.
9069         (tdesc_add_enum_value): Likewise.
9070         * target-descriptions.c (tdesc_type_field): Move from here.
9071         (tdesc_type_builtin): Likewise.
9072         (tdesc_type_vector): Likewise.
9073         (tdesc_type_with_fields): Likewise.
9074         (tdesc_predefined_types): Likewise.
9075         (tdesc_named_type): Likewise.
9076         (tdesc_create_vector): Likewise.
9077         (tdesc_create_struct): Likewise.
9078         (tdesc_set_struct_size): Likewise.
9079         (tdesc_create_union): Likewise.
9080         (tdesc_create_flags): Likewise.
9081         (tdesc_create_enum): Likewise.
9082         (tdesc_add_field): Likewise.
9083         (tdesc_add_typed_bitfield): Likewise.
9084         (tdesc_add_bitfield): Likewise.
9085         (tdesc_add_flag): Likewise.
9086         (tdesc_add_enum_value): Likewise.
9087         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
9088         (tdesc_add_typed_bitfield): Likewise.
9089         (tdesc_add_enum_value): Likewise.
9090
9091 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9092
9093         * common/tdesc.c (tdesc_feature::accept): Move to here.
9094         (tdesc_feature::operator==): Likewise.
9095         (tdesc_create_reg): Likewise.
9096         * common/tdesc.h (tdesc_type_kind): Likewise.
9097         (struct tdesc_type): Likewise.
9098         (struct tdesc_feature): Likewise.
9099         * regformats/regdat.sh: Create a feature.
9100         * target-descriptions.c (tdesc_type_kind): Move from here.
9101         (tdesc_type): Likewise.
9102         (tdesc_type_up): Likewise.
9103         (tdesc_feature): Likewise.
9104         (tdesc_create_reg): Likewise.
9105
9106 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9107
9108         * Makefile.in: Add arch/tdesc.c
9109         * common/tdesc.c: New file.
9110         * common/tdesc.h (tdesc_element_visitor): Move to here.
9111         (tdesc_element): Likewise.
9112         (tdesc_reg): Likewise.
9113         (tdesc_reg_up): Likewise.
9114         * regformats/regdef.h (reg): Add offset to constructors.
9115         * target-descriptions.c (tdesc_element_visitor): Move from here.
9116         (tdesc_element): Likewise.
9117         (tdesc_reg): Likewise.
9118         (tdesc_reg_up): Likewise.
9119
9120 2018-04-17  Tom Tromey  <tom@tromey.com>
9121
9122         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
9123         discriminant field.
9124
9125 2018-04-17  Tom Tromey  <tom@tromey.com>
9126
9127         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
9128
9129 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
9130
9131         * symtab.c (print_symbol_info): Skip printing filename and line
9132         number when `last' is NULL.
9133         (symtab_symbol_info): Use empty string instead of NULL for first
9134         invocation of print_symbol_info.
9135         (rbreak_command): Pass NULL to `last' parameter of
9136         print_symbol_info.
9137
9138 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
9139
9140         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
9141         instead of nullptr.
9142
9143 2018-04-16  Pedro Alves  <palves@redhat.com>
9144
9145         * MAINTAINERS (sh): Remove.
9146         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
9147         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
9148         (ALLDEPFILES): Remove sh64-tdep.c.
9149         * NEWS: Mentions that support for SH-5/SH64 is removed.
9150         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
9151         (sh*-*-openbsd*): Ditto.
9152         (sh64-*-elf*): Remove.
9153         (sh*): Remove.
9154         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
9155         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
9156         * sh-tdep.c: No longer include "sh64-tdep.h".
9157         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
9158         * sh64-tdep.c, sh64-tdep.h: Remove files.
9159
9160 2018-04-16  Pedro Alves  <palves@redhat.com>
9161
9162         * MAINTAINERS: Remove m88k.
9163         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
9164         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
9165         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
9166         * NEWS: Mention that support for m88k was removed.
9167         * configure.host (m88*-*-*): Remove support.
9168         * configure.nat (m88k-*-*): Remove support.
9169         * configure.tgt (m88*-*-openbsd*): Remove.
9170         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
9171
9172 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
9173
9174         * configure.tgt (x86_tobjs): New variable.
9175         (amd64_tobjs, i386_tobjs): Use it.
9176
9177 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
9178
9179         * symtab.c (print_symbol_info): Precede the symbol definition by
9180         the line number when available.
9181         * NEWS: Advertise this enhancement.
9182
9183 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9184
9185         * NEWS (New options): announce set/show record btrace cpu.
9186         * btrace.c: Include record-btrace.h.
9187         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
9188         the vendor is unknown.
9189         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
9190         Maybe overwrite the btrace configuration's cpu.
9191         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
9192         (btrace_fetch): Add cpu parameter.  Update callers.
9193         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
9194         Maybe overwrite the btrace configuration's cpu.  Skip enabling
9195         errata workarounds if the vendor is unknown.
9196         * python/py-record-btrace.c: Include record-btrace.h.
9197         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
9198         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
9199         * record-btrace.c (record_btrace_cpu_state_kind): New.
9200         (record_btrace_cpu): New.
9201         (set_record_btrace_cpu_cmdlist): New.
9202         (record_btrace_get_cpu): New.
9203         (require_btrace_thread, record_btrace_info)
9204         (record_btrace_resume_thread): Call record_btrace_get_cpu.
9205         (cmd_set_record_btrace_cpu_none): New.
9206         (cmd_set_record_btrace_cpu_auto): New.
9207         (cmd_set_record_btrace_cpu): New.
9208         (cmd_show_record_btrace_cpu): New.
9209         (_initialize_record_btrace): Initialize set/show record btrace cpu
9210         commands.
9211         * record-btrace.h (record_btrace_get_cpu): New.
9212
9213 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9214
9215         * record.c (set_record_command): Fix typo in message.
9216
9217 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9218
9219         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
9220
9221 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9222
9223         * infrun.c (process_event_stop_test): Call
9224         gdbarch_in_indirect_branch_thunk.
9225         * gdbarch.sh (in_indirect_branch_thunk): New.
9226         * gdbarch.c: Regenerated.
9227         * gdbarch.h: Regenerated.
9228         * x86-tdep.h: New.
9229         * x86-tdep.c: New.
9230         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
9231         (HFILES_NO_SRCDIR): Add x86-tdep.h.
9232         (ALLDEPFILES): Add x86-tdep.c.
9233         * arch-utils.h (default_in_indirect_branch_thunk): New.
9234         * arch-utils.c (default_in_indirect_branch_thunk): New.
9235         * i386-tdep: Include x86-tdep.h.
9236         (i386_in_indirect_branch_thunk): New.
9237         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
9238         function.
9239         * amd64-tdep: Include x86-tdep.h.
9240         (amd64_in_indirect_branch_thunk): New.
9241         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
9242
9243 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
9244
9245         PR gdb/23053
9246         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
9247         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
9248         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
9249         regression.
9250
9251 2018-04-12  Tom Tromey  <tom@tromey.com>
9252
9253         * rust-lang.c (rust_print_struct_def): Remove univariant code.
9254         (rust_evaluate_subexp): Likewise.
9255
9256 2018-04-12  Pedro Alves  <palves@redhat.com>
9257
9258         * procfs.c (procfs_detach): Make forward declaration's prototype
9259         match definition's protototype.
9260         (proc_get_LDT_entry): Remove stale do_cleanups call.
9261
9262 2018-04-12  Pedro Alves  <palves@redhat.com>
9263
9264         * target.h (target_ops::to_has_exited): Delete.
9265         (target_has_exited): Delete.
9266         * target-delegates.c: Regenerate.
9267
9268 2018-04-11  Pedro Alves  <palves@redhat.com>
9269
9270         * target.c (fileio_fh_t::t): Add comment.
9271         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
9272         (target_fileio_close): Handle a NULL target.
9273         (invalidate_fileio_fh): New.
9274         (target_close): Call it.
9275         * remote.c (remote_hostio_send_command): No longer check whether
9276         remote_desc is open.
9277
9278 2018-04-11  Pedro Alves  <palves@redhat.com>
9279
9280         * target.c (fileio_fh_t): Make it a named struct instead of a
9281         typedef.
9282         (fileio_fh_t::is_closed): New method.
9283         (DEF_VEC_O (fileio_fh_t)): Remove.
9284         (fileio_fhandles): Now a std::vector.
9285         (is_closed_fileio_fh): Delete.
9286         (acquire_fileio_fd): Adjust.  Rename parameters.
9287         (release_fileio_fd): Adjust.
9288         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
9289         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
9290         (target_fileio_close): Adjust.
9291
9292 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
9293
9294         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
9295         index.
9296
9297 2018-04-10  Pedro Alves  <palves@redhat.com>
9298
9299         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
9300         (scoped_finish_thread_state): New class.
9301         * infcmd.c (run_command_1): Use it instead of finish_thread_state
9302         cleanup.
9303         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
9304         (fetch_inferior_event, normal_stop): Likewise.
9305         * thread.c (finish_thread_state_cleanup): Delete.
9306
9307 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9308             Pedro Alves  <palves@redhat.com>
9309
9310         * value.c: Include "selftest.h" and "common/array-view.h".
9311         (struct range) <operator ==>: New.
9312         (test_ranges_contain): New.
9313         (check_ranges_vector): New.
9314         (test_insert_into_bit_range_vector): New.
9315         (_initialize_values): Register selftests.
9316         * common/array-view.h (operator==, operator!=): New.
9317
9318 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9319
9320         * common/gdb_vecs.h (unordered_remove): Add overload that takes
9321         an iterator.
9322         * inline-frame.c: Include <algorithm>.
9323         (struct inline_state): Add constructor.
9324         (inline_state_s): Remove.
9325         (DEF_VEC_O(inline_state_s)): Remove.
9326         (inline_states): Change type to std::vector.
9327         (find_inline_frame_state): Adjust to std::vector.
9328         (allocate_inline_frame_state): Remove.
9329         (clear_inline_frame_state): Adjust to std::vector.
9330         (skip_inline_frames): Adjust to std::vector.
9331
9332 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9333
9334         * tracepoint.h (struct trace_state_variable): Add constructor.
9335         <name>: Change type to std::string.
9336         * tracepoint.c (tsv_s): Remove.
9337         (DEF_VEC_O(tsv_s)): Remove.
9338         (tvariables): Change to std::vector.
9339         (create_trace_state_variable): Adjust to std::vector.
9340         (find_trace_state_variable): Likewise.
9341         (find_trace_state_variable_by_number): Likewise.
9342         (delete_trace_state_variable): Likewise.
9343         (trace_variable_command): Adjust to std::string.
9344         (delete_trace_variable_command): Likewise.
9345         (tvariables_info_1): Adjust to std::vector.
9346         (save_trace_state_variables): Likewise.
9347         (start_tracing): Likewise.
9348         (merge_uploaded_trace_state_variables): Adjust to std::vector
9349         and std::string.
9350         * target.h (struct target_ops)
9351         <to_download_trace_state_variable>: Pass reference to
9352         trace_state_variable.
9353         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
9354         * target-delegates.c: Re-generate.
9355         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
9356         (mi_tsv_deleted): Likewise.
9357         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
9358         * remote.c (remote_download_trace_state_variable): Change
9359         pointer to reference and adjust.
9360         * make-target-delegates (parse_argtypes): Handle references.
9361         (write_function_header): Likewise.
9362         (munge_type): Likewise.
9363
9364 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9365
9366         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9367         string_view-selftests.c.
9368         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
9369         testsuite.
9370         * unittests/basic_string_view/cons/char/1.cc: Likewise.
9371         * unittests/basic_string_view/cons/char/2.cc: Likewise.
9372         * unittests/basic_string_view/cons/char/3.cc: Likewise.
9373         * unittests/basic_string_view/element_access/char/1.cc:
9374         Likewise.
9375         * unittests/basic_string_view/element_access/char/empty.cc:
9376         Likewise.
9377         * unittests/basic_string_view/element_access/char/front_back.cc:
9378         Likewise.
9379         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
9380         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
9381         Likewise.
9382         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
9383         Likewise.
9384         * unittests/basic_string_view/modifiers/swap/char/1.cc:
9385         Likewise.
9386         * unittests/basic_string_view/operations/compare/char/1.cc:
9387         Likewise.
9388         * unittests/basic_string_view/operations/compare/char/13650.cc:
9389         Likewise.
9390         * unittests/basic_string_view/operations/copy/char/1.cc:
9391         Likewise.
9392         * unittests/basic_string_view/operations/data/char/1.cc:
9393         Likewise.
9394         * unittests/basic_string_view/operations/find/char/1.cc:
9395         Likewise.
9396         * unittests/basic_string_view/operations/find/char/2.cc:
9397         Likewise.
9398         * unittests/basic_string_view/operations/find/char/3.cc:
9399         Likewise.
9400         * unittests/basic_string_view/operations/find/char/4.cc:
9401         Likewise.
9402         * unittests/basic_string_view/operations/rfind/char/1.cc:
9403         Likewise.
9404         * unittests/basic_string_view/operations/rfind/char/2.cc:
9405         Likewise.
9406         * unittests/basic_string_view/operations/rfind/char/3.cc:
9407         Likewise.
9408         * unittests/basic_string_view/operations/substr/char/1.cc:
9409         Likewise.
9410         * unittests/basic_string_view/operators/char/2.cc: Likewise.
9411         * unittests/string_view-selftests.c: New file.
9412
9413 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9414
9415         * unittests/basic_string_view/capacity/1.cc: New file.
9416         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
9417         * unittests/basic_string_view/cons/char/1.cc: New file.
9418         * unittests/basic_string_view/cons/char/2.cc: New file.
9419         * unittests/basic_string_view/cons/char/3.cc: New file.
9420         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
9421         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
9422         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
9423         * unittests/basic_string_view/element_access/char/1.cc: New file.
9424         * unittests/basic_string_view/element_access/char/2.cc: New file.
9425         * unittests/basic_string_view/element_access/char/empty.cc: New file.
9426         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
9427         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
9428         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
9429         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
9430         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
9431         * unittests/basic_string_view/include.cc: New file.
9432         * unittests/basic_string_view/inserters/char/1.cc: New file.
9433         * unittests/basic_string_view/inserters/char/2.cc: New file.
9434         * unittests/basic_string_view/inserters/char/3.cc: New file.
9435         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
9436         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
9437         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
9438         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
9439         * unittests/basic_string_view/literals/types.cc: New file.
9440         * unittests/basic_string_view/literals/values.cc: New file.
9441         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
9442         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
9443         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
9444         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
9445         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
9446         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
9447         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
9448         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
9449         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
9450         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
9451         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
9452         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
9453         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
9454         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
9455         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
9456         * unittests/basic_string_view/operations/data/char/1.cc: New file.
9457         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
9458         * unittests/basic_string_view/operations/find/char/1.cc: New file.
9459         * unittests/basic_string_view/operations/find/char/2.cc: New file.
9460         * unittests/basic_string_view/operations/find/char/3.cc: New file.
9461         * unittests/basic_string_view/operations/find/char/4.cc: New file.
9462         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
9463         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
9464         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
9465         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
9466         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
9467         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
9468         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
9469         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
9470         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
9471         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
9472         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
9473         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
9474         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
9475         * unittests/basic_string_view/operators/char/2.cc: New file.
9476         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
9477         * unittests/basic_string_view/range_access/char/1.cc: New file.
9478         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
9479         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
9480         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
9481         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
9482         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
9483         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
9484         * unittests/basic_string_view/requirements/typedefs.cc: New file.
9485         * unittests/basic_string_view/typedefs.cc: New file.
9486         * unittests/basic_string_view/types/1.cc: New file.
9487
9488 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9489
9490         * common/gdb_string_view.h: Remove libstdc++ implementation
9491         details, adjust to gdb reality.
9492         * common/gdb_string_view.tcc: Likewise.
9493         * cli/cli-script.c (struct string_view): Remove.
9494         (user_args) <m_args>: Change element type to gdb::string_view.
9495         (user_args::insert_args): Adjust.
9496
9497 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9498
9499         * common/gdb_string_view.h: New file.
9500         * common/gdb_string_view.tcc: New file.
9501
9502 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9503
9504         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
9505         * configure: Re-generate.
9506
9507 2018-04-09  Pedro Alves  <palves@redhat.com>
9508
9509         * gdbarch.sh: Include "observable.h" instead of "observer.h".
9510         (set_target_gdbarch): Call
9511         gdb::observers::architecture_changed.notify instead of
9512         observer_notify_architecture_changed.
9513
9514 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9515
9516         * tracepoint.c (struct current_traceframe_cleanup): Remove.
9517         (do_restore_current_traceframe_cleanup): Remove.
9518         (restore_current_traceframe_cleanup_dtor): Remove.
9519         (make_cleanup_restore_current_traceframe): Remove.
9520         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
9521         New.
9522         * tracepoint.h (struct scoped_restore_current_traceframe): New.
9523         * infrun.c (fetch_inferior_event): Use
9524         scoped_restore_current_traceframe.
9525
9526 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9527
9528         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
9529         Remove.
9530         <n_allocated_type_units>: Remove.
9531         <all_type_units>: Change to std::vector.
9532         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
9533         to std::vector change.
9534         (dwarf2_per_objfile::get_cutu): Likewise.
9535         (dwarf2_per_objfile::get_tu): Likewise.
9536         (create_signatured_type_table_from_index): Likewise.
9537         (create_signatured_type_table_from_debug_names): Likewise.
9538         (dw2_symtab_iter_next): Likewise.
9539         (dw2_print_stats): Likewise.
9540         (dw2_expand_all_symtabs): Likewise.
9541         (dw2_expand_marked_cus): Likewise.
9542         (dw2_debug_names_iterator::next): Likewise.
9543         (dwarf2_initialize_objfile): Likewise.
9544         (add_signatured_type_cu_to_table): Likewise.
9545         (create_all_type_units): Likewise.
9546         (add_type_unit): Likewise.
9547         (struct tu_abbrev_offset): Add constructor.
9548         (build_type_psymtabs_1): Adjust to std::vector change.
9549         (print_tu_stats): Likewise.
9550         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
9551         (write_debug_names): Likewise.
9552
9553 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9554
9555         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
9556         Make an std::vector.
9557         <n_comp_units>: Remove.
9558         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
9559         to std::vector change.
9560         (dwarf2_per_objfile::get_cutu): Likewise.
9561         (dwarf2_per_objfile::get_cu): Likewise.
9562         (create_cus_from_index): Likewise.
9563         (create_addrmap_from_index): Likewise.
9564         (create_addrmap_from_aranges): Likewise.
9565         (dwarf2_read_index): Likewise.
9566         (dw2_find_last_source_symtab): Likewise.
9567         (dw2_map_symtabs_matching_filename): Likewise.
9568         (dw2_symtab_iter_next): Likewise.
9569         (dw2_print_stats): Likewise.
9570         (dw2_expand_all_symtabs): Likewise.
9571         (dw2_expand_symtabs_with_fullname): Likewise.
9572         (dw2_expand_marked_cus): Likewise.
9573         (dw2_map_symbol_filenames): Likewise.
9574         (create_cus_from_debug_names): Likewise.
9575         (dwarf2_read_debug_names): Likewise.
9576         (dw2_debug_names_iterator::next): Likewise.
9577         (dwarf2_initialize_objfile): Likewise.
9578         (set_partial_user): Likewise.
9579         (dwarf2_build_psymtabs_hard): Likewise.
9580         (read_comp_units_from_section): Remove arguments, adjust to
9581         std::vector change.
9582         (create_all_comp_units): Adjust to std::vector and
9583         read_comp_units_from_section changes.
9584         (dwarf2_find_containing_comp_unit): Adjust to std::vector
9585         change.
9586         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
9587         (psyms_seen_size): Likewise.
9588         (write_gdbindex): Likewise.
9589         (write_debug_names): Likewise.
9590
9591 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9592
9593         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
9594         with dwarf2_per_objfile.
9595         (create_cus_from_index): Likewise.
9596         (create_signatured_type_table_from_index): Likewise.
9597         (dwarf2_read_index): Likewise.
9598         (dwarf2_initialize_objfile): Likewise.
9599         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
9600         per_cu rather than get_dwarf2_per_objfile.
9601
9602 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9603
9604         * dwarf2read.h (struct signatured_type): Forward declare.
9605         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
9606         New methods.
9607         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
9608         (dw2_get_cutu): ...this.
9609         (dwarf2_per_objfile::get_cu): Rename from...
9610         (dw2_get_cu): ...this.
9611         (dwarf2_per_objfile::get_tu): New.
9612         (create_addrmap_from_index): Adjust.
9613         (create_addrmap_from_aranges): Adjust.
9614         (dw2_find_last_source_symtab): Adjust.
9615         (dw2_map_symtabs_matching_filename): Adjust.
9616         (dw2_symtab_iter_next): Adjust.
9617         (dw2_print_stats): Adjust.
9618         (dw2_expand_all_symtabs): Adjust.
9619         (dw2_expand_symtabs_with_fullname): Adjust.
9620         (dw2_expand_marked_cus): Adjust.
9621         (dw_expand_symtabs_matching_file_matcher): Adjust.
9622         (dw2_map_symbol_filenames): Adjust.
9623         (dw2_debug_names_iterator::next): Adjust.
9624         (dwarf2_initialize_objfile): Adjust.
9625         (set_partial_user): Adjust.
9626         (dwarf2_build_psymtabs_hard): Adjust.
9627
9628 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9629
9630         * dwarf2read.c (create_signatured_type_table_from_debug_names):
9631         Remove unused variables.
9632         (dw2_map_symtabs_matching_filename): Likewise.
9633         (dwarf2_record_block_ranges): Likewise.
9634         (dwarf2_read_addr_index): Likewise.
9635         (follow_die_offset): Likewise.
9636
9637 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9638
9639         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
9640         to symbol_file_add_main.
9641
9642 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9643
9644         PR mi/22299
9645         * mi/mi-console.c (do_fputc_async_safe): New.
9646         (mi_console_file::write_async_safe): New.
9647         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
9648         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
9649         New.
9650         * ui-file.c (ui_file::putstrn): Adjust call to
9651         fputstrn_unfiltered.
9652         * utils.c (printchar): Replace do_fputs and do_fprintf
9653         parameters by do_fputc.
9654         (fputstr_filtered): Adjust call to printchar.
9655         (fputstr_unfiltered): Likewise.
9656         (fputstrn_filtered): Likewise.
9657         (fputstrn_unfiltered): Add do_fputc parameter, pass to
9658         printchar.
9659         * utils.h (do_fputc_ftype): New typedef.
9660         (fputstrn_unfiltered): Add do_fputc parameter.
9661
9662 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9663
9664         * regformats/i386/i386-avx.dat: Remove.
9665
9666 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
9667
9668         PR gdb/22979
9669         * amd64-tdep.c (amd64_none_init_abi): New function.
9670         (amd64_x32_none_init_abi): New function.
9671         (_initialize_amd64_tdep): Register handlers for x86-64 and
9672         x64_32 with GDB_OSABI_NONE.
9673         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
9674         GDB_OSABI_NONE osabi.
9675
9676 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
9677
9678         PR gdb/22980
9679         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
9680         GDB_OSABI_NONE.
9681         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
9682         * osabi.c (gdb_osabi_names): Add "unknown" entry.
9683
9684 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
9685
9686         * common/byte-vector.h (char_vector): New type.
9687         * target.h (target_read_alloc): Return
9688         gdb::optional<byte_vector>.
9689         (target_read_stralloc): Return gdb::optional<char_vector>.
9690         (target_get_osdata): Return gdb::optional<char_vector>.
9691         * target.c (target_read_alloc_1): Templatize.  Replacement
9692         manual memory management with vector.
9693         (target_read_alloc): Change return type, adjust.
9694         (target_read_stralloc): Change return type, adjust.
9695         (target_get_osdata): Change return type, adjust.
9696         * auxv.c (struct auxv_info) <length>: Remove.
9697         <data>: Change type to gdb::optional<byte_vector>.
9698         (auxv_inferior_data_cleanup): Free auxv_info with delete.
9699         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
9700         (target_auxv_search): Adjust.
9701         (fprint_target_auxv): Adjust.
9702         * avr-tdep.c (avr_io_reg_read_command): Adjust.
9703         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
9704         (linux_make_corefile_notes): Adjust.
9705         * osdata.c (get_osdata): Adjust.
9706         * remote.c (remote_get_threads_with_qxfer): Adjust.
9707         (remote_memory_map): Adjust.
9708         (remote_traceframe_info): Adjust.
9709         (btrace_read_config): Adjust.
9710         (remote_read_btrace): Adjust.
9711         (remote_pid_to_exec_file): Adjust.
9712         * solib-aix.c (solib_aix_get_library_list): Adjust.
9713         * solib-dsbt.c (decode_loadmap): Don't free buf.
9714         (dsbt_get_initial_loadmaps): Adjust.
9715         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
9716         * solib-target.c (solib_target_current_sos): Adjust.
9717         * tracepoint.c (sdata_make_value): Adjust.
9718         * xml-support.c (xinclude_start_include): Adjust.
9719         (xml_fetch_content_from_file): Adjust.
9720         * xml-support.h (xml_fetch_another): Change return type.
9721         (xml_fetch_content_from_file): Change return type.
9722         * xml-syscall.c (xml_init_syscalls_info): Adjust.
9723         * xml-tdesc.c (file_read_description_xml): Adjust.
9724         (fetch_available_features_from_target): Change return type.
9725         (target_fetch_description_xml): Adjust.
9726         (target_read_description_xml): Adjust.
9727
9728 2018-04-06  Tom Tromey  <tom@tromey.com>
9729
9730         * value.c (~value): Update.
9731         (struct value) <contents>: Now unique_xmalloc_ptr.
9732         (value_contents_bits_eq, allocate_value_contents)
9733         (value_contents_raw, value_contents_all_raw)
9734         (value_contents_for_printing, value_contents_for_printing_const)
9735         (set_value_enclosing_type): Update.
9736
9737 2018-04-06  Tom Tromey  <tom@tromey.com>
9738
9739         * value.c (range_s): Remove typedef, VEC.
9740         (struct range): Add operator<.
9741         (range_lessthan): Remove.
9742         (ranges_contain): Change type.
9743         (~value): Update.
9744         (struct value) <unavailable, optimized_out>: Now std::vector.
9745         (value_entirely_available)
9746         (value_entirely_covered_by_range_vector)
9747         (value_entirely_unavailable, value_entirely_optimized_out):
9748         Update.
9749         (insert_into_bit_range_vector): Change argument type.
9750         (find_first_range_overlap): Likewise.
9751         (struct ranges_and_idx, value_contents_bits_eq)
9752         (require_not_optimized_out, require_available): Update.
9753         (ranges_copy_adjusted): Change argument types.
9754         (value_optimized_out, value_copy, value_fetch_lazy): Update.
9755
9756 2018-04-06  Tom Tromey  <tom@tromey.com>
9757
9758         * value.c (~value): Update.
9759         (struct value) <parent>: Now a value_ref_ptr.
9760         (value_parent, set_value_parent, value_address, value_copy):
9761         Update.
9762
9763 2018-04-06  Tom Tromey  <tom@tromey.com>
9764
9765         * value.c (struct value): Add constructor, destructor, and member
9766         initializers.
9767         (allocate_value_lazy, value_decref): Update.
9768
9769 2018-04-06  Tom Tromey  <tom@tromey.com>
9770
9771         * value.c (struct value) <released, next>: Remove.
9772         (all_values): Now a std::vector.
9773         (allocate_value_lazy): Update.
9774         (value_next): Remove.
9775         (value_mark, value_free_to_mark, release_value)
9776         (value_release_to_mark): Update.
9777
9778 2018-04-06  Tom Tromey  <tom@tromey.com>
9779
9780         * value.h (fetch_subexp_value, value_release_to_mark): Update.
9781         (free_value_chain): Remove.
9782         * value.c (free_value_chain): Remove.
9783         (value_release_to_mark): Return a std::vector.
9784         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
9785         std::vector.
9786         (check_condition): Update.
9787         * eval.c (fetch_subexp_value): Change "val_chain" to a
9788         std::vector.
9789         * breakpoint.c (update_watchpoint): Update.
9790         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
9791
9792 2018-04-06  Tom Tromey  <tom@tromey.com>
9793
9794         * value.h (free_all_values): Remove.
9795         * value.c (free_all_values): Remove.
9796
9797 2018-04-06  Tom Tromey  <tom@tromey.com>
9798
9799         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
9800         (value_history_chain, value_history_count): Remove.
9801         (value_history): New global.
9802         (record_latest_value, access_value_history, show_values)
9803         (preserve_values): Update.
9804
9805 2018-04-06  Tom Tromey  <tom@tromey.com>
9806
9807         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
9808         * varobj.c (varobj_set_display_format, varobj_set_value)
9809         (install_default_visualizer, construct_visualizer)
9810         (install_new_value, ~varobj, varobj_get_value_type)
9811         (my_value_of_variable, varobj_editable_p): Update.
9812         * c-varobj.c (c_describe_child, c_value_of_variable)
9813         (cplus_number_of_children, cplus_describe_child): Update.
9814         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
9815         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
9816         (ada_value_of_variable, ada_value_is_changeable_p): Update.
9817
9818 2018-04-06  Tom Tromey  <tom@tromey.com>
9819
9820         * printcmd.c (last_examine_address): Change type to
9821         value_ref_ptr.
9822         (do_examine, x_command): Update.
9823
9824 2018-04-06  Tom Tromey  <tom@tromey.com>
9825
9826         * value.c (release_value): Update.
9827         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
9828         (struct bpstats) <val>: Now a value_ref_ptr.
9829         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
9830         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
9831         (~watchpoint, print_it_watchpoint, watch_command_1)
9832         (invalidate_bp_value_on_memory_change): Update.
9833
9834 2018-04-06  Tom Tromey  <tom@tromey.com>
9835
9836         * varobj.c (varobj_clear_saved_item)
9837         (update_dynamic_varobj_children, install_new_value, ~varobj):
9838         Update.
9839         * value.h (value_incref): Move declaration earlier.
9840         (value_decref): Rename from value_free.
9841         (struct value_ref_policy): New.
9842         (value_ref_ptr): New typedef.
9843         (struct value_deleter): Remove.
9844         (gdb_value_up): Remove typedef.
9845         (release_value): Change return type.
9846         (release_value_or_incref): Remove.
9847         * value.c (set_value_parent): Update.
9848         (value_incref): Change return type.
9849         (value_decref): Rename from value_free.
9850         (value_free_to_mark, free_all_values, free_value_chain): Update.
9851         (release_value): Return value_ref_ptr.
9852         (release_value_or_incref): Remove.
9853         (record_latest_value, set_internalvar, clear_internalvar):
9854         Update.
9855         * stack.c (info_frame_command): Don't call value_free.
9856         * python/py-value.c (valpy_dealloc, valpy_new)
9857         (value_to_value_object): Update.
9858         * printcmd.c (do_examine): Update.
9859         * opencl-lang.c (lval_func_free_closure): Update.
9860         * mi/mi-main.c (register_changed_p): Don't call value_free.
9861         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
9862         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
9863         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
9864         value_free.
9865         * guile/scm-value.c (vlscm_free_value_smob)
9866         (vlscm_scm_from_value): Update.
9867         * frame.c (frame_register_unwind, frame_unwind_register_signed)
9868         (frame_unwind_register_unsigned, get_frame_register_bytes)
9869         (put_frame_register_bytes): Don't call value_free.
9870         * findvar.c (address_from_register): Don't call value_free.
9871         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
9872         * dwarf2loc.c (entry_data_value_free_closure)
9873         (value_of_dwarf_reg_entry, free_pieced_value_closure)
9874         (dwarf2_evaluate_loc_desc_full): Update.
9875         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
9876         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
9877         (~watchpoint, watch_command_1)
9878         (invalidate_bp_value_on_memory_change): Update.
9879         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
9880
9881 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
9882
9883         PR gdb/23022
9884         * warning.m4: Add -Wno-error=deprecated-register.
9885         * configure: Re-generate.
9886
9887 2018-04-05  Tom Tromey  <tom@tromey.com>
9888
9889         * linespec.h: Remove include of "vec.h".
9890
9891 2018-04-05  Tom Tromey  <tom@tromey.com>
9892
9893         * linespec.c (typep): Remove typedef.
9894         (find_methods, find_superclass_methods): Take a std::vector.
9895         (find_method): Use std::vector.
9896
9897 2018-04-05  Tom Tromey  <tom@tromey.com>
9898
9899         * utils.c (compare_strings): Remove.
9900         * utils.h (compare_strings): Remove.
9901         * objc-lang.h (find_imps): Update.
9902         * objc-lang.c (find_methods): Take a std::vector.
9903         (uniquify_strings, find_imps): Likewise.
9904         * linespec.c (find_methods): Take a std::vector.
9905         (decode_objc): Use std::vector.
9906         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
9907         a std::vector.
9908         (find_method, find_function_symbols): Use std::vector.
9909
9910 2018-04-05  Tom Tromey  <tom@tromey.com>
9911
9912         * completer.c (completion_tracker::completion_tracker): Remove
9913         cast.
9914         (completion_tracker::discard_completions): Likewise.
9915         * breakpoint.c (ambiguous_names_p): Remove cast.
9916         * ada-lang.c (_initialize_ada_language): Remove cast.
9917         * utils.h (streq): Update.
9918         (streq_hash): Add new declaration.
9919         * utils.c (streq): Return bool.
9920         (streq_hash): New function.
9921
9922 2018-04-05  Tom Tromey  <tom@tromey.com>
9923
9924         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
9925         Remove a string copy.
9926
9927 2018-04-05  Tom Tromey  <tom@tromey.com>
9928
9929         * linespec.c (filter_results): Use std::vector.
9930         (decode_line_2, decode_line_full): Update.
9931
9932 2018-04-05  Tom Tromey  <tom@tromey.com>
9933
9934         * linespec.c (canonical_to_fullform): Return std::string.
9935         (filter_results): Update.
9936         (struct decode_line_2_item): Add constructor.
9937         <fullform, displayform>: Now std::string.
9938         (decode_line_2_compare_items): Now a std::sort comparator.
9939         (decode_line_2): Update.
9940
9941 2018-04-05  Tom Tromey  <tom@tromey.com>
9942
9943         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
9944         (unexpected_linespec_error): Update.
9945         (linespec_parse_basic, parse_linespec): Update.
9946
9947 2018-04-05  Tom Tromey  <tom@tromey.com>
9948
9949         * linespec.c (linespec_parse_basic): Reindent.
9950
9951 2018-04-05  Tom Tromey  <tom@tromey.com>
9952
9953         * minsyms.h (iterate_over_minimal_symbols): Update.
9954         * minsyms.c (iterate_over_minimal_symbols): Take a
9955         gdb::function_view.
9956         * linespec.c (struct collect_minsyms): Remove.
9957         (compare_msyms): Now a std::sort comparator.
9958         (add_minsym): Add parameters.
9959         (search_minsyms_for_name): Update.  Use std::vector.
9960
9961 2018-04-03  Tom Tromey  <tom@tromey.com>
9962
9963         * mipsread.c (read_alphacoff_dynamic_symtab): Use
9964         gdb::byte_vector.
9965
9966 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
9967
9968         * MAINTAINERS (Write After Approval): Add Weimin Pan.
9969
9970 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
9971
9972         PR gdb/16959
9973         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
9974         printing static type.
9975
9976 2018-04-01  Tom Tromey  <tom@tromey.com>
9977
9978         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
9979         (rs6000_xfer_shared_libraries): Update.
9980
9981 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
9982
9983         * common/gdb_vecs.h (char_ptr): Remove.
9984         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
9985
9986 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
9987
9988         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
9989         with std::vector.
9990         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
9991
9992 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
9993
9994         * tracepoint.h (struct uploaded_tp): Initialize fields.
9995         <actions, step_actions, cmd_strings>: Change type to
9996         std::vector<char *>.
9997         * tracepoint.c (get_uploaded_tp): Allocate with new.
9998         (free_uploaded_tps): Free with delete.
9999         (parse_tracepoint_definition): Adjust to std::vector change.
10000         * breakpoint.c (read_uploaded_action): Likewise.
10001         (create_tracepoint_from_upload): Likewise.
10002         * ctf.c (ctf_write_uploaded_tp): Likewise.
10003         (SET_ARRAY_FIELD): Likewise.
10004         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
10005
10006 2018-03-30  Tom Tromey  <tom@tromey.com>
10007
10008         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
10009         std::unique_ptr.
10010         (svr4_keep_data_in_core): Update.
10011         (svr4_read_so_list): Update.
10012
10013 2018-03-30  Tom Tromey  <tom@tromey.com>
10014
10015         * windows-nat.c (handle_output_debug_string, handle_exception):
10016         Update.
10017         * target.h (target_read_string): Update.
10018         * target.c (target_read_string): Change "string" to
10019         unique_xmalloc_ptr.
10020         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
10021         Update.
10022         * solib-frv.c (frv_current_sos): Update.
10023         * solib-dsbt.c (dsbt_current_sos): Update.
10024         * solib-darwin.c (darwin_current_sos): Update.
10025         * linux-thread-db.c (inferior_has_bug): Update.
10026         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
10027         Update.  Remove alloca.
10028         * ada-lang.c (ada_main_name): Update.
10029
10030 2018-03-30  Tom Tromey  <tom@tromey.com>
10031
10032         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
10033         (struct dwo_file_deleter): New.
10034         (dwo_file_up): New typedef.
10035         (open_and_init_dwo_file): Use dwo_file_up.
10036         (free_dwo_file_cleanup): Remove.
10037
10038 2018-03-30  Tom Tromey  <tom@tromey.com>
10039
10040         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
10041         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
10042
10043 2018-03-30  Tom Tromey  <tom@tromey.com>
10044
10045         * dwarf2read.c (class free_cached_comp_units): New class.
10046         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
10047         (free_cached_comp_units): Remove function.
10048
10049 2018-03-30  Tom Tromey  <tom@tromey.com>
10050
10051         * utils.h (make_cleanup_unpush_target): Remove.
10052         * inf-ptrace.c (struct target_unpusher): New.
10053         (target_unpush_up) New typedef.
10054         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
10055         target_unpush_up.
10056         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
10057
10058 2018-03-27  Tom Tromey  <tom@tromey.com>
10059
10060         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
10061
10062 2018-03-27  Pedro Alves  <palves@redhat.com>
10063             Tom Tromey  <tom@tromey.com>
10064
10065         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
10066         destructor.  Now a class.
10067         (gdb_readline_wrapper_cleanup): Remove function.
10068         (gdb_readline_wrapper): Remove cleanups.
10069
10070 2018-03-27  Tom Tromey  <tom@tromey.com>
10071
10072         * typeprint.h (struct type_print_options) <local_typedefs,
10073         global_typedefs>: Remove "struct" keyword.
10074         (class typedef_hash_table): New class.
10075         (recursively_update_typedef_hash, add_template_parameters)
10076         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
10077         (find_typedef_in_hash): Don't declare.
10078         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
10079         (typedef_hash_table::recursively_update): Rename from
10080         recursively_update_typedef_hash.  Now a member.
10081         (typedef_hash_table::add_template_parameters): Rename from
10082         add_template_parameters.  Now a member.
10083         (typedef_hash_table::typedef_hash_table): Now a constructor;
10084         rename from create_typedef_hash.
10085         (typedef_hash_table::~typedef_hash_table): Now a destructor;
10086         rename from free_typedef_hash.
10087         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
10088         (do_free_global_table): Remove.
10089         (typedef_hash_table::typedef_hash_table): New constructor; renamed
10090         from copy_type_recursive.
10091         (create_global_typedef_table): Remove.
10092         (typedef_hash_table::find_global_typedef): Now a member of
10093         typedef_hash_table.
10094         (typedef_hash_table::find_typedef): Rename from
10095         find_typedef_in_hash; now a member.
10096         (whatis_exp): Update.
10097         * extension.h (struct ext_lang_type_printers): Add constructor and
10098         destructor.
10099         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
10100         declare.
10101         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
10102         Now a constructor; rename from start_ext_lang_type_printers.
10103         (ext_lang_type_printers): Now a destructor; rename from
10104         free_ext_lang_type_printers.
10105         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
10106         Update.
10107         (c_type_print_base_struct_union): Update.  Remove cleanups.
10108
10109 2018-03-27  Tom Tromey  <tom@tromey.com>
10110
10111         * dwarf-index-write.c: Include <cmath>.
10112
10113 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
10114
10115         * NEWS: Add entry describing new "set|show varsize-limit" command.
10116         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
10117         command.
10118         * printcmd.c (_initialize_printcmd): Add "set var" alias of
10119         "set variable".
10120
10121 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
10122
10123         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
10124         dwarf-index-write.c
10125         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
10126         * dwarf-index-common.c: New file.
10127         * dwarf-index-common.h: New file.
10128         * dwarf-index-write.c: New file.
10129         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
10130         (struct dwarf2_section_info): Move from here.
10131         (dwarf2_section_info_def): Likewise.
10132         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
10133         (offset_type): Likewise.
10134         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
10135         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
10136         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
10137         (byte_swap): Likewise.
10138         (MAYBE_SWAP): Likewise.
10139         (dwarf2_per_cu_ptr): Likewise.
10140         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
10141         (struct tu_stats): Likewise.
10142         (struct dwarf2_per_objfile): Likewise.
10143         (struct dwarf2_per_cu_data): Likewise.
10144         (struct signatured_type): Likewise.
10145         (sig_type_ptr): Likewise.
10146         (DEF_VEC_P (sig_type_ptr)): Likewise.
10147         (INDEX4_SUFFIX): Likewise.
10148         (INDEX5_SUFFIX): Likewise.
10149         (DEBUG_STR_SUFFIX): Likewise.
10150         (dwarf2_read_section): Make non-static.
10151         (mapped_index_string_hash): Move from here.
10152         (dwarf5_djb_hash): Likewise.
10153         (file_write): Likewise.
10154         (class data_buf): Likewise.
10155         (struct symtab_index_entry): Likewise.
10156         (struct mapped_symtab): Likewise.
10157         (find_slot): Likewise.
10158         (hash_expand): Likewise.
10159         (add_index_entry): Likewise.
10160         (uniquify_cu_indices): Likewise.
10161         (class c_str_view): Likewise.
10162         (class c_str_view_hasher): Likewise.
10163         (class vector_hasher): Likewise.
10164         (write_hash_table): Likewise.
10165         (psym_index_map): Likewise.
10166         (struct addrmap_index_data): Likewise.
10167         (add_address_entry): Likewise.
10168         (add_address_entry_worker): Likewise.
10169         (write_address_map): Likewise.
10170         (symbol_kind): Likewise.
10171         (write_psymbols): Likewise.
10172         (struct signatured_type_index_data): Likewise.
10173         (write_one_signatured_type): Likewise.
10174         (recursively_count_psymbols): Likewise.
10175         (recursively_write_psymbols): Likewise.
10176         (class debug_names): Likewise.
10177         (check_dwarf64_offsets): Likewise.
10178         (psyms_seen_size): Likewise.
10179         (write_gdbindex): Likewise.
10180         (write_debug_names): Likewise.
10181         (assert_file_size): Likewise.
10182         (write_psymtabs_to_index): Likewise.
10183         (save_gdb_index_command): Likewise.
10184         (_initialize_dwarf2_read): Don't register the "save gdb-index"
10185         command.
10186         * dwarf2read.h: New file.
10187
10188 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
10189
10190         PR gdb/22670
10191         * dwarf2read.c (dwarf2_physname): Do not return the demangled
10192         symbol name if the CU's language stores symbol names in linkage
10193         format.
10194         * language.h (struct language_defn)
10195         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
10196         all instances of this struct.
10197
10198 2018-03-26  Tom Tromey  <tom@tromey.com>
10199
10200         * stack.c (backtrace_command_1): Remove verbose code.
10201
10202 2018-03-26  Tom Tromey  <tom@tromey.com>
10203
10204         * python/py-framefilter.c (py_print_type): Don't catch
10205         exceptions.  Return void.
10206         (py_print_value): Likewise.
10207         (py_print_single_arg): Likewise.
10208         (enumerate_args): Don't catch exceptions.
10209         (py_print_args): Likewise.
10210         (py_print_frame): Likewise.
10211         (gdbpy_apply_frame_filter): Catch exceptions here.
10212
10213 2018-03-26  Tom Tromey  <tom@tromey.com>
10214
10215         * stack.c (_initialize_stack): Remove trailing newlines from help
10216         text.  Add "Usage" line to "backtrace" help.
10217
10218 2018-03-26  Tom Tromey  <tom@tromey.com>
10219
10220         PR python/16486:
10221         * python/py-framefilter.c (py_print_args): Call wrap_hint.
10222
10223 2018-03-26  Tom Tromey  <tom@tromey.com>
10224
10225         * python/py-framefilter.c (py_print_single_arg): Return
10226         EXT_LANG_BT_ERROR from catch.
10227
10228 2018-03-26  Tom Tromey  <tom@tromey.com>
10229
10230         PR backtrace/15584:
10231         * stack.c (backtrace_command_1): Move some code into no-filters
10232         "if".
10233
10234 2018-03-26  Tom Tromey  <tom@tromey.com>
10235
10236         * python/py-framefilter.c (throw_quit_or_print_exception): New
10237         function.
10238         (gdbpy_apply_frame_filter): Use it.
10239
10240 2018-03-26  Tom Tromey  <tom@tromey.com>
10241
10242         PR cli/17716:
10243         * python/py-framefilter.c (py_print_type, py_print_value)
10244         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
10245         RETURN_MASK_ERROR.
10246
10247 2018-03-26  Tom Tromey  <tom@tromey.com>
10248
10249         * python/py-framefilter.c (enumerate_args): Use
10250         gdb::unique_xmalloc_ptr.
10251
10252 2018-03-26  Tom Tromey  <tom@tromey.com>
10253
10254         * python/py-framefilter.c (py_print_frame): Return
10255         EXT_LANG_BT_OK.
10256         (gdbpy_apply_frame_filter): Update comment.
10257         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
10258         Remove.
10259         <EXT_LANG_BT_NO_FILTERS>: Change value.
10260
10261 2018-03-26  Tom Tromey  <tom@tromey.com>
10262
10263         PR backtrace/15582:
10264         * stack.c (backtrace_command): Parse "hide" argument.
10265         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
10266         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
10267         constant.
10268
10269 2018-03-26  Tom Tromey  <tom@tromey.com>
10270
10271         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
10272         add "flags".
10273         (backtrace_command): Remove "fulltrace", add "flags".
10274
10275 2018-03-26  Tom Tromey  <tom@tromey.com>
10276
10277         * stack.c (backtrace_command): Rewrite command line parsing.
10278
10279 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
10280
10281         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
10282
10283 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
10284
10285         * filename-seen-cache.h: Add include guard.
10286
10287 2018-03-26  Keith Seitz  <keiths@redhat.com>
10288
10289         * symfile.c (place_section): Remove "struct" from section_addr_info
10290         in comment.
10291         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
10292         "struct" keyword from section_addr_info.
10293
10294 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
10295
10296         * regformats/regdef.h (reg): Add constructors.
10297
10298 2018-03-25  Pedro Alves  <palves@redhat.com>
10299
10300         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
10301         if then/else bodies in var_func_name extraction.
10302
10303 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
10304
10305         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
10306         lookup_minimal_symbol() to find symbol entry.
10307         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
10308
10309 2018-03-23  Keith Seitz  <keiths@redhat.com>
10310
10311         PR c++/22968
10312         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
10313         nested type definitions for C++, too.
10314
10315 2018-03-23  Tom Tromey  <tom@tromey.com>
10316
10317         * machoread.c (struct oso_el): Add a constructor.  Don't define as
10318         a typedef.
10319         (macho_register_oso): Remove.
10320         (macho_symtab_read): Take a std::vector.
10321         (oso_el_compare_name): Now a std::sort comparator.
10322         (macho_symfile_read_all_oso): Take a std::vector.
10323         (macho_symfile_read): Use std::vector.  Remove cleanups.
10324
10325 2018-03-22  Tom Tromey  <tom@tromey.com>
10326
10327         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
10328         (record_full_goto_bookmark): Use std::string.
10329
10330 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10331
10332         PR tdep/18295
10333         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
10334         a single mask.
10335
10336 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10337
10338         * rs6000-tdep.c (store_insn_p): New function.
10339         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
10340         and cr_reg to their unshifted values. Use store_insn_p to
10341         match LR saves using either R1 or fdata->alloca_reg. Use
10342         store_insn_p to match CR saves. Set alloca_reg_offset
10343         when alloca_reg and framep are set. Remove lr_reg shift
10344         when assigning to fdata->lr_register.
10345
10346 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10347
10348         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
10349         command line args instead of emitting a warning.
10350
10351 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
10352
10353         * tracepoint.h (struct static_tracepoint_marker): Initialize
10354         fields, define default constructor, move constructor and move
10355         assignment, disable the rest.
10356         <str_id, extra>: Make std::string.
10357         (release_static_tracepoint_marker): Remove.
10358         (free_current_marker): Remove.
10359         * tracepoint.c (free_current_marker): Remove.
10360         (parse_static_tracepoint_marker_definition): Adjust to
10361         std::string, use new hex2str overload.
10362         (release_static_tracepoint_marker): Remove.
10363         (print_one_static_tracepoint_marker): Get marker by reference
10364         and adjust to std::string.
10365         (info_static_tracepoint_markers_command): Adjust to std::vector
10366         changes
10367         * target.h (static_tracepoint_marker_p): Remove typedef.
10368         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
10369         (struct target_ops) <to_static_tracepoint_marker_at>: Return
10370         bool.
10371         <to_static_tracepoint_markers_by_strid>: Return std::vector.
10372         * target-debug.h
10373         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
10374         (target_debug_print_std_vector_static_tracepoint_marker): New.
10375         (target_debug_print_struct_static_tracepoint_marker_p): Rename
10376         to...
10377         (target_debug_print_static_tracepoint_marker_p): ... this.
10378         * target-delegates.c: Re-generate.
10379         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
10380         Make std::string.
10381         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
10382         (decode_static_tracepoint_spec): Adjust to std::vector.
10383         (tracepoint_print_one_detail): Adjust to std::string.
10384         (strace_marker_decode_location): Adjust to std::string.
10385         (update_static_tracepoint): Adjust to std::string, remove call
10386         to release_static_tracepoint_marker.
10387         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
10388         Adjust to std::vector.
10389         * remote.c (remote_static_tracepoint_marker_at): Return bool.
10390         (remote_static_tracepoint_markers_by_strid): Adjust to
10391         std::vector.
10392         * common/rsp-low.h (hex2str): New overload with explicit count
10393         of bytes.
10394         * common/rsp-low.c (hex2str): New overload with explicit count
10395         of bytes.
10396         * unittests/rsp-low-selftests.c (test_hex2str): New function.
10397         (_initialize_rsp_low_selftests): Add test_hex2str test.
10398         * unittests/tracepoint-selftests.c
10399         (test_parse_static_tracepoint_marker_definition): Adjust to
10400         std::string.
10401
10402 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
10403
10404         * tracepoint.c (parse_static_tracepoint_marker_definition):
10405         Consider case where the definition is followed by more
10406         definitions.
10407         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10408         tracepoint-selftests.c.
10409         * unittests/tracepoint-selftests.c: New.
10410
10411 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10412
10413         * MAINTAINERS (Write After Approval): Add Pedro Franco de
10414         Carvalho.
10415
10416 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
10417
10418         * symtab.c (find_pc_sect_line): fixed indentation.
10419
10420 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
10421
10422         * symtab.c (find_pc_sect_line): now uses binary search.
10423
10424 2018-03-19  Tom Tromey  <tom@tromey.com>
10425
10426         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
10427         "IDENT" production.
10428
10429 2018-03-19  Pedro Alves  <palves@redhat.com>
10430             Tom Tromey  <tom@tromey.com>
10431
10432         * unittests/observable-selftests.c: New file.
10433         * common/observable.h: New file.
10434         * observable.h: New file.
10435         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
10436         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
10437         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
10438         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
10439         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
10440         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
10441         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
10442         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
10443         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
10444         python/py-breakpoint.c, python/py-finishbreakpoint.c,
10445         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
10446         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
10447         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
10448         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
10449         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
10450         tui/tui-interp.c, valops.c: Update all users.
10451         * tui/tui-hooks.c (tui_bp_created_observer)
10452         (tui_bp_deleted_observer, tui_bp_modified_observer)
10453         (tui_inferior_exit_observer, tui_before_prompt_observer)
10454         (tui_normal_stop_observer, tui_register_changed_observer):
10455         Remove.
10456         (tui_observers_token): New global.
10457         (attach_or_detach, tui_attach_detach_observers): New functions.
10458         (tui_install_hooks, tui_remove_hooks): Use
10459         tui_attach_detach_observers.
10460         * record-btrace.c (record_btrace_thread_observer): Remove.
10461         (record_btrace_thread_observer_token): New global.
10462         * observer.sh: Remove.
10463         * observer.c: Rename to observable.c.
10464         * observable.c (namespace gdb_observers): Define new objects.
10465         (observer_debug): Move into gdb_observers namespace.
10466         (struct observer, struct observer_list, xalloc_observer_list_node)
10467         (xfree_observer_list_node, generic_observer_attach)
10468         (generic_observer_detach, generic_observer_notify): Remove.
10469         (_initialize_observer): Update.
10470         Don't include observer.inc.
10471         * Makefile.in (generated_files): Remove observer.h, observer.inc.
10472         (clean mostlyclean): Likewise.
10473         (observer.h, observer.inc): Remove targets.
10474         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
10475         (COMMON_SFILES): Use observable.c, not observer.c.
10476         * .gitignore: Remove observer.h.
10477
10478 2018-03-18  Tom Tromey  <tom@tromey.com>
10479
10480         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
10481         gdb::def_vector.
10482         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
10483
10484 2018-03-17  Tom Tromey  <tom@tromey.com>
10485
10486         * auto-load.c (auto_load_objfile_script_1): Use std::string.
10487
10488 2018-03-17  Tom Tromey  <tom@tromey.com>
10489
10490         * target.c (class scoped_target_fd): New.
10491         (target_fileio_close_cleanup): Remove.
10492         (target_fileio_read_alloc_1): Use scoped_target_fd.
10493
10494 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
10495
10496         * silent-rules.mk: New.
10497         * Makefile.in: Include silent-rules.mk
10498         (srcdir, VPATH, top_srcdir): Move up.
10499         (COMPILE): Add ECHO_CXX.
10500         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
10501         (init.c): Add ECHO_INIT_C.
10502         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
10503         (version.c): Add ECHO_GEN.
10504         (printcmd.o): Add ECHO_CXX.
10505         (target-float.o): Add ECHO_CXX.
10506         (ada-exp.o): Add ECHO_CXX.
10507         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
10508         (insight$(EXEEXT)): Add ECHO_CXXLD.
10509         * gnulib/configure.ac: Add AM_SILENT_RULES.
10510         * gnulib/aclocal.m4: Re-generate.
10511         * gnulib/configure: Re-generate.
10512         * gnulib/import/Makefile.in: Re-generate.
10513
10514 2018-03-16  Tom Tromey  <tom@tromey.com>
10515
10516         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
10517         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
10518         * utils.c (do_free_section_addr_info)
10519         (make_cleanup_free_section_addr_info): Remove.
10520         * symfile.h (struct other_sections): Add constructor.
10521         (struct section_addr_info): Remove.
10522         (section_addr_info): New typedef.
10523         (struct sym_fns) <sym_offsets>: Change type of parameter.
10524         (build_section_addr_info_from_objfile)
10525         (relative_addr_info_to_section_offsets, addr_info_make_relative)
10526         (default_symfile_offsets, symbol_file_add)
10527         (symbol_file_add_from_bfd)
10528         (build_section_addr_info_from_section_table): Update.
10529         (alloc_section_addr_info, free_section_addr_info): Don't declare.
10530         * symfile.c (alloc_section_addr_info): Remove.
10531         (build_section_addr_info_from_section_table): Change return type.
10532         Update.
10533         (build_section_addr_info_from_bfd)
10534         (build_section_addr_info_from_objfile): Likewise.
10535         (free_section_addr_info): Remove.
10536         (relative_addr_info_to_section_offsets): Change type of "addrs".
10537         (addrs_section_compar): Now a std::sort comparator.
10538         (addrs_section_sort): Change return type.
10539         (addr_info_make_relative): Change type of "addrs".  Update.
10540         (default_symfile_offsets, syms_from_objfile_1)
10541         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
10542         (symbol_file_add_separate): Update.
10543         (symbol_file_add): Change type of "addrs".  Update.
10544         (add_symbol_file_command): Update.  Remove cleanups.
10545         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
10546         cleanups.
10547         * symfile-debug.c (debug_sym_offsets): Change type of "info".
10548         * solib.c (solib_read_symbols): Update.
10549         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
10550         * machoread.c (macho_symfile_offsets): Update.
10551         * jit.c (jit_bfd_try_read_symtab): Update.
10552
10553 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
10554
10555         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10556         unittests/utils-selftests.c.
10557         * unittests/utils-selftests.c: New file.
10558
10559 2018-03-14  Tom Tromey  <tom@tromey.com>
10560
10561         PR cli/14977:
10562         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
10563         for NULL.
10564
10565 2018-03-14  Tom Tromey  <tom@tromey.com>
10566
10567         PR cli/19918:
10568         * printcmd.c (printf_pointer): Allow "-" in format.
10569
10570 2018-03-14  Tom Tromey  <tom@tromey.com>
10571
10572         * printcmd.c (_initialize_printcmd): Add usage to printf.
10573
10574 2018-03-14  Yao Qi  <qiyao@sourceware.org>
10575
10576         * MAINTAINERS: Update my email address.
10577
10578 2018-03-13  Tom Tromey  <tom@tromey.com>
10579
10580         * machoread.c (macho_check_dsym): Change filenamep to a
10581         std::string*.
10582         (macho_symfile_read): Update.
10583         * symfile.c (load_command): Use std::string.
10584
10585 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
10586
10587         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
10588         to error message string.
10589         (riscv_register_name): Use xsnprintf instead of sprintf.
10590         (riscv_insn::fetch_instruction): Use gdb_assert instead of
10591         internal_error.
10592         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
10593         error.
10594         (riscv_push_dummy_call): Likewise.
10595
10596 2018-03-12  Tom Tromey  <tom@tromey.com>
10597
10598         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
10599         Use gdb::byte_vector.
10600         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
10601
10602 2018-03-12  Yao Qi  <yao.qi@linaro.org>
10603
10604         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
10605         parameter type to readable_regcache.
10606         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
10607         the declaration.
10608
10609 2018-03-11  Tom Tromey  <tom@tromey.com>
10610
10611         * dwarf2read.c (struct nextfield): Add initializers.
10612         (struct nextfnfield): Remove.
10613         (struct fnfieldlist): Add initializers.  Remove "length" and
10614         "head", use std::vector.
10615         (struct decl_field_list): Remove.
10616         (struct field_info): Add initializers.
10617         <fields, baseclasses>: Now std::vector.
10618         <nbaseclasses, nfnfields, typedef_field_list_count,
10619         nested_types_list_count>: Remove.
10620         (dwarf2_add_field, dwarf2_add_type_defn)
10621         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
10622         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
10623         (process_structure_scope): Update.
10624
10625 2018-03-11  Tom Tromey  <tom@tromey.com>
10626
10627         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
10628         for use by std::sort.
10629         (build_type_psymtabs_1): Use std::vector.
10630
10631 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
10632
10633         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
10634         and LIBMPFR in the printed configuration.
10635
10636 2018-03-08  Tom Tromey  <tom@tromey.com>
10637
10638         * source.c (get_filename_and_charpos): Use scoped_fd.
10639         * nto-procfs.c (procfs_open_1): Use scoped_fd.
10640         (procfs_pidlist): Likewise.
10641         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
10642         (iterate_over_mappings): Likewise.
10643
10644 2018-03-08  Tom Tromey  <tom@tromey.com>
10645
10646         * infcall.c (struct call_return_meta_info)
10647         <stack_temporaries_enabled>: Remove.
10648         (get_call_return_value, call_function_by_hand_dummy): Update.
10649         * thread.c (disable_thread_stack_temporaries): Remove.
10650         (enable_thread_stack_temporaries): Remove.
10651         (thread_stack_temporaries_enabled_p): Return bool.
10652         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
10653         (get_last_thread_stack_temporary): Update.
10654         * eval.c (evaluate_subexp): Update.
10655         * gdbthread.h (class enable_thread_stack_temporaries): Now a
10656         class, not a function.
10657         (value_ptr, value_vec): Remove typedefs.
10658         (class thread_info) <stack_temporaries_enabled>: Now bool.
10659         <stack_temporaries>: Now a std::vector.
10660         (thread_stack_temporaries_enabled_p)
10661         (value_in_thread_stack_temporaries): Return bool.
10662
10663 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
10664
10665         * remote.c (putpkt_binary): Fix omitted bytes reporting.
10666         (getpkt_or_notif_sane_1): Likewise.
10667
10668 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
10669
10670         * build-id.c (build_id_to_debug_bfd): Use std::string.
10671
10672 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
10673
10674         * build-id.c (find_separate_debug_file_by_buildid): Return
10675         std::string.
10676         * build-id.h (find_separate_debug_file_by_buildid): Return
10677         std::string.
10678         * coffread.c (coff_symfile_read): Adjust to std::string.
10679         * elfread.c (elf_symfile_read): Adjust to std::string.
10680         * symfile.c (separate_debug_file_exists): Change parameter to
10681         std::string.
10682         (find_separate_debug_file): Return std::string.
10683         (find_separate_debug_file_by_debuglink): Return std::string.
10684         * symfile.h (find_separate_debug_file_by_debuglink): Return
10685         std::string.
10686
10687 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
10688
10689         * common/xml-utils.c (xml_escape_text): Move code to...
10690         (xml_escape_text_append): ... this new function.
10691         * common/xml-utils.h (xml_escape_text_append): New declaration.
10692         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
10693         New function.
10694         (_initialize_xml_utils): register test_xml_escape_text_append as
10695         a selftest.
10696
10697 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
10698
10699         * defs.h: Remove MAX_REGISTER_SIZE.
10700         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
10701         asserts.
10702         * python/py-unwind.c (pyuw_sniffer): Likewise.
10703
10704 2018-03-07  Tom Tromey  <tom@tromey.com>
10705
10706         * linux-tdep.c (linux_info_proc): Update.
10707         * target.h (struct target_ops) <to_fileio_readlink>: Return
10708         optional<string>.
10709         (target_fileio_readlink): Return optional<string>.
10710         * remote.c (remote_hostio_readlink): Return optional<string>.
10711         * inf-child.c (inf_child_fileio_readlink): Return
10712         optional<string>.
10713         * target.c (target_fileio_readlink): Return optional<string>.
10714
10715 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
10716
10717         * regcache.c (cooked_read_test): Add riscv to the list of
10718         architectures that have a save_reggroup.
10719
10720 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10721
10722         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
10723         value is not a dynamic class object.
10724
10725 2018-03-06  Tom Tromey  <tom@tromey.com>
10726
10727         * rust-exp.y: Formatting fixes.
10728
10729 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10730
10731         * riscv-tdep.c (riscv_register_name): Remove target description
10732         support.
10733         (riscv_gdbarch_init): Remove target description check.
10734
10735 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10736
10737         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
10738         comment.
10739         * riscv-tdep.h: Likewise.
10740
10741 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10742
10743         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
10744         (riscv_pseudo_register_write): Delete.
10745         (riscv_gdbarch_init): Remove all use of pseudo registers.
10746
10747 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10748
10749         * record-btrace.c (btrace_print_lines): Replace cleanup
10750         parameter with RAII equivalents.
10751         (btrace_insn_history): Replace cleanup with RAII equivalents.
10752         * ui-out.h (make_cleanup_ui_out_list_begin_end,
10753         make_cleanup_ui_out_tuple_begin_end): Remove.
10754         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
10755         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
10756         make_cleanup_ui_out_list_begin_end): Remove.
10757
10758 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10759
10760         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
10761         parameter types to std::vector.  Use bool.
10762         (record_btrace_wait): Replace VEC(tp_t) with
10763         std::vector<thread_info *>.
10764         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
10765
10766 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10767
10768         * record-btrace.c (record_btrace_disable_callback): Remove.
10769         (struct scoped_btrace_disable): New.
10770         (record_btrace_open): Use scoped_btrace_disable.
10771
10772 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10773
10774         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
10775         reading values from registers.
10776
10777 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10778
10779         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
10780         where appropriate.
10781
10782 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10783
10784         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
10785         change parameter type.  Use GDB's print functions, and use
10786         core_addr_to_string where appropriate.
10787         (riscv_push_dummy_call): Use core_addr_to_string where
10788         appropriate, update call to riscv_print_arg_location, and reindent
10789         a few lines.
10790         (riscv_return_value): Update call to riscv_print_arg_location.
10791
10792 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10793             Tim Newsome <tim@sifive.com>
10794             Albert Ou <a0u@eecs.berkeley.edu>
10795             Darius Rad <darius@bluespec.com>
10796
10797         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
10798         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
10799         (ALLDEPFILES): Add riscv-tdep.c
10800         * configure.tgt: Add riscv support.
10801         * riscv-tdep.c: New file.
10802         * riscv-tdep.h: New file.
10803         * NEWS: Mention new target.
10804         * MAINTAINERS: Add entry for riscv.
10805
10806 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10807
10808         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
10809         fields within aggregates.
10810
10811 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
10812
10813         * record-btrace.c (btrace_print_lines): Change type of flags to
10814         gdb_disassembly_flags.
10815
10816 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10817
10818         * fbsd-nat.c: Include "inf-ptrace.h".
10819         (USE_SIGTRAP_SIGINFO): Conditionally define.
10820         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
10821         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
10822         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
10823         function.
10824         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
10825         Likewise.
10826         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
10827         Likewise.
10828         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
10829         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
10830         "supports_stopped_by_hw_breakpoint" target methods.
10831
10832 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10833
10834         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
10835         * fbsd-nat.c (debug_fbsd_nat): New variable.
10836         (show_fbsd_nat_debug): New function.
10837         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
10838         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
10839
10840 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10841
10842         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
10843         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
10844         prototype.
10845         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
10846         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
10847         method.
10848
10849 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10850
10851         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
10852         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
10853
10854 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10855
10856         * charset.c (struct charset_vector): New.
10857         (charsets): Change type to charset_vector.
10858         (find_charset_names): Adjust.
10859         (add_one): Adjust.
10860         (_initialize_charset): Adjust.
10861
10862 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10863
10864         * progspace.h (struct program_space) <deleted_solibs>: Change
10865         type to std::vector<std::string>.
10866         * progspace.c (clear_program_space_solib_cache): Adjust.
10867         * breakpoint.c (print_solib_event): Adjust.
10868         (check_status_catch_solib): Adjust.
10869         * solib.c (update_solib_list): Adjust.
10870         * ui-out.h (class ui_out) <field_string>: New overload.
10871         * ui-out.c (ui_out::field_string): New overload.
10872
10873 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10874
10875         * progspace.h (struct program_space): Add constructor and
10876         destructor, initialize fields.
10877         (add_program_space): Remove.
10878         * progspace.c (add_program_space): Rename to...
10879         (program_space::program_space): ... this.
10880         (release_program_space): Rename to...
10881         (program_space::~program_space): ... this.
10882         (delete_program_space): Use delete to delete program_space.
10883         (initialize_progspace): Use new to allocate program_space.
10884         * inferior.c (add_inferior_with_spaces): Likewise.
10885         (clone_inferior_command): Likewise.
10886         * infrun.c (follow_fork_inferior): Likewise.
10887         (handle_vfork_child_exec_or_exit): Likewise.
10888
10889 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10890
10891         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
10892         (delim_string_to_char_ptr_vec): Return std::vector of
10893         gdb::unique_xmalloc_ptr.
10894         (dirnames_to_char_ptr_vec_append): Take std::vector of
10895         gdb::unique_xmalloc_ptr.
10896         (dirnames_to_char_ptr_vec): Return std::vector of
10897         gdb::unique_xmalloc_ptr.
10898         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
10899         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
10900         (delim_string_to_char_ptr_vec): Return an std::vector of
10901         gdb::unique_xmalloc_ptr, adjust the code.
10902         (dirnames_to_char_ptr_vec_append): Take an std::vector of
10903         gdb::unique_xmalloc_ptr, adjust the code.
10904         (dirnames_to_char_ptr_vec): Return an std::vector of
10905         gdb::unique_xmalloc_ptr, adjust the code.
10906         * auto-load.c (auto_load_safe_path_vec): Change type to
10907         std::vector of gdb::unique_xmalloc_ptr.
10908         (auto_load_expand_dir_vars): Return an std::vector of
10909         gdb::unique_xmalloc_ptr, adjust the code.
10910         (auto_load_safe_path_vec_update): Adjust.
10911         (filename_is_in_auto_load_safe_path_vec): Adjust.
10912         (auto_load_objfile_script_1): Adjust.
10913         * build-id.c (build_id_to_debug_bfd): Adjust.
10914         * linux-thread-db.c (thread_db_load_search): Adjust.
10915         * source.c (add_path): Adjust.
10916         (openp): Adjust.
10917         * symfile.c (find_separate_debug_file): Adjust.
10918         * utils.c (do_free_char_ptr_vec): Remove.
10919         (make_cleanup_free_char_ptr_vec): Remove.
10920
10921 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
10922
10923         PR gdb/22907
10924         * common/pathstuff.c: Conditionally include "<windows.h>".
10925
10926 2018-03-01  Georg Sauthoff  <mail@georg.so>
10927
10928         PR gdb/22888
10929         * gcore.in: Quote variables and switch interpreter to bash.
10930
10931 2018-03-01  Tom Tromey  <tom@tromey.com>
10932
10933         * dwarf2read.c (alloc_discriminant_info): Fix default_index
10934         assertion.  Add assertion for discriminant_index.
10935         (quirk_rust_enum): Use correct base type name in univariant case.
10936
10937 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
10938
10939         * record.c (get_call_history_modifiers): Return a
10940         record_print_flags.
10941         (cmd_record_call_history): Adjust.
10942         * record-btrace.c (record_btrace_call_history): Adjust.
10943         (record_btrace_call_history_range): Adjust.
10944         (record_btrace_call_history_from): Adjust.
10945         * target-debug.h (target_debug_print_record_print_flags): New.
10946         * target-delegates.c: Re-generate.
10947         * target.c (target_call_history): Change flags type.
10948         (target_call_history_from): Likewise.
10949         (target_call_history_range): Likewise.
10950         * target.h (struct target_ops) <target_call_history>: Likewise.
10951         (target_call_history_from): Likewise.
10952         (target_call_history_range): Likewise.
10953
10954 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
10955             Simon Marchi  <simon.marchi@polymtl.ca>
10956
10957         * common/common-utils.c: Include "sys/stat.h".
10958         (is_regular_file): Move here from "source.c"; change return
10959         type to "bool".
10960         * common/common-utils.h (is_regular_file): New prototype.
10961         * common/pathstuff.c (contains_dir_separator): New function.
10962         * common/pathstuff.h (contains_dir_separator): New prototype.
10963         * source.c: Don't include "sys/stat.h".
10964         (is_regular_file): Move to "common/common-utils.c".
10965
10966 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
10967
10968         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
10969         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
10970         * auto-load.c: Include "common/pathstuff.h".
10971         * common/common-def.h (current_directory): Move here.
10972         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
10973         function.
10974         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
10975         prototype.
10976         * common/pathstuff.c: New file.
10977         * common/pathstuff.h: New file.
10978         * compile/compile.c: Include "common/pathstuff.h".
10979         * defs.h (current_directory): Move to "common/common-defs.h".
10980         * dwarf2read.c: Include "common/pathstuff.h".
10981         * exec.c: Likewise.
10982         * guile/scm-safe-call.c: Likewise.
10983         * linux-thread-db.c: Likewise.
10984         * main.c: Likewise.
10985         * nto-tdep.c: Likewise.
10986         * objfiles.c: Likewise.
10987         * source.c: Likewise.
10988         * symtab.c: Likewise.
10989         * utils.c: Include "common/pathstuff.h".
10990         (gdb_realpath): Move to "common/pathstuff.c".
10991         (gdb_realpath_keepfile): Likewise.
10992         (gdb_abspath): Likewise.
10993         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
10994         (gdb_realpath_keepfile): Likewise.
10995         (gdb_abspath): Likewise.
10996
10997 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
10998
10999         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
11000         wildcard process pid for super_resume for kernels with a
11001         specific bug.
11002
11003 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
11004
11005         * compile/compile.c (get_args): Add additional comments
11006         explaining function.
11007
11008 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
11009             Tom Tromey  <tom@tromey.com>
11010
11011         * target.h (memory_write_request_s): Remove typedef.  Don't define
11012         VEC.
11013         (target_write_memory_blocks): Change argument to std::vector.
11014         (struct memory_write_request): Add constructor.
11015         * target-memory.c (compare_block_starting_address): Return bool.
11016         Change argument types.
11017         (claim_memory): Change arguments to use std::vector.
11018         (split_regular_and_flash_blocks, blocks_to_erase)
11019         (compute_garbled_blocks): Likewise.
11020         (cleanup_request_data, cleanup_write_requests_vector): Remove.
11021         (target_write_memory_blocks): Change argument to std::vector.
11022         * symfile.c (struct load_section_data): Add constructor and
11023         destructor.  Use std::vector for "requests".
11024         (struct load_progress_data): Add initializers.
11025         (load_section_callback): Update.  Use "new".
11026         (clear_memory_write_data): Remove.
11027         (generic_load): Update.
11028
11029 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
11030
11031         * arch/aarch64.h: Use common/tdesc.h.
11032
11033 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
11034
11035         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
11036         architecture with a 64-bit ABI.
11037
11038 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
11039
11040         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
11041         ahead of target description loading.
11042
11043 2018-02-26  Tom Tromey  <tom@tromey.com>
11044
11045         * stack.c (backtrace_command_1): Update.
11046         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
11047         of "flags".
11048         * python/py-framefilter.c (py_print_frame)
11049         (gdbpy_apply_frame_filter): Change type of "flags".
11050         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
11051         of "flags".
11052         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
11053         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
11054         * extension.h (enum frame_filter_flag): Rename from
11055         frame_filter_flags.
11056         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
11057         (apply_ext_lang_frame_filter): Change type of "flags".
11058         * extension.c (apply_ext_lang_frame_filter): Change type of
11059         "flags".
11060         * extension-priv.h (struct extension_language_ops)
11061         <apply_frame_filter>: Change type of "flags".
11062
11063 2018-02-26  Tom Tromey  <tom@tromey.com>
11064
11065         PR python/16497:
11066         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
11067         off-by-one in py_end computation.
11068         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
11069         PRINT_MORE_FRAMES.
11070         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
11071         constant.
11072
11073 2018-02-26  Tom Tromey  <tom@tromey.com>
11074
11075         * dwarf2read.c (struct variant_field): New.
11076         (struct nextfield) <variant>: New field.
11077         (dwarf2_add_field): Handle DW_TAG_variant_part.
11078         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
11079         discriminated union.
11080         (read_structure_type): Handle DW_TAG_variant_part.
11081         (handle_struct_member_die): New function, extracted from
11082         process_structure_scope.  Handle DW_TAG_variant.
11083         (process_structure_scope): Handle discriminated unions.  Call
11084         handle_struct_member_die.
11085
11086 2018-02-26  Tom Tromey  <tom@tromey.com>
11087
11088         * rust-lang.h (rust_last_path_segment): Declare.
11089         * rust-lang.c (rust_last_path_segment): Now public.  Change
11090         contract.
11091         (struct disr_info): Remove.
11092         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
11093         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
11094         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
11095         (rust_enum_p, rust_enum_variant): New function.
11096         (rust_underscore_fields): Remove "offset" parameter.
11097         (rust_print_enum): New function.
11098         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
11099         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
11100         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
11101         enums.
11102         (rust_internal_print_type): New function, from rust_print_type.
11103         Remove enum code.
11104         (rust_print_type): Call rust_internal_print_type.
11105         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
11106         Update enum handling.
11107         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
11108         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
11109         (rust_union_quirks): New functions.
11110         (process_full_comp_unit, process_full_type_unit): Call
11111         rust_union_quirks.
11112         (process_structure_scope): Update rust_unions if necessary.
11113
11114 2018-02-26  Tom Tromey  <tom@tromey.com>
11115
11116         * value.h (value_union_variant): Declare.
11117         * valops.c (value_union_variant): New function.
11118         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
11119         (struct discriminant_info): New.
11120         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
11121         enumerator.
11122         (struct main_type) <flag_discriminated_union>: New field.
11123
11124 2018-02-26  Tom Tromey  <tom@tromey.com>
11125
11126         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11127         unittests/unpack-selftests.c.
11128         * unittests/unpack-selftests.c: New file.
11129         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
11130
11131 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11132
11133         * dwarf2read.c (struct partial_die_info) <read>: New method.
11134         (read_partial_die): Remove the declaration.
11135         (load_partial_dies): Update.
11136         (partial_die_info::partial_die_info):
11137         (read_partial_die): Change it to partial_die_info::read.
11138
11139 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11140
11141         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
11142         (fixup_partial_die): Remove declaration.
11143         (scan_partial_symbols): Update.
11144         (partial_die_parent_scope): Likewise.
11145         (partial_die_full_name): Likewise.
11146         (fixup_partial_die): Change it to partial_die_info::fixup.
11147
11148 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11149
11150         * dwarf2read.c (read_partial_die): Update the declaration.
11151         (load_partial_dies): Caller update.
11152         (read_partial_die): Remove one argument abbrev_len.
11153
11154 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11155
11156         * dwarf2read.c (struct partial_die_info): Add ctor, delete
11157         assignment operator.
11158         (load_partial_dies): Use ctor and copy ctor.
11159         (read_partial_die): Update.
11160         (dwarf2_cu::find_partial_die): Use ctor.
11161
11162 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11163
11164         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
11165         (find_partial_die_in_comp_unit): Change it to
11166         dwarf2_cu::find_partial_die.
11167         (find_partial_die): Update.
11168
11169 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11170
11171         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
11172         is NULL.
11173
11174 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11175
11176         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
11177
11178 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
11179
11180         * arch/amd64.h: Use common/tdesc.h.
11181         * arch/i386.c: Likewise.
11182         * arch/i386.h: Likewise.
11183         * arch/tic6x.c: Likewise.
11184         * arch/tdesc.h: Move file from here...
11185         * common/tdesc.h: ...to here.
11186         * features/aarch64-core.c: Regenerate.
11187         * features/aarch64-fpu.c: Regenerate.
11188         * features/i386/32bit-avx.c: Regenerate.
11189         * features/i386/32bit-avx512.c: Regenerate.
11190         * features/i386/32bit-core.c: Regenerate.
11191         * features/i386/32bit-linux.c: Regenerate.
11192         * features/i386/32bit-mpx.c: Regenerate.
11193         * features/i386/32bit-pkeys.c: Regenerate.
11194         * features/i386/32bit-sse.c: Regenerate.
11195         * features/i386/64bit-avx.c: Regenerate.
11196         * features/i386/64bit-avx512.c: Regenerate.
11197         * features/i386/64bit-core.c: Regenerate.
11198         * features/i386/64bit-linux.c: Regenerate.
11199         * features/i386/64bit-mpx.c: Regenerate.
11200         * features/i386/64bit-pkeys.c: Regenerate.
11201         * features/i386/64bit-segments.c: Regenerate.
11202         * features/i386/64bit-sse.c: Regenerate.
11203         * features/i386/x32-core.c: Regenerate.
11204         * features/tic6x-c6xp.c: Regenerate.
11205         * features/tic6x-core.c: Regenerate.
11206         * features/tic6x-gp.c: Regenerate.
11207         * target-descriptions.c: Use common/tdesc.h.
11208         * target-descriptions.h: Likewise.
11209
11210 2018-02-24  Tom Tromey  <tom@tromey.com>
11211
11212         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
11213         (try_thread_db_load_from_dir, thread_db_load_search): Use
11214         std::string.
11215         (info_auto_load_libthread_db_compare): Return bool.  Change
11216         argument types.
11217         (info_auto_load_libthread_db): Use std::vector, std::string.
11218         Remove cleanups.
11219
11220 2018-02-24  Tom Tromey  <tom@tromey.com>
11221
11222         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
11223         std::string.
11224         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
11225         std::string*.
11226         * gdbarch.c: Rebuild.
11227         * gdbarch.h: Rebuild.
11228         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
11229         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
11230         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
11231         std::string*.
11232
11233 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
11234
11235         * gdbtypes.h (sect_offset): Change type to uint64_t.
11236         (sect_offset_str): New function.
11237         * dwarf2read.c (create_addrmap_from_aranges): Use
11238         sect_offset_str.
11239         (error_check_comp_unit_head): Likewise.
11240         (create_debug_type_hash_table): Likewise.
11241         (read_cutu_die_from_dwo): Likewise.
11242         (init_cutu_and_read_dies): Likewise.
11243         (init_cutu_and_read_dies_no_follow): Likewise.
11244         (process_psymtab_comp_unit_reader): Likewise.
11245         (partial_die_parent_scope): Likewise.
11246         (peek_die_abbrev): Likewise.
11247         (process_queue): Likewise.
11248         (dwarf2_physname): Likewise.
11249         (read_namespace_alias): Likewise.
11250         (read_import_statement): Likewise.
11251         (create_dwo_cu_reader): Likewise.
11252         (create_cus_hash_table): Likewise.
11253         (lookup_dwo_cutu): Likewise.
11254         (inherit_abstract_dies): Likewise.
11255         (read_func_scope): Likewise.
11256         (read_call_site_scope): Likewise.
11257         (dwarf2_add_member_fn): Likewise.
11258         (read_common_block): Likewise.
11259         (read_module_type): Likewise.
11260         (read_typedef): Likewise.
11261         (read_subrange_type): Likewise.
11262         (load_partial_dies): Likewise.
11263         (read_partial_die): Likewise.
11264         (find_partial_die): Likewise.
11265         (read_str_index): Likewise.
11266         (dwarf2_string_attr): Likewise.
11267         (build_error_marker_type): Likewise.
11268         (lookup_die_type): Likewise.
11269         (dump_die_shallow): Likewise.
11270         (follow_die_ref): Likewise.
11271         (dwarf2_fetch_die_loc_sect_off): Likewise.
11272         (dwarf2_fetch_constant_bytes): Likewise.
11273         (follow_die_sig): Likewise.
11274         (get_signatured_type): Likewise.
11275         (get_DW_AT_signature_type): Likewise.
11276         (dwarf2_find_containing_comp_unit): Likewise.
11277         (set_die_type): Likewise.
11278
11279 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
11280
11281         * arch/aarch64.c: Include "common-defs.h".
11282         * arch/amd64.c: Likewise.
11283         * arch/i386.c: Likewise.
11284
11285 2018-02-21  Tom Tromey  <tom@tromey.com>
11286
11287         * value.h: (extract_field_op): Update.
11288         * eval.c (extract_field_op): Return a const char *.
11289         * expression.h (parse_expression_for_completion): Update.
11290         * completer.c (complete_expression): Update.
11291         (add_struct_fields): Make fieldname const.
11292         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
11293         (mark_completion_tag, parse_exp_in_context_1): Update.
11294         (parse_expression_for_completion): Change "name" to
11295         unique_xmalloc_ptr*.
11296
11297 2018-02-21  Tom Tromey  <tom@tromey.com>
11298
11299         * infcall.c (call_function_by_hand_dummy): Use std::vector.
11300
11301 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11302
11303         * avr-tdep.c (avr_read_pc): Change parameter type to
11304         readable_regcache.
11305         * gdbarch.sh (read_pc): Likewise.
11306         * gdbarch.c: Re-generated.
11307         * gdbarch.h: Re-generated.
11308         * hppa-tdep.c (hppa_read_pc): Change parameter type to
11309         readable_regcache.
11310         * ia64-tdep.c (ia64_read_pc): Likewise.
11311         * mips-tdep.c (mips_read_pc): Likewise.
11312         * spu-tdep.c (spu_read_pc): Likewise.
11313
11314 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11315
11316         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
11317         * regcache-dump.c: New file.
11318         * regcache.c: Move register_dump to regcache-dump.c.
11319         (maintenance_print_registers): Likewise.
11320         (maintenance_print_raw_registers): Likewise.
11321         (maintenance_print_cooked_registers): Likewise.
11322         (maintenance_print_register_groups): Likewise.
11323         (maintenance_print_remote_registers): Likewise.
11324         (_initialize_regcache): Likewise.
11325         * regcache.h (register_dump): Moved from regcache.c.
11326
11327 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11328
11329         * regcache.c (regcache::regcache): Update.
11330         (regcache::invalidate): Move it to detached_regcache::invalidate.
11331         (get_thread_arch_aspace_regcache): Update.
11332         (regcache::raw_update): Update.
11333         (regcache::cooked_read): Remove some code.
11334         (regcache::cooked_read_value): Likewise.
11335         (regcache::raw_write): Remove assert on m_readonly_p.
11336         (regcache::raw_supply_integer): Move it to
11337         detached_regcache::raw_supply_integer.
11338         (regcache::raw_supply_zeroed): Likewise.
11339         * regcache.h (detached_regcache) <raw_supply_integer>: New
11340         declaration.
11341         <raw_supply_zeroed, invalidate>: Likewise.
11342         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
11343         <invalidate>: Likewise.
11344         <m_readonly_p>: Removed.
11345
11346 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11347
11348         * infcmd.c (get_return_value): Let stop_regs point to
11349         get_current_regcache.
11350         * regcache.c (regcache::regcache): Remove.
11351         (register_dump_reg_buffer): New class.
11352         (regcache_print): Adjust.
11353         * regcache.h (regcache): Remove constructors.
11354
11355 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11356
11357         * regcache.c (class register_dump): New class.
11358         (register_dump_regcache, register_dump_none): New class.
11359         (register_dump_remote, register_dump_groups): New class.
11360         (regcache_print): Update.
11361         * regcache.h (regcache_dump_what): Move it to regcache.c.
11362         (regcache) <dump>: Remove.
11363
11364 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11365
11366         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
11367          reg_buffer_rw *.
11368         (jit_unwind_reg_set_impl): Call raw_supply.
11369         (jit_frame_sniffer): Use reg_buffer_rw.
11370         * record-full.c (record_full_core_regbuf): Change its type.
11371         (record_full_core_open_1): Use reg_buffer_rw.
11372         (record_full_close): Likewise.
11373         (record_full_core_fetch_registers): Use regcache->raw_supply.
11374         (record_full_core_store_registers): Likewise.
11375         * regcache.c (regcache::get_register_status): Move it to
11376         reg_buffer.
11377         (regcache_raw_set_cached_value): Remove.
11378         (regcache::raw_set_cached_value): Remove.
11379         (regcache::raw_write): Call raw_supply.
11380         (regcache::raw_supply): Move it to reg_buffer_rw.
11381         * regcache.h (regcache_raw_set_cached_value): Remove.
11382         (reg_buffer_rw): New class.
11383
11384 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11385
11386         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
11387         readonly_detached_regcache.
11388         (dummy_frame_prev_register): Use regcache->cooked_read.
11389         * frame.c (frame_save_as_regcache): Change return type.
11390         (frame_pop): Update.
11391         * frame.h (frame_save_as_regcache): Update declaration.
11392         * inferior.h (get_infcall_suspend_state_regcache): Update
11393         declaration.
11394         * infrun.c (infcall_suspend_state) <registers>: use
11395         readonly_detached_regcache.
11396         (save_infcall_suspend_state): Don't use regcache_dup.
11397         (get_infcall_suspend_state_regcache): Change return type.
11398         * linux-fork.c (struct fork_info) <savedregs>: Change to
11399         readonly_detached_regcache.
11400         <pc>: New field.
11401         (fork_save_infrun_state): Don't use regcache_dup.
11402         (info_checkpoints_command): Adjust.
11403         * mi/mi-main.c (register_changed_p): Update declaration.
11404         (mi_cmd_data_list_changed_registers): Use
11405         readonly_detached_regcache.
11406         (register_changed_p): Change parameter type to
11407         readonly_detached_regcache.
11408         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
11409         readonly_detached_regcache.
11410         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
11411         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
11412         New.
11413         (regcache::save): Move it to reg_buffer.
11414         (regcache::restore): Change parameter type.
11415         (regcache_dup): Remove.
11416         * regcache.h (reg_buffer) <save>: New method.
11417         (readonly_detached_regcache): New class.
11418         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
11419         readonly_detached_regcache.
11420         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
11421
11422 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11423
11424         * frame.c (frame_save_as_regcache): Use regcache method save.
11425         (frame_pop): Use regcache method restore.
11426         * infrun.c (restore_infcall_suspend_state): Likewise.
11427         * linux-fork.c (fork_load_infrun_state): Likewise.
11428         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
11429         save.
11430         * regcache.c (regcache_save): Remove.
11431         (regcache::restore): More asserts.
11432         (regcache_cpy): Remove.
11433         * regcache.h (regcache_save): Remove the declaration.
11434         (regcache::restore): Move from private to public.
11435         Remove the friend declaration of regcache_cpy.
11436         (regcache_cpy): Remove declaration.
11437
11438 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11439
11440         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
11441         parameter type to 'readable_regcache *'.
11442         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
11443         * arm-tdep.c (arm_neon_quad_read): Likewise.
11444         (arm_pseudo_read): Likewise.
11445         * avr-tdep.c (avr_pseudo_register_read): Likewise.
11446         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
11447         * frv-tdep.c (frv_pseudo_register_read): Likewise.
11448         * gdbarch.c: Re-generated.
11449         * gdbarch.h: Re-generated.
11450         * gdbarch.sh (pseudo_register_read): Change parameter type to
11451         'readable_regcache *'.
11452         (pseudo_register_read_value): Likewise.
11453         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
11454         (h8300_pseudo_register_read): Likewise.
11455         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
11456         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
11457         (i386_pseudo_register_read_into_value): Likewise.
11458         (i386_pseudo_register_read_value): Likewise.
11459         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
11460         declaration.
11461         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
11462         * m32c-tdep.c (m32c_raw_read): Likewise.
11463         (m32c_read_flg): Likewise.
11464         (m32c_banked_register): Likewise.
11465         (m32c_banked_read): Likewise.
11466         (m32c_sb_read): Likewise.
11467         (m32c_part_read): Likewise.
11468         (m32c_cat_read): Likewise.
11469         (m32c_r3r2r1r0_read): Likewise.
11470         (m32c_pseudo_register_read): Likewise.
11471         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
11472         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
11473         (mep_pseudo_cr64_read): Likewise.
11474         (mep_pseudo_register_read): Likewise.
11475         * mips-tdep.c (mips_pseudo_register_read): Likewise.
11476         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
11477         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
11478         * regcache.c (regcache::raw_read): Move it to readable_regcache.
11479         (regcache::cooked_read): Likewise.
11480         (regcache::cooked_read_value): Likewise.
11481         (regcache_cooked_read_signed):
11482         (regcache::cooked_read): Likewise.
11483         * regcache.h (readable_regcache): New class.
11484         (regcache): Inherit readable_regcache.  Move some methods to
11485         readable_regcache.
11486         * rl78-tdep.c (rl78_pseudo_register_read): Change
11487         parameter type to 'readable_regcache *'.
11488         * rs6000-tdep.c (do_regcache_raw_read): Remove.
11489         (e500_pseudo_register_read): Change parameter type to
11490         'readable_regcache *'.
11491         (dfp_pseudo_register_read): Likewise.
11492         (vsx_pseudo_register_read): Likewise.
11493         (efpr_pseudo_register_read): Likewise.
11494         * s390-tdep.c (s390_pseudo_register_read): Likewise.
11495         * sh-tdep.c (sh_pseudo_register_read): Likewise.
11496         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
11497         (sh64_pseudo_register_read): Likewise.
11498         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
11499         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
11500         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
11501         (spu_pseudo_register_read): Likewise.
11502         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
11503         (xtensa_pseudo_register_read): Likewise.
11504
11505 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11506
11507         * regcache.c (regcache::regcache): Call reg_buffer ctor.
11508         (regcache::arch): Move it to reg_buffer::arch.
11509         (regcache::register_buffer): Likewise.
11510         (regcache::assert_regnum): Likewise.
11511         (regcache::num_raw_registers): Likewise.
11512         * regcache.h (reg_buffer): New class.
11513         (regcache): Inherit reg_buffer.
11514
11515 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
11516
11517         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
11518         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
11519
11520 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
11521
11522         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
11523
11524 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
11525
11526         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
11527         (SFILES): Remove common/*.c files.
11528         (COMMON_OBS): Remove some *.o files built from common/*.c files.
11529         * common/common.host: Add common reference.
11530         * configure.ac: Likewise.
11531         * configure: Regenerate.
11532
11533 2018-02-16  Yao Qi  <yao.qi@linaro.org>
11534
11535         * block.c (block_namespace_info): Inherit allocate_on_obstack.
11536         (block_initialize_namespace): Use new.
11537         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
11538         (dwarf2_free_objfile): Use delete.
11539         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
11540         (copy_type_recursive): Use new.
11541         * gdb_obstack.h (allocate_on_obstack): New.
11542
11543 2018-02-15  Yao Qi  <yao.qi@linaro.org>
11544
11545         PR gdb/22849
11546         * inferior.c (exit_inferior_1): Reset inf->control.
11547
11548 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
11549
11550         * ada-lang.c (ada_to_fixed_value_create): Delete advance
11551         declaration.
11552
11553 2018-02-14  Pedro Alves  <palves@redhat.com>
11554
11555         * frame-unwind.c (frame_unwind_try_unwinder): Always call
11556         frame_cleanup_after_sniffer on exception.
11557
11558 2018-02-14  Tom Tromey  <tom@tromey.com>
11559
11560         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
11561         const.
11562         (solib_bfd_open): Make pathname const.
11563         * solib.c (solib_bfd_open): Make pathname const.
11564         * solib-spu.c (spu_bfd_fopen): Make name const.
11565         (spu_bfd_open): Make pathname const.
11566         * solib-darwin.c (darwin_bfd_open): Make pathname const.
11567         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
11568
11569 2018-02-14  Tom Tromey  <tom@tromey.com>
11570
11571         * symfile.c (symfile_bfd_open): Update.
11572         * source.h (openp, source_full_path_of, find_and_open_source):
11573         Change argument type to unique_xmalloc_ptr.
11574         * source.c (openp): Take a unique_xmalloc_ptr.
11575         (source_full_path_of, find_and_open_source): Likewise.
11576         (open_source_file, symtab_to_fullname): Update.
11577         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
11578         unique_xmalloc_ptr.
11579         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
11580         (exec_file_find): Update.
11581         * psymtab.c (psymtab_to_fullname): Update.
11582         * nto-tdep.h (nto_find_and_open_solib): Update.
11583         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
11584         unique_xmalloc_ptr.
11585         * exec.c (exec_file_attach): Update.
11586         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
11587         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
11588
11589 2018-02-14  Tom Tromey  <tom@tromey.com>
11590
11591         * solib.c: Include source.h.
11592         * nto-tdep.c: Include source.h.
11593         * mi/mi-cmd-env.c: Include source.h.
11594         * infcmd.c: Include source.h.
11595         * exec.c: Include source.h.
11596         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
11597         (add_path, directory_switch, source_path, init_source_path): Move
11598         declarations...
11599         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
11600         (add_path, directory_switch, source_path, init_source_path):
11601         ...here.
11602
11603 2018-02-14  Tom Tromey  <tom@tromey.com>
11604
11605         * solist.h (exec_file_find, solib_find): Return
11606         unique_xmalloc_ptr.
11607         (solib_bfd_fopen): Take a const char *.
11608         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
11609         (exec_file_find, solib_find): Likewise.
11610         (solib_bfd_fopen): Do not take ownership of "pathname".
11611         (solib_bfd_open): Use unique_xmalloc_ptr.
11612         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
11613         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
11614         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
11615         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
11616
11617 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
11618
11619         * ada-lang.c (name_match_type_from_name): Remove reference to
11620         ada_name_for_lookup in function's documentation.
11621         * ada-lang.h (ada_name_for_lookup): Delete declaration.
11622
11623 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
11624
11625         * defs.h (enum openp_flags): New enum.
11626         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
11627         Move to enum openp_flags.
11628         (openp_flags): New enum flags.
11629         (openp): Change parameter type to openp_flags.
11630         * source.c (openp): Change parameter type to openp_flags.
11631         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
11632         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
11633
11634 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
11635
11636         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
11637         per-command.
11638
11639 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
11640
11641         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
11642         into...
11643         (class dwarf2_queue_guard): ...the destructor of this new class.
11644         (dw2_do_instantiate_symtab): Create instance of the new class
11645         dwarf2_queue_guard, remove cleanup.
11646
11647 2018-02-09  Tom Tromey  <tom@tromey.com>
11648
11649         * source.c (find_source_lines): Don't reference past the end of
11650         the vector.
11651
11652 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11653
11654         * remote.c (remote_btrace_maybe_reopen): Change error message.
11655         * btrace.c (btrace_enable): Likewise.
11656         (parse_xml_btrace): Likewise.
11657         (parse_xml_btrace_conf): Likewise.
11658
11659 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11660
11661         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
11662         (linux_enable_pt, linux_enable_bts): Call
11663         diagnose_perf_event_open_fail.
11664
11665 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11666
11667         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
11668         Remove parameter and change return type.  Update callers.  Move it.
11669         (linux_enable_bts, linux_enable_pt): Improve error message.
11670         (linux_enable_pt): Remove zero buffer size check.
11671         (linux_enable_btrace): Improve error messages.  Remove NULL return
11672         check.
11673
11674 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11675
11676         * btrace.c (btrace_enable): Remove target_supports_btrace call.
11677         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
11678         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
11679         (linux_supports_pt, linux_supports_btrace): Remove.
11680         (linux_enable_bts): Call cpu_supports_bts.
11681         * nat/linux-btrace.h (linux_supports_btrace): Remove.
11682         * remote.c (remote_supports_btrace): Remove.
11683         (init_remote_ops): Remove remote_supports_btrace.
11684         * target-delegates.c: Regenerated.
11685         * target.c (target_supports_btrace): Remove.
11686         * target.h (target_ops) <to_supports_btrace>: Remove
11687         (target_supports_btrace): Remove.
11688         * x86-linux-nat.c (x86_linux_create_target): Remove
11689         linux_supports_btrace.
11690
11691 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11692
11693         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
11694         btrace failed.
11695         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
11696         exception and use message in own exception.
11697
11698 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11699
11700         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
11701         (perf_event_pt_event_type): Use gdb_file_up.
11702         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
11703         scoped_fd, and scoped_mmap.
11704
11705 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11706
11707         * common/scoped_mmap.h: New.
11708         * unittests/scoped_mmap-selftest.c: New.
11709         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11710         unittests/scoped_mmap-selftest.c.
11711
11712 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11713
11714         * common/scoped_fd.h: New.
11715         * unittests/scoped_fd-selftest.c: New.
11716         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11717         unittests/scoped_fd-selftest.c.
11718
11719 2018-02-09  Tom Tromey  <tom@tromey.com>
11720
11721         * auto-load.c (auto_load_section_scripts): Use
11722         gdb::unique_xmalloc_ptr.
11723
11724 2018-02-09  Tom Tromey  <tom@tromey.com>
11725
11726         * auto-load.c (execute_script_contents): Use std::string.
11727
11728 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
11729
11730         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
11731         Python function, rather than a new command.
11732
11733 2018-02-08  Tom Tromey  <tom@tromey.com>
11734
11735         * solib.c (solib_find_1): Use std::string.
11736         (solib_bfd_fopen): Use unique_xmalloc_ptr.
11737
11738 2018-02-08  Tom Tromey  <tom@tromey.com>
11739
11740         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
11741
11742 2018-02-08  Tom Tromey  <tom@tromey.com>
11743
11744         * source.c (find_source_lines): Use gdb::def_vector.
11745
11746 2018-02-08  Tom Tromey  <tom@tromey.com>
11747
11748         * macrocmd.c (struct temporary_macro_definition): New.
11749         (macro_define_command): Use temporary_macro_definition.  Remove
11750         cleanups.
11751         (free_macro_definition_ptr): Remove.
11752
11753 2018-02-08  Tom Tromey  <tom@tromey.com>
11754
11755         * macroexp.c (maybe_expand): Use std::string.
11756
11757 2018-02-08  Tom Tromey  <tom@tromey.com>
11758
11759         * macroexp.c (struct macro_buffer): Add initializers for some
11760         members.
11761         (init_buffer, init_shared_buffer, free_buffer)
11762         (free_buffer_return_text): Remove.
11763         (macro_buffer): New constructors.
11764         (~macro_buffer): New destructor.
11765         (macro_buffer::set_shared): New method.
11766         (macro_buffer::resize_buffer, macro_buffer::appendc)
11767         (macro_buffer::appendmem): Now methods, not free functions.
11768         (set_token, append_tokens_without_splicing, stringify)
11769         (macro_stringify): Update.
11770         (gather_arguments): Change return type.  Remove argc_p argument,
11771         add args_ptr argument.  Use std::vector.
11772         (substitute_args): Remove argc argument.  Accept std::vector.
11773         (expand): Update.  Use std::vector.
11774         (scan, macro_expand, macro_expand_next): Update.
11775
11776 2018-02-08  Tom Tromey  <tom@tromey.com>
11777
11778         * symtab.c (default_collect_symbol_completion_matches_break_on):
11779         Use unique_xmalloc_ptr.
11780         * macroscope.h: (sal_macro_scope, user_macro_scope)
11781         (default_macro_scope): Return unique_xmalloc_ptr.
11782         * macroscope.c (sal_macro_scope, user_macro_scope)
11783         (default_macro_scope): Return unique_xmalloc_ptr.
11784         * macroexp.h (macro_expand, macro_expand_once): Return
11785         unique_xmalloc_ptr.
11786         * macroexp.c (macro_expand, macro_expand_once): Return
11787         unique_xmalloc_ptr.
11788         * macrocmd.c (macro_expand_command, macro_expand_once_command)
11789         (info_macro_command, info_macros_command): Use
11790         unique_xmalloc_ptr.
11791         * compile/compile-c-support.c (write_macro_definitions): Use
11792         unique_xmalloc_ptr.
11793         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
11794
11795 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
11796
11797         * value.c (value_static_field): Assign field type instead of
11798         containing type when returning an optimized out value.
11799
11800 2018-02-06  Yao Qi  <yao.qi@linaro.org>
11801
11802         * ft32-tdep.c (ft32_read_pc): Remove.
11803         (ft32_write_pc): Remove.
11804         (ft32_gdbarch_init): Update.
11805         * m32r-tdep.c (m32r_read_pc): Remove.
11806         (m32r_gdbarch_init): Update.
11807         * mep-tdep.c (mep_read_pc): Remove.
11808         (mep_gdbarch_init): Update.
11809         * microblaze-tdep.c (microblaze_write_pc): Remove.
11810         (microblaze_gdbarch_init): Update.
11811         * mn10300-tdep.c (mn10300_read_pc): Remove.
11812         (mn10300_write_pc): Remove.
11813         (mn10300_gdbarch_init): Update.
11814         * moxie-tdep.c (moxie_read_pc): Remove.
11815         (moxie_write_pc): Remove.
11816         (moxie_gdbarch_init): Update.
11817
11818 2018-02-06  Yao Qi  <yao.qi@linaro.org>
11819
11820         * expprint.c (print_subexp_standard): Handle
11821         OP_F77_UNDETERMINED_ARGLIST.
11822         (dump_subexp_body_standard): Likewise.
11823
11824 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
11825
11826         * target-descriptions.c (tdesc_element_visitor) Add empty
11827         implementations.
11828         (tdesc_type): Move make_gdb_type from here.
11829         (tdesc_type_builtin): Likewise.
11830         (tdesc_type_vector): Likewise.
11831         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
11832         (make_gdb_type_struct): Move from tdesc_type_with_fields.
11833         (make_gdb_type_union): Likewise.
11834         (make_gdb_type_flags): Likewise.
11835         (make_gdb_type_enum): Likewise.
11836         (make_gdb_type): New function.
11837         (tdesc_register_type): Use static make_gdb_type.
11838
11839 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
11840
11841         * infcmd.c (default_print_one_register_info): Align natural-format
11842         column values consistently one under another.
11843         (pad_to_column): New function.
11844
11845 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
11846
11847         * dwarf2read.c (dwarf2_physname): Move commment.
11848
11849 2018-02-01  Leszek Swirski  <leszeks@google.com>
11850
11851         * varobj.c (varobj_formatted_print_options): Allow recursive
11852         pretty printing if pretty printing is enabled.
11853
11854 2018-02-01  Leszek Swirski  <leszeks@google.com>
11855
11856         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
11857         names after a structop as a filename.
11858
11859 2018-02-01  Yao Qi  <yao.qi@linaro.org>
11860
11861         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
11862         (arm_record_coproc_data_proc): Likewise.
11863
11864 2018-02-01  Yao Qi  <yao.qi@linaro.org>
11865
11866         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
11867
11868 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
11869
11870         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
11871         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
11872
11873 2018-01-31  Pedro Alves  <palves@redhat.com>
11874
11875         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
11876         * inflow.c (child_terminal_save_inferior): Wrap reference to
11877         tcgetpgrp in HAVE_TERMIOS_H.
11878         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
11879         _WIN32.
11880         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
11881         always iterate over all inferiors.
11882         (gdbsim_cntrl_c): Adjust.
11883         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
11884
11885 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
11886
11887         * gdbtypes.c (lookup_array_range_type): Make sure the array's
11888         index type is objfile-owned if the element type is as well.
11889
11890 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
11891
11892         GDB 8.1 released.
11893
11894 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11895
11896         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
11897         "features/s390x-linux64.c".
11898         (_initialize_s390_linux_tdep): Remove initialization of tdescs
11899         s390_linux32 and s390x_linux64.
11900         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
11901         default tdesc.
11902         * s390-tdep.c: Include "features/s390-linux32.c" and
11903         "features/s390x-linux64.c".
11904         (s390_tdesc_valid): Add check for tdesc_has_registers.
11905         (s390_gdbarch_init): Make sure there is always a valid tdesc.
11906         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
11907         tdesc_s390x_linux64.
11908         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
11909         tdesc_s390x_linux64 to...
11910         * s390-tdep.h: ...here.
11911
11912 2018-01-30  Pedro Alves  <palves@redhat.com>
11913
11914         PR gdb/13211
11915         * config.in, configure: Regenerate.
11916         * configure.ac: Check for getpgid.
11917         * go32-nat.c (go32_pass_ctrlc): New.
11918         (go32_target): Install it.
11919         * inf-child.c (inf_child_target): Install
11920         child_terminal_save_inferior, child_pass_ctrlc and
11921         child_interrupt.
11922         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
11923         (inf_ptrace_target): No longer install it.
11924         * infcmd.c (interrupt_target_1): Adjust.
11925         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
11926         (child_interrupt): Declare.
11927         (inferior::terminal_state): New.
11928         * inflow.c (struct terminal_info): Update comments.
11929         (inferior_process_group): Delete.
11930         (terminal_is_ours): Delete.
11931         (gdb_tty_state): New.
11932         (child_terminal_init): Adjust.
11933         (is_gdb_terminal, sharing_input_terminal_1)
11934         (sharing_input_terminal): New functions.
11935         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
11936         Set the process's actual process group in the foreground if
11937         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
11938         mark terminal as the inferior's if not sharing GDB's terminal.
11939         Don't check attach_flag.
11940         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
11941         pass down a target_terminal_state.
11942         (child_terminal_save_inferior): New, factored out from ...
11943         (child_terminal_ours_1): ... this.  Handle
11944         target_terminal_state::is_ours_for_output.
11945         (child_interrupt, child_pass_ctrlc): New.
11946         (inflow_inferior_exit): Clear the inferior's terminal_state.
11947         (copy_terminal_info): Copy the inferior's terminal state.
11948         (_initialize_inflow): Remove reference to terminal_is_ours.
11949         * inflow.h (inferior_process_group): Delete.
11950         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
11951         * procfs.c (procfs_target): Don't install procfs_interrupt.
11952         (procfs_interrupt): Delete.
11953         * remote.c (remote_serial_quit_handler): Adjust.
11954         (remote_interrupt): Remove ptid parameter.  Adjust.
11955         * target-delegates.c: Regenerate.
11956         * target.c: Include "terminal.h".
11957         (target_terminal::terminal_state): Rename to ...
11958         (target_terminal::m_terminal_state): ... this.
11959         (target_terminal::init): Adjust.
11960         (target_terminal::inferior): Adjust to per-inferior
11961         terminal_state.
11962         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
11963         (target_terminal::ours, target_terminal::ours_for_output): Use
11964         target_terminal_is_ours_kind.
11965         (target_interrupt): Remove ptid parameter.  Adjust.
11966         (default_target_pass_ctrlc): Adjust.
11967         * target.h (target_ops::to_terminal_save_inferior): New field.
11968         (target_ops::to_interrupt): Remove ptid_t parameter.
11969         (target_interrupt): Remove ptid_t parameter.  Update comment.
11970         (target_pass_ctrlc): Update comment.
11971         * target/target.h (target_terminal_state): New scoped enum,
11972         factored out of ...
11973         (target_terminal::terminal_state): ... here.
11974         (target_terminal::inferior): Update comments.
11975         (target_terminal::restore_inferior): New.
11976         (target_terminal::is_inferior, target_terminal::is_ours)
11977         (target_terminal::is_ours_for_output): Adjust.
11978         (target_terminal::scoped_restore_terminal_state): Adjust to
11979         rename, and call restore_inferior() instead of inferior().
11980         (target_terminal::scoped_restore_terminal_state::m_state): Change
11981         type.
11982         (target_terminal::terminal_state): Rename to ...
11983         (target_terminal::m_terminal_state): ... this and change type.
11984
11985 2018-01-30  Pedro Alves  <palves@redhat.com>
11986
11987         * linux-nat.c (wait_for_signal): New function.
11988         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
11989         directly.
11990         (async_terminal_is_ours)
11991         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
11992         (linux_nat_add_target): Don't override
11993         to_terminal_inferior/to_terminal_ours.
11994
11995 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
11996
11997         * remote.c (remote_follow_fork): Don't call "detach_inferior".
11998
11999 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
12000
12001         * dwarf2read.c (free_dwo_files): Add forward-declaration.
12002         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
12003         dwarf2_per_objfile_free here.
12004         (dwarf2_per_objfile_free): Remove.
12005         (_initialize_dwarf2_read): Don't register
12006         dwarf2_per_objfile_free as a registry cleanup.
12007
12008 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
12009
12010         Avoid compilation errors in MinGW native builds
12011
12012         The error is triggered by including python-internal.h, and the
12013         error message is:
12014
12015              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
12016                       from build-gnulib/import/math.h:27,
12017                       from d:/usr/Python26/include/pyport.h:235,
12018                       from d:/usr/Python26/include/Python.h:58,
12019                       from python/python-internal.h:94,
12020                       from python/py-arch.c:24:
12021              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
12022         using ::hypot;
12023                 ^~~~~
12024
12025         This happens because Python headers define 'hypot' to expand t
12026         '_hypot' in the Windows builds.
12027         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
12028         'hypoth'.  This avoids a compilation error.
12029
12030 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
12031
12032         * MAINTAINERS (Write After Approval): Fix ordering.
12033
12034 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
12035
12036         * MAINTAINERS (Write After Approval): Add Alan Hayward.
12037
12038 2018-01-26  Alan Modra  <amodra@gmail.com>
12039
12040         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
12041         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
12042         Remove nop.  Make const.  Comment.
12043         (powerpc32_plt_stub_so_2): New.
12044         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
12045         Correct count.  Update uses.
12046         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
12047         Move common code reading PLT entry word.  Correct
12048         powerpc32_plt_stub PLT address calculation.
12049         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
12050         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
12051         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
12052         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
12053         (ppc64_standard_linkage8): Likewise.
12054         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
12055         Correct insns description.
12056         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
12057
12058 2018-01-24  Pedro Alves  <palves@redhat.com>
12059
12060         GCC PR libstdc++/83906
12061         * gdbtypes.c (operator==(const dynamic_prop &,
12062         const dynamic_prop &)): New.
12063         (operator==(const range_bounds &, const range_bounds &)): New.
12064         (check_types_equal): Use them instead of memcmp.
12065         * gdbtypes.h (operator==(const dynamic_prop &,
12066         const dynamic_prop &)): Declare.
12067         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
12068         (operator==(const range_bounds &, const range_bounds &)): Declare.
12069         (operator!=(const range_bounds &, const range_bounds &)): Declare.
12070
12071 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12072
12073         * s390-linux-tdep.c (s390_record_address_mask)
12074         (s390_record_calc_disp_common, s390_record_calc_disp)
12075         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
12076         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
12077         (s390_process_record): Move to s390-tdep.c.
12078         (s390_linux_init_abi_any): Adjust.
12079         * s390-tdep.c (s390_record_address_mask)
12080         (s390_record_calc_disp_common, s390_record_calc_disp)
12081         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
12082         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
12083         (s390_process_record): Moved from s390-linux-tdep.c
12084         (s390_gdbarch_init): Adjust.
12085
12086 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12087
12088         * s390-linux-nat.c (s390-tdep.h): New include.
12089         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
12090         (HFILES_NO_SRCDIR): Add s390-tdep.h.
12091         (ALLDEPFILES): Add s390-tdep.c.
12092         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
12093         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
12094         * s390-tdep.h: ...this.  New file.
12095         * s390-linux-tdep.c (s390-tdep.h): New include.
12096         (_initialize_s390_tdep): Rename to...
12097         (_initialize_s390_linux_tdep): ...this and adjust.
12098         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
12099         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
12100         s390-tdep.h.
12101         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
12102         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
12103         (s390_is_partial_instruction, s390_software_single_step)
12104         (is_non_branch_ril, s390_displaced_step_copy_insn)
12105         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
12106         (s390_prologue_data, s390_addr, s390_store, s390_load)
12107         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
12108         (s390_register_call_saved, s390_guess_tracepoint_registers)
12109         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
12110         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
12111         (s390_pseudo_register_name, s390_pseudo_register_type)
12112         (s390_pseudo_register_read, s390_pseudo_register_write)
12113         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
12114         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
12115         (s390_addr_bits_remove, s390_address_class_type_flags)
12116         (s390_address_class_type_flags_to_name)
12117         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
12118         (s390_function_arg_float, s390_function_arg_vector)
12119         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
12120         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
12121         (s390_frame_align, s390_register_return_value, s390_return_value)
12122         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
12123         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
12124         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
12125         (s390_trad_frame_prev_register, s390_unwind_cache)
12126         (s390_prologue_frame_unwind_cache)
12127         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
12128         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
12129         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
12130         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
12131         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
12132         (s390_frame_base_address, s390_local_base_address)
12133         (s390_frame_base, s390_gcc_target_options)
12134         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
12135         (s390_validate_reg_range, s390_tdesc_valid)
12136         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
12137         * s390-tdep.c: ...this.  New file.
12138
12139 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12140
12141         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
12142         (s390_process_record, s390_gdbarch_tdep_alloc)
12143         (s390_linux_init_abi_any): Use/set new hook.
12144
12145 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12146
12147         * s390-linux-tdep.c (osabi.h): New include.
12148         (s390_linux_init_abi_31, s390_linux_init_abi_64)
12149         (s390_linux_init_abi_any): New functions.
12150         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
12151
12152 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12153
12154         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
12155         tdesc_has_registers check
12156
12157 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12158
12159         * s390-linux-tdep.c (s390_tdesc_valid): New function.
12160         (s390_validate_reg_range): New macro.
12161         (s390_gdbarch_init): Adjust.
12162
12163 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12164
12165         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
12166         (s390_gdbarch_tdep_alloc): Adjust.
12167         (s390_gdbarch_init): Adjust.
12168
12169 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12170
12171         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
12172         <have_tdb>: Change type to bool.
12173         (s390_gdbarch_tdep_alloc): Adjust.
12174         (s390_gdbarch_init): Adjust.
12175
12176 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12177
12178         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
12179         (gdbarch_tdep) <have_upper, have_vx>: New fields.
12180         (s390_gdbarch_tdep_alloc): New function.
12181         (s390_gdbarch_init): Allocate tdep at start and use its fields
12182         instead of separate variables.
12183
12184 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12185
12186         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
12187         when looking for cached gdbarch and add comment for remaining.
12188
12189 2018-01-22  Pedro Alves  <palves@redhat.com>
12190             Sergio Durigan Junior  <sergiodj@redhat.com>
12191
12192         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
12193         case.
12194
12195 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
12196
12197         * MAINTAINERS: Update my company e-mail address.
12198
12199 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12200
12201         * regcache.c (cooked_write_test): New function.
12202         (_initialize_regcache): Register the test.
12203
12204 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12205
12206         * ia64-tdep.c (ia64_pseudo_register_read): Call
12207         regcache->cooked_read instead of regcache_cooked_read_unsigned.
12208         * m32c-tdep.c (m32c_cat_read): Likewise.
12209         (m32c_r3r2r1r0_read): Likewise.
12210         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12211         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
12212
12213 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12214
12215         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
12216         method raw_read instead of regcache_raw_read.
12217         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12218         * arm-tdep.c (arm_neon_quad_read): Likewise.
12219         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12220         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12221         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12222         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
12223         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12224         (i386_pseudo_register_read_into_value): Likewise.
12225         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12226         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12227         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12228         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
12229         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
12230         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
12231         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
12232         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
12233         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
12234
12235 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12236
12237         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
12238         * configure.tgt: Remove target mt.
12239         * mt-tdep.c: Remove.
12240         * regcache.c (cooked_read_test): Remove the check for mt.
12241
12242 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12243
12244         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
12245         instead of gdbarch_pseudo_register_read_value.
12246
12247 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
12248
12249         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
12250         language is Ada.
12251
12252 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
12253
12254         * linespec.c (create_sals_line_offset): Remove code that preserved
12255         the symtab_and_line's line number.
12256
12257 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12258
12259         * varobj.c (varobj_create): Don't set valid_block when creating a
12260         floating varobj.
12261
12262 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12263
12264         * varobj.c (varobj_create): Remove out of date comment.
12265
12266 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12267
12268         PR mi/20395
12269         * ada-exp.y (write_var_from_sym): Pass extra parameter when
12270         updating innermost block.
12271         * parse.c (innermost_block_tracker::update): Take extra type
12272         parameter, and check types match before updating innermost block.
12273         (write_dollar_variable): Update innermost block for registers.
12274         * parser-defs.h (enum innermost_block_tracker_type): New enum.
12275         (innermost_block_tracker::innermost_block_tracker): Initialise
12276         m_types member.
12277         (innermost_block_tracker::reset): Take type parameter.
12278         (innermost_block_tracker::update): Take type parameter, and pass
12279         type through as needed.
12280         (innermost_block_tracker::m_types): New member.
12281         * varobj.c (varobj_create): Pass type when reseting innermost
12282         block.
12283
12284 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12285
12286         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
12287         * ada-lang.c (resolve_subexp): Likewise.
12288         * breakpoint.c (set_breakpoint_condition) Likewise.
12289         (watch_command_1) Likewise.
12290         * c-exp.y (variable): Likewise.
12291         * d-exp.y (PrimaryExpression): Likewise.
12292         * f-exp.y (variable): Likewise.
12293         * go-exp.y (variable): Likewise.
12294         * m2-exp.y (variable): Likewise.
12295         * objfiles.c (objfile::~objfile): Likewise.
12296         * p-exp.y (variable): Likewise.
12297         * parse.c (innermost_block): Change type.
12298         * parser-defs.h (class innermost_block_tracker): New.
12299         (innermost_block): Change to innermost_block_tracker.
12300         * printcmd.c (display_command): Switch to innermost_block API.
12301         (do_one_display): Likewise.
12302         * rust-exp.y (do_one_display): Likewise.
12303         * symfile.c (clear_symtab_users): Likewise.
12304         * varobj.c (varobj_create): Switch to innermost_block API, replace
12305         use of innermost_block with block stored on varobj object.
12306
12307 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12308
12309         * expression.h (innermost_block): Remove declaration.
12310         * varobj.c: Add 'parser-defs.h' include.
12311
12312 2018-01-19  Tom Tromey  <tom@tromey.com>
12313
12314         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
12315         symbols in the static and global blocks.
12316
12317 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
12318
12319         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
12320         gdb_ptrace.h, and move including gdb_wait.h ...
12321         * nat/linux-ptrace.h: ... to here.
12322
12323 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
12324
12325         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
12326         inf_ptrace_detach_success.
12327         (inf_ptrace_detach_success): Add inferior parameter, use it
12328         instead of inferior_ptid, pass it to detach_inferior.
12329         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
12330         parameter.
12331         * inferior.c (detach_inferior): Add overload that takes an
12332         inferior object.
12333         * inferior.h (detach_inferior): Likewise.
12334         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
12335         use inferior_ptid, adjust call to inf_ptrace_detach_success.
12336         * linux-thread-db.c (thread_db_detach): Use inf parameter.
12337
12338 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
12339
12340         * target.h (struct target_ops) <to_detach>: Add inferior
12341         parameter.
12342         (target_detach): Likewise.
12343         * target.c (dispose_inferior): Pass inferior down.
12344         (target_detach): Pass inferior down.  Assert that it is equal to
12345         the current inferior.
12346         * aix-thread.c (aix_thread_detach): Pass inferior down.
12347         * corefile.c (core_file_command): Pass current_inferior() down.
12348         * corelow.c (core_detach): Add inferior parameter.
12349         * darwin-nat.c (darwin_detach): Likewise.
12350         * gnu-nat.c (gnu_detach): Likewise.
12351         * inf-ptrace.c (inf_ptrace_detach): Likewise.
12352         * infcmd.c (detach_command): Pass current_inferior() down to
12353         target_detach.
12354         * infrun.c (follow_fork_inferior): Pass parent_inf to
12355         target_detach.
12356         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
12357         target_detach.
12358         * linux-nat.c (linux_nat_detach): Add inferior parameter.
12359         * linux-thread-db.c (thread_db_detach): Likewise.
12360         * nto-procfs.c (procfs_detach): Likewise.
12361         * procfs.c (procfs_detach): Likewise.
12362         * record.c (record_detach): Likewise.
12363         * record.h (struct inferior): Forward-declare.
12364         (record_detach): Add inferior parameter.
12365         * remote-sim.c (gdbsim_detach): Likewise.
12366         * remote.c (remote_detach_1): Likewise.
12367         (remote_detach): Likewise.
12368         (extended_remote_detach): Likewise.
12369         * sol-thread.c (sol_thread_detach): Likewise.
12370         * target-debug.h (target_debug_print_inferior_p): New macro.
12371         * target-delegates.c: Re-generate.
12372         * top.c (kill_or_detach): Pass inferior down to target_detach.
12373         * windows-nat.c (windows_detach): Add inferior parameter.
12374
12375 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
12376
12377         * target.h (struct target_ops) <to_detach>: Remove args
12378         parameter.
12379         (target_detach): Likewise.
12380         * target.c (dispose_inferior): Adjust.
12381         (target_detach): Remove args parameter, adjust.
12382         * aix-thread.c (aix_thread_detach): Adjust.
12383         * corefile.c (core_file_command): Adjust.
12384         * corelow.c (core_detach): Adjust.
12385         * darwin-nat.c (darwin_detach): Adjust.
12386         * gnu-nat.c (gnu_detach): Adjust.
12387         * inf-ptrace.c (inf_ptrace_detach): Adjust.
12388         * infcmd.c (detach_command): Adjust
12389         * infrun.c (follow_fork_inferior): Adjust.
12390         (handle_vfork_child_exec_or_exit): Adjust.
12391         * linux-fork.c (linux_fork_detach): Remove args parameter.
12392         * linux-fork.h (linux_fork_detach): Likewise.
12393         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
12394         * linux-thread-db.c (thread_db_detach): Likewise.
12395         * nto-procfs.c (procfs_detach): Likewise.
12396         * procfs.c (procfs_detach): Likewise.
12397         (do_detach): Remove signo parameter.
12398         * record.c (record_detach): Remove args parameter.
12399         * record.h (record_detach): Likewise.
12400         * remote-sim.c (gdbsim_detach): Likewise.
12401         * remote.c (remote_detach_1): Likewise.
12402         (remote_detach): Likewise.
12403         (extended_remote_detach): Likewise.
12404         * sol-thread.c (sol_thread_detach): Likewise.
12405         * target-delegates.c: Re-generate.
12406         * top.c (struct qt_args) <args>: Remove field.
12407         (kill_or_detach): Don't pass args.
12408         (quit_force): Don't set args.
12409         * windows-nat.c (windows_detach): Remove args parameter.
12410
12411 2018-01-19  Yao Qi  <yao.qi@linaro.org>
12412
12413         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
12414         (arm_linux_init_abi): Install it.
12415
12416 2018-01-19  Yao Qi  <yao.qi@linaro.org>
12417
12418         * osabi.c (gdb_osabi_names): Extend the regexp for
12419         arm-linux-gnueabihf.
12420
12421 2018-01-18  Yao Qi  <yao.qi@linaro.org>
12422
12423         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
12424         m_abbrevs.
12425         (abbrev_table::add_abbrev): Update.
12426         (abbrev_table::lookup_abbrev): Update.
12427
12428 2018-01-18  Yao Qi  <yao.qi@linaro.org>
12429
12430         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
12431
12432 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
12433
12434         * compile/compile.c (compile_to_object): Convert "triplet_rx"
12435         to "std::string".
12436
12437 2018-01-17  Tom Tromey  <tom@tromey.com>
12438
12439         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
12440
12441 2018-01-17  Tom Tromey  <tom@tromey.com>
12442
12443         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
12444         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
12445         (create_array_type_with_stride): Update.
12446         * dwarf2read.c (set_die_type): Update.
12447
12448 2018-01-17  Tom Tromey  <tom@tromey.com>
12449
12450         * dwarf2read.c (delayed_method_info): Remove typedef.
12451         (dwarf2_cu::method_info): Now a std::vector.
12452         (add_to_method_list): Update.
12453         (free_delayed_list): Remove.
12454         (compute_delayed_physnames): Update.
12455         (process_full_comp_unit, process_full_type_unit): Clear the method
12456         list.  Remove cleanups.
12457         (psymtab_include_file_name): Add name_holder parameter.  Use
12458         unique_xmalloc_ptr.
12459         (dwarf_decode_lines): Update.
12460
12461 2018-01-17  Tom Tromey  <tom@tromey.com>
12462             Simon Marchi  <simon.marchi@ericsson.com>
12463
12464         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
12465         (dwarf2_per_objfile::free_cached_comp_units)
12466         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
12467         (init_cutu_and_read_dies_no_follow): Update.
12468         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
12469         (dwarf2_cu::~dwarf2_cu): New.
12470         (free_heap_comp_unit, free_stack_comp_unit): Remove.
12471         (age_cached_comp_units, free_one_cached_comp_unit): Update.
12472
12473 2018-01-17  Tom Tromey  <tom@tromey.com>
12474             Simon Marchi  <simon.marchi@ericsson.com>
12475
12476         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
12477         (struct die_reader_specs) <abbrev_table>: New member.
12478         (struct abbrev_table): Add constructor.
12479         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
12480         <abbrev_obstack>: Now an auto_obstack.
12481         (abbrev_table_up): New typedef.
12482         (init_cu_die_reader): Add abbrev_table parameter.
12483         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
12484         Add result_dwo_abbrev_table.
12485         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
12486         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
12487         Update.
12488         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
12489         parameter.
12490         (skip_children): Update.
12491         (abbrev_table::alloc_abbrev): Rename from
12492         abbrev_table_alloc_abbrev.
12493         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
12494         (abbrev_table::lookup_abbrev): Rename from
12495         abbrev_table_lookup_abbrev.
12496         (abbrev_table_read_table): Return abbrev_table_up.
12497         (abbrev_table_free, abbrev_table_free_cleanup)
12498         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
12499         (load_partial_dies): Update.
12500
12501 2018-01-17  Tom Tromey  <tom@tromey.com>
12502
12503         * dwarf2read.c (dwarf2_compute_name): Update comment.
12504         (read_func_scope, read_variable): Update.
12505         (new_symbol): Remove.
12506         (new_symbol_full): Rename to new_symbol.
12507
12508 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
12509
12510         PR gdb/16577
12511         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
12512         a warning instead of throwing an error, set section size to 0 and return
12513         NULL.
12514         * gdb_bfd.h (gdb_bfd_map_section): Update description.
12515
12516 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
12517
12518         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
12519         std::string.
12520         (linux_ptrace_attach_fail_reason_string): Likewise.
12521         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
12522         Likewise.
12523         (linux_ptrace_attach_fail_reason_string): Likewise.
12524         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
12525
12526 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
12527
12528         * linux-nat.c (linux_nat_attach): Remove xstrdup.
12529
12530 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
12531
12532         PR gdb/21559
12533         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
12534         checking for fs_base/gs_base fields in struct user_regs_struct.
12535         * configure: Regenerate.
12536
12537 2018-01-17  Yao Qi  <yao.qi@linaro.org>
12538
12539         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
12540         function.
12541         (aarch64_linux_init_abi): Install it to gdbarch hook
12542         gcc_target_options.
12543
12544 2018-01-15  Pedro Alves  <palves@redhat.com>
12545
12546         * common/signals-state-save-restore.c
12547         (save_original_signals_state): Fix typos.
12548
12549 2017-01-12  Tom Tromey  <tom@tromey.com>
12550             Sergio Durigan Junior  <sergiodj@redhat.com>
12551
12552         * Makefile.in (install-only): Install gdb-add-index.
12553
12554 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
12555
12556         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
12557
12558 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12559
12560         * infrun.c (keep_going_pass_signal): Clear step-over info when
12561         insert_breakpoints fails.
12562
12563 2018-01-11  Pedro Alves  <palves@redhat.com>
12564
12565         PR gdb/22583
12566         * infrun.c (resume): Rename to ...
12567         (resume_1): ... this.
12568         (resume): Reimplement as wrapper around resume_1.
12569
12570 2018-01-11  Pedro Alves  <palves@redhat.com>
12571
12572         PR remote/22597
12573         * remote.c (remote_parse_stop_reply): Default to the last-set
12574         general thread instead of to 'magic_null_ptid'.
12575
12576 2018-01-10  Pedro Alves  <palves@redhat.com>
12577
12578         * language.h (language_get_symbol_name_matcher): Rename ...
12579         (get_symbol_name_matcher): ... this.
12580         * language.c (language_get_symbol_name_matcher): Ditto.
12581         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
12582         callers adjusted.
12583
12584 2018-01-10  Pedro Alves  <palves@redhat.com>
12585
12586         PR gdb/22670
12587         * dwarf2read.c
12588         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
12589         Adjust to use language_get_symbol_name_matcher instead of
12590         language_defn::la_get_symbol_name_matcher.
12591         * language.c (language_get_symbol_name_matcher): If in Ada mode
12592         and the lookup name is a verbatim match, return Ada's matcher.
12593         * language.h (language_get_symbol_name_matcher): Adjust comment.
12594         (ada_lookup_name_info::verbatim_p):: New method.
12595
12596 2018-01-10  Pedro Alves  <palves@redhat.com>
12597
12598         PR gdb/22670
12599         * ada-lang.c (ada_collect_symbol_completion_matches): If the
12600         minsym's language is language_auto or language_cplus, pass down
12601         language_ada instead.
12602         * symtab.c (compare_symbol_name): Don't frob symbol language here.
12603
12604 2018-01-10  Pedro Alves  <palves@redhat.com>
12605
12606         PR gdb/22670
12607         * minsyms.c (linkage_name_str): New function.
12608         (iterate_over_minimal_symbols): Use it.
12609
12610 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12611
12612         * NEWS: Document that 'info proc' now works on FreeBSD.
12613
12614 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12615
12616         * configure.ac: Check for kinfo_getfile in libutil.
12617         * configure: Regenerate.
12618         * config.in: Regenerate.
12619         * fbsd-nat.c: Include "fbsd-tdep.h".
12620         (fbsd_fetch_cmdline): New.
12621         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
12622         rather than calling error.
12623         (fbsd_info_proc): New.
12624         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
12625         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
12626         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
12627
12628 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12629
12630         * fbsd-nat.c (struct free_deleter): Remove.
12631         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
12632
12633 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12634
12635         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
12636         NULL for an empty pathname.
12637
12638 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12639
12640         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
12641         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
12642         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
12643         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
12644         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
12645         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
12646         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
12647         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
12648         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
12649         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
12650         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
12651         (fbsd_core_fetch_timeval, fbsd_print_sigset)
12652         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
12653         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
12654         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
12655
12656 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
12657
12658         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
12659         (gnu_xfer_auxv): New function.
12660         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
12661         TARGET_OBJECT_AUXV.
12662
12663 2018-01-08  Yao Qi  <yao.qi@linaro.org>
12664             Simon Marchi  <simon.marchi@ericsson.com>
12665
12666         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
12667         common/selftest.c.
12668         (COMMON_OBS): Remove selftest.o.
12669         * configure.ac: Append selftest-arch.c and common/selftest.c to
12670         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
12671         * configure: Re-generated.
12672         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
12673         GDB_SELF_TEST.
12674         (maintenance_info_selftests): Likewise.
12675
12676 2018-01-08  Xavier Roirand  <roirand@adacore.com>
12677
12678         * ada-valprint.c (val_print_packed_array_elements): Use
12679         proper number of elements when printing an array indexed
12680         by an enumeration type.
12681
12682 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
12683
12684         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
12685         (dw2_get_file_names_reader): Adjust.
12686         (lookup_dwo_signatured_type): Adjust.
12687         (lookup_dwp_signatured_type): Adjust.
12688         (lookup_signatured_type): Adjust.
12689         (create_type_unit_group): Adjust.
12690         (get_type_unit_group): Adjust.
12691         (process_psymtab_comp_unit_reader): Adjust.
12692         (build_type_psymtabs_reader): Adjust.
12693         (scan_partial_symbols): Adjust.
12694         (add_partial_symbol): Adjust.
12695         (add_partial_subprogram): Adjust.
12696         (peek_die_abbrev): Adjust.
12697         (fixup_go_packaging): Adjust.
12698         (process_imported_unit_die): Adjust.
12699         (dwarf2_compute_name): Adjust.
12700         (dwarf2_physname): Adjust.
12701         (read_import_statement): Adjust.
12702         (handle_DW_AT_stmt_list): Adjust.
12703         (read_file_scope): Adjust.
12704         (read_func_scope): Adjust.
12705         (read_lexical_block_scope): Adjust.
12706         (read_call_site_scope): Adjust.
12707         (read_variable): Adjust.
12708         (dwarf2_rnglists_process): Adjust.
12709         (dwarf2_ranges_process): Adjust.
12710         (dwarf2_ranges_read): Adjust.
12711         (dwarf2_get_pc_bounds): Adjust.
12712         (dwarf2_record_block_ranges): Adjust.
12713         (dwarf2_add_field): Adjust.
12714         (dwarf2_add_member_fn): Adjust.
12715         (read_structure_type): Adjust.
12716         (process_structure_scope): Adjust.
12717         (read_enumeration_type): Adjust.
12718         (read_array_type): Adjust.
12719         (mark_common_block_symbol_computed): Adjust.
12720         (read_common_block): Adjust.
12721         (read_namespace_type): Adjust.
12722         (read_namespace): Adjust.
12723         (read_module_type): Adjust.
12724         (read_tag_pointer_type): Adjust.
12725         (read_tag_ptr_to_member_type): Adjust.
12726         (read_tag_string_type): Adjust.
12727         (read_subroutine_type): Adjust.
12728         (read_typedef): Adjust.
12729         (read_base_type): Adjust.
12730         (attr_to_dynamic_prop): Adjust.
12731         (read_subrange_type): Adjust.
12732         (read_unspecified_type): Adjust.
12733         (dwarf2_read_abbrevs): Adjust.
12734         (load_partial_dies): Adjust.
12735         (read_partial_die): Adjust.
12736         (find_partial_die): Adjust.
12737         (guess_partial_die_structure_name): Adjust.
12738         (fixup_partial_die): Adjust.
12739         (read_attribute_value): Adjust.
12740         (read_addr_index): Adjust.
12741         (read_addr_index_from_leb128): Adjust.
12742         (read_str_index): Adjust.
12743         (dwarf2_string_attr): Adjust.
12744         (get_debug_line_section): Adjust.
12745         (dwarf_decode_line_header): Adjust.
12746         (lnp_state_machine::check_line_address): Adjust.
12747         (dwarf_decode_lines_1): Adjust.
12748         (dwarf_decode_lines): Adjust.
12749         (dwarf2_start_symtab): Adjust.
12750         (var_decode_location): Adjust.
12751         (new_symbol_full): Adjust.
12752         (dwarf2_const_value_data): Adjust.
12753         (dwarf2_const_value_attr): Adjust.
12754         (dwarf2_const_value): Adjust.
12755         (die_type): Adjust.
12756         (die_containing_type): Adjust.
12757         (build_error_marker_type): Adjust.
12758         (lookup_die_type): Adjust.
12759         (guess_full_die_structure_name): Adjust.
12760         (anonymous_struct_prefix): Adjust.
12761         (determine_prefix): Adjust.
12762         (dwarf2_name): Adjust.
12763         (follow_die_ref_or_sig): Adjust.
12764         (follow_die_offset): Adjust.
12765         (follow_die_ref): Adjust.
12766         (follow_die_sig_1): Adjust.
12767         (follow_die_sig): Adjust.
12768         (get_signatured_type): Adjust.
12769         (get_DW_AT_signature_type): Adjust.
12770         (decode_locdesc): Adjust.
12771         (dwarf_decode_macros): Adjust.
12772         (cu_debug_loc_section): Adjust.
12773         (fill_in_loclist_baton): Adjust.
12774         (dwarf2_symbol_mark_computed): Adjust.
12775         (init_one_comp_unit): Don't assign
12776         dwarf2_cu::dwarf2_per_objfile.
12777         (set_die_type): Adjust.
12778
12779 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
12780
12781         * dwarf2read.c (struct mapped_debug_names): Add constructor.
12782         <dwarf2_per_objfile>: New field.
12783         (dwarf2_per_objfile): Remove global.
12784         (get_dwarf2_per_objfile): New function.
12785         (set_dwarf2_per_objfile): New function.
12786         (dwarf2_build_psymtabs_hard): Change objfile parameter to
12787         dwarf2_per_objfile.
12788         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
12789         (read_abbrev_offset): Likewise.
12790         (read_indirect_string): Likewise.
12791         (read_indirect_line_string): Likewise.
12792         (read_indirect_string_at_offset): Likewise.
12793         (read_indirect_string_from_dwz): Likewise.
12794         (dwarf2_find_containing_comp_unit): Change objfile parameter to
12795         dwarf2_per_objfile.
12796         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
12797         (create_all_comp_units): Change objfile parameter to
12798         dwarf2_per_objfile.
12799         (create_all_type_units): Likewise.
12800         (process_queue): Add dwarf2_per_objfile parameter.
12801         (read_and_check_comp_unit_head): Likewise.
12802         (lookup_dwo_unit_in_dwp): Likewise.
12803         (get_dwp_file): Likewise.
12804         (process_cu_includes): Likewise.
12805         (struct free_dwo_file_cleanup_data): New struct.
12806         (dwarf2_has_info): Use get_dwarf2_per_objfile and
12807         set_dwarf2_per_objfile.
12808         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
12809         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
12810         context, adjust calls.
12811         (dw2_instantiate_symtab): Likewise.
12812         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
12813         (dw2_get_cu): Likewise.
12814         (create_cu_from_index_list): Change objfile parameter to
12815         dwarf2_per_objfile.
12816         (create_cus_from_index_list): Get dwarf2_per_objfile from
12817         context, adjust calls.
12818         (create_cus_from_index): Likewise.
12819         (create_signatured_type_table_from_index): Change objfile
12820         parameter to dwarf2_per_objfile.
12821         (create_signatured_type_table_from_debug_names): Change objfile
12822         parameter to dwarf2_per_objfile.
12823         (create_addrmap_from_index): Likewise.
12824         (create_addrmap_from_aranges): Likewise.
12825         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
12826         (dw2_setup): Remove.
12827         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
12828         context.
12829         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
12830         get_dwarf2_per_objfile.
12831         (dw2_forget_cached_source_info): Likewise.
12832         (dw2_map_symtabs_matching_filename): Likewise.
12833         (struct dw2_symtab_iterator) <index>: Remove.
12834         <dwarf2_per_objfile>: New field.
12835         (dw2_symtab_iter_init): Replace index parameter with
12836         dwarf2_per_objfile.
12837         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
12838         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
12839         (dw2_print_stats): Likewise.
12840         (dw2_dump): Likewise.
12841         (dw2_expand_symtabs_for_function): Likewise.
12842         (dw2_expand_all_symtabs): Likewise.
12843         (dw2_expand_symtabs_with_fullname): Likewise.
12844         (dw2_expand_marked_cus): Replace index and objfile parameters
12845         with dwarf2_per_objfile.
12846         (dw_expand_symtabs_matching_file_matcher): Add
12847         dwarf2_per_objfile parameter and adjust calls.
12848         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
12849         adjust calls.
12850         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
12851         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
12852         adjust calls.
12853         (create_cus_from_debug_names_list): Replace objfile parameter
12854         with dwarf2_per_objfile and adjust calls.
12855         (create_cus_from_debug_names): Likewise.
12856         (dwarf2_read_debug_names): Likewise.
12857         (mapped_debug_names::namei_to_name): Adjust call.
12858         (dw2_debug_names_iterator::next): Likewise.
12859         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
12860         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
12861         (dw2_debug_names_dump): Likewise.
12862         (dw2_debug_names_expand_symtabs_for_function): Likewise.
12863         (dw2_debug_names_expand_symtabs_matching): Likewise.
12864         (dwarf2_initialize_objfile): Likewise.
12865         (dwarf2_build_psymtabs): Likewise.
12866         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
12867         this_cu.
12868         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
12869         (read_and_check_comp_unit_head): Likewise.
12870         (read_abbrev_offset): Likewise.
12871         (create_debug_type_hash_table): Likewise.
12872         (create_debug_types_hash_table): Likewise.
12873         (create_all_type_units): Replace objfile parameter with
12874         dwarf2_per_objfile.
12875         (add_type_unit): Add dwarf2_per_objfile parameter.
12876         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
12877         with dwarf2_per_objfile.
12878         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
12879         (lookup_dwp_signatured_type): Likewise.
12880         (lookup_signatured_type): Likewise.
12881         (read_cutu_die_from_dwo): Likewise.
12882         (init_tu_and_read_dwo_dies): Likewise.
12883         (init_cutu_and_read_dies): Likewise.
12884         (init_cutu_and_read_dies_no_follow): Likewise.
12885         (allocate_type_unit_groups_table): Add objfile parameter.
12886         (create_type_unit_group): Use dwarf2_per_objfile from cu.
12887         (get_type_unit_group): Likewise.
12888         (process_psymtab_comp_unit): Update call.
12889         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
12890         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
12891         (print_tu_stats): Likewise.
12892         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
12893         in void* parameter.
12894         (build_type_psymtabs): Change objfile parameter to
12895         dwarf2_per_objfile.
12896         (process_skeletonless_type_unit): Use dwarf2_per_objfile
12897         passed in void* parameter.
12898         (process_skeletonless_type_units): Change objfile parameter to
12899         dwarf2_per_objfile.
12900         (set_partial_user): Likewise.
12901         (dwarf2_build_psymtabs_hard): Likewise.
12902         (read_comp_units_from_section): Likewise.
12903         (create_all_comp_units): Likewise.
12904         (scan_partial_symbols): Update calls.
12905         (add_partial_symbol): Likewise.
12906         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
12907         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
12908         (process_queue): Add dwarf2_per_objfile parameter.
12909         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
12910         (compute_compunit_symtab_includes): Likewise.
12911         (process_cu_includes): Add dwarf2_per_objfile parameter.
12912         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
12913         (process_full_type_unit): Likewise.
12914         (process_imported_unit_die): Update call.
12915         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
12916         (read_file_scope): Likewise.
12917         (allocate_dwo_file_hash_table): Add objfile parameter.
12918         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
12919         (create_cus_hash_table): Likewise.
12920         (create_dwp_hash_table): Likewise.
12921         (create_dwo_unit_in_dwp_v1): Likewise.
12922         (create_dwp_v2_section): Likewise.
12923         (create_dwo_unit_in_dwp_v2): Likewise.
12924         (lookup_dwo_unit_in_dwp): Likewise.
12925         (try_open_dwop_file): Likewise.
12926         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
12927         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
12928         cleanup to include a reference to dwarf2_per_objfile.
12929         (open_dwp_file): Add dwarf2_per_objfile parameter.
12930         (open_and_init_dwp_file): Likewise.
12931         (get_dwp_file): Likewise.
12932         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
12933         (queue_and_load_all_dwo_tus): Update call.
12934         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
12935         data.
12936         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
12937         (dwarf2_ranges_process): Likewise.
12938         (dwarf2_get_pc_bounds): Likewise.
12939         (mark_common_block_symbol_computed): Likewise.
12940         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
12941         (dwarf2_read_abbrevs): Update call.
12942         (read_partial_die): Use dwarf2_per_objfile from cu.
12943         (find_partial_die): Likewise.
12944         (fixup_partial_die): Likewise.
12945         (read_attribute_value): Likewise.
12946         (read_indirect_string_at_offset_from): Add objfile parameter.
12947         (read_indirect_string_at_offset): Add dwarf2_per_objfile
12948         parameter.
12949         (read_indirect_string_from_dwz): Add objfile parameter.
12950         (read_indirect_string): Add objfile parameter.
12951         (read_addr_index_1): Add dwarf2_per_objfile parameter.
12952         (read_addr_index): Use dwarf2_per_objfile from cu.
12953         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
12954         call dw2_setup.
12955         (read_str_index): Use dwarf2_per_objfile from cu.
12956         (get_debug_line_section): Likewise.
12957         (read_formatted_entries): Add dwarf2_per_objfile parameter.
12958         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
12959         (new_symbol_full): Use dwarf2_per_objfile from cu.
12960         (build_error_marker_type): Likewise.
12961         (lookup_die_type): Likewise.
12962         (determine_prefix): Likewise.
12963         (follow_die_offset): Likewise.
12964         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
12965         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
12966         (dwarf2_fetch_die_type_sect_off): Likewise.
12967         (dwarf2_get_die_type): Likewise.
12968         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
12969         (get_signatured_type): Likewise.
12970         (get_DW_AT_signature_type): Likewise.
12971         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
12972         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
12973         (cu_debug_loc_section): Likewise.
12974         (fill_in_loclist_baton): Likewise.
12975         (dwarf2_symbol_mark_computed): Likewise.
12976         (dwarf2_find_containing_comp_unit): Change objfile parameter to
12977         dwarf2_per_objfile.
12978         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
12979         parameter.
12980         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
12981         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
12982         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
12983         (set_die_type): Use dwarf2_free_objfile from cu.
12984         (get_die_type_at_offset): Likewise.
12985         (dwarf2_per_objfile_free): Don't assign global variable.
12986         (debug_names) <constructor>: Add dwarf2_per_objfile
12987         parameter, update m_debugstrlookup construction.
12988         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
12989         parameter.
12990         <m_dwarf2_per_objfile>: New field.
12991         <lookup>: Use m_dwarf2_per_objfile.
12992         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
12993         (psyms_seen_size): Likewise.
12994         (write_gdbindex): Replace objfile parameter with
12995         dwarf2_per_objfile.
12996         (write_debug_names): Likewise.
12997         (write_psymtabs_to_index): Likewise.
12998         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
12999         calls.
13000
13001 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
13002
13003         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
13004         <dwarf2_per_objfile>: New field.
13005         (struct dwarf2_per_cu_data) <objfile>: Remove.
13006         <dwarf2_per_objfile>: New field.
13007         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
13008         of objfile.
13009         (create_signatured_type_table_from_index): Likewise.
13010         (create_debug_type_hash_table): Likewise.
13011         (fill_in_sig_entry_from_dwo_entry): Likewise.
13012         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
13013         (create_type_unit_group): Assign dwarf2_per_objfile instead of
13014         objfile.
13015         (create_partial_symtab): Access objfile through
13016         dwarf2_per_objfile.
13017         (process_psymtab_comp_unit_reader): Likewise.
13018         (read_comp_units_from_section): Likewise.
13019         (scan_partial_symbols): Likewise.
13020         (add_partial_symbol): Likewise.
13021         (add_partial_subprogram): Likewise.
13022         (peek_die_abbrev): Likewise.
13023         (fixup_go_packaging): Likewise.
13024         (process_full_comp_unit): Likewise.
13025         (process_full_type_unit): Likewise.
13026         (process_imported_unit_die): Likewise.
13027         (dwarf2_compute_name): Likewise.
13028         (dwarf2_physname): Likewise.
13029         (read_import_statement): Likewise.
13030         (create_cus_hash_table): Assign dwarf2_physname instead of
13031         objfile.
13032         (read_func_scope): Access objfile through dwarf2_per_objfile.
13033         (read_lexical_block_scope): Likewise.
13034         (read_call_site_scope): Likewise.
13035         (read_variable): Likewise.
13036         (dwarf2_rnglists_process): Likewise.
13037         (dwarf2_ranges_process): Likewise.
13038         (dwarf2_ranges_read): Likewise.
13039         (dwarf2_record_block_ranges): Likewise.
13040         (dwarf2_add_field): Likewise.
13041         (dwarf2_add_member_fn): Likewise.
13042         (read_structure_type): Likewise.
13043         (process_structure_scope): Likewise.
13044         (read_enumeration_type): Likewise.
13045         (read_array_type): Likewise.
13046         (read_common_block): Likewise.
13047         (read_namespace_type): Likewise.
13048         (read_namespace): Likewise.
13049         (read_module_type): Likewise.
13050         (read_tag_pointer_type): Likewise.
13051         (read_tag_ptr_to_member_type): Likewise.
13052         (read_tag_string_type): Likewise.
13053         (read_subroutine_type): Likewise.
13054         (read_typedef): Likewise.
13055         (read_base_type): Likewise.
13056         (attr_to_dynamic_prop): Likewise.
13057         (read_subrange_type): Likewise.
13058         (read_unspecified_type): Likewise.
13059         (load_partial_dies): Likewise.
13060         (read_partial_die): Likewise.
13061         (find_partial_die): Likewise.
13062         (guess_partial_die_structure_name): Likewise.
13063         (fixup_partial_die): Likewise.
13064         (read_attribute_value): Likewise.
13065         (read_addr_index_from_leb128): Likewise.
13066         (dwarf2_read_addr_index): Likewise.
13067         (dwarf2_string_attr): Likewise.
13068         (lnp_state_machine::check_line_address): Likewise.
13069         (dwarf_decode_lines_1): Likewise.
13070         (dwarf_decode_lines): Likewise.
13071         (dwarf2_start_symtab): Likewise.
13072         (var_decode_location): Likewise.
13073         (new_symbol_full): Likewise.
13074         (dwarf2_const_value_data): Likewise.
13075         (dwarf2_const_value_attr): Likewise.
13076         (dwarf2_const_value): Likewise.
13077         (die_type): Likewise.
13078         (die_containing_type): Likewise.
13079         (lookup_die_type): Likewise.
13080         (guess_full_die_structure_name): Likewise.
13081         (anonymous_struct_prefix): Likewise.
13082         (dwarf2_name): Likewise.
13083         (follow_die_ref_or_sig): Likewise.
13084         (follow_die_offset): Likewise.
13085         (follow_die_ref): Likewise.
13086         (dwarf2_fetch_die_loc_sect_off): Likewise.
13087         (dwarf2_fetch_constant_bytes): Likewise.
13088         (dwarf2_fetch_die_type_sect_off): Likewise.
13089         (dwarf2_get_die_type): Likewise.
13090         (follow_die_sig): Likewise.
13091         (decode_locdesc): Likewise.
13092         (dwarf2_per_cu_objfile): Likewise.
13093         (dwarf2_per_cu_text_offset): Likewise.
13094         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
13095         objfile.
13096         (set_die_type): Access objfile through
13097         dwarf2_per_objfile.
13098
13099 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
13100
13101         * valprint.c (converted_character_d): Remove typedef.
13102         (DEF_VEC_O (converted_character_d)): Remove.
13103         (count_next_character): Use std::vector.
13104         (print_converted_chars_to_obstack): Likewise.
13105         (generic_printstr): Likewise.
13106
13107 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13108
13109         * xml-support.h (struct gdb_xml_value): Add constructor.
13110         <value>: Change type to unique_xmalloc_ptr.
13111         (gdb_xml_value_s): Remove typedef.
13112         (DEF_VEC_O (gdb_xml_value_s)): Remove.
13113         (gdb_xml_element_start_handler): Change parameter type to
13114         std::vector.
13115         (xml_find_attribute): Likewise.
13116         * xml-support.c (xml_find_attribute): Change parameter type to
13117         std::vector and adjust.
13118         (gdb_xml_values_cleanup): Remove.
13119         (gdb_xml_parser::start_element): Adjust to std::vector.
13120         (xinclude_start_include): Change paraeter type to std::vector
13121         and adjust.
13122         * btrace.c (check_xml_btrace_version): Likewise.
13123         (parse_xml_btrace_block): Likewise.
13124         (parse_xml_btrace_pt_config_cpu): Likewise.
13125         (parse_xml_btrace_pt): Likewise.
13126         (parse_xml_btrace_conf_bts): Likewise.
13127         (parse_xml_btrace_conf_pt): Likewise.
13128         * memory-map.c (memory_map_start_memory): Likewise.
13129         (memory_map_start_property): Likewise.
13130         * osdata.c (osdata_start_osdata): Likewise.
13131         (osdata_start_item): Likewise.
13132         (osdata_start_column): Likewise.
13133         * remote.c (start_thread): Likewise.
13134         * solib-aix.c (library_list_start_library): Likewise.
13135         (library_list_start_list): Likewise.
13136         * solib-svr4.c (library_list_start_library): Likewise.
13137         (svr4_library_list_start_list): Likewise.
13138         * solib-target.c (library_list_start_segment): Likewise.
13139         (library_list_start_section): Likewise.
13140         (library_list_start_library): Likewise.
13141         (library_list_start_list): Likewise.
13142         * tracepoint.c (traceframe_info_start_memory): Likewise.
13143         (traceframe_info_start_tvar): Likewise.
13144         * xml-syscall.c (syscall_start_syscall): Likewise.
13145         * xml-tdesc.c (tdesc_start_target): Likewise.
13146         (tdesc_start_feature): Likewise.
13147         (tdesc_start_reg): Likewise.
13148         (tdesc_start_union): Likewise.
13149         (tdesc_start_struct): Likewise.
13150         (tdesc_start_flags): Likewise.
13151         (tdesc_start_enum): Likewise.
13152         (tdesc_start_field): Likewise.
13153         (tdesc_start_enum_value): Likewise.
13154         (tdesc_start_vector): Likewise.
13155
13156 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13157
13158         * extension.h (struct xmethod_worker) <clone>: Remove.
13159         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
13160         Remove.
13161         (python_xmethod_worker::clone): Remove.
13162         * valops.c (find_overload_match): Use std::move instead of
13163         clone.
13164
13165 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13166
13167         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
13168         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
13169         <free_xmethod_worker_data>: Remove.
13170         <get_matching_xmethod_workers>: Chance VEC to std::vector.
13171         <get_xmethod_arg_types>: Remove.
13172         <get_xmethod_result_type>: Remove.
13173         <invoke_xmethod>: Remove.
13174         * extension.c (new_xmethod_worker): Remove.
13175         (clone_xmethod_worker): Remove.
13176         (get_matching_xmethod_workers): Return void, pass std::vector by
13177         pointer.
13178         (get_xmethod_arg_types): Rename to...
13179         (xmethod_worker::get_arg_types): ... this, and adjust.
13180         (get_xmethod_result_type): Rename to...
13181         (xmethod_worker::get_result_type): ... this, and adjust.
13182         (invoke_xmethod): Remove.
13183         (free_xmethod_worker): Remove.
13184         (free_xmethod_worker_vec): Remove.
13185         * extension.h (enum ext_lang_rc): Move here from
13186         extension-priv.h.
13187         (struct xmethod_worker): Add constructor and destructor.
13188         <data>: Remove.
13189         <value>: Remove.
13190         <invoke, clone, do_get_result_type, do_get_arg_types>: New
13191         virtual pure methods.
13192         <get_arg_types, get_result_type>: New methods.
13193         (xmethod_worker_ptr): Remove typedef.
13194         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
13195         (xmethod_worker_vec): Remove typedef.
13196         (xmethod_worker_up): New typedef.
13197         (invoke_xmethod): Remove.
13198         (clone_xmethod_worker): Remove.
13199         (free_xmethod_worker): Remove.
13200         (free_xmethod_worker_vec): Remove.
13201         (get_xmethod_arg_types): Remove.
13202         (get_xmethod_result_type): Remove.
13203         * valops.c (find_method_list): Use std::vector, don't use
13204         intermediate vector.
13205         (value_find_oload_method_list): Use std::vector.
13206         (find_overload_match): Use std::vector.
13207         (find_oload_champ): Use std::vector.
13208         * value.c (value_free): Use operator delete.
13209         (value_of_xmethod): Rename to...
13210         (value_from_xmethod): ... this.  Don't assign
13211         xmethod_worker::value, take rvalue-reference.
13212         (result_type_of_xmethod): Adjust.
13213         (call_xmethod): Adjust.
13214         * value.h: Include extension.h.
13215         (struct xmethod_worker): Don't forward-declare.
13216         (value_of_xmethod): Rename to...
13217         (value_from_xmethod): ... this, take rvalue-reference.
13218         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
13219         (struct python_xmethod_worker): ... this, add constructor and
13220         destructor.
13221         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
13222         (gdbpy_free_xmethod_worker_data): Rename to...
13223         (python_xmethod_worker::~python_xmethod_worker): ... this and
13224         adjust.
13225         (gdbpy_clone_xmethod_worker_data): Rename to...
13226         (python_xmethod_worker::clone): ... this and adjust.
13227         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
13228         temporary vector.
13229         (gdbpy_get_xmethod_arg_types): Rename to...
13230         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
13231         (gdbpy_get_xmethod_result_type): Rename to...
13232         (python_xmethod_worker::do_get_result_type): ... this and
13233         adjust.
13234         (gdbpy_invoke_xmethod): Rename to...
13235         (python_xmethod_worker::invoke): ... this and adjust.
13236         (new_python_xmethod_worker): Rename to...
13237         (python_xmethod_worker::python_xmethod_worker): ... this and
13238         adjust.
13239         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
13240         Remove.
13241         (gdbpy_free_xmethod_worker_data): Remove.
13242         (gdbpy_get_matching_xmethod_workers): Use std::vector.
13243         (gdbpy_get_xmethod_arg_types): Remove.
13244         (gdbpy_get_xmethod_result_type): Remove.
13245         (gdbpy_invoke_xmethod): Remove.
13246         * python/python.c (python_extension_ops): Remove obsolete
13247         callbacks.
13248
13249 2018-01-05  Pedro Alves  <palves@redhat.com>
13250
13251         PR gdb/18653
13252         * common/signals-state-save-restore.c
13253         (save_original_signals_state): New parameter 'quiet'.  Warn if we
13254         find a custom handler preinstalled, instead of internal erroring.
13255         But only warn if !quiet.
13256         * common/signals-state-save-restore.h
13257         (save_original_signals_state): New parameter 'quiet'.
13258         * main.c (captured_main_1): Move save_original_signals_state call
13259         after option handling, and pass QUIET.
13260
13261 2018-01-05  Pedro Alves  <palves@redhat.com>
13262
13263         * spu-tdep.c (spu_catch_start): Pass
13264         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
13265
13266 2018-01-05  Pedro Alves  <palves@redhat.com>
13267
13268         PR gdb/22670
13269         * ada-lang.c (literal_symbol_name_matcher): New function.
13270         (ada_get_symbol_name_matcher): Use it for
13271         symbol_name_match_type::SEARCH_NAME.
13272         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
13273         it down instead of assuming symbol_name_match_type::FULL.
13274         * block.h (block_lookup_symbol): New parameter 'match_type'.
13275         * c-valprint.c (print_unpacked_pointer): Use
13276         lookup_symbol_search_name instead of lookup_symbol.
13277         * compile/compile-object-load.c (get_out_value_type): Pass down
13278         symbol_name_match_type::SEARCH_NAME.
13279         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
13280         symbol_name_match_type::FULL.
13281         * cp-support.c (cp_get_symbol_name_matcher): Handle
13282         symbol_name_match_type::SEARCH_NAME.
13283         * infrun.c (insert_exception_resume_breakpoint): Use
13284         lookup_symbol_search_name.
13285         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
13286         * psymtab.c (maintenance_check_psymtabs): Use
13287         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
13288         * stack.c (print_frame_args): Use lookup_symbol_search_name and
13289         SYMBOL_SEARCH_NAME.
13290         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
13291         if symbol_name_match_type::SEARCH_NAME.
13292         (lookup_symbol_in_language): Pass down
13293         symbol_name_match_type::FULL.
13294         (lookup_symbol_search_name): New.
13295         (lookup_language_this): Pass down
13296         symbol_name_match_type::SEARCH_NAME.
13297         (lookup_symbol_aux, lookup_local_symbol): New parameter
13298         'match_type'.  Pass it down.
13299         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
13300         (lookup_symbol_search_name): New declaration.
13301         (lookup_symbol_in_block): New 'match_type' parameter.
13302
13303 2018-01-05  Pedro Alves  <palves@redhat.com>
13304
13305         PR gdb/22670
13306         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
13307         ada_lookup_symbol.
13308         (ada_lookup_symbol): Reimplement in terms of
13309         ada_lookup_symbol_list, bits factored out from
13310         ada_lookup_encoded_symbol.
13311
13312 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13313
13314         * ada-exp.y (write_object_renaming): When subscripting an array
13315         using a symbol as the index, pass the block in call to
13316         ada_lookup_encoded_symbol when looking that symbol up.
13317
13318 2018-01-05  Jerome Guitton  <guitton@adacore.com>
13319
13320         * ada-lang.c (ada_array_length): Use ada_index_type instead of
13321         TYPE_INDEX_TYPE.
13322
13323 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13324
13325         * ada-lang.c (ada_to_fixed_value_create): Add handling of
13326         the case where VALUE_LVAL (val0) is not lval_memory.
13327
13328 2018-01-05  Xavier Roirand  <roirand@adacore.com>
13329
13330         * ada-valprint.c (print_optional_low_bound): Handle
13331         character-indexed array printing like boolean-indexed array
13332         printing.
13333
13334 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13335
13336         * NEWS: Create a new section for the next release branch.
13337         Rename the section of the current branch, now that it has
13338         been cut.
13339
13340 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13341
13342         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
13343         * version.in: Bump version to 8.1.50.DATE-git.
13344
13345 2018-01-03  Xavier Roirand  <roirand@adacore.com>
13346
13347         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
13348         Add field.
13349         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
13350         Add field.
13351         (default_exception_support_info) <catch_handlers_sym>: Add field.
13352         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
13353         (ada_exception_name_addr_1): Add "catch handlers" handling.
13354         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
13355         Update all callers.
13356         (create_excep_cond_exprs) <ex>: Add parameter.
13357         (re_set_exception): Update create_excep_cond_exprs call.
13358         (print_it_exception, print_one_exception, print_mention_exception)
13359         (print_recreate_exception): Add "catch handler" handling.
13360         (allocate_location_catch_handlers, re_set_catch_handlers)
13361         (check_status_catch_handlers, print_it_catch_handlers)
13362         (print_one_catch_handlers, print_mention_catch_handlers)
13363         (print_recreate_catch_handlers): New function.
13364         (catch_handlers_breakpoint_ops): New variable.
13365         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
13366         Add parameter.  Add "catch handler" handling.
13367         (ada_exception_sym_name, ada_exception_breakpoint_ops):
13368         Add "catch handler" handling.
13369         (ada_exception_catchpoint_cond_string): Add "catch handler"
13370         handling.
13371         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
13372         call.
13373         (catch_ada_handlers_command): New function.
13374         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
13375         operations structure.
13376         (_initialize_ada_language): Add "catch handlers" command entry.
13377         * NEWS: Document "catch handlers" feature.
13378
13379 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
13380
13381         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
13382         account when creating the array type of the slice.
13383         (ada_value_slice): Likewise.
13384
13385 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
13386
13387         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
13388         New enum value.
13389         (create_array_type_with_stride): Add byte_stride_prop parameter.
13390         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
13391         New parameter.  Update all callers in this file.
13392         (array_type_has_dynamic_stride): New function.
13393         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
13394         of arrays with dynamic byte strides.
13395         * dwarf2read.c (read_array_type): Add support for dynamic
13396         DW_AT_byte_stride attributes.
13397
13398 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
13399
13400         * dwarf2read.c (read_unspecified_type): Treat
13401         DW_TAG_enumeration_type DIEs from Ada units as stubs.
13402
13403 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13404
13405         Update copyright year range in all GDB files.
13406
13407 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13408
13409         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
13410         and gdb/testsuite/gdb.base/step-line.c.
13411
13412 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13413
13414         * copyright.py (main): Dump the contents of
13415         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
13416         even if BY_HAND is empty.
13417
13418 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13419
13420         * top.c (print_gdb_version): Update Copyright year in version
13421         message.
13422
13423 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13424
13425         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
13426
13427 For older changes see ChangeLog-2017.
13428 \f
13429 Local Variables:
13430 mode: change-log
13431 left-margin: 8
13432 fill-column: 74
13433 version-control: never
13434 coding: utf-8
13435 End: