Provide type_align gdbarch function for nios2.
[external/binutils.git] / gdb / ChangeLog
1 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
2
3         * nios2-tdep.c (nios2_type_align): New.
4         (nios2_gdb_arch_init): Install type_align hook.
5
6 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
7
8         * eval.c (fake_method::fake_method): Call xzalloc directly for a
9         type that is neither object file owned, nor gdbarch owned.
10         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
11         gdbarch is non-NULL.
12         (alloc_type_instance): Allocate non-objfile owned types on the
13         gdbarch obstack.
14         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
15         using TYPE_ALLOC to ensure memory is allocated on the correct
16         obstack.
17         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
18         obstack, or the gdbarch obstack.
19         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
20
21 2018-09-14  Tom Tromey  <tom@tromey.com>
22
23         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
24         block.
25
26 2018-09-14  Tom Tromey  <tom@tromey.com>
27
28         * nat/fork-inferior.c (get_startup_shell): Remove "static".
29
30 2018-09-13  Tom Tromey  <tom@tromey.com>
31
32         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
33         static.
34
35 2018-09-13  Tom Tromey  <tom@tromey.com>
36
37         * exec.c (try_open_exec_file): Use std::string.
38
39 2018-09-13  Tom Tromey  <tom@tromey.com>
40
41         * utils.h (gdb_bfd_errmsg): Return std::string.
42         * exec.c (exec_file_attach): Update.
43         * compile/compile-object-load.c (compile_object_load): Update.
44         * utils.c (gdb_bfd_errmsg): Return std::string.
45
46 2018-09-13  Tom Tromey  <tom@tromey.com>
47
48         * procfs.c (struct procinfo_deleter): New.
49         (procinfo_up): New typedef.
50         (do_destroy_procinfo_cleanup): Remove.
51         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
52
53 2018-09-13  Tom Tromey  <tom@tromey.com>
54
55         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
56
57 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
58 2018-09-13  Tom Tromey  <tom@tromey.com>
59
60         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
61         (pspy_get_objfiles): New function.
62         (progspace_object_methods): New.
63         (pspace_object_type): Add tp_methods callback.
64         * python/python-internal.h (build_objfiles_list): New
65         declaration.
66         * python/python.c (build_objfiles_list): New function.
67         (gdbpy_objfiles): Implement using build_objfiles_list.
68         * NEWS: Mention the Progspace.objfiles method.
69
70 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
71
72         * python/py-inferior.c (infpy_get_progspace): New function.
73         (inferior_object_getset): Add progspace property.
74         * NEWS: Mention the new property.
75
76 2018-09-13  Tom Tromey  <tom@tromey.com>
77
78         PR rust/23650:
79         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
80
81 2018-09-13  Tom Tromey  <tom@tromey.com>
82
83         PR rust/23626:
84         * rust-lang.c (rust_enum_variant): Now static.
85         (rust_empty_enum_p): New function.
86         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
87         Handle empty enum.
88
89 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
90
91         * python/py-inferior.c (infpy_repr): New.
92         (inferior_object_type): Register infpy_repr.
93         * python/py-objfile.c (objfpy_repr): New.
94         (objfile_object_type): Register objfpy_repr.
95
96 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
97
98         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
99
100 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
101
102         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
103         typo.
104
105 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
106
107         * common/common-utils.c: Don't include '<sys/stat.h>'.
108         (is_regular_file): Move to...
109         * common/filestuff.c (is_regular_file): ... here.
110         * common/common-utils.h (is_regular_file): Move to...
111         * common/filestuff.h (is_regular_file): ... here.
112
113 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
114
115         * skip.c (debug_skip): New variable.
116         (skiplist_entry::do_skip_file_p): Add debug output.
117         (skiplist_entry::do_skip_gfile_p): Likewise.
118         (skiplist_entry::skip_function_p): Likewise.
119         (_initialize_step_skip): Create debug command.
120         * NEWS: Mention set/show debug skip.
121
122 2018-09-11  Xavier Roirand  <roirand@adacore.com>
123
124         * darwin-nat.c (should_disable_startup_with_shell):
125         New function.
126         (darwin_nat_target::create_inferior): Add call.
127
128 2018-09-11  Xavier Roirand  <roirand@adacore.com>
129
130         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
131         inf_port, msg_state>: Initialize.
132         (struct darwin_thread_info) <signaled, single_step>: Change
133         type and initialize.
134         (struct darwin_thread_info) <event>: Initialize.
135
136 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
137
138         PR gdb/23555
139         PR gdb/23558
140         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
141         guesses.
142
143 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
144
145         Revert:
146         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
147
148         PR gdb/23555
149         PR gdb/23558
150         * gnulib/aclocal.m4: Regenerate.
151         * gnulib/config.in: Regenerate.
152         * gnulib/configure: Regenerate.
153         * gnulib/import/Makefile.am: Update.
154         * gnulib/import/Makefile.in: Update.
155         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
156         * gnulib/import/_Noreturn.h: ... this.
157         * gnulib/import/alloca.in.h: Update.
158         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
159         * gnulib/import/arg-nonnull.h: ... this.
160         * gnulib/import/assure.h: Update.
161         * gnulib/import/at-func.c: Update.
162         * gnulib/import/basename-lgpl.c: Update.
163         * gnulib/import/extra/snippet/c++defs.h: Rename to...
164         * gnulib/import/c++defs.h: ... this.
165         * gnulib/import/canonicalize-lgpl.c: Update.
166         * gnulib/import/cdefs.h: Update.
167         * gnulib/import/chdir-long.c: Update.
168         * gnulib/import/chdir-long.h: Update.
169         * gnulib/import/cloexec.c: Update.
170         * gnulib/import/cloexec.h: Update.
171         * gnulib/import/close.c: Update.
172         * gnulib/import/closedir.c: Update.
173         * gnulib/import/config.charset: Update.
174         * gnulib/import/dirent-private.h: Update.
175         * gnulib/import/dirent.in.h: Update.
176         * gnulib/import/dirfd.c: Update.
177         * gnulib/import/dirname-lgpl.c: Update.
178         * gnulib/import/dirname.h: Update.
179         * gnulib/import/dosname.h: Update.
180         * gnulib/import/dup-safer-flag.c: Update.
181         * gnulib/import/dup-safer.c: Update.
182         * gnulib/import/dup.c: Update.
183         * gnulib/import/dup2.c: Update.
184         * gnulib/import/errno.in.h: Update.
185         * gnulib/import/error.c: Update.
186         * gnulib/import/error.h: Update.
187         * gnulib/import/exitfail.c: Update.
188         * gnulib/import/exitfail.h: Update.
189         * gnulib/import/extra/update-copyright: Update.
190         * gnulib/import/fchdir.c: Update.
191         * gnulib/import/fcntl.c: Update.
192         * gnulib/import/fcntl.in.h: Update.
193         * gnulib/import/fd-hook.c: Update.
194         * gnulib/import/fd-hook.h: Update.
195         * gnulib/import/fd-safer-flag.c: Update.
196         * gnulib/import/fd-safer.c: Update.
197         * gnulib/import/fdopendir.c: Update.
198         * gnulib/import/filename.h: Update.
199         * gnulib/import/filenamecat-lgpl.c: Update.
200         * gnulib/import/filenamecat.h: Update.
201         * gnulib/import/flexmember.h: Update.
202         * gnulib/import/float+.h: Update.
203         * gnulib/import/float.c: Update.
204         * gnulib/import/float.in.h: Update.
205         * gnulib/import/fnmatch.c: Update.
206         * gnulib/import/fnmatch.in.h: Update.
207         * gnulib/import/fnmatch_loop.c: Update.
208         * gnulib/import/fpucw.h: Update.
209         * gnulib/import/frexp.c: Update.
210         * gnulib/import/frexpl.c: Update.
211         * gnulib/import/fstat.c: Update.
212         * gnulib/import/fstatat.c: Update.
213         * gnulib/import/getcwd-lgpl.c: Update.
214         * gnulib/import/getcwd.c: Update.
215         * gnulib/import/getdtablesize.c: Update.
216         * gnulib/import/getlogin_r.c: Update.
217         * gnulib/import/getprogname.c: Update.
218         * gnulib/import/getprogname.h: Update.
219         * gnulib/import/gettext.h: Update.
220         * gnulib/import/gettimeofday.c: Update.
221         * gnulib/import/glob-libc.h: Update.
222         * gnulib/import/glob.c: Update.
223         * gnulib/import/glob.in.h: Update.
224         * gnulib/import/glob_internal.h: Update.
225         * gnulib/import/glob_pattern_p.c: Update.
226         * gnulib/import/globfree.c: Update.
227         * gnulib/import/hard-locale.c: Update.
228         * gnulib/import/hard-locale.h: Update.
229         * gnulib/import/intprops.h: Update.
230         * gnulib/import/inttypes.in.h: Update.
231         * gnulib/import/isnan.c: Update.
232         * gnulib/import/isnand-nolibm.h: Update.
233         * gnulib/import/isnand.c: Update.
234         * gnulib/import/isnanl-nolibm.h: Update.
235         * gnulib/import/isnanl.c: Update.
236         * gnulib/import/itold.c: Update.
237         * gnulib/import/libc-config.h: Update.
238         * gnulib/import/limits.in.h: Update.
239         * gnulib/import/localcharset.c: Update.
240         * gnulib/import/localcharset.h: Update.
241         * gnulib/import/localtime-buffer.c: Update.
242         * gnulib/import/localtime-buffer.h: Update.
243         * gnulib/import/lstat.c: Update.
244         * gnulib/import/m4/00gnulib.m4: Update.
245         * gnulib/import/m4/__inline.m4: Update.
246         * gnulib/import/m4/absolute-header.m4: Update.
247         * gnulib/import/m4/alloca.m4: Update.
248         * gnulib/import/m4/builtin-expect.m4: Update.
249         * gnulib/import/m4/canonicalize.m4: Update.
250         * gnulib/import/m4/chdir-long.m4: Update.
251         * gnulib/import/m4/close.m4: Update.
252         * gnulib/import/m4/closedir.m4: Update.
253         * gnulib/import/m4/configmake.m4: Update.
254         * gnulib/import/m4/d-ino.m4: Update.
255         * gnulib/import/m4/d-type.m4: Update.
256         * gnulib/import/m4/dirent_h.m4: Update.
257         * gnulib/import/m4/dirfd.m4: Update.
258         * gnulib/import/m4/dirname.m4: Update.
259         * gnulib/import/m4/double-slash-root.m4: Update.
260         * gnulib/import/m4/dup.m4: Update.
261         * gnulib/import/m4/dup2.m4: Update.
262         * gnulib/import/m4/eealloc.m4: Update.
263         * gnulib/import/m4/environ.m4: Update.
264         * gnulib/import/m4/errno_h.m4: Update.
265         * gnulib/import/m4/error.m4: Update.
266         * gnulib/import/m4/exponentd.m4: Update.
267         * gnulib/import/m4/exponentl.m4: Update.
268         * gnulib/import/m4/extensions.m4: Update.
269         * gnulib/import/m4/extern-inline.m4: Update.
270         * gnulib/import/m4/fchdir.m4: Update.
271         * gnulib/import/m4/fcntl-o.m4: Update.
272         * gnulib/import/m4/fcntl.m4: Update.
273         * gnulib/import/m4/fcntl_h.m4: Update.
274         * gnulib/import/m4/fdopendir.m4: Update.
275         * gnulib/import/m4/filenamecat.m4: Update.
276         * gnulib/import/m4/flexmember.m4: Update.
277         * gnulib/import/m4/float_h.m4: Update.
278         * gnulib/import/m4/fnmatch.m4: Update.
279         * gnulib/import/m4/fnmatch_h.m4: Update.
280         * gnulib/import/m4/fpieee.m4: Update.
281         * gnulib/import/m4/frexp.m4: Update.
282         * gnulib/import/m4/frexpl.m4: Update.
283         * gnulib/import/m4/fstat.m4: Update.
284         * gnulib/import/m4/fstatat.m4: Update.
285         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
286         * gnulib/import/m4/getcwd-path-max.m4: Update.
287         * gnulib/import/m4/getcwd.m4: Update.
288         * gnulib/import/m4/getdtablesize.m4: Update.
289         * gnulib/import/m4/getlogin.m4: Update.
290         * gnulib/import/m4/getlogin_r.m4: Update.
291         * gnulib/import/m4/getpagesize.m4: Update.
292         * gnulib/import/m4/getprogname.m4: Update.
293         * gnulib/import/m4/gettimeofday.m4: Update.
294         * gnulib/import/m4/glibc21.m4: Update.
295         * gnulib/import/m4/glob.m4: Update.
296         * gnulib/import/m4/glob_h.m4: Update.
297         * gnulib/import/m4/gnulib-cache.m4: Update.
298         * gnulib/import/m4/gnulib-common.m4: Update.
299         * gnulib/import/m4/gnulib-comp.m4: Update.
300         * gnulib/import/m4/gnulib-tool.m4: Update.
301         * gnulib/import/m4/hard-locale.m4: Update.
302         * gnulib/import/m4/include_next.m4: Update.
303         * gnulib/import/m4/inttypes-pri.m4: Update.
304         * gnulib/import/m4/inttypes.m4: Update.
305         * gnulib/import/m4/isnand.m4: Update.
306         * gnulib/import/m4/isnanl.m4: Update.
307         * gnulib/import/m4/largefile.m4: Update.
308         * gnulib/import/m4/limits-h.m4: Update.
309         * gnulib/import/m4/localcharset.m4: Update.
310         * gnulib/import/m4/locale-fr.m4: Update.
311         * gnulib/import/m4/locale-ja.m4: Update.
312         * gnulib/import/m4/locale-zh.m4: Update.
313         * gnulib/import/m4/localtime-buffer.m4: Update.
314         * gnulib/import/m4/longlong.m4: Update.
315         * gnulib/import/m4/lstat.m4: Update.
316         * gnulib/import/m4/malloc.m4: Update.
317         * gnulib/import/m4/malloca.m4: Update.
318         * gnulib/import/m4/math_h.m4: Update.
319         * gnulib/import/m4/mbrtowc.m4: Update.
320         * gnulib/import/m4/mbsinit.m4: Update.
321         * gnulib/import/m4/mbsrtowcs.m4: Update.
322         * gnulib/import/m4/mbstate_t.m4: Update.
323         * gnulib/import/m4/memchr.m4: Update.
324         * gnulib/import/m4/memmem.m4: Update.
325         * gnulib/import/m4/mempcpy.m4: Update.
326         * gnulib/import/m4/memrchr.m4: Update.
327         * gnulib/import/m4/mkdir.m4: Update.
328         * gnulib/import/m4/mkstemp.m4: Update.
329         * gnulib/import/m4/mmap-anon.m4: Update.
330         * gnulib/import/m4/mode_t.m4: Update.
331         * gnulib/import/m4/msvc-inval.m4: Update.
332         * gnulib/import/m4/msvc-nothrow.m4: Update.
333         * gnulib/import/m4/multiarch.m4: Update.
334         * gnulib/import/m4/nocrash.m4: Update.
335         * gnulib/import/m4/off_t.m4: Update.
336         * gnulib/import/m4/onceonly.m4: Update.
337         * gnulib/import/m4/open-cloexec.m4: Update.
338         * gnulib/import/m4/open.m4: Update.
339         * gnulib/import/m4/openat.m4: Update.
340         * gnulib/import/m4/opendir.m4: Update.
341         * gnulib/import/m4/pathmax.m4: Update.
342         * gnulib/import/m4/rawmemchr.m4: Update.
343         * gnulib/import/m4/readdir.m4: Update.
344         * gnulib/import/m4/readlink.m4: Update.
345         * gnulib/import/m4/realloc.m4: Update.
346         * gnulib/import/m4/rename.m4: Update.
347         * gnulib/import/m4/rewinddir.m4: Update.
348         * gnulib/import/m4/rmdir.m4: Update.
349         * gnulib/import/m4/save-cwd.m4: Update.
350         * gnulib/import/m4/secure_getenv.m4: Update.
351         * gnulib/import/m4/setenv.m4: Update.
352         * gnulib/import/m4/signal_h.m4: Update.
353         * gnulib/import/m4/ssize_t.m4: Update.
354         * gnulib/import/m4/stat-time.m4: Update.
355         * gnulib/import/m4/stat.m4: Update.
356         * gnulib/import/m4/std-gnu11.m4: Update.
357         * gnulib/import/m4/stdbool.m4: Update.
358         * gnulib/import/m4/stddef_h.m4: Update.
359         * gnulib/import/m4/stdint.m4: Update.
360         * gnulib/import/m4/stdio_h.m4: Update.
361         * gnulib/import/m4/stdlib_h.m4: Update.
362         * gnulib/import/m4/strchrnul.m4: Update.
363         * gnulib/import/m4/strdup.m4: Update.
364         * gnulib/import/m4/strerror.m4: Update.
365         * gnulib/import/m4/string_h.m4: Update.
366         * gnulib/import/m4/strstr.m4: Update.
367         * gnulib/import/m4/strtok_r.m4: Update.
368         * gnulib/import/m4/sys_socket_h.m4: Update.
369         * gnulib/import/m4/sys_stat_h.m4: Update.
370         * gnulib/import/m4/sys_time_h.m4: Update.
371         * gnulib/import/m4/sys_types_h.m4: Update.
372         * gnulib/import/m4/tempname.m4: Update.
373         * gnulib/import/m4/time_h.m4: Update.
374         * gnulib/import/m4/unistd-safer.m4: Update.
375         * gnulib/import/m4/unistd_h.m4: Update.
376         * gnulib/import/m4/warn-on-use.m4: Update.
377         * gnulib/import/m4/wchar_h.m4: Update.
378         * gnulib/import/m4/wchar_t.m4: Update.
379         * gnulib/import/m4/wctype_h.m4: Update.
380         * gnulib/import/m4/wint_t.m4: Update.
381         * gnulib/import/malloc.c: Update.
382         * gnulib/import/malloc/scratch_buffer.h: Update.
383         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
384         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
385         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
386         * gnulib/import/malloca.c: Update.
387         * gnulib/import/malloca.h: Update.
388         * gnulib/import/malloca.valgrind: Update.
389         * gnulib/import/math.in.h: Update.
390         * gnulib/import/mbrtowc.c: Update.
391         * gnulib/import/mbsinit.c: Update.
392         * gnulib/import/mbsrtowcs-impl.h: Update.
393         * gnulib/import/mbsrtowcs-state.c: Update.
394         * gnulib/import/mbsrtowcs.c: Update.
395         * gnulib/import/memchr.c: Update.
396         * gnulib/import/memmem.c: Update.
397         * gnulib/import/mempcpy.c: Update.
398         * gnulib/import/memrchr.c: Update.
399         * gnulib/import/mkdir.c: Update.
400         * gnulib/import/mkstemp.c: Update.
401         * gnulib/import/msvc-inval.c: Update.
402         * gnulib/import/msvc-inval.h: Update.
403         * gnulib/import/msvc-nothrow.c: Update.
404         * gnulib/import/msvc-nothrow.h: Update.
405         * gnulib/import/open.c: Update.
406         * gnulib/import/openat-die.c: Update.
407         * gnulib/import/openat-priv.h: Update.
408         * gnulib/import/openat-proc.c: Update.
409         * gnulib/import/openat.c: Update.
410         * gnulib/import/openat.h: Update.
411         * gnulib/import/opendir.c: Update.
412         * gnulib/import/pathmax.h: Update.
413         * gnulib/import/pipe-safer.c: Update.
414         * gnulib/import/rawmemchr.c: Update.
415         * gnulib/import/readdir.c: Update.
416         * gnulib/import/readlink.c: Update.
417         * gnulib/import/realloc.c: Update.
418         * gnulib/import/ref-add.sin: Update.
419         * gnulib/import/ref-del.sin: Update.
420         * gnulib/import/rename.c: Update.
421         * gnulib/import/rewinddir.c: Update.
422         * gnulib/import/rmdir.c: Update.
423         * gnulib/import/same-inode.h: Update.
424         * gnulib/import/save-cwd.c: Update.
425         * gnulib/import/save-cwd.h: Update.
426         * gnulib/import/scratch_buffer.h: Update.
427         * gnulib/import/secure_getenv.c: Update.
428         * gnulib/import/setenv.c: Update.
429         * gnulib/import/signal.in.h: Update.
430         * gnulib/import/stat-time.c: Update.
431         * gnulib/import/stat-time.h: Update.
432         * gnulib/import/stat-w32.c: Update.
433         * gnulib/import/stat-w32.h: Update.
434         * gnulib/import/stat.c: Update.
435         * gnulib/import/stdbool.in.h: Update.
436         * gnulib/import/stddef.in.h: Update.
437         * gnulib/import/stdint.in.h: Update.
438         * gnulib/import/stdio.in.h: Update.
439         * gnulib/import/stdlib.in.h: Update.
440         * gnulib/import/str-two-way.h: Update.
441         * gnulib/import/strchrnul.c: Update.
442         * gnulib/import/strdup.c: Update.
443         * gnulib/import/streq.h: Update.
444         * gnulib/import/strerror-override.c: Update.
445         * gnulib/import/strerror-override.h: Update.
446         * gnulib/import/strerror.c: Update.
447         * gnulib/import/string.in.h: Update.
448         * gnulib/import/stripslash.c: Update.
449         * gnulib/import/strnlen1.c: Update.
450         * gnulib/import/strnlen1.h: Update.
451         * gnulib/import/strstr.c: Update.
452         * gnulib/import/strtok_r.c: Update.
453         * gnulib/import/sys_stat.in.h: Update.
454         * gnulib/import/sys_time.in.h: Update.
455         * gnulib/import/sys_types.in.h: Update.
456         * gnulib/import/tempname.c: Update.
457         * gnulib/import/tempname.h: Update.
458         * gnulib/import/time.in.h: Update.
459         * gnulib/import/unistd--.h: Update.
460         * gnulib/import/unistd-safer.h: Update.
461         * gnulib/import/unistd.in.h: Update.
462         * gnulib/import/unsetenv.c: Update.
463         * gnulib/import/verify.h: Update.
464         * gnulib/import/extra/snippet/warn-on-use.h: Update.
465         * gnulib/import/wchar.in.h: Update.
466         * gnulib/import/wctype.in.h: Update.
467         * gnulib/import/xalloc-oversized.h: Update.
468         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
469         "53e2c179f26a890fa6685af4b6c1397ee370433b".
470
471 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
472
473         * record-btrace.c (get_thread_current_frame): Remove
474         old_inferior_ptid.
475
476 2018-09-10  Jerome Guitton  <guitton@adacore.com>
477
478         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
479         with check_tag to 1 if and only if the type is tagged and the
480         component being searched cannot been found in the current
481         view. Otherwise, always call ada_to_fixed_type with
482         check_tag to 0.
483
484 2018-09-10  Xavier Roirand  <roirand@adacore.com>
485
486         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
487         declaration.
488         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
489         * ada-varobj.c (ada_varobj_get_number_of_children,
490         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
491
492 2018-09-10  Xavier Roirand  <roirand@adacore.com>
493
494         * ada-valprint.c (ada_value_print): Use type instead of
495         enclosing type.
496
497 2018-09-10  Xavier Roirand  <roirand@adacore.com>
498
499         * ada-lang.c (ada_value_subscript): Handle case when parameter is
500         an array of access to unconstrained array.
501
502 2018-09-10  Xavier Roirand  <roirand@adacore.com>
503
504         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
505         (ada_check_typedef): Use it.
506
507 2018-09-10  Xavier Roirand  <roirand@adacore.com>
508
509         * ada-varobj.c (ada_varobj_describe_struct_child)
510         (ada_varobj_describe_child): Handle union case like struct one.
511
512 2018-09-10  Tom Tromey  <tom@tromey.com>
513
514         PR python/18380:
515         * python/python.c (_initialize_python): Make example in "python"
516         help work in Python 3.
517
518 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
519
520         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
521         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
522         $(EXEEXT) to the script, as it is not a program.
523
524 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
525
526         * python/py-prettyprint.c (pretty_print_one_value): Return
527         gdbpy_ref<>.
528         (print_string_repr): Adjust.
529         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
530         * python/python-internal.h (apply_varobj_pretty_printer): Return
531         gdbpy_ref<>.
532         * varobj.c (varobj_value_get_print_value): Adjust.
533
534 2018-09-08  Tom Tromey  <tom@tromey.com>
535
536         PR python/16047:
537         * python/py-prettyprint.c (pretty_print_one_value): Check for
538         to_string method.
539
540 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
541
542         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
543         replace_operator_with_call.
544
545 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
546
547         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
548
549 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
550
551         * ada-typeprint.c (print_range): Print the bounds using TYPE
552         rather than its TYPE_TARGET_TYPE.
553
554 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
555
556         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
557         call to ada_to_fixed_value_create.
558
559 2018-09-08  Jerome Guitton  <guitton@adacore.com>
560
561         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
562
563 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
564
565         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
566         by calls to error.
567
568 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
569
570         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
571         Move update of loop variable "fi".
572
573 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
574
575         * ada-lang.c (value_assign_to_component): In the case of
576         big-endian targets, extract the bits of the given VAL
577         using an src_offset of zero if container is not a scalar.
578
579 2018-09-06  Simon Ser  <contact@emersion.fr>
580
581         PR gdb/23105
582         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
583         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
584         * fbsd-tdep.c (fbsd_make_note_desc): New.
585         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
586         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
587         * target.h (enum target_object) Add FreeBSD-specific
588         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
589
590 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
591
592         * compile/compile-c.h (generate_c_for_variable_locations):
593         Change reference to pointer.
594         * compile/compile-c-support.c (compile_program) <compute>:
595         Likewise.
596         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
597         (generate_c_for_for_one_variable): Likewise
598         (generate_c_for_variable_locations): Likewise
599         * compile/compile-c-types.c (compile_c_instance::convert_type):
600         Likewise
601         * compile/compile-cplus-symbols.c (convert_one_symbol):
602         std::move the scope passed to enter_scope.
603         * compile/compile-cplus-types.c
604         (compile_cplus_instance::enter_scope): Make parameter
605         rvalue-reference.
606         (compile_cplus_instance::new_scope): Change reference to
607         pointer.
608         (compile_cplus_instance::convert_type): Likewise
609         (compile_cplus_convert_typedef): std::move the scope passed to
610         enter_scope.
611         (compile_cplus_convert_struct_or_union): Likewise.
612         (compile_cplus_convert_enum): Likewise.
613         (compile_cplus_convert_namespace): Likewise.
614         * compile/compile-cplus.h (compile_cplus_instance)
615         <enter_scope>: Make parameter rvalue-reference.
616         * compile/compile-internal.h (compile_instance)
617         <get_cached_type>: Likewise
618         * compile/compile-loc2c.c (push): Likewise
619         (pushf): Likewise
620         (unary): Likewise
621         (binary): Likewise
622         (print_label): Likewise
623         (pushf_register_address): Likewise
624         (pushf_register): Likewise
625         (do_compile_dwarf_expr_to_c): Likewise
626         (compile_dwarf_expr_to_c): Likewise
627         (compile_dwarf_bounds_to_c): Likewise
628         * compile/compile.c (compile_instance::get_cached_type):
629         Likewise
630         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
631         (compile_dwarf_bounds_to_c): Likewise
632         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
633         (dwarf2_compile_property_to_c): Likewise
634         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
635         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
636         Likewise
637
638 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
639
640         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
641         * tui/tui-data.c (init_content_element): Don't initialize it.
642
643 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
644
645         * tui/tui-data.h (struct tui_win_info)
646         <detail::opaque>: Remove.
647         * tui/tui-data.c (init_win_info): Remove assignment.
648
649 2018-09-05  Tom Tromey  <tom@tromey.com>
650
651         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
652         -Wformat-nonliteral.
653         * target-float.c (host_float_ops<T>::to_string)
654         (host_float_ops<T>::from_string): Use
655         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
656         * configure: Rebuild.
657
658 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
659
660         * printcmd.c (printf_c_string): Use
661         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
662         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
663
664 2018-09-05  Tom Tromey  <tom@tromey.com>
665
666         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
667
668 2018-09-05  Tom de Vries  <tdevries@suse.de>
669
670         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
671         with resolve_abstract_p == true.
672         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
673         defaulting to false. Propagate resolve_abstract_p to
674         dwarf2_fetch_die_loc_sect_off.
675         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
676         parameter, defaulting to false.
677         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
678         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
679         parameter.
680         * dwarf2read.h (struct die_info): Forward-declare.
681         (die_info_ptr): New typedef.
682         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
683
684 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
685
686         GDB 8.2 released.
687
688 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
689             Pedro Alves  <palves@redhat.com>
690
691         * gnulib/Makefile.in (aclocal_m4_deps): Move to
692         "aclocal-m4-deps.mk".  Include file here.
693         $(srcdir)/aclocal.m4: Add "configure.ac".
694         * gnulib/aclocal-m4-deps.mk: New file.
695         * gnulib/update-gnulib.sh: Automatically update
696         "aclocal-m4-deps.mk".
697
698 2018-09-04  Tom Tromey  <tom@tromey.com>
699
700         * configure: Rebuild.
701         * configure.ac: Remove multi-ice code.
702
703 2018-09-04  Tom Tromey  <tom@tromey.com>
704
705         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
706         (ada-exp.o): Update.
707
708 2018-09-04  Tom Tromey  <tom@tromey.com>
709
710         * Makefile.in (printcmd.o, target-float.o): Remove.
711         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
712
713 2018-09-04  Tom Tromey  <tom@tromey.com>
714
715         * gnulib/Makefile.in: Remove obsolete comment.
716         * Makefile.in: Remove obsolete comment.
717
718 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
719
720         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
721         line with '+'.
722
723 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
724
725         * riscv-tdep.c: Add 'prologue-value.h' include.
726         (struct riscv_unwind_cache): New struct.
727         (riscv_debug_unwinder): New global.
728         (riscv_scan_prologue): Update arguments, capture register details
729         from prologue scan.
730         (riscv_skip_prologue): Reformat arguments line, move end of
731         prologue calculation into riscv_scan_prologue.
732         (riscv_frame_cache): Update return type, create
733         riscv_unwind_cache, scan the prologue, and fill in remaining cache
734         details.
735         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
736         (riscv_frame_prev_register): Use the trad_frame within the
737         riscv_unwind_cache.
738         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
739         flag.
740
741 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
742
743         * trad-frame.h (trad_frame_set_realreg): Declare.
744         (trad_frame_set_addr): Declare.
745         * trad-frame.c (trad_frame_set_realreg): Define new function.
746         (trad_frame_set_addr): Define new function.
747         (trad_frame_set_reg_realreg): Use new function.
748         (trad_frame_set_reg_addr): Use new function.
749
750 2018-09-01  Keith Seitz  <keiths@redhat.com>
751
752         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
753         pulongest instead of "%lld".
754         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
755         ATTRIBUTE_UNUSED.
756
757 2018-08-31  Tom Tromey  <tom@tromey.com>
758
759         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
760         variant part type.
761
762 2018-08-31  Pedro Alves  <palves@redhat.com>
763
764         * gdbarch.h: Regenerate.
765
766 2018-08-31  Pedro Alves  <palves@redhat.com>
767
768         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
769         * target.h (Hardware watchpoint interfaces): Describe
770         continuable/steppable/non-steppable watchpoints.
771         * gdbarch.h, gdbarch.c: Regenerate.
772
773 2018-08-31  Pedro Alves  <palves@redhat.com>
774
775         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
776         Delete.
777         * s390-linux-nat.c
778         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
779         * target.h (target_ops::have_continuable_watchpoint): Delete.
780         (target_have_continuable_watchpoint): Delete.
781         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
782         * target-delegates.c: Regenerate.
783
784 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
785
786         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
787         the files present in "gnulib/import/m4/".
788
789 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
790
791         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
792         c.sw, c.swsp, and c.sdsp.
793
794 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
795
796         * riscv-tdep.c (struct riscv_inferior_data): Delete.
797         (riscv_read_misa_reg): Don't cache value read into inferior data.
798         (riscv_new_inferior_data): Delete.
799         (riscv_inferior_data_cleanup): Delete.
800         (riscv_inferior_data): Delete.
801         (riscv_invalidate_inferior_data): Delete.
802         (_initialize_riscv_tdep): Remove initialisation of inferior data.
803
804 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
805
806         * compile/compile-cplus-types.c
807         (compile_cplus_instance::leave_scope): Take the address of scope
808         object.
809         (compile_cplus_instance::convert_qualified_base): Compare quals
810         to 0.
811
812 2018-08-30  Keith Seitz  <keiths@redhat.com>
813
814         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
815         Use "%s" and host_address_to_string instead of "%p" in printf.
816
817 2018-08-29  Keith Seitz  <keiths@redhat.com>
818
819         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
820         and compile-cplus-types.c.
821         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
822         * c-lang.c (cplus_language_defn): Set C++ compile functions.
823         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
824         Declare.
825         * compile/compile-c-support.c: Include compile-cplus.h.
826         (load_libcompile): Templatize.
827         (get_compile_context): "New" function.
828         (c_get_compile_context): Use get_compile_context.
829         (cplus_get_compile_context): New function.
830         (cplus_push_user_expression, cplus_pop_user_expression)
831         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
832         (cplus_compute_program): Define new structs/functions.
833         * compile/compile-cplus-symmbols.c: New file.
834         * compile/compile-cplus-types.c: New file.
835         * compile/compile-cplus.h: New file.
836         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
837         Declare.
838         * compile/compile-object-load.c (get_out_value_type): Use
839         strncmp_iw when comparing symbol names.
840         (compile_object_load): Add mst_bss and mst_data.
841         * compile/compile.c (_initialize_compile): Remove
842         -Wno-implicit-function-declaration from `compile_args'.
843         * compile/gcc-cp-plugin.h: New file.
844         * NEWS: Mention C++ compile support and new debug options.
845
846 2018-08-29  Keith Seitz  <keiths@redhat.com>
847
848         * linespec.c (collect_info::add_symbol): Make virtual.
849         (struct symbol_searcher_collect_info): New struct.
850         (symbol_searcher::find_all_symbols): New method.
851         * symtab.h (class symbol_searcher): New class.
852
853 2018-08-29  Keith Seitz  <keiths@redhat.com>
854
855         * linespec.c (struct linespec) <function_symbols, label_symbols>:
856         Change to vector of block_symbol.  Update all users.
857         (struct collect_info) <symbols>: Likewise.
858         (collect_info::add_symbol): Take block_symbol as argument.
859         Update all callers.
860         (decode_compound_collector) <m_symbols>: Change type to vector
861         of block_symbol.  Update all users.
862         (decode_compound_collector::operator ()): Change parameter type
863         to block_symbol.
864         (find_method, find_function_symbols, find_linespec_symbols)
865         (find_label_symbols_in_block, find_label_symbols): Change symbol
866         vectors to block_symbol vectors.
867         * symtab.h (symbol_found_callback_ftype): Change parameter type to
868         block_symbol.
869
870 2018-08-29  Keith Seitz  <keiths@redhat.com>
871
872         * linespec.c (symbolp): Remove typedef and VEC definitions.
873         (bound_minimal_symbol_d): Likewise.
874
875 2018-08-29  Keith Seitz  <keiths@redhat.com>
876
877         * linespec.c (decode_compound_collector::decode_compound_collector):
878         Remove initialization for `m_symtabs'.
879         (decode_compound_collector::release_symbols): Change return type
880         to std::vector.  Update all callers.
881         (class decode_compound_collector) <m_symbols>: Change type to
882         std::vector.
883         (lookup_prefix_sym): Change return type to std::vector.  Update all
884         callers.
885         (compare_symbols): Remove.
886         (std_compare_symbols): Rename to `compare_symbols'.
887         (find_method): Change `sym_classes' parameter to std::vector.
888         Update all callers.  Use std::sort to sort sym_classes.
889         (find_linespec_symbols): Remove cleanup.
890
891 2018-08-29  Keith Seitz  <keiths@redhat.com>
892
893         * linespec.c (struct linespec) <minimal_symbols>: Change type to
894         std::vector.  Update all users.
895         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
896         (struct collect_info) <minimal_symbols>: Likewise.
897         (compare_msymbols): Return bool.  Change parameters to const
898         bound_minimal_symbol references.
899         (find_method, find_function_symbols, find_linespec_symbols): Change
900         `minsyms' parameter to std::vector.  Update all callers.
901
902 2018-08-29  Keith Seitz  <keiths@redhat.com>
903
904         * linespec.c (struct linespec) <label_symbols>: Change type to
905         std::vector.  Update all users.
906         (find_label_symbols_in_block): Change `result' parameter to
907         std::vector.  Update all callers.
908         (find_label_symbols): Return std::vector.  Update all callers.
909
910 2018-08-29  Keith Seitz  <keiths@redhat.com>
911
912         * linespec.c (struct linespec) <function_symbols>: Change type to
913         std::vector.  Update all users.
914         (struct collect_info) <function_symbols>: Likewise.
915         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
916         (std_compare_symbols): New function.
917         (find_method, find_function_symbols, find_linespec_symbols)
918         (find_label_symbols_in_block): Change `symbols' parameter to
919         std::vector.  Update all callers.
920         (find_label_symbols): Likewise for `function_symbols' and
921         `label_funcs_ret'.
922
923 2018-08-29  Keith Seitz  <keiths@redhat.com>
924
925         * linespec.c (symtab_vector_up): Define.
926         (struct linespec) <file_symtabs>: Change type to std::vector *.
927         Update all uses.
928         (struct collect_info) <file_symtabs>: Likewise.
929         (collect_symtabs_from_filename): Return symtab_vector_up.
930         Update all callers.
931         (decode_objc): Remove cleanup.
932         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
933         (symtab_collector::release_symtabs): Return symtab_vector_up.
934         Update all callers.
935         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
936         Update all users.
937         (collect_symtabs_from_filename, symtabs_from_filename): Return
938         symtab_vector_up.  Update all callers.
939
940 2018-08-29  Tom Tromey  <tom@tromey.com>
941
942         * csky-tdep.c (csky_analyze_prologue): Use
943         core_addr_to_string_nz.
944
945 2018-08-29  Tom Tromey  <tom@tromey.com>
946
947         * windows-nat.c (struct xlate_exception) <them>: Change type to
948         DWORD.
949         (xlate): Fix formatting.  Remove last entry.
950         (struct xlate_exception, xlate): Comment out.
951         (windows_nat_target::resume): Use ranged for.
952
953 2018-08-29  Jim Wilson  <jimw@sifive.com>
954
955         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
956         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
957         of NT_PRFPREG.
958         (riscv_linux_nat_target::store_registers): Likewise.
959
960 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
961
962         PR gdb/23555
963         PR gdb/23558
964         * gnulib/aclocal.m4: Regenerate.
965         * gnulib/config.in: Regenerate.
966         * gnulib/configure: Regenerate.
967         * gnulib/import/Makefile.am: Update.
968         * gnulib/import/Makefile.in: Update.
969         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
970         * gnulib/import/_Noreturn.h: ... this.
971         * gnulib/import/alloca.in.h: Update.
972         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
973         * gnulib/import/arg-nonnull.h: ... this.
974         * gnulib/import/assure.h: Update.
975         * gnulib/import/at-func.c: Update.
976         * gnulib/import/basename-lgpl.c: Update.
977         * gnulib/import/extra/snippet/c++defs.h: Rename to...
978         * gnulib/import/c++defs.h: ... this.
979         * gnulib/import/canonicalize-lgpl.c: Update.
980         * gnulib/import/cdefs.h: Update.
981         * gnulib/import/chdir-long.c: Update.
982         * gnulib/import/chdir-long.h: Update.
983         * gnulib/import/cloexec.c: Update.
984         * gnulib/import/cloexec.h: Update.
985         * gnulib/import/close.c: Update.
986         * gnulib/import/closedir.c: Update.
987         * gnulib/import/config.charset: Update.
988         * gnulib/import/dirent-private.h: Update.
989         * gnulib/import/dirent.in.h: Update.
990         * gnulib/import/dirfd.c: Update.
991         * gnulib/import/dirname-lgpl.c: Update.
992         * gnulib/import/dirname.h: Update.
993         * gnulib/import/dosname.h: Update.
994         * gnulib/import/dup-safer-flag.c: Update.
995         * gnulib/import/dup-safer.c: Update.
996         * gnulib/import/dup.c: Update.
997         * gnulib/import/dup2.c: Update.
998         * gnulib/import/errno.in.h: Update.
999         * gnulib/import/error.c: Update.
1000         * gnulib/import/error.h: Update.
1001         * gnulib/import/exitfail.c: Update.
1002         * gnulib/import/exitfail.h: Update.
1003         * gnulib/import/extra/update-copyright: Update.
1004         * gnulib/import/fchdir.c: Update.
1005         * gnulib/import/fcntl.c: Update.
1006         * gnulib/import/fcntl.in.h: Update.
1007         * gnulib/import/fd-hook.c: Update.
1008         * gnulib/import/fd-hook.h: Update.
1009         * gnulib/import/fd-safer-flag.c: Update.
1010         * gnulib/import/fd-safer.c: Update.
1011         * gnulib/import/fdopendir.c: Update.
1012         * gnulib/import/filename.h: Update.
1013         * gnulib/import/filenamecat-lgpl.c: Update.
1014         * gnulib/import/filenamecat.h: Update.
1015         * gnulib/import/flexmember.h: Update.
1016         * gnulib/import/float+.h: Update.
1017         * gnulib/import/float.c: Update.
1018         * gnulib/import/float.in.h: Update.
1019         * gnulib/import/fnmatch.c: Update.
1020         * gnulib/import/fnmatch.in.h: Update.
1021         * gnulib/import/fnmatch_loop.c: Update.
1022         * gnulib/import/fpucw.h: Update.
1023         * gnulib/import/frexp.c: Update.
1024         * gnulib/import/frexpl.c: Update.
1025         * gnulib/import/fstat.c: Update.
1026         * gnulib/import/fstatat.c: Update.
1027         * gnulib/import/getcwd-lgpl.c: Update.
1028         * gnulib/import/getcwd.c: Update.
1029         * gnulib/import/getdtablesize.c: Update.
1030         * gnulib/import/getlogin_r.c: Update.
1031         * gnulib/import/getprogname.c: Update.
1032         * gnulib/import/getprogname.h: Update.
1033         * gnulib/import/gettext.h: Update.
1034         * gnulib/import/gettimeofday.c: Update.
1035         * gnulib/import/glob-libc.h: Update.
1036         * gnulib/import/glob.c: Update.
1037         * gnulib/import/glob.in.h: Update.
1038         * gnulib/import/glob_internal.h: Update.
1039         * gnulib/import/glob_pattern_p.c: Update.
1040         * gnulib/import/globfree.c: Update.
1041         * gnulib/import/hard-locale.c: Update.
1042         * gnulib/import/hard-locale.h: Update.
1043         * gnulib/import/intprops.h: Update.
1044         * gnulib/import/inttypes.in.h: Update.
1045         * gnulib/import/isnan.c: Update.
1046         * gnulib/import/isnand-nolibm.h: Update.
1047         * gnulib/import/isnand.c: Update.
1048         * gnulib/import/isnanl-nolibm.h: Update.
1049         * gnulib/import/isnanl.c: Update.
1050         * gnulib/import/itold.c: Update.
1051         * gnulib/import/libc-config.h: Update.
1052         * gnulib/import/limits.in.h: Update.
1053         * gnulib/import/localcharset.c: Update.
1054         * gnulib/import/localcharset.h: Update.
1055         * gnulib/import/localtime-buffer.c: Update.
1056         * gnulib/import/localtime-buffer.h: Update.
1057         * gnulib/import/lstat.c: Update.
1058         * gnulib/import/m4/00gnulib.m4: Update.
1059         * gnulib/import/m4/__inline.m4: Update.
1060         * gnulib/import/m4/absolute-header.m4: Update.
1061         * gnulib/import/m4/alloca.m4: Update.
1062         * gnulib/import/m4/builtin-expect.m4: Update.
1063         * gnulib/import/m4/canonicalize.m4: Update.
1064         * gnulib/import/m4/chdir-long.m4: Update.
1065         * gnulib/import/m4/close.m4: Update.
1066         * gnulib/import/m4/closedir.m4: Update.
1067         * gnulib/import/m4/configmake.m4: Update.
1068         * gnulib/import/m4/d-ino.m4: Update.
1069         * gnulib/import/m4/d-type.m4: Update.
1070         * gnulib/import/m4/dirent_h.m4: Update.
1071         * gnulib/import/m4/dirfd.m4: Update.
1072         * gnulib/import/m4/dirname.m4: Update.
1073         * gnulib/import/m4/double-slash-root.m4: Update.
1074         * gnulib/import/m4/dup.m4: Update.
1075         * gnulib/import/m4/dup2.m4: Update.
1076         * gnulib/import/m4/eealloc.m4: Update.
1077         * gnulib/import/m4/environ.m4: Update.
1078         * gnulib/import/m4/errno_h.m4: Update.
1079         * gnulib/import/m4/error.m4: Update.
1080         * gnulib/import/m4/exponentd.m4: Update.
1081         * gnulib/import/m4/exponentl.m4: Update.
1082         * gnulib/import/m4/extensions.m4: Update.
1083         * gnulib/import/m4/extern-inline.m4: Update.
1084         * gnulib/import/m4/fchdir.m4: Update.
1085         * gnulib/import/m4/fcntl-o.m4: Update.
1086         * gnulib/import/m4/fcntl.m4: Update.
1087         * gnulib/import/m4/fcntl_h.m4: Update.
1088         * gnulib/import/m4/fdopendir.m4: Update.
1089         * gnulib/import/m4/filenamecat.m4: Update.
1090         * gnulib/import/m4/flexmember.m4: Update.
1091         * gnulib/import/m4/float_h.m4: Update.
1092         * gnulib/import/m4/fnmatch.m4: Update.
1093         * gnulib/import/m4/fnmatch_h.m4: Update.
1094         * gnulib/import/m4/fpieee.m4: Update.
1095         * gnulib/import/m4/frexp.m4: Update.
1096         * gnulib/import/m4/frexpl.m4: Update.
1097         * gnulib/import/m4/fstat.m4: Update.
1098         * gnulib/import/m4/fstatat.m4: Update.
1099         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1100         * gnulib/import/m4/getcwd-path-max.m4: Update.
1101         * gnulib/import/m4/getcwd.m4: Update.
1102         * gnulib/import/m4/getdtablesize.m4: Update.
1103         * gnulib/import/m4/getlogin.m4: Update.
1104         * gnulib/import/m4/getlogin_r.m4: Update.
1105         * gnulib/import/m4/getpagesize.m4: Update.
1106         * gnulib/import/m4/getprogname.m4: Update.
1107         * gnulib/import/m4/gettimeofday.m4: Update.
1108         * gnulib/import/m4/glibc21.m4: Update.
1109         * gnulib/import/m4/glob.m4: Update.
1110         * gnulib/import/m4/glob_h.m4: Update.
1111         * gnulib/import/m4/gnulib-cache.m4: Update.
1112         * gnulib/import/m4/gnulib-common.m4: Update.
1113         * gnulib/import/m4/gnulib-comp.m4: Update.
1114         * gnulib/import/m4/gnulib-tool.m4: Update.
1115         * gnulib/import/m4/hard-locale.m4: Update.
1116         * gnulib/import/m4/include_next.m4: Update.
1117         * gnulib/import/m4/inttypes-pri.m4: Update.
1118         * gnulib/import/m4/inttypes.m4: Update.
1119         * gnulib/import/m4/isnand.m4: Update.
1120         * gnulib/import/m4/isnanl.m4: Update.
1121         * gnulib/import/m4/largefile.m4: Update.
1122         * gnulib/import/m4/limits-h.m4: Update.
1123         * gnulib/import/m4/localcharset.m4: Update.
1124         * gnulib/import/m4/locale-fr.m4: Update.
1125         * gnulib/import/m4/locale-ja.m4: Update.
1126         * gnulib/import/m4/locale-zh.m4: Update.
1127         * gnulib/import/m4/localtime-buffer.m4: Update.
1128         * gnulib/import/m4/longlong.m4: Update.
1129         * gnulib/import/m4/lstat.m4: Update.
1130         * gnulib/import/m4/malloc.m4: Update.
1131         * gnulib/import/m4/malloca.m4: Update.
1132         * gnulib/import/m4/math_h.m4: Update.
1133         * gnulib/import/m4/mbrtowc.m4: Update.
1134         * gnulib/import/m4/mbsinit.m4: Update.
1135         * gnulib/import/m4/mbsrtowcs.m4: Update.
1136         * gnulib/import/m4/mbstate_t.m4: Update.
1137         * gnulib/import/m4/memchr.m4: Update.
1138         * gnulib/import/m4/memmem.m4: Update.
1139         * gnulib/import/m4/mempcpy.m4: Update.
1140         * gnulib/import/m4/memrchr.m4: Update.
1141         * gnulib/import/m4/mkdir.m4: Update.
1142         * gnulib/import/m4/mkstemp.m4: Update.
1143         * gnulib/import/m4/mmap-anon.m4: Update.
1144         * gnulib/import/m4/mode_t.m4: Update.
1145         * gnulib/import/m4/msvc-inval.m4: Update.
1146         * gnulib/import/m4/msvc-nothrow.m4: Update.
1147         * gnulib/import/m4/multiarch.m4: Update.
1148         * gnulib/import/m4/nocrash.m4: Update.
1149         * gnulib/import/m4/off_t.m4: Update.
1150         * gnulib/import/m4/onceonly.m4: Update.
1151         * gnulib/import/m4/open-cloexec.m4: Update.
1152         * gnulib/import/m4/open.m4: Update.
1153         * gnulib/import/m4/openat.m4: Update.
1154         * gnulib/import/m4/opendir.m4: Update.
1155         * gnulib/import/m4/pathmax.m4: Update.
1156         * gnulib/import/m4/rawmemchr.m4: Update.
1157         * gnulib/import/m4/readdir.m4: Update.
1158         * gnulib/import/m4/readlink.m4: Update.
1159         * gnulib/import/m4/realloc.m4: Update.
1160         * gnulib/import/m4/rename.m4: Update.
1161         * gnulib/import/m4/rewinddir.m4: Update.
1162         * gnulib/import/m4/rmdir.m4: Update.
1163         * gnulib/import/m4/save-cwd.m4: Update.
1164         * gnulib/import/m4/secure_getenv.m4: Update.
1165         * gnulib/import/m4/setenv.m4: Update.
1166         * gnulib/import/m4/signal_h.m4: Update.
1167         * gnulib/import/m4/ssize_t.m4: Update.
1168         * gnulib/import/m4/stat-time.m4: Update.
1169         * gnulib/import/m4/stat.m4: Update.
1170         * gnulib/import/m4/std-gnu11.m4: Update.
1171         * gnulib/import/m4/stdbool.m4: Update.
1172         * gnulib/import/m4/stddef_h.m4: Update.
1173         * gnulib/import/m4/stdint.m4: Update.
1174         * gnulib/import/m4/stdio_h.m4: Update.
1175         * gnulib/import/m4/stdlib_h.m4: Update.
1176         * gnulib/import/m4/strchrnul.m4: Update.
1177         * gnulib/import/m4/strdup.m4: Update.
1178         * gnulib/import/m4/strerror.m4: Update.
1179         * gnulib/import/m4/string_h.m4: Update.
1180         * gnulib/import/m4/strstr.m4: Update.
1181         * gnulib/import/m4/strtok_r.m4: Update.
1182         * gnulib/import/m4/sys_socket_h.m4: Update.
1183         * gnulib/import/m4/sys_stat_h.m4: Update.
1184         * gnulib/import/m4/sys_time_h.m4: Update.
1185         * gnulib/import/m4/sys_types_h.m4: Update.
1186         * gnulib/import/m4/tempname.m4: Update.
1187         * gnulib/import/m4/time_h.m4: Update.
1188         * gnulib/import/m4/unistd-safer.m4: Update.
1189         * gnulib/import/m4/unistd_h.m4: Update.
1190         * gnulib/import/m4/warn-on-use.m4: Update.
1191         * gnulib/import/m4/wchar_h.m4: Update.
1192         * gnulib/import/m4/wchar_t.m4: Update.
1193         * gnulib/import/m4/wctype_h.m4: Update.
1194         * gnulib/import/m4/wint_t.m4: Update.
1195         * gnulib/import/malloc.c: Update.
1196         * gnulib/import/malloc/scratch_buffer.h: Update.
1197         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1198         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1199         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1200         * gnulib/import/malloca.c: Update.
1201         * gnulib/import/malloca.h: Update.
1202         * gnulib/import/malloca.valgrind: Update.
1203         * gnulib/import/math.in.h: Update.
1204         * gnulib/import/mbrtowc.c: Update.
1205         * gnulib/import/mbsinit.c: Update.
1206         * gnulib/import/mbsrtowcs-impl.h: Update.
1207         * gnulib/import/mbsrtowcs-state.c: Update.
1208         * gnulib/import/mbsrtowcs.c: Update.
1209         * gnulib/import/memchr.c: Update.
1210         * gnulib/import/memmem.c: Update.
1211         * gnulib/import/mempcpy.c: Update.
1212         * gnulib/import/memrchr.c: Update.
1213         * gnulib/import/mkdir.c: Update.
1214         * gnulib/import/mkstemp.c: Update.
1215         * gnulib/import/msvc-inval.c: Update.
1216         * gnulib/import/msvc-inval.h: Update.
1217         * gnulib/import/msvc-nothrow.c: Update.
1218         * gnulib/import/msvc-nothrow.h: Update.
1219         * gnulib/import/open.c: Update.
1220         * gnulib/import/openat-die.c: Update.
1221         * gnulib/import/openat-priv.h: Update.
1222         * gnulib/import/openat-proc.c: Update.
1223         * gnulib/import/openat.c: Update.
1224         * gnulib/import/openat.h: Update.
1225         * gnulib/import/opendir.c: Update.
1226         * gnulib/import/pathmax.h: Update.
1227         * gnulib/import/pipe-safer.c: Update.
1228         * gnulib/import/rawmemchr.c: Update.
1229         * gnulib/import/readdir.c: Update.
1230         * gnulib/import/readlink.c: Update.
1231         * gnulib/import/realloc.c: Update.
1232         * gnulib/import/ref-add.sin: Update.
1233         * gnulib/import/ref-del.sin: Update.
1234         * gnulib/import/rename.c: Update.
1235         * gnulib/import/rewinddir.c: Update.
1236         * gnulib/import/rmdir.c: Update.
1237         * gnulib/import/same-inode.h: Update.
1238         * gnulib/import/save-cwd.c: Update.
1239         * gnulib/import/save-cwd.h: Update.
1240         * gnulib/import/scratch_buffer.h: Update.
1241         * gnulib/import/secure_getenv.c: Update.
1242         * gnulib/import/setenv.c: Update.
1243         * gnulib/import/signal.in.h: Update.
1244         * gnulib/import/stat-time.c: Update.
1245         * gnulib/import/stat-time.h: Update.
1246         * gnulib/import/stat-w32.c: Update.
1247         * gnulib/import/stat-w32.h: Update.
1248         * gnulib/import/stat.c: Update.
1249         * gnulib/import/stdbool.in.h: Update.
1250         * gnulib/import/stddef.in.h: Update.
1251         * gnulib/import/stdint.in.h: Update.
1252         * gnulib/import/stdio.in.h: Update.
1253         * gnulib/import/stdlib.in.h: Update.
1254         * gnulib/import/str-two-way.h: Update.
1255         * gnulib/import/strchrnul.c: Update.
1256         * gnulib/import/strdup.c: Update.
1257         * gnulib/import/streq.h: Update.
1258         * gnulib/import/strerror-override.c: Update.
1259         * gnulib/import/strerror-override.h: Update.
1260         * gnulib/import/strerror.c: Update.
1261         * gnulib/import/string.in.h: Update.
1262         * gnulib/import/stripslash.c: Update.
1263         * gnulib/import/strnlen1.c: Update.
1264         * gnulib/import/strnlen1.h: Update.
1265         * gnulib/import/strstr.c: Update.
1266         * gnulib/import/strtok_r.c: Update.
1267         * gnulib/import/sys_stat.in.h: Update.
1268         * gnulib/import/sys_time.in.h: Update.
1269         * gnulib/import/sys_types.in.h: Update.
1270         * gnulib/import/tempname.c: Update.
1271         * gnulib/import/tempname.h: Update.
1272         * gnulib/import/time.in.h: Update.
1273         * gnulib/import/unistd--.h: Update.
1274         * gnulib/import/unistd-safer.h: Update.
1275         * gnulib/import/unistd.in.h: Update.
1276         * gnulib/import/unsetenv.c: Update.
1277         * gnulib/import/verify.h: Update.
1278         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1279         * gnulib/import/wchar.in.h: Update.
1280         * gnulib/import/wctype.in.h: Update.
1281         * gnulib/import/xalloc-oversized.h: Update.
1282         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1283         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1284
1285 2018-08-16  Gary Benson <gbenson@redhat.com>
1286
1287         PR gdb/13000:
1288         * gdb/main.c (captured_main_1): Exit with nonzero status
1289         in batch mode if the last command to be executed failed.
1290         * NEWS: Mention the above.
1291
1292 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
1293
1294         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
1295         end of warning message.
1296
1297 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
1298
1299         PR gdb/22943:
1300         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
1301         (aarch64_extract_return_value): Use
1302         aapcs_is_vfp_call_or_return_candidate.
1303         (aarch64_return_in_memory): Likewise.
1304         (aarch64_store_return_value): Likewise.
1305
1306 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
1307
1308         * aarch64-tdep.c
1309         (aapcs_is_vfp_call_or_return_candidate): Make static
1310         (pass_in_v_or_stack): Remove function.
1311         (pass_in_v_vfp_candidate): New function.
1312         (aarch64_push_dummy_call): Check for float register candidates.
1313
1314 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
1315
1316         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
1317         (aapcs_is_vfp_call_or_return_candidate_1): New function.
1318         (aapcs_is_vfp_call_or_return_candidate): Likewise.
1319
1320 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
1321
1322         PR build/23399
1323         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
1324         (struct ipa_sym_addresses): Rename to...
1325         (struct ipa_sym_addresses_common): ... this.
1326         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
1327
1328 2018-08-28  Tom Tromey  <tom@tromey.com>
1329
1330         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
1331         (token_fifo): Now a std::vector.
1332         (yylex, c_parse): Update.
1333         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
1334         (token_fifo): Now a std::vector.
1335         (yylex, d_parse): Update.
1336         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
1337         (token_fifo): Now a std::vector.
1338         (yylex, go_parse): Update.
1339
1340 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
1341
1342         * parser-defs.h (struct type_stack) <elements>: Change type to
1343         std::vector<union type_stack_elt>.
1344         <depth, size>: Remove.
1345         * parse.c (parse_exp_in_context_1): Adjust.
1346         (type_stack_reserve): Remove.
1347         (check_type_stack_depth): Remove.
1348         (insert_into_type_stack): Adjust to std::vector.
1349         (insert_type): Likewise.
1350         (push_type): Likewise.
1351         (push_type_int): Likewise.
1352         (insert_type_address_space): Likewise.
1353         (pop_type): Likewise.
1354         (pop_type_int): Likewise.
1355         (pop_typelist): Likewise.
1356         (pop_type_stack): Likewise.
1357         (append_type_stack): Likewise.
1358         (push_type_stack): Likewise.
1359         (get_type_stack): Likewise.
1360         (type_stack_cleanup): Likewise.
1361         (push_typelist): Likewise.
1362         (follow_types): Likewise.
1363         (_initialize_parse): Likewise.
1364
1365 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1366
1367         * NEWS: Mention csky target.
1368
1369 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
1370             Hafiz Abid Qadeer  <abidh@codesourcery.com>
1371             Don Breazeal  <donb@codesourcery.com>
1372
1373         * csky-linux-tdep.c: New file.
1374         * csky-tdep.c: Likewise.
1375         * csky-tdep.h: Likewise.
1376         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
1377         csky-tdep.o.
1378         (HFILES_NO_SRCDIR): Add csky-tdep.h.
1379         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
1380         * configure.tgt: Add csky support.
1381
1382 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
1383
1384         * python/py-framefilter.c (py_print_frame): Print frame architecture
1385         when printing on an MI output.
1386
1387 2018-08-27  Tom Tromey  <tom@tromey.com>
1388
1389         PR build/23087:
1390         * configure: Rebuild.
1391         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
1392
1393 2018-08-27  Tom Tromey  <tom@tromey.com>
1394
1395         * aarch64-linux-tdep.c
1396         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
1397         casts to int.
1398
1399 2018-08-27  Tom Tromey  <tom@tromey.com>
1400
1401         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
1402         unsigned.
1403         (ppc64_standard_linkage1, ppc64_standard_linkage2)
1404         (ppc64_standard_linkage3, ppc64_standard_linkage4)
1405         (ppc64_standard_linkage5, ppc64_standard_linkage6)
1406         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
1407         unsigned.
1408
1409 2018-08-27  Tom Tromey  <tom@tromey.com>
1410
1411         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
1412         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
1413
1414 2018-08-27  Tom Tromey  <tom@tromey.com>
1415
1416         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
1417         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
1418         ULONGEST_MAX.
1419         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
1420         ULONGEST_MAX.
1421         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
1422         ULONGEST_MAX.
1423         * sparc-linux-tdep.c (sparc32_linux_sigframe)
1424         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
1425         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
1426         ULONGEST_MAX.
1427         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
1428         (ppc64_linux_sigaction_tramp_frame)
1429         (ppc32_linux_sighandler_tramp_frame)
1430         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
1431         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
1432         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
1433         * mn10300-linux-tdep.c (am33_linux_sigframe)
1434         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
1435         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
1436         * mips-linux-tdep.c (mips_linux_o32_sigframe)
1437         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
1438         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
1439         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
1440         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
1441         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
1442         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
1443         * microblaze-linux-tdep.c
1444         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
1445         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
1446         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
1447         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
1448         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
1449         * common/common-types.h (ULONGEST_MAX): New define.
1450         (CORE_ADDR_MAX): Fix formatting.
1451         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
1452         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
1453         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
1454         (arm_linux_rt_sigreturn_tramp_frame)
1455         (arm_eabi_linux_sigreturn_tramp_frame)
1456         (arm_eabi_linux_rt_sigreturn_tramp_frame)
1457         (thumb2_eabi_linux_sigreturn_tramp_frame)
1458         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
1459         (arm_linux_restart_syscall_tramp_frame)
1460         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
1461         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
1462         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
1463         ULONGEST_MAX.
1464         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
1465
1466 2018-08-27  Tom Tromey  <tom@tromey.com>
1467
1468         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
1469         CORE_ADDR_MAX.
1470         * mips-tdep.c (mips_deal_with_atomic_sequence)
1471         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
1472         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
1473         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
1474         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
1475         CORE_ADDR_MAX.
1476         * aarch64-tdep.c (aarch64_software_single_step): Use
1477         CORE_ADDR_MAX.
1478
1479 2018-08-27  Tom Tromey  <tom@tromey.com>
1480
1481         * linespec.c (complete_linespec_component): Add cast to "char".
1482         * completer.c (completion_tracker::build_completion_result): Add
1483         cast to "char".
1484
1485 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
1486
1487         * solist.h (struct solist, struct target_so_ops): Fix
1488         indentation.
1489
1490 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
1491
1492         * ada-tasks.c (ada_task_info_s): Remove typedef.
1493         (DEF_VEC_O(ada_task_info_s)): Remove.
1494         (struct ada_tasks_inferior_data): Initialize fields.
1495         <task_list>: Make an std::vector.
1496         (get_ada_tasks_inferior_data): Allocate with new.
1497         (ada_get_task_number): Adjust.
1498         (get_task_number_from_id): Likewise.
1499         (valid_task_id): Likewise.
1500         (ada_get_task_info_from_ptid): Likewise.
1501         (iterate_over_live_ada_tasks): Likewise.
1502         (add_ada_task): Likewise.
1503         (read_known_tasks): Likewise.
1504         (ada_build_task_list): Likewise.
1505         (print_ada_task_info): Likewise.
1506         (info_task): Likewise.
1507         (task_command_1): Likewise.
1508
1509 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
1510
1511         * ada-lang.c (add_angle_brackets): Return std::string.
1512
1513 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
1514
1515         * python/py-threadevent.c (py_get_event_thread): Initialize
1516         pythread.
1517
1518 2018-08-24  Pedro Alves  <palves@redhat.com>
1519
1520         * python/py-bpevent.c (create_breakpoint_event_object): Use
1521         copy-initialization.
1522         * python/py-continueevent.c (emit_continue_event): Use
1523         copy-initialization.
1524         * python/py-exitedevent.c (create_exited_event_object): Return a
1525         gdbpy_ref<>.
1526         (emit_exited_event): Use copy-initialization.
1527         * python/py-inferior.c (python_new_inferior)
1528         (python_inferior_deleted, add_thread_object): Use
1529         copy-initialization.
1530         * python/py-infevents.c (create_inferior_call_event_object)
1531         (create_register_changed_event_object)
1532         (create_memory_changed_event_object): Return a gdbpy_ref<>.
1533         (emit_inferior_call_event, emit_memory_changed_event)
1534         (emit_register_changed_event): Use copy-initialization.
1535         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1536         Return a gdbpy_ref<>.
1537         (emit_new_objfile_event): Use copy-initialization.
1538         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
1539         (emit_clear_objfiles_event): Use copy-initialization.
1540         * python/py-signalevent.c (create_signal_event_object): Use
1541         copy-initialization.
1542         * python/py-threadevent.c (create_thread_event_object): Use
1543         copy-initialization.
1544
1545 2018-08-24  Pedro Alves  <palves@redhat.com>
1546             Simon Marchi  <simon.marchi@ericsson.com>
1547
1548         PR gdb/23379
1549         * python/py-continueevent.c: Include "gdbthread.h".
1550         (create_continue_event_object): Add intro comment.  Add 'ptid'
1551         parameter.  Use it to find thread to pass to
1552         create_thread_event_object.
1553         (emit_continue_event): Pass PTID down to
1554         create_continue_event_object.
1555         * python/py-event.h (py_get_event_thread): Declare.
1556         (create_thread_event_object): Remove default from 'thread'
1557         parameter.
1558         * python/py-stopevent.c (create_stop_event_object): Use
1559         py_get_event_thread.
1560         * python/py-threadevent.c (get_event_thread): Rename to ...
1561         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
1562         and use it to find the thread.
1563         (create_thread_event_object): Assert that THREAD isn't null.
1564         Don't find the event thread here.
1565
1566 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
1567
1568         * block.h (blockrange, blockranges): New struct declarations.
1569         (struct block): Add new field named `ranges'.
1570         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
1571         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
1572         macros for accessing ranges in struct block.
1573         (make_blockranges): New declaration.
1574         block.c (make_blockranges): New function.
1575         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
1576         for block.
1577         * symtab.h (find_pc_partial_function): Add new parameter `block'.
1578         * blockframe.c (cache_pc_function_block): New static global.
1579         (clear_pc_function_cache): Clear cache_pc_function_block.
1580         (find_pc_partial_function): Move comment to symtab.h.  Add
1581         support for non-contiguous blocks.
1582         * cli/cli-cmds.c (block.h): Include.
1583         (print_disassembly): Handle printing of non-contiguous blocks.
1584         (disassemble_current_function): Likewise.
1585         (disassemble_command): Likewise.
1586
1587         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
1588         BLOCK_START.
1589         * blockframe.c (get_pc_function_start): Likewise.
1590         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
1591         (gcc_symbol_address): Likewise.
1592         * compile/compile-object-run.c (compile_object_run): Likewise.
1593         * compile/compile.c (get_expr_block_and_pc): Likewise.
1594         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
1595         (func_addr_to_tail_call_list): Likewise.
1596         * findvar.c (default_read_var_value): Likewise.
1597         * inline-frame.c (inline_frame_this_id): Likewise.
1598         (skip-inline_frames): Likewise.
1599         * infcmd.c (until_next_command): Likewise.
1600         * linespec.c (convert_linespec_to_sals): Likewise.
1601         * parse.c (parse_exp_in_context_1): Likewise.
1602         * printcmd.c (build_address_symbolic): likewise.
1603         (info_address_command): Likewise.
1604         symtab.c (find_function_start_sal): Likewise.
1605         (skip_prologue_sal): Likewise.
1606         (find_function_alias_target): Likewise.
1607         (find_gnu_ifunc): Likewise.
1608         * stack.c (find_frame_funname): Likewise.
1609         * symtab.c (fixup_symbol_section): Likewise.
1610         (find_function_start_sal): Likewise.
1611         (skip_prologue_sal): Likewsie.
1612         (find_function_alias_target): Likewise.
1613         (find_gnu_ifunc): Likewise.
1614         * tracepoint.c (info_scope_command): Likewise.
1615         * value.c (value_fn_field): Likewise.
1616
1617         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
1618         in place of find_pc_partial_function.
1619         * blockframe.c (find_function_entry_range_from_pc): New function.
1620         * symtab.h (find_function_entry_range_from_pc): Declare and document.
1621         * objfiles.c (objfile_relocate1): Relocate start and end addresses
1622         for each range in a block.
1623
1624
1625 2018-08-23  Xavier Roirand  <roirand@adacore.com>
1626
1627         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
1628         incrementation.
1629
1630 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1631
1632         * solib-svr4.c (read_program_headers_from_bfd): Return
1633         gdb::optional<gdb::byte_vector>.
1634         (svr4_exec_displacement): Adjust.
1635
1636 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1637
1638         * solib-svr4.c (read_program_header): Return
1639         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
1640         (find_program_interpreter): Return
1641         gdb::optional<gdb::byte_vector>.
1642         (scan_dyntag_auxv): Adjust.
1643         (enable_break): Adjust.
1644         (svr4_exec_displacement): Adjust.
1645
1646 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1647
1648         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
1649         * inf-child.c (inf_child_target::terminal_save_inferior): New.
1650
1651 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1652
1653         * guile/scm-string.c (gdbscm_scm_from_printf): Use
1654         string_vprintf.
1655         * guile/scm-utils.c (gdbscm_printf): Likewise.
1656         * serial.c (serial_printf): Likewise.
1657         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
1658
1659 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
1660
1661         * stack.c (print_frame): Print frame architecture when printing on
1662         an MI output.
1663         * NEWS: Mention new "arch" attribute in frame output.
1664
1665 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
1666
1667         * arch/aarch64.h (aarch64_regnum): Update comment.
1668
1669 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
1670
1671         * NEWS: Add SVE to 8.2 section.
1672
1673 2018-08-21  Pedro Alves  <palves@redhat.com>
1674
1675         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
1676         out from gdbscm_parse_function_args.
1677         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
1678         gdbscm_parse_function_args_1.
1679
1680 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
1681
1682         PR gdb/17816
1683         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
1684         operator.
1685
1686 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
1687
1688         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
1689
1690 2018-08-19  Michael Spang  <spang@google.com>
1691
1692         PR gdb/11786
1693         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
1694         for PT_TLS segments.
1695
1696 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
1697
1698         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
1699         dwarf_variable_value.
1700         * dwarf2-frame.c (class dwarf_expr_executor):
1701         Add override for dwarf_variable_value.
1702         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
1703         (class symbol_needs_eval_context): Likewise.
1704         (indirect_synthetic_pointer): Add forward declaration.
1705         (sect_variable_value): New function.
1706         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
1707         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
1708         for DW_OP_GNU_variable_value.
1709
1710 2018-08-16  Tom Tromey  <tom@tromey.com>
1711
1712         * top.c (read_command_file): Update.
1713         (command_line_input): Remove "repeat" argument.
1714         * ada-lang.c (get_selections): Update.
1715         * linespec.c (decode_line_2): Update.
1716         * defs.h (command_line_input): Remove argument.
1717         * cli/cli-script.c (read_next_line): Update.
1718         * python/py-gdb-readline.c: Update.
1719
1720 2018-08-17  Tom Tromey  <tom@tromey.com>
1721
1722         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
1723         command_line_input.
1724
1725 2018-08-15  Tom Tromey  <tom@tromey.com>
1726
1727         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
1728
1729 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
1730
1731         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
1732         If used, use find_pc_partial_function to find address range
1733         to disassemble.
1734         * mi/mi-main.c (mi_cmd_list_features): Report
1735         "data-disassemble-a-option" feature.
1736         * NEWS: Mention new -data-disassemble option -a.
1737
1738 2018-08-13  Tom Tromey  <tom@tromey.com>
1739
1740         * common/common-defs.h (_FORTIFY_SOURCE): Define.
1741
1742 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1743
1744         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
1745         (aarch64_linux_collect_sve_regset): Likewise.
1746         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
1747         * regcache.h (regcache_map_entry_size): New function.
1748
1749 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1750
1751         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
1752         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
1753         (SVE_HEADER_VL_LENGTH): Likewise.
1754         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
1755         (SVE_HEADER_FLAGS_LENGTH): Likewise.
1756         (SVE_HEADER_RESERVED_LENGTH): Likewise.
1757         (SVE_HEADER_SIZE_OFFSET): Likewise.
1758         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
1759         (SVE_HEADER_VL_OFFSET): Likewise.
1760         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
1761         (SVE_HEADER_FLAGS_OFFSET): Likewise.
1762         (SVE_HEADER_RESERVED_OFFSET): Likewise.
1763         (SVE_HEADER_SIZE): Likewise.
1764         (aarch64_linux_core_read_vq): Add function.
1765         (aarch64_linux_core_read_description): Check for SVE section.
1766
1767 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1768
1769         * aarch64-fbsd-tdep.c
1770         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
1771         collect_size.
1772         * aarch64-linux-tdep.c
1773         (aarch64_linux_iterate_over_regset_sections): Likewise.
1774         * alpha-linux-tdep.c
1775         (alpha_linux_iterate_over_regset_sections):
1776         * alpha-nbsd-tdep.c
1777         (alphanbsd_iterate_over_regset_sections): Likewise.
1778         * amd64-fbsd-tdep.c
1779         (amd64fbsd_iterate_over_regset_sections): Likewise.
1780         * amd64-linux-tdep.c
1781         (amd64_linux_iterate_over_regset_sections): Likewise.
1782         * arm-bsd-tdep.c
1783         (armbsd_iterate_over_regset_sections): Likewise.
1784         * arm-fbsd-tdep.c
1785         (arm_fbsd_iterate_over_regset_sections): Likewise.
1786         * arm-linux-tdep.c
1787         (arm_linux_iterate_over_regset_sections): Likewise.
1788         * corelow.c (get_core_registers_cb): Likewise.
1789         (core_target::fetch_registers): Likewise.
1790         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
1791         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
1792         * gdbarch.h (void): Regenerate.
1793         * gdbarch.sh: Add supply_size and collect_size.
1794         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
1795         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
1796         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
1797         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
1798         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
1799         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
1800         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
1801         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
1802         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
1803         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
1804         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
1805         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
1806         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
1807         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
1808         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
1809         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
1810         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
1811         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
1812         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
1813         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
1814         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
1815         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
1816         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
1817         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
1818         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
1819         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
1820         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
1821         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
1822         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
1823         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
1824
1825 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
1826
1827         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
1828         with string_printf.
1829
1830 2018-08-10  Keith Seitz  <keiths@redhat.com>
1831
1832         * compile/compile-c-support.c (add_code_header, add_code_footer):
1833         Move into policy class.
1834         (c_push_user_expression, pop_user_expression_nop)
1835         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
1836         (compile_program): New host class.
1837         (c_compile_program): New typedef.
1838         (c_compute_porgram): Use c_compile_program.
1839
1840 2018-08-10  Keith Seitz  <keiths@redhat.com>
1841
1842         * compile/compile-internal.h (compile_instance::~compile_instance):
1843         Remove calls to htab_delete.
1844         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
1845         * compile.c (compile_instance::compile_instance): Initialize
1846         htab unique pointers.
1847         (compile_instance::get_cached_type, compile_instance::insert_type)
1848         (compile_instance::error_symbol_once): Update for unique_ptr.
1849
1850 2018-08-10  Keith Seitz  <keiths@redhat.com>
1851
1852         * compile/compile-c-symbols.c (struct symbol_error)
1853         (hash_symbol_error, eq_symbol_error, del_symbol_error)
1854         (compile_instance::insert_symbol_error)
1855         (compile_instance::error_symbol_once): Move to ...
1856         * compile/compile.c: ... here.
1857
1858 2018-08-10  Keith Seitz  <keiths@redhat.com>
1859
1860         * compile/compile-c-support.c (c_get_compile_context): Use `new'
1861         instead of `new_compile_instance'.
1862         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
1863         Update description.
1864         If the symbol error map is not initialized, create it.
1865         (generate_c_for_for_one_symbol): Do not check/initialize
1866         the symbol error map.
1867         * compile/compile-c-types.c (compile_c_instance): Make a class.
1868         Update all callers.
1869         (compile_instance::compile_instance): Initialize the type cache.
1870         (get_cached_type): New function.
1871         (insert_type): Update description.
1872         (compile_c_instance::m_default_cflags): Define.
1873         (convert_type): Update description.  Use get_cached_type.
1874         (delete_instance): Moved to destructor.
1875         (new_compile_instance): Moved to constructor.
1876         * compile/compile-c.h (compile_c_instance): Make class inheriting
1877         from compile_instance.
1878         <base>: Remove field.
1879         <type_map, symbol_err_map>: Move to base class.
1880         <c_plugin>: Rename to `m_plugin' and remove pointer type.
1881         * compile/compile-internal.h (compile_instance): Make class.
1882         <type_map_t, symbol_err_map_t>: Define.
1883         <fe>: Rename to `m_gcc_fe'.
1884         <scope, block, gcc_target_options>: Add `m_' prefix.
1885         <m_type_map, m_symbol_err_map>: New fields, moved from
1886         compile_c_instance.
1887         <destroy>: Remove.
1888         (convert_type, new_compile_instance): Remove.
1889         * compile/compile.c (cleanup_compile_instance): Remove.
1890         (compile_to_object): Use unique_ptr to eliminate cleanups.
1891         (compile_instance::set_print_callback, compile_instance::version)
1892         (compile_instance::set_verbose)
1893         (compile_instance::set_driver_filename)
1894         (compile_instance::set_triplet_regexp)
1895         (compile_instance::set_arguments)
1896         (compile_instance::set_source_file)
1897         (compile_instance::compile): Define.
1898
1899 2018-08-10  Keith Seitz  <keiths@redhat.com>
1900
1901         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
1902         * compile/compile-c-types.c: Define GCC_METHODN macros and include
1903         gcc-c-fe.def to define C plugin.
1904         (delete_instance): Delete `c_plugin'.
1905         (new_compile_instance): Initialize `c_plugin'.
1906         * compile/compile-c.h: Include gcc_c_plugin.h.
1907         (struct compile_c_instance) <c_plugin>: New member.
1908         * gcc-c-plugin.h: New file.
1909         Update all callers with API change.
1910
1911 2018-08-10  Keith Seitz  <keiths@redhat.com>
1912
1913         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
1914         (HFILES_NO_SRCDIR): ... to here.
1915         Add compile-internal.h and compile-c.h.
1916         * compile/compile-c-support.c: Include compile-c.h.
1917         * compile/compile-c-symbols.c: Include compile-c.h.
1918         (generate_c_for_variable_locations): Update comment.
1919         * compile/compile-c-types.c: Include compile-c.h.
1920         * compile/compile-c.h: New file -- moved C language declarations
1921         from other files here.
1922         * compile/compile-internal.h: Do not include hashtab.h or
1923         common/enum-flags.h.
1924         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
1925         (gcc_convert_symbol, gcc_symbol_address)
1926         (generate_c_for_variable_locations, c_get_mode_for_size)
1927         (c_get_range_decl_name): Definitions moved to compile-c.h.
1928         * compile/compile-loc2c.c: Include compile-c.h.
1929
1930 2018-08-10  Keith Seitz  <keiths@redhat.com>
1931
1932         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
1933         (c_symbol_substitution_name): ... this.
1934         Update all callers.
1935
1936 2018-08-10  Keith Seitz  <keiths@redhat.com>
1937
1938         * compile/compile-c-support.c (c_compute_program): Use
1939         unique_xmalloc_ptr to eliminate cleanup.
1940         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
1941         Return a unique_xmalloc_ptr and eliminate cleanup.
1942         * compile/compile-internal.h (generate_c_for_variable_locations):
1943         Return unique_xmalloc_ptr and update description.
1944
1945 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
1946
1947         * corelow.c (core_target::get_core_register_section): Rename
1948         min_size to section_min_size.
1949
1950 2018-08-09  Jim Wilson  <jimw@sifive.com>
1951
1952         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
1953         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
1954         * NEWS: Mention new GNU/Linux RISC-V target.
1955         * configure.host: Add riscv*-*-linux*.
1956         * configure.nat: Add riscv*.
1957         * configure.tgt: Add riscv*-*-linux*.
1958         * riscv-linux-nat.c: New file.
1959         * riscv-linux-tdep.c: New file.
1960
1961 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
1962
1963         * infrun.c (resume): Make static, add forward declaration.
1964         (proceed): Update header comment.
1965         * infrun.h (resume): Delete declaration.
1966
1967 2018-08-09  Tom Tromey  <tom@tromey.com>
1968
1969         * riscv-tdep.h: Minor formatting fixes.
1970
1971 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
1972
1973         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
1974         * dwarf-index-cache.c (create_dir_and_check): Likewise.
1975         (test_mkdir_recursive): Likewise.
1976         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
1977
1978 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
1979
1980         * valarith.c (value_subscripted_rvalue): If an array is not in
1981         memory, and we don't know the upper bound, then we can't know that
1982         the requested element exists or not.
1983
1984 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
1985
1986         * target.c (str_comma_list_concat_elem): Fix typo in comment.
1987         (target_options_to_string): Add comment.
1988
1989 2018-08-08  Tom Tromey  <tom@tromey.com>
1990
1991         * unittests/scoped_mmap-selftests.c: Check result of "write".
1992
1993 2018-08-08  Jim Wilson  <jimw@sifive.com>
1994
1995         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
1996         (decode_register_index_short): New.
1997         (decode_j_type_insn, decode_cj_type_insn): New.
1998         (decode_b_type_insn, decode_cb_type_insn): New.
1999         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
2000         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
2001         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
2002         is_c_sw_insn instead of is_sw_insn.
2003         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
2004         (riscv_software_single_step): New.
2005         * riscv-tdep.h (riscv_software_single_step): Declare.
2006
2007         * riscv-tdep.c (riscv_isa_xlen): Drop static.
2008         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
2009
2010 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
2011
2012         PR gdb/18050:
2013         * target.c (dispose_inferior): Don't dispose of inferiors that are
2014         already killed.
2015
2016 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
2017
2018         * remote.c (remote_target::download_tracepoint): Change char* to
2019         const char*.
2020
2021 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
2022
2023         * target.h (target_options_to_string): Return an std::string.
2024         * target.c (str_comma_list_concat_elem): Return void, use
2025         std::string.
2026         (do_option): Likewise.
2027         (target_options_to_string): Return an std::string.
2028         * linux-nat.c (linux_nat_target::wait): Adjust.
2029         * target-debug.h (target_debug_print_options): Adjust.
2030
2031 2018-08-07  Tom Tromey  <tom@tromey.com>
2032
2033         * Makefile.in (CPPFLAGS): New variable.
2034         (INTERNAL_CPPFLAGS): Use it.
2035
2036 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2037
2038         * NEWS: Mention the index cache.
2039
2040 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2041
2042         * common/pathstuff.h (get_standard_cache_dir): New.
2043         * common/pathstuff.c (get_standard_cache_dir): New.
2044         * build-id.h (build_id_to_string): New.
2045         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
2046         DEBUG_STR_SUFFIX): Move to here.
2047         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
2048         DEBUG_STR_SUFFIX): Move from there.
2049         (write_psymtabs_to_index): Make non-static, add basename
2050         parameter.  Write to temporary files, rename when done.
2051         (save_gdb_index_command): Adjust call to
2052         write_psymtabs_to_index.
2053         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
2054         field.
2055         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
2056         (get_gdb_index_contents_from_cache): New.
2057         (get_gdb_index_contents_from_cache_dwz): New.
2058         (dwarf2_initialize_objfile): Read index from cache.
2059         (dwarf2_build_psymtabs): Save to index.
2060         * dwarf-index-cache.h: New file.
2061         * dwarf-index-cache.c: New file.
2062         * dwarf-index-write.h: New file.
2063
2064 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2065
2066         * gnulib/aclocal.m4: Re-generate.
2067         * gnulib/config.in: Re-generate.
2068         * gnulib/configure: Re-generate.
2069         * gnulib/import/Makefile.am: Re-generate.
2070         * gnulib/import/Makefile.in: Re-generate.
2071         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2072         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2073         * gnulib/import/m4/mkdir.m4: New file.
2074         * gnulib/import/mkdir.c: New file.
2075         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
2076         module.
2077
2078 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2079
2080         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
2081         * common/scoped_mmap.c: New file.
2082         * common/scoped_mmap.h (destroy): New method.
2083         (~scoped_mmap, reset): Use destroy.
2084         (scoped_mmap): New move constructor.
2085         (mmap_file): New declaration.
2086         * unittests/scoped_mmap-selftests.c (test_normal,
2087         test_invalid_filename, run_tests): New functions.
2088         (_initialize_scoped_mmap_selftests): Register selftest.
2089
2090 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2091
2092         * dwarf2read.c (read_gdb_index_from_section): Rename to...
2093         (read_gdb_index_from_buffer): ... this.  Remove section
2094         parameter, add buffer parameter.
2095         (get_gdb_index_contents_ftype,
2096         get_gdb_index_contents_dwz_ftype): New typedefs.
2097         (dwarf2_read_gdb_index): Add callback parameters to get the
2098         index contents.
2099         (get_gdb_index_contents_from_section): New.
2100         (dwarf2_initialize_objfile): Update call to
2101         dwarf2_read_gdb_index.
2102
2103 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2104
2105         * common/filestuff.h (gdb_fopen_cloexec): New overload.
2106         (gdb_open_cloexec): Likewise.
2107         * nat/linux-osdata.c (command_from_pid): Use string_printf.
2108         (commandline_from_pid): Likewise.
2109         (linux_xfer_osdata_threads): Likewise.
2110         (linux_xfer_osdata_fds): Likewise.
2111         * ada-lang.c (is_package_name): Likewise.
2112         * auxv.c (procfs_xfer_auxv): Likewise.
2113         * breakpoint.c (print_one_breakpoint_location): Use
2114         uiout::field_fmt.
2115         (print_one_catch_solib): Use string_printf.
2116         * coff-pe-read.c (add_pe_exported_sym): Likewise.
2117         (add_pe_forwarded_sym): Likewise.
2118         * dwarf2read.c (create_type_unit_group): Likewise.
2119         (build_error_marker_type): Likewise.
2120         * infcall.c (get_function_name): Likewise.
2121         * valprint.c (print_converted_chars_to_obstack): Likewise.
2122         * xtensa-tdep.c (xtensa_register_type): Likewise.
2123
2124 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
2125
2126         * remote.c (remote_target::download_tracepoint): Fix format
2127         string errors.
2128
2129 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2130
2131         * tracefile.c: Include common/byte-vector.h.
2132         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
2133         with trace_regblock_size if needed.  Update uses of buf.
2134
2135 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2136
2137         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
2138         std::vector<unsigned char>.
2139         * tracepoint.c (collection_list::collection_list): Remove
2140         m_regs_mask initializer from initializer list.  Resize
2141         m_regs_mask using the largest remote register number.
2142         (collection_list::add_remote_register): Remove size check on
2143         m_regs_mask.  Use at to access element.
2144         (collection_list::stringify): Change type of temp_buf to
2145         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
2146         stringify the register mask.  Use pack_hex_byte for the register
2147         mask.
2148
2149 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2150
2151         * tracepoint.h (class collection_list) <add_register>: Remove.
2152         <add_remote_register, add_ax_registers, add_local_register>:
2153         Declare.
2154         <add_memrange>: Add scope parameter.
2155         * tracepoint.c (encode_actions_1): Likewise.
2156         (collection_list::add_register): Rename to ...
2157         (collection_list::add_remote_register): ... this.  Update
2158         comment.
2159         (collection_list::add_ax_registers, add_local_register): New
2160         methods.
2161         (collection_list::add_memrange): Add scope parameter.  Call
2162         add_local_register instead of add_register.
2163         (finalize_tracepoint_aexpr): New function.
2164         (collection_list::collect_symbol): Update calls to add_memrange.
2165         Call add_local_register instead of add_register.  Call
2166         add_ax_registers.  Call finalize_tracepoint_aexpr.
2167         (encode_actions_1): Get remote regnos for $reg action.  Call
2168         add_remote_register, add_ax_registers, and add_local_register.
2169         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
2170         (validate_actionline): Call finalize_tracepoint_aexpr.
2171
2172 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2173
2174         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
2175         Replace array buf with gdb::char_vector buf, of size
2176         get_remote_packet_size ().  Replace references to buf and
2177         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
2178         and xsnprintf with snprintf.  Raise errors if the buffer is too
2179         small.
2180
2181 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2182
2183         * remote.c (remote_target::download_tracepoint): Fix the has_more
2184         predicate in the QTDP action list iteration.
2185
2186 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2187
2188         * remote.c (remote_target::download_tracepoint): Fix indentation
2189         in for block.
2190
2191 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2192
2193         * proc-api.c (_initialize_proc_api): Remove c, unused.
2194         * procfs.c (procfs_init_inferior): Remove signals, unused.
2195         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
2196         unused.
2197
2198 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
2199             Andrew Burgess  <andrew.burgess@embecosm.com>
2200
2201         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
2202         'W_STOPCODE (0)' as this could be ambiguous.
2203
2204 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
2205
2206         * ser-tcp.c (net_open): Fix thinko when deciding whether to
2207         disable TCP's Nagle algorithm (use "ai_protocol" instead of
2208         "ai_socktype").
2209
2210 2018-08-02  Tom Tromey  <tom@tromey.com>
2211
2212         PR symtab/16842.
2213         * dwarf2read.c (read_func_scope): Set symtab on template parameter
2214         symbols.
2215         (process_structure_scope): Likewise.
2216
2217 2018-08-02  Xavier Roirand  <roirand@adacore.com>
2218
2219         PR gdb/22629:
2220         * darwin-nat.c (darwin_kill_inferior): Fix handling of
2221         kill inferior.
2222
2223 2018-08-02  Tom Tromey  <tom@tromey.com>
2224
2225         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
2226         (darwin_suspend_inferior, darwin_resume_inferior)
2227         (darwin_decode_notify_message, darwin_resume_inferior_threads)
2228         (darwin_check_new_threads): Check result of get_darwin_inferior.
2229
2230 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
2231
2232         GDB 8.1.1 released.
2233
2234 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
2235
2236         * varobj.c (varobj_get_path_expr_parent): Report an error if
2237         parent is a dynamic varobj.
2238
2239 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
2240
2241         * gnulib/aclocal.m4: Re-generate.
2242         * gnulib/config.in: Re-generate.
2243         * gnulib/configure: Re-generate.
2244         * gnulib/import/Makefile.in: Re-generate.
2245         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2246         * gnulib/import/m4/onceonly.m4: Re-generate.
2247
2248 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
2249
2250         * target-descriptions.c (struct xml_test_tdesc): New.
2251         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
2252         (record_xml_tdesc): Update.
2253         (maintenance_check_xml_descriptions): Update.
2254         * target-descriptions.h (record_xml_tdesc): Update comment.
2255
2256 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2257
2258         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
2259         checking array bounds are defined.
2260
2261 2018-07-30  Tom Tromey  <tom@tromey.com>
2262
2263         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
2264         irreflexivity violation.
2265
2266 2018-07-30  Tom Tromey  <tom@tromey.com>
2267
2268         * cli/cli-decode.c (lookup_cmd): Remove lint code.
2269         * value.c (unpack_long): Remove lint code.
2270         * valops.c (value_ind): Remove lint code.
2271         * valarith.c (value_x_binop, value_x_unop, value_equal)
2272         (value_pos): Remove lint code.
2273
2274 2018-07-28  Tom de Vries  <tdevries@suse.de>
2275
2276         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
2277         with undefined upper bound as <optimized out>.
2278
2279 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
2280
2281         * gcore.in: Rename variable "name" to "prefix".  Expand
2282         "usage" text.
2283
2284 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
2285
2286         * windows-nat.c (windows_nat_target::create_inferior): Update to
2287         call close() in global namespace.
2288
2289 2018-07-26  Tom Tromey  <tom@tromey.com>
2290
2291         * dwarf-index-write.c (add_address_entry): Don't add objfile
2292         offsets.
2293         * dbxread.c (find_stab_function): Rename from
2294         find_stab_function_addr.  Return a bound_minimal_symbol.
2295         (read_dbx_symtab): Use raw_text_low, raw_text_high.
2296         Don't add objfile offsets.
2297         (end_psymtab): Use raw_text_low, raw_text_high,
2298         MSYMBOL_VALUE_RAW_ADDRESS.
2299         (read_ofile_symtab): Update.
2300         (process_one_symbol): Update.
2301         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
2302         offsets.
2303         (dw2_relocate): Remove.
2304         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
2305         searching addrmap.
2306         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
2307         Update.
2308         (process_psymtab_comp_unit_reader, add_partial_symbol)
2309         (add_partial_subprogram, dwarf2_ranges_read): Update.
2310         (load_partial_dies): Update.
2311         (add_address_entry): Don't add objfile offsets.
2312         (dwarf2_build_include_psymtabs): Update.
2313         (create_addrmap_from_aranges): Don't add objfile offsets.
2314         (dw2_find_pc_sect_compunit_symtab): Update.
2315         * mdebugread.c (parse_symbol): Don't add objfile offsets.
2316         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
2317         Update.
2318         (parse_partial_symbols): Don't add objfile offsets.  Use
2319         raw_text_low, raw_text_high.  Update.
2320         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
2321         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
2322         or call 'relocate' quick function.  Clear psymbol_map.
2323         * psympriv.h (struct partial_symbol) <address>: Add section
2324         offset.
2325         <set_unrelocated_address>: Rename from set_address.
2326         <raw_text_low, raw_text_high>: New methods.
2327         <text_low, text_high>: Add objfile parameter.
2328         (add_psymbol_to_bcache): Add 'section' parameter.  Call
2329         set_unrelocated_address.
2330         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
2331         (find_pc_psymbol): Update.
2332         (fixup_psymbol_section, relocate_psymtabs): Remove.
2333         (dump_psymtab, psym_functions): Update.
2334         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
2335         parameter.
2336         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
2337         (start_psymtab_common): Update.
2338         * symfile-debug.c (debug_qf_relocate): Remove.
2339         (debug_sym_quick_functions): Update.
2340         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
2341         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
2342         Update.
2343
2344 2018-07-26  Tom Tromey  <tromey@redhat.com>
2345
2346         * dbxread.c (end_psymtab): Use text_high_valid and
2347         text_low_valid.
2348         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
2349         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
2350         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
2351         Update comment.
2352         <text_low_valid, text_high_valid>: New fields.
2353         <set_text_low, set_text_high>: Update.
2354         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
2355
2356 2018-07-26  Tom Tromey  <tom@tromey.com>
2357
2358         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
2359         Update.
2360         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
2361         textlow and texthigh fields.
2362         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
2363         Update.
2364         * mdebugread.c (parse_lines, parse_partial_symbols)
2365         (psymtab_to_symtab_1): Update.
2366         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
2367         Rename fields.  Update comment.  Now private.
2368         <text_low, text_high, set_text_low, set_text_high>: New methods.
2369         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
2370         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
2371         (start_psymtab_common, maintenance_info_psymtabs)
2372         (maintenance_check_psymtabs): Update.
2373         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
2374         texthigh fields.
2375         (scan_xcoff_symtab): Update.
2376
2377 2018-07-26  Tom Tromey  <tromey@redhat.com>
2378
2379         * psympriv.h (struct partial_symbol) <unrelocated_address,
2380         address, set_address>: New methods.
2381         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
2382         (fixup_psymbol_section, relocate_psymtabs): Update.
2383         (print_partial_symbols): Add 'objfile' parameter.  Update.
2384         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
2385         Update.
2386
2387 2018-07-26  Tom Tromey  <tom@tromey.com>
2388
2389         * dwarf-index-write.c (write_psymbols, debug_names::insert)
2390         (debug_names::write_psymbols): Update.
2391         * psympriv.h (struct partial_symbol): Derive from
2392         general_symbol_info.
2393         <obj_section>: New method.
2394         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
2395         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
2396         (find_pc_sect_psymbol, fixup_psymbol_section)
2397         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
2398         (print_partial_symbols, recursively_search_psymtabs)
2399         (compare_psymbols, psymbol_hash, psymbol_compare)
2400         (add_psymbol_to_bcache, maintenance_check_psymtabs)
2401         (psymbol_name_matches, psym_fill_psymbol_map): Update.
2402
2403 2018-07-26  Tom Tromey  <tromey@redhat.com>
2404
2405         * dbxread.c (end_psymtab): Remove dead code.
2406
2407 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2408
2409         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
2410         DWARF unwinders are disabled.
2411         * dwarf2-frame.c: Add dwarf2read.h include.
2412         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
2413         disabled.
2414         (dwarf2_frame_unwinders_enabled_p): Define.
2415         (show_dwarf_unwinders_enabled_p): New function.
2416         (_initialize_dwarf2_frame): Register switch to control DWARF
2417         unwinder use.
2418         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
2419         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
2420         (show_dwarf_cmdlist): Remove static keyword.
2421         * dwarf2read.h (set_dwarf_cmdlist): Declare.
2422         (show_dwarf_cmdlist): Declare.
2423         * NEWS: Document new feature.
2424
2425 2018-07-26  Tom de Vries  <tdevries@suse.de>
2426
2427         PR breakpoints/23366
2428         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
2429
2430 2018-07-26  Tom de Vries  <tdevries@suse.de>
2431
2432         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
2433         DW_AT_count can't be translated to a dynamic prop.
2434
2435 2018-07-25  Tom de Vries  <tdevries@suse.de>
2436
2437         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
2438         try/catch.
2439
2440 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
2441
2442         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
2443
2444 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
2445
2446         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
2447
2448 2018-07-24  Keith Seitz  <keiths@redhat.comt
2449
2450         PR symtab/23010
2451         * dwarf2read.c (dw2_add_symbol_to_list): New function.
2452         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
2453         instead of add_symbol_to_list.
2454         (read_file_scope): Call prepare_one_comp_unit before reading
2455         any other DIEs.
2456
2457 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
2458
2459         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
2460
2461 2018-07-24  Tom Tromey  <tom@tromey.com>
2462
2463         * utils.c (malloc, realloc, free): Don't declare.
2464         * configure, config.in: Rebuild.
2465         * configure.ac: Don't check for declarations of free, malloc, or
2466         realloc.
2467
2468 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
2469
2470         * aarch64-linux-nat.c
2471         (aarch64_linux_nat_target::stopped_data_address): Remove unused
2472         variable.
2473         * arm-linux-nat.c (fetch_regs): Likewise.
2474         (store_regs): Likewise.
2475         (fetch_vfp_regs): Likewise.
2476         (store_vfp_regs): Likewise.
2477         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
2478         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
2479         (arm_linux_nat_target::insert_watchpoint): Likewise.
2480         (arm_linux_nat_target::remove_watchpoint): Likewise.
2481         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
2482         Likewise.
2483         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
2484         Likewise.
2485         * ppc-linux-nat.c (fetch_register): Likewise.
2486         (fetch_all_gp_regs): Likewise.
2487         (fetch_ppc_registers): Likewise.
2488         (store_all_gp_regs): Likewise.
2489         (store_ppc_registers): Likewise.
2490         (hwdebug_insert_point): Likewise.
2491         (can_use_watchpoint_cond_accel): Likewise.
2492         * remote-sim.c (gdb_os_write_stdout): Likewise.
2493
2494 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
2495             Tom Tromey  <tom@tromey.com>
2496
2497         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
2498         test for it.
2499         * configure: Rebuild.
2500
2501 2018-07-22  Tom Tromey  <tom@tromey.com>
2502
2503         * regformats/regdat.sh: Define xmltarget_${name} inside
2504         #ifndef IN_PROCESS_AGENT.
2505
2506 2018-07-22  Tom Tromey  <tom@tromey.com>
2507
2508         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
2509
2510 2018-07-22  Tom Tromey  <tom@tromey.com>
2511
2512         * symfile.c (reread_symbols): Notify iter, not objfile.
2513
2514 2018-07-22  Tom Tromey  <tom@tromey.com>
2515
2516         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
2517         Use arch_ops.
2518         (ravenscar_thread_target::prepare_to_store): Likewise.
2519
2520 2018-07-22  Tom Tromey  <tom@tromey.com>
2521
2522         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
2523         unused variable.  Call value_fetch_lazy when needed.
2524         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
2525         Remove unused variable.  Call value_fetch_lazy when needed.
2526
2527 2018-07-22  Tom Tromey  <tom@tromey.com>
2528
2529         * m32c-tdep.c (mark_dma): Return void.
2530         (make_regs): Remove unused declarations.
2531
2532 2018-07-22  Tom Tromey  <tom@tromey.com>
2533
2534         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
2535         cmdscm_get_valid_command_smob_arg_unsafe for effect.
2536         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
2537         bkscm_get_valid_block_smob_arg_unsafe for effect.
2538
2539 2018-07-22  Tom Tromey  <tom@tromey.com>
2540
2541         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
2542         value_type.
2543
2544 2018-07-22  Tom Tromey  <tom@tromey.com>
2545
2546         * windows-nat.c (saved_context): Conditionally define.
2547         * remote.c (remote_target::remote_btrace_maybe_reopen):
2548         Conditionally declare "warned".
2549         * inflow.c (sigquit_ours): Conditionally define.
2550         (new_tty): Move "tty" declaration inside #if.
2551         * guile/guile.c (guile_datadir): Conditionally define.
2552         * charset.c (set_be_le_names): Move some declarations inside #if.
2553         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
2554         #if.
2555         (parse_xml_btrace_conf): Likewise.
2556
2557 2018-07-22  Tom Tromey  <tom@tromey.com>
2558
2559         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
2560
2561 2018-07-22  Tom Tromey  <tom@tromey.com>
2562
2563         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
2564         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
2565         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
2566         * buildsym-legacy.c (get_macro_table): Remove unused variable.
2567         * stack.c (frame_apply_level_command): Remove unused variable.
2568         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
2569         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
2570         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
2571         unused variable.
2572         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
2573         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
2574         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
2575         variable.
2576         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
2577         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
2578         variable.
2579         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
2580         Remove unused variable.
2581         * cli/cli-script.c (recurse_read_control_structure): Remove unused
2582         variable.
2583         * common/tdesc.c (print_xml_feature::visit): Remove unused
2584         variable.
2585         * compile/compile-object-load.c (store_regs): Remove unused
2586         variables.
2587         * complaints.c (clear_complaints): Remove unused variable.
2588         * corelow.c (core_target_open): Remove unused variable.
2589         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
2590         variable.
2591         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
2592         variable.
2593         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
2594         variable.
2595         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
2596         variable.
2597         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
2598         variable.
2599         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
2600         variable.
2601         * ia64-tdep.c (examine_prologue): Remove unused variable.
2602         * infcall.c (run_inferior_call): Remove unused variable.
2603         * inferior.c (exit_inferior): Remove unused variable.
2604         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
2605         * linespec.c (decode_line_2): Remove unused variable.
2606         * linux-nat.c (super_close): Remove.
2607         * linux-tdep.c (linux_info_proc): Remove unused variable.
2608         * mi/mi-main.c (mi_execute_command): Remove unused variable.
2609         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
2610         Remove unused variable.
2611         * parse.c (find_minsym_type_and_address): Remove unused variable.
2612         * printcmd.c (info_symbol_command, printf_floating): Remove unused
2613         variable.
2614         * python/py-breakpoint.c (bppy_set_commands): Remove unused
2615         variable.
2616         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
2617         variables.
2618         * record-btrace.c (record_btrace_target::store_registers): Remove
2619         unused variable.
2620         (cmd_show_record_btrace_cpu): Remove unused variable.
2621         * riscv-tdep.c (riscv_register_reggroup_p)
2622         (riscv_push_dummy_call, riscv_return_value): Remove unused
2623         variable.
2624         * rust-exp.y (literal): Remove unused variable.
2625         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
2626         unused variable.
2627         <STRUCTOP_ANONYMOUS>: Likewise.
2628         * s390-linux-tdep.c (s390_linux_init_abi_31)
2629         (s390_linux_init_abi_64): Remove unused variable.
2630         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
2631         (file_select_thread, net_windows_open, _initialize_ser_windows):
2632         Remove unused variables.
2633         * symtab.c (find_pc_sect_line): Remove unused variable.
2634         * target-memory.c (compute_garbled_blocks): Remove unused
2635         variable.
2636         (target_write_memory_blocks): Remove unused variable.
2637         * target.c (target_stack::unpush): Remove unused variables.
2638         * tracepoint.c (start_tracing, all_tracepoint_actions)
2639         (merge_uploaded_trace_state_variables)
2640         (print_one_static_tracepoint_marker): Remove unused variable.
2641         * unittests/basic_string_view/element_access/char/1.cc (test01):
2642         Remove unused variable.
2643         * windows-nat.c (windows_continue, windows_add_all_dlls)
2644         (do_initial_windows_stuff, windows_nat_target::create_inferior):
2645         Remove unused variables.
2646
2647 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
2648
2649         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
2650         attr_profile in HAVE_ELF.
2651         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
2652         HAVE_ELF.
2653
2654 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
2655
2656         * frame.c (frame_register_unwind): Change parameter name.
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.h (frame_register_unwind): Likewise.
2662         (frame_unwind_register): Likewise.
2663         (frame_unwind_register_value): Likewise.
2664         (frame_unwind_register_signed): Likewise.
2665         (frame_unwind_register_unsigned): Likewise.
2666         (frame_unwind_arch): Likewise.
2667
2668 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
2669
2670         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
2671         ISA maintenance.
2672
2673 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
2674
2675         * mips-linux-nat.c (mips_linux_nat_target::read_description):
2676         Call `get_ptrace_pid' rather than extracting the ptrace PID by
2677         hand.
2678
2679 2018-07-20  Keith Seitz  <keiths@redhat.com>
2680
2681         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
2682         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
2683         m_compunit_symtab, m_language>: Add "m_" prefix.
2684         Update all uses.
2685         * buildsym.c: Update all uses.
2686
2687 2018-07-20  Tom Tromey  <tom@tromey.com>
2688
2689         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
2690         * buildsym.h (record_line_ftype): Remove typedef.
2691
2692 2018-07-20  Tom Tromey  <tom@tromey.com>
2693
2694         * buildsym-legacy.h (augment_type_symtab): Don't declare.
2695         (end_expandable_symtab): Likewise.
2696         (end_symtab_get_static_block): Likewise.
2697         (end_symtab_from_static_block): Likewise.
2698         * buildsym-legacy.c (augment_type_symtab): Remove.
2699         (end_expandable_symtab): Remove.
2700         (end_symtab_get_static_block): Remove.
2701         (end_symtab_from_static_block): Remove.
2702
2703 2018-07-20  Tom Tromey  <tom@tromey.com>
2704
2705         * dwarf2read.c: Include buildsym.h.
2706         (struct dwarf2_cu) <builder>: New method.
2707         (fixup_go_packaging): Update.
2708         (process_full_comp_unit, process_full_type_unit): Update.  Don't
2709         use scoped_free_pendings.
2710         (using_directives): Add "cu" parameter, remove "language".
2711         (read_import_statement, setup_type_unit_groups, )
2712         (read_func_scope, read_lexical_block_scope)
2713         (dwarf2_record_block_ranges, read_namespace): Update.
2714         (lnp_state_machine::lnp_state_machine): Add cu parameter.
2715         (lnp_state_machine::handle_end_sequence): Update.
2716         (class lnp_state_machine) <m_cu>: New member.
2717         <m_record_line_callback>: Remove.
2718         <m_currently_recording_lines>: New member.
2719         (lnp_state_machine::handle_set_file): Update.
2720         (noop_record_line): Remove.
2721         (dwarf_record_line_p): Add cu parameter.
2722         (dwarf_record_line_1, dwarf_finish_line): Likewise.
2723         (lnp_state_machine::record_line)
2724         (lnp_state_machine::lnp_state_machine)
2725         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
2726         (dwarf_decode_lines): Update.
2727         (dwarf2_start_subfile): Add cu parameter.
2728         (dwarf2_start_symtab, new_symbol): Update.
2729         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
2730         Remove dwarf2_per_objfile parameter.
2731         (dwarf_decode_macros): Update.
2732
2733 2018-07-20  Tom Tromey  <tom@tromey.com>
2734
2735         * stabsread.c (define_symbol): Update.
2736         * buildsym-legacy.h (get_buildsym_compunit): Declare.
2737         * dwarf2read.c (new_symbol): Update.
2738         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
2739         * cp-namespace.c: Include buildsym.h.
2740         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
2741         * buildsym-legacy.c (get_buildsym_compunit): New function.
2742
2743 2018-07-20  Tom Tromey  <tom@tromey.com>
2744
2745         * xcoffread.c: Include buildsym-legacy.h.
2746         * windows-nat.c: Include buildsym-legacy.h.
2747         * stabsread.c: Include buildsym-legacy.h.
2748         * mdebugread.c: Include buildsym-legacy.h.
2749         * buildsym-legacy.h: New file.
2750         * buildsym-legacy.c: New file, from buildsym.c.
2751         * go32-nat.c: Include buildsym-legacy.h.
2752         * dwarf2read.c: Include buildsym-legacy.h.
2753         * dbxread.c: Include buildsym-legacy.h.
2754         * cp-namespace.c: Include buildsym-legacy.h.
2755         * coffread.c: Include buildsym-legacy.h.
2756         * buildsym.h: Move some contents to buildsym-legacy.h.
2757         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
2758         buildsym-legacy.c.
2759         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
2760
2761 2018-07-20  Tom Tromey  <tom@tromey.com>
2762
2763         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
2764         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
2765         (buildsym_compunit::buildsym_compunit)
2766         (buildsym_compunit::~buildsym_compunit)
2767         (buildsym_compunit::get_macro_table): Define.
2768
2769 2018-07-20  Tom Tromey  <tom@tromey.com>
2770
2771         * buildsym.c (reset_symtab_globals): Remove.
2772         (buildsym_compunit::end_symtab_from_static_block): Update.
2773         (buildsym_compunit::augment_type_symtab): Update.
2774         (end_symtab_from_static_block): Call free_buildsym_compunit.
2775         (augment_type_symtab, end_symtab, end_expandable_symtab):
2776         Likewise.
2777
2778 2018-07-20  Tom Tromey  <tom@tromey.com>
2779
2780         * arch-utils.c: Do not include buildsym.h.
2781         * mipsread.c: Do not include buildsym.h.
2782         * machoread.c: Do not include buildsym.h.
2783         * elfread.c: Do not include buildsym.h.
2784
2785 2018-07-20  Tom Tromey  <tom@tromey.com>
2786
2787         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
2788         initialization.
2789         (buildsym_compunit): Add new constructor.
2790         (struct buildsym_compunit) <get_last_source_file, finish_block,
2791         record_block_range, start_subfile, patch_subfile_names,
2792         push_subfile, pop_subfile, record_line, get_compunit_symtab,
2793         set_last_source_start_addr, get_last_source_start_addr,
2794         get_local_using_directives, set_local_using_directives,
2795         get_global_using_directives, outermost_context_p,
2796         get_current_context_stack, get_context_stack_depth,
2797         get_current_subfile, get_local_symbols, get_file_symbols,
2798         get_global_symbols, record_debugformat, record_producer,
2799         push_context, pop_context, end_symtab_get_static_block,
2800         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
2801         New public methods.
2802         <record_pending_block, finish_block_internal, make_blockvector,
2803         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
2804         private methods.
2805         Update all users.
2806
2807 2018-05-22  Tom Tromey  <tom@tromey.com>
2808
2809         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
2810         parameter.
2811         (finish_block_internal): Update.
2812
2813 2018-07-20  Tom Tromey  <tom@tromey.com>
2814
2815         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
2816         parameter.
2817         (finish_block_internal): Update.
2818
2819 2018-07-20  Tom Tromey  <tom@tromey.com>
2820
2821         * buildsym.h (EXTERN): Don't define or undef.
2822         * buildsym.c (EXTERN): Don't define.
2823
2824 2018-07-20  Tom Tromey  <tom@tromey.com>
2825
2826         * buildsym.c: Remove TODO comment.
2827
2828 2018-07-20  Tom Tromey  <tom@tromey.com>
2829
2830         * coffread.c (coff_symtab_read): Update.
2831         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
2832         (xcoff_new_init): Update.
2833         * mipsread.c (mipscoff_new_init): Update.
2834         * mdebugread.c (mdebug_build_psymtabs): Update.
2835         * elfread.c (elf_new_init): Update.
2836         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
2837         Update.
2838         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
2839         (coffstab_build_psymtabs, elfstab_build_psymtabs)
2840         (stabsect_build_psymtabs): Update.
2841         * buildsym.h (buildsym_init): Don't declare.
2842         * buildsym.c: Update comment.
2843         (prepare_for_building): Remove.
2844         (start_symtab, restart_symtab): Update.
2845         (reset_symtab_globals): Update comment.
2846         (buildsym_init): Remove.
2847
2848 2018-07-20  Tom Tromey  <tom@tromey.com>
2849
2850         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
2851         * stabsread.c (patch_block_stabs, define_symbol, read_type)
2852         (read_enum_type, common_block_start, common_block_end)
2853         (cleanup_undefined_types_1, finish_global_stabs): Update.
2854         * mdebugread.c (psymtab_to_symtab_1): Update.
2855         * dwarf2read.c (fixup_go_packaging, read_func_scope)
2856         (read_lexical_block_scope, new_symbol): Update.
2857         * dbxread.c (process_one_symbol): Update.
2858         * coffread.c (coff_symtab_read, process_coff_symbol)
2859         (coff_read_enum_type): Update.
2860         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
2861         declare.
2862         (get_local_symbols, get_file_symbols, get_global_symbols): New
2863         functions.
2864         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
2865         m_global_symbols.
2866         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
2867         (~scoped_free_pendings): Update.
2868         (finish_block, prepare_for_building, reset_symtab_globals)
2869         (end_symtab_get_static_block, end_symtab_with_blockvector)
2870         (augment_type_symtab, push_context): Update.
2871         (get_local_symbols, get_file_symbols, get_global_symbols): New
2872         functions.
2873         (buildsym_init): Update.
2874
2875 2018-07-20  Tom Tromey  <tom@tromey.com>
2876
2877         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
2878         (process_full_type_unit): Likewise.
2879         (dwarf2_start_symtab): Set list_in_scope.
2880
2881 2018-07-20  Tom Tromey  <tom@tromey.com>
2882
2883         * dwarf2read.c (process_psymtab_comp_unit_reader)
2884         (build_type_psymtabs_reader): Do not set list_in_scope.
2885
2886 2018-07-20  Tom Tromey  <tom@tromey.com>
2887
2888         * buildsym.c (free_pendings): Remove.
2889         (add_symbol_to_list, scoped_free_pendings)
2890         (finish_block_internal, buildsym_init): Update.
2891
2892 2018-07-20  Tom Tromey  <tom@tromey.com>
2893
2894         * xcoffread.c (read_xcoff_symtab): Update.
2895         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
2896         Update.
2897         * dbxread.c (process_one_symbol): Update.
2898         * coffread.c (coff_symtab_read): Update.
2899         * buildsym.h (finish_block): Update.
2900         * buildsym.c (finish_block): Remove "listhead" argument.
2901         (end_symtab_get_static_block): Update.
2902
2903 2018-07-20  Tom Tromey  <tom@tromey.com>
2904
2905         * buildsym.h (class scoped_free_pendings): Remove constructor.
2906         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
2907         method.
2908         <m_pending_block_obstack, m_pending_blocks>: New members.
2909         (pending_block_obstack, pending_blocks): Remove.
2910         (scoped_free_pendings::scoped_free_pendings): Default.
2911         (~scoped_free_pendings): Update.
2912         (free_pending_blocks): Remove.
2913         (finish_block_internal, record_pending_block, make_blockvector)
2914         (end_symtab_get_static_block, augment_type_symtab, push_context)
2915         (buildsym_init): Update.
2916
2917 2018-07-20  Tom Tromey  <tom@tromey.com>
2918
2919         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
2920         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
2921         members.
2922         (pending_addrmap, pending_addrmap_obstack)
2923         (pending_addrmap_interesting): Remove.
2924         (scoped_free_pendings, record_block_range, make_blockvector)
2925         (prepare_for_building, reset_symtab_globals, buildsym_init):
2926         Update.
2927
2928 2018-07-20  Tom Tromey  <tom@tromey.com>
2929
2930         * xcoffread.c (process_linenos): Update.
2931         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
2932         * mdebugread.c (psymtab_to_symtab_1): Update.
2933         * dwarf2read.c (setup_type_unit_groups)
2934         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
2935         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
2936         * dbxread.c (process_one_symbol): Update.
2937         * coffread.c (coff_symtab_read, enter_linenos)
2938         (process_coff_symbol): Update.
2939         * buildsym.h (current_subfile): Don't declare.
2940         (get_current_subfile): Declare.
2941         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
2942         member.
2943         (start_subfile, free_buildsym_compunit, push_subfile)
2944         (prepare_for_building, start_symtab): Update.
2945         (get_current_subfile): New function.
2946
2947 2018-07-20  Tom Tromey  <tom@tromey.com>
2948
2949         * coffread.c (coff_symtab_read): Update.
2950         * xcoffread.c (read_xcoff_symtab): Update.
2951         * dwarf2read.c (new_symbol): Update.
2952         (read_func_scope, read_lexical_block_scope): Update.
2953         * dbxread.c (process_one_symbol): Update.
2954         * buildsym.h (context_stack, context_stack_depth): Don't declare.
2955         (outermost_context_p): Remove macro.
2956         (outermost_context_p, get_current_context_stack)
2957         (get_context_stack_depth): Declare.
2958         (pop_context): Return struct context_stack.
2959         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
2960         member.
2961         (context_stack_size): Remove.
2962         (INITIAL_CONTEXT_STACK_SIZE): Remove.
2963         (prepare_for_building, end_symtab_get_static_block)
2964         (augment_type_symtab, push_context): Update.
2965         (pop_context): Return struct context_stack.
2966         (outermost_context_p, get_current_context_stack)
2967         (get_context_stack_depth): New functions.
2968         (buildsym_init): Update.
2969
2970 2018-07-20  Tom Tromey  <tom@tromey.com>
2971
2972         * rust-exp.y: Now a pure parser.  Update all rules.
2973         (%union): Move earlier.
2974         (current_parser, work_obstack): Remove globals.
2975         (rust_parser, ~rust_parser): Update.
2976         (class rust_parser) <copy_name, concat3, crate_name, super_name,
2977         lex_character, lex_number, lex_string, lex_identifier,
2978         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
2979         convert_name, convert_params_to_expression,
2980         convert_ast_to_expression, ast_basic_type, ast_operation,
2981         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
2982         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
2983         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
2984         ast_array_type, ast_slice_type, ast_reference_type,
2985         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
2986         (rust_parse): Update.
2987         (rustyyerror, rustyylex): Add parser parameter.
2988         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
2989         (rust_lex_stringish_test, rust_lex_test_sequence)
2990         (rust_lex_test_trailing_dot, rust_lex_test_completion)
2991         (rust_lex_test_push_back, rust_lex_tests): Update.
2992
2993 2018-07-19  Pedro Alves  <palves@redhat.com>
2994
2995         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
2996         gdb::unique_xmalloc_ptr.
2997         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
2998         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
2999         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
3000         copy-initialization.
3001         * guile/scm-pretty-print.c (ppscm_print_children): Use
3002         gdb::unique_xmalloc_ptr instead of cleanups.
3003         (gdbscm_apply_val_pretty_printer): Remove cleanups.
3004         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
3005         gdb::unique_xmalloc_ptr.
3006         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
3007         Adjust to use gdb::unique_xmalloc_ptr.
3008         * guile/scm-utils.c (extract_arg): Adjust.
3009         * guile/scm-value.c (gdbscm_value_field): Adjust to use
3010         gdb::unique_xmalloc_ptr instead of a cleanup.
3011
3012 2018-07-19  Tom Tromey  <tom@tromey.com>
3013
3014         * utils.c (do_value_free_to_mark)
3015         (make_cleanup_value_free_to_mark): Remove.
3016         * utils.h (make_cleanup_value_free_to_mark): Remove.
3017
3018 2018-07-19  Pedro Alves  <palves@redhat.com>
3019
3020         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
3021         forwarding reference.
3022
3023 2018-07-18  Pedro Alves  <palves@redhat.com>
3024
3025         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
3026         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
3027         cleanup.
3028
3029 2018-07-18  Pedro Alves  <palves@redhat.com>
3030
3031         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
3032         exceptions.
3033         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
3034         (gdbscm_wrap): New.
3035         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
3036         directly instead of a cleanup.
3037         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
3038         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
3039         (vlscm_binop_gdbthrow): New, factored out from ...
3040         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
3041         (vlscm_rich_compare): Use gdbscm_wrap.
3042         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
3043         instead of a cleanup.
3044         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
3045         cleanup.
3046         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
3047         Use xfree directly instead of a cleanup.
3048         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
3049         Adjust to use gdbscm_wrap and scoped_value_mark.
3050         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
3051         (gdbscm_value_address, gdbscm_value_dereference)
3052         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
3053         scoped_value_mark.
3054         (gdbscm_value_dynamic_type): Use scoped_value_mark.
3055         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
3056         scoped_value_mark.
3057         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
3058         gdbscm_wrap and scoped_value_mark.
3059         (gdbscm_value_to_string): Use xfree directly instead of a
3060         cleanup.  Move 'buffer' unique_ptr to TRY scope.
3061         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
3062         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
3063         scoped_value_mark.
3064         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
3065         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
3066         scoped_value_mark.
3067         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
3068         gdbscm_wrap.
3069
3070 2018-07-18  Tom de Vries  <tdevries@suse.de>
3071
3072         * findvar.c (default_read_var_value): Also resolve dynamic type for
3073         LOC_OPTIMIZED_OUT vars.
3074
3075 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
3076
3077         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
3078         decoding.
3079
3080 2018-07-17  Tom Tromey  <tom@tromey.com>
3081
3082         * guile/scm-param.c (pascm_set_func, pascm_show_func)
3083         (compute_enum_list, pascm_set_param_value_x)
3084         (gdbscm_parameter_value): Update.
3085         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
3086         (gdbscm_scm_to_host_string): Update.
3087         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
3088         Update.
3089         * guile/scm-cmd.c (cmdscm_add_completion): Update.
3090         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
3091         * guile/scm-string.c (gdbscm_scm_to_string): Return
3092         unique_xmalloc_ptr.
3093         (gdbscm_scm_to_host_string): Likewise.
3094
3095 2018-07-17  Tom Tromey  <tom@tromey.com>
3096
3097         * guile/guile.c (gdbscm_eval_from_control_command): Update.
3098         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
3099         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
3100         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
3101         unique_xmalloc_ptr.
3102
3103 2018-07-17  Tom Tromey  <tom@tromey.com>
3104
3105         * guile/scm-param.c (pascm_signal_setshow_error): Update.
3106         * guile/guile-internal.h (gdbscm_exception_message_to_string):
3107         Update.
3108         * guile/scm-cmd.c (cmdscm_function): Update.
3109         * guile/scm-pretty-print.c
3110         (ppscm_print_exception_unless_memory_error): Update.
3111         * guile/scm-exception.c (gdbscm_exception_message_to_string):
3112         Return unique_xmalloc_ptr.
3113
3114 2018-07-17  Tom Tromey  <tom@tromey.com>
3115
3116         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
3117         Use string_printf.
3118
3119 2018-07-17  Jim Wilson  <jimw@sifive.com>
3120
3121         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
3122         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
3123         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
3124         unecessary braces after EF_RISCV_RVC test.  Delete call to
3125         set_gdbarch_decr_pc_after_break.
3126
3127         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
3128         RISCV_LAST_FP_REGNUM + 1.
3129         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
3130
3131 2018-07-17  Tom Tromey  <tom@tromey.com>
3132
3133         * configure.ac: Remove --disable-gdbcli.
3134         * configure: Rebuild.
3135         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
3136         (SUBDIR_CLI_CFLAGS): Remove.
3137         (SFILES): Use SUBDIR_CLI_SRCS.
3138         (COMMON_OBS): Use SUBDIR_CLI_OBS.
3139
3140 2018-07-17  Tom Tromey  <tom@tromey.com>
3141
3142         PR gdb/18624:
3143         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
3144
3145 2018-07-16  Jim Wilson  <jimw@sifive.com>
3146
3147         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
3148
3149 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3150
3151         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
3152         variable.
3153         (libunwind_frame_sniffer): Likewise.
3154         (libunwind_frame_prev_register): Likewise.
3155         (libunwind_sigtramp_frame_sniffer): Likewise.
3156         * ia64-tdep.c (ia64_access_reg): Likewise.
3157         (ia64_access_rse_reg): Likewise.
3158         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
3159         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
3160
3161 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3162
3163         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
3164
3165 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3166
3167         * remote-sim.c (gdbsim_target::close,
3168         gdbsim_target::mourn_inferior): Remove unused variables.
3169
3170 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
3171
3172         * ia64-tdep.c (ktab_buf): New global.
3173         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
3174         (get_kernel_table): Adjust.
3175
3176 2018-07-16  Tom Tromey  <tom@tromey.com>
3177
3178         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
3179         * dwarf2read.c (using_directives, new_symbol): Use
3180         outermost_context_p.
3181         * dbxread.c (process_one_symbol): Use outermost_context_p.
3182         * coffread.c (coff_symtab_read): Use outermost_context_p.
3183
3184 2018-07-16  Tom Tromey  <tom@tromey.com>
3185
3186         * dwarf2read.c (using_directives, read_func_scope)
3187         (read_lexical_block_scope): Update.
3188         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
3189         * buildsym.h (local_using_directives, global_using_directives):
3190         Don't declare.
3191         (get_local_using_directives, set_local_using_directives)
3192         (get_global_using_directives): Declare.
3193         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
3194         m_global_using_directives>: New members.
3195         (finish_block_internal, prepare_for_building)
3196         (reset_symtab_globals, end_symtab_get_static_block)
3197         (push_context): Update.
3198         (get_local_using_directives, set_local_using_directives)
3199         (get_global_using_directives): New functions.
3200         (buildsym_init): Update.
3201
3202 2018-07-16  Tom Tromey  <tom@tromey.com>
3203
3204         * xcoffread.c (xcoff_initial_scan): Don't call
3205         free_pending_blocks.
3206         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
3207         * buildsym.h (class scoped_free_pendings): Add constructor.
3208         (free_pending_blocks): Don't declare.
3209         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
3210         (free_pending_blocks): Now static.
3211
3212 2018-07-16  Tom Tromey  <tom@tromey.com>
3213
3214         * buildsym.h (push_subfile, pop_subfile): Update declarations.
3215         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
3216         member.
3217         (struct subfile_stack): Remove.
3218         (subfile_stack): Remove.
3219         (push_subfile, pop_subfile, buildsym_init): Update.
3220
3221 2018-07-16  Tom Tromey  <tom@tromey.com>
3222
3223         * buildsym.c (push_subfile): Use gdb_assert.
3224         (pop_subfile): Use gdb_assert.
3225
3226 2018-07-16  Tom Tromey  <tom@tromey.com>
3227
3228         * buildsym.h (merge_symbol_lists): Remove.
3229         * buildsym.c (merge_symbol_lists): Remove.
3230
3231 2018-07-16  Tom Tromey  <tom@tromey.com>
3232
3233         * stabsread.c (scan_file_globals): Update comment.
3234         * stabsread.h (scan_file_globals): Move from buildsym.h.
3235         * buildsym.h (scan_file_globals): Move to stabsread.h.
3236
3237 2018-07-16  Tom Tromey  <tom@tromey.com>
3238
3239         * xcoffread.c (xcoff_new_init): Update.
3240         * mipsread.c (mipscoff_new_init): Update.
3241         * mdebugread.c (mdebug_build_psymtabs): Update.
3242         * elfread.c (elf_new_init): Update.
3243         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
3244         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
3245         * buildsym.h (buildsym_new_init): Don't declare.
3246         * buildsym.c (buildsym_new_init): Remove.
3247
3248 2018-07-16  Tom Tromey  <tom@tromey.com>
3249
3250         * stabsread.h (within_function): Move from buildsym.h.
3251         * stabsread.c (start_stabs): Clear within_function.
3252         * coffread.c (coff_start_symtab): Clear within_function.
3253         * buildsym.h (within_function): Move to stabsread.h.
3254         * buildsym.c (prepare_for_building): Update.
3255
3256 2018-07-16  Tom Tromey  <tom@tromey.com>
3257
3258         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
3259         * dwarf2read.c (dwarf2_start_symtab): Don't set
3260         processing_gcc_compilation.
3261         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
3262
3263 2018-07-16  Tom Tromey  <tom@tromey.com>
3264
3265         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
3266         (next_symbol_text_func): Move from buildsym.h.
3267         * stabsread.c (hashname): Move from buildsym.c.
3268         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
3269         (next_symbol_text_func, hashname): Move to stabsread.h.
3270         * buildsym.c: Don't include bcache.h
3271         (hashname): Move to stasbread.c.
3272
3273 2018-07-16  Tom Tromey  <tom@tromey.com>
3274
3275         * buildsym.h (context_stack_size): Don't declare.
3276         * buildsym.c (context_stack_size): New global.
3277
3278 2018-07-16  Tom Tromey  <tom@tromey.com>
3279
3280         * dbxread.c (processing_acc_compilation): New global.
3281         * buildsym.h (processing_acc_compilation): Don't declare.
3282
3283 2018-07-16  Tom Tromey  <tom@tromey.com>
3284
3285         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
3286         * dbxread.c (read_ofile_symtab): Update.
3287         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
3288         * buildsym.h (last_source_start_addr): Remove.
3289         (set_last_source_start_addr, get_last_source_start_addr):
3290         Declare.
3291         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
3292         parameter.
3293         (struct buildsym_compunit) <m_last_source_start_addr>: New
3294         member.
3295         (prepare_for_building): Remove start_addr parameter.
3296         (start_symtab, restart_symtab, end_symtab_get_static_block)
3297         (end_symtab_with_blockvector): Update.
3298         (set_last_source_start_addr, get_last_source_start_addr): New
3299         functions.
3300
3301 2018-07-16  Tom Tromey  <tom@tromey.com>
3302
3303         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
3304         member.
3305         (have_line_numbers): Remove.
3306         (record_line, prepare_for_building, end_symtab_get_static_block)
3307         (augment_type_symtab): Update.
3308
3309 2018-07-16  Tom Tromey  <tom@tromey.com>
3310
3311         * buildsym.c (~buildsym_compunit): Free the macro table.
3312         (struct buildsym_compunit) <get_macro_table, release_macros>: New
3313         methods.
3314         <m_pending_macros>: New member.
3315         (pending_macros): Remove.
3316         (~scoped_free_pendings, get_macro_table, prepare_for_building)
3317         (reset_symtab_globals, end_symtab_get_static_block)
3318         (end_symtab_with_blockvector, augment_type_symtab)
3319         (buildsym_init): Update.
3320
3321 2018-07-16  Tom Tromey  <tom@tromey.com>
3322
3323         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
3324         parameter.
3325         (buildsym_compunit::set_last_source_file): New method.
3326         <m_last_source_file>: New member.
3327         (prepare_for_building): Remove "name" parameter.
3328         (start_symtab, restart_symtab, reset_symtab_globals): Update.
3329         (last_source_file): Remove.
3330         (set_last_source_file, get_last_source_file): Update.
3331
3332 2018-07-16  Tom Tromey  <tom@tromey.com>
3333
3334         * buildsym.c (prepare_for_building): Add assert.
3335
3336 2018-07-16  Tom Tromey  <tom@tromey.com>
3337
3338         * buildsym.c (~buildsym_compunit): Update.
3339         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
3340         (start_subfile, patch_subfile_names)
3341         (end_symtab_with_blockvector): Update.
3342
3343 2018-07-16  Tom Tromey  <tom@tromey.com>
3344
3345         * buildsym.c (struct buildsym_compunit): Add constructor,
3346         destructor, initializers.
3347         (start_buildsym_compunit): Remove.
3348         (free_buildsym_compunit): Use "delete".
3349         (start_symtab, restart_symtab): Use "new".
3350
3351 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
3352
3353         * symfile.c (set_objfile_default_section_offset): Remove struct
3354         keyword.
3355
3356 2018-07-14  Stafford Horne  <shorne@gmail.com>
3357
3358         * (Responsible Maintainers): Add myself as or1k maintainer.
3359
3360 2018-07-13  Tom Tromey  <tom@tromey.com>
3361
3362         * symfile.c (set_objfile_default_section_offset): Use extra braces
3363         around initializer.
3364
3365 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
3366
3367         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
3368         non-branching basr.
3369
3370 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3371
3372         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
3373         unittests/cli-utils-selftests.c
3374         * unittests/cli-utils-selftests.c: New file.
3375
3376 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3377
3378         * NEWS: Mention new commands. Mention change to 'thread apply'.
3379
3380 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3381
3382         * thread.c (thr_try_catch_cmd): New function.
3383         (thread_apply_all_command): Handle qcs flags.
3384         (thread_apply_command): Handle qcs flags.
3385         (taas_command): New function.
3386         (tfaas_command): New function.
3387         (_initialize_thread): Update to setup the new commands 'taas
3388         and 'tfaas'. Change doc string for 'thread apply'.
3389
3390 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3391
3392         * stack.c: (trailing_outermost_frame): New function, mostly
3393         extracted from backtrace_command_1.
3394         (leading_innermost_frame): New function.
3395         (backtrace_command_1): Update to call trailing_outermost_frame.
3396         (frame_apply_command_count): New function.
3397         (frame_apply_level_command): New function.
3398         (frame_apply_all_command): New function.
3399         (frame_apply_command): New function.
3400         (faas_command): New function.
3401         (frame_cmd_list): New variable.
3402         (_initialize_stack): Update to setup the new commands 'frame apply'
3403         and 'faas'.
3404
3405 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3406
3407         * cli-utils.c (number_or_range_parser::get_number): Only handle
3408         numbers or convenience var as numbers.
3409         (parse_flags): New function.
3410         (parse_flags_qcs): New function.
3411         (number_or_range_parser::finished): Ensure parsing end is detected
3412         before end of string.
3413         * cli-utils.h (parse_flags): New function.
3414         (parse_flags_qcs): New function.
3415         (number_or_range_parser): Remove m_finished bool.
3416         (number_or_range_parser::skip_range): Set m_in_range to false.
3417
3418 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3419
3420         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
3421         on Windows.
3422
3423 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
3424             Jan Kratochvil  <jan.kratochvil@redhat.com>
3425             Paul Fertser  <fercerpav@gmail.com>
3426             Tsutomu Seki  <sekiriki@gmail.com>
3427             Pedro Alves  <palves@redhat.com>
3428
3429         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
3430         'unittests/parse-connection-spec-selftests.c'.
3431         (COMMON_SFILES): Add 'common/netstuff.c'.
3432         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
3433         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
3434         * common/netstuff.c: New file.
3435         * common/netstuff.h: New file.
3436         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
3437         (wait_for_connect): Update comment.  New parameter
3438         'gdb::optional<int> sock' instead of 'struct serial *scb'.
3439         Use 'sock' directly instead of 'scb->fd'.
3440         (try_connect): New function, with code from 'net_open'.
3441         (net_open): Rewrite main loop to deal with multiple
3442         sockets/addresses.  Handle IPv6-style hostnames; implement
3443         support for IPv6 connections.
3444         * unittests/parse-connection-spec-selftests.c: New file.
3445
3446 2018-07-11  Pedro Alves  <palves@redhat.com>
3447
3448         PR gdb/23377
3449         * remote.c (remote_target::remote_detach_pid): Call
3450         set_current_process.
3451
3452 2018-07-11  Pedro Alves  <palves@redhat.com>
3453
3454         * h8300-tdep.c (h8300_gdbarch_init): Remove
3455         set_gdbarch_ecoff_reg_to_regnum calls.
3456
3457 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
3458
3459         PR c++/23373
3460         * c-typeprint.c (c_type_print_base_struct_union): Don't print
3461         offsets/sizes for static members of a class/struct.
3462
3463 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
3464
3465         * target-descriptions.c (tdesc_register_bitsize): Rename.
3466         * target-descriptions.h (tdesc_register_bitsize): Likewise.
3467         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
3468         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
3469
3470 2018-07-10  Tom Tromey  <tom@tromey.com>
3471
3472         * breakpoint.c (moribund_locations): Now static and a
3473         std::vector.
3474         (breakpoint_init_inferior, moribund_breakpoint_here_p)
3475         (build_bpstat_chain, update_global_location_list)
3476         (breakpoint_retire_moribund): Update.
3477         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
3478         VEC.
3479
3480 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3481
3482         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
3483         (riscv_register_reggroup_p): Use new function, remove unneeded
3484         parenthesis.
3485         (riscv_push_dummy_call): Extend assert to compare against xlen or
3486         flen based on register type.
3487
3488 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3489
3490         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
3491
3492 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3493
3494         * remote.c (show_hardware_watchpoint_limit): New function.
3495         (show_hardware_watchpoint_length_limit): New function.
3496         (show_hardware_breakpoint_limit): New function.
3497         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
3498         where appropriate, update help text.
3499
3500 2018-07-09  Tom Tromey  <tom@tromey.com>
3501
3502         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
3503         (CLIBS): Don't mention NAT_CLIBS.
3504
3505 2018-07-09  Tom Tromey  <tom@tromey.com>
3506
3507         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
3508         (LIBGDB_OBS, clean mostlyclean): Update.
3509         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
3510
3511 2018-07-09  Tom Tromey  <tom@tromey.com>
3512
3513         * Makefile.in (%.c: %.y): Use ECHO_YACC.
3514         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
3515         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
3516
3517 2018-07-09  Tom Tromey  <tom@tromey.com>
3518
3519         * Makefile.in (ALLDEPFILES): Remove exec.c.
3520         (COMMON_OBS): Remove exec.o.
3521         (COMMON_SFILES): Add exec.c.
3522
3523 2018-07-09  Tom Tromey  <tom@tromey.com>
3524
3525         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
3526
3527 2018-07-09  Tom Tromey  <tom@tromey.com>
3528
3529         * Makefile.in (clean mostlyclean): Remove stamp-version.
3530         (version.c): Depend on stamp-version.
3531         (stamp-version): New rule, from version.c rule.
3532
3533 2018-07-09  Tom Tromey  <tom@tromey.com>
3534
3535         * Makefile.in (init.c): Depend on stamp-init.
3536         (stamp-init): New rule, from init.c rule.
3537         (clean mostlyclean): Remove stamp-init.
3538
3539 2018-07-09  Tom Tromey  <tom@tromey.com>
3540
3541         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
3542         SUBDIR_GCC_COMPILE_SRCS.
3543
3544 2018-07-09  Tom Tromey  <tom@tromey.com>
3545
3546         * Makefile.in (init.c): Remove some unused sed rules.
3547
3548 2018-07-09  Tom Tromey  <tom@tromey.com>
3549
3550         * Makefile.in (TSOBS): Remove.
3551         (INIT_FILES): Update.
3552         (LIBGDB_OBS): Update.
3553         (COMMON_SFILES): Add inflow.c.
3554         (SFILES): Remove inflow.c.
3555
3556 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
3557
3558         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
3559
3560 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
3561
3562         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
3563         get_saveloc_name, is_signal_frame_name, step_name,
3564         init_remote_name, create_addr_space_name,
3565         destroy_addr_space_name, search_unwind_table_name,
3566         find_dyn_list_name): Constify.
3567
3568 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
3569
3570         * darwin-nat.c (darwin_pthread_kill): New function.
3571         (darwin_resume_thread): Use darwin_pthread_kill.
3572
3573 2018-07-05  Tom de Vries  <tdevries@suse.de>
3574
3575         * macroexp.c (macro_buffer) <operator=>: New member function.
3576
3577 2018-07-04  Tom Tromey  <tom@tromey.com>
3578
3579         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
3580
3581 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
3582
3583         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
3584         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
3585         * maint.c: Likewise.
3586         * top.c: Likewise.
3587
3588 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
3589
3590         * NEWS: Create a new section for the next release branch.
3591         Rename the section of the current branch, now that it has
3592         been cut.
3593
3594 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
3595
3596         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
3597         * version.in: Bump version to 8.2.50.DATE-git.
3598
3599 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
3600             Pedro Alves  <palves@redhat.com>
3601
3602         * linux-nat.c (linux_init_ptrace): Rename to ...
3603         (linux_init_ptrace_procfs): ... this.  Call
3604         linux_proc_init_warnings.
3605         (linux_nat_target::post_attach)
3606         (linux_nat_target::post_startup_inferior): Adjust.
3607         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
3608         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
3609
3610 2018-07-04  Tom de Vries  <tdevries@suse.de>
3611
3612         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
3613         check ...
3614         (read_comp_unit_head): ... here.
3615
3616 2018-07-03  Tom Tromey  <tom@tromey.com>
3617
3618         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
3619         (stop_tracing, tstatus_command)
3620         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
3621         (print_one_static_tracepoint_marker): Update.
3622         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
3623         std::vector.
3624         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
3625         VEC.
3626         (all_tracepoints, static_tracepoints_here): Return std::vector.
3627
3628 2018-07-03  Tom Tromey  <tom@tromey.com>
3629
3630         * common/ptid.c (ptid_equal): Remove.
3631         * common/ptid.h (ptid_equal): Don't declare.
3632         * ada-tasks.c: Update.
3633         * breakpoint.c: Update.
3634         * common/agent.c: Update.
3635         * corelow.c: Update.
3636         * darwin-nat-info.c: Update.
3637         * darwin-nat.c: Update.
3638         * dcache.c: Update.
3639         * dtrace-probe.c: Update.
3640         * dummy-frame.c: Update.
3641         * fbsd-nat.c: Update.
3642         * frame.c: Update.
3643         * gdbthread.h: Update.
3644         * gnu-nat.c: Update.
3645         * go32-nat.c: Update.
3646         * inf-loop.c: Update.
3647         * inf-ptrace.c: Update.
3648         * infcall.c: Update.
3649         * infcmd.c: Update.
3650         * inflow.c: Update.
3651         * infrun.c: Update.
3652         * linux-fork.c: Update.
3653         * linux-nat.c: Update.
3654         * linux-thread-db.c: Update.
3655         * mi/mi-cmd-var.c: Update.
3656         * mi/mi-interp.c: Update.
3657         * mi/mi-main.c: Update.
3658         * nto-procfs.c: Update.
3659         * ppc-linux-tdep.c: Update.
3660         * procfs.c: Update.
3661         * python/py-inferior.c: Update.
3662         * python/py-record-btrace.c: Update.
3663         * python/py-record.c: Update.
3664         * ravenscar-thread.c: Update.
3665         * regcache.c: Update.
3666         * remote-sim.c: Update.
3667         * remote.c: Update.
3668         * sol-thread.c: Update.
3669         * solib.c: Update.
3670         * target.c: Update.
3671         * tui/tui-stack.c: Update.
3672         * varobj.c: Update.
3673         * windows-nat.c: Update.
3674         * windows-tdep.c: Update.
3675
3676 2018-07-03  Tom Tromey  <tom@tromey.com>
3677
3678         * common/ptid.c (ptid_match): Remove.
3679         * common/ptid.h (ptid_match): Don't declare.
3680         * fbsd-nat.c: Update.
3681         * infcmd.c: Update.
3682         * infrun.c: Update.
3683         * linux-nat.c: Update.
3684         * record-btrace.c: Update.
3685         * regcache.c: Update.
3686         * remote.c: Update.
3687
3688 2018-07-03  Tom Tromey  <tom@tromey.com>
3689
3690         * common/ptid.c (ptid_tid_p): Remove.
3691         * common/ptid.h (ptid_tid_p): Don't declare.
3692         * sol-thread.c: Update.
3693
3694 2018-07-03  Tom Tromey  <tom@tromey.com>
3695
3696         * common/ptid.c (ptid_lwp_p): Remove.
3697         * common/ptid.h (ptid_lwp_p): Don't declare.
3698         * fbsd-nat.c: Update.
3699         * linux-nat.c: Update.
3700         * nat/linux-procfs.c: Update.
3701         * nat/x86-linux-dregs.c: Update.
3702         * sol-thread.c: Update.
3703
3704 2018-07-03  Tom Tromey  <tom@tromey.com>
3705
3706         * common/ptid.c (ptid_is_pid): Remove.
3707         * common/ptid.h (ptid_is_pid): Don't declare.
3708         * infrun.c: Update.
3709         * linux-nat.c: Update.
3710         * mi/mi-interp.c: Update.
3711         * remote.c: Update.
3712         * thread.c: Update.
3713
3714 2018-07-03  Tom Tromey  <tom@tromey.com>
3715
3716         * common/ptid.c (ptid_get_tid): Remove.
3717         * common/ptid.h (ptid_get_tid): Don't declare.
3718         * ada-tasks.c: Update.
3719         * aix-thread.c: Update.
3720         * bsd-uthread.c: Update.
3721         * darwin-nat.c: Update.
3722         * fbsd-nat.c: Update.
3723         * i386-darwin-nat.c: Update.
3724         * infrun.c: Update.
3725         * linux-tdep.c: Update.
3726         * nto-procfs.c: Update.
3727         * ppc-ravenscar-thread.c: Update.
3728         * python/py-infthread.c: Update.
3729         * ravenscar-thread.c: Update.
3730         * sol-thread.c: Update.
3731         * sparc-ravenscar-thread.c: Update.
3732         * windows-nat.c: Update.
3733
3734 2018-07-03  Tom Tromey  <tom@tromey.com>
3735
3736         * common/ptid.c (ptid_get_lwp): Remove.
3737         * common/ptid.h (ptid_get_lwp): Don't declare.
3738         * aarch64-linux-nat.c: Update.
3739         * ada-tasks.c: Update.
3740         * aix-thread.c: Update.
3741         * amd64-linux-nat.c: Update.
3742         * arm-linux-nat.c: Update.
3743         * corelow.c: Update.
3744         * fbsd-nat.c: Update.
3745         * fbsd-tdep.c: Update.
3746         * gnu-nat.c: Update.
3747         * i386-cygwin-tdep.c: Update.
3748         * i386-gnu-nat.c: Update.
3749         * i386-linux-nat.c: Update.
3750         * ia64-linux-nat.c: Update.
3751         * inf-ptrace.c: Update.
3752         * infrun.c: Update.
3753         * linux-fork.c: Update.
3754         * linux-nat.c: Update.
3755         * linux-tdep.c: Update.
3756         * linux-thread-db.c: Update.
3757         * mips-linux-nat.c: Update.
3758         * nat/aarch64-linux-hw-point.c: Update.
3759         * nat/aarch64-linux.c: Update.
3760         * nat/linux-btrace.c: Update.
3761         * nat/linux-osdata.c: Update.
3762         * nat/linux-procfs.c: Update.
3763         * nat/x86-linux-dregs.c: Update.
3764         * obsd-nat.c: Update.
3765         * ppc-fbsd-nat.c: Update.
3766         * ppc-linux-nat.c: Update.
3767         * procfs.c: Update.
3768         * python/py-infthread.c: Update.
3769         * ravenscar-thread.c: Update.
3770         * remote.c: Update.
3771         * s390-linux-nat.c: Update.
3772         * sol-thread.c: Update.
3773         * sol2-tdep.c: Update.
3774         * spu-linux-nat.c: Update.
3775         * x86-linux-nat.c: Update.
3776         * xtensa-linux-nat.c: Update.
3777
3778 2018-07-03  Tom Tromey  <tom@tromey.com>
3779
3780         * common/ptid.c (ptid_get_pid): Remove.
3781         * common/ptid.h (ptid_get_pid): Don't declare.
3782         * aarch64-linux-nat.c: Update.
3783         * ada-lang.c: Update.
3784         * aix-thread.c: Update.
3785         * alpha-bsd-nat.c: Update.
3786         * amd64-fbsd-nat.c: Update.
3787         * amd64-linux-nat.c: Update.
3788         * arm-linux-nat.c: Update.
3789         * arm-nbsd-nat.c: Update.
3790         * auxv.c: Update.
3791         * break-catch-syscall.c: Update.
3792         * breakpoint.c: Update.
3793         * bsd-uthread.c: Update.
3794         * corelow.c: Update.
3795         * ctf.c: Update.
3796         * darwin-nat.c: Update.
3797         * fbsd-nat.c: Update.
3798         * fbsd-tdep.c: Update.
3799         * gcore.c: Update.
3800         * gnu-nat.c: Update.
3801         * hppa-nbsd-nat.c: Update.
3802         * hppa-obsd-nat.c: Update.
3803         * i386-fbsd-nat.c: Update.
3804         * ia64-linux-nat.c: Update.
3805         * inf-ptrace.c: Update.
3806         * infcmd.c: Update.
3807         * inferior.c: Update.
3808         * inferior.h: Update.
3809         * inflow.c: Update.
3810         * infrun.c: Update.
3811         * linux-fork.c: Update.
3812         * linux-nat.c: Update.
3813         * linux-tdep.c: Update.
3814         * linux-thread-db.c: Update.
3815         * m68k-bsd-nat.c: Update.
3816         * mi/mi-interp.c: Update.
3817         * mi/mi-main.c: Update.
3818         * mips-linux-nat.c: Update.
3819         * mips-nbsd-nat.c: Update.
3820         * mips64-obsd-nat.c: Update.
3821         * nat/aarch64-linux-hw-point.c: Update.
3822         * nat/aarch64-linux.c: Update.
3823         * nat/linux-btrace.c: Update.
3824         * nat/linux-osdata.c: Update.
3825         * nat/linux-procfs.c: Update.
3826         * nat/x86-linux-dregs.c: Update.
3827         * nto-procfs.c: Update.
3828         * obsd-nat.c: Update.
3829         * ppc-linux-nat.c: Update.
3830         * ppc-nbsd-nat.c: Update.
3831         * ppc-obsd-nat.c: Update.
3832         * proc-service.c: Update.
3833         * procfs.c: Update.
3834         * python/py-inferior.c: Update.
3835         * python/py-infthread.c: Update.
3836         * ravenscar-thread.c: Update.
3837         * record.c: Update.
3838         * remote-sim.c: Update.
3839         * remote.c: Update.
3840         * rs6000-nat.c: Update.
3841         * s390-linux-nat.c: Update.
3842         * sh-nbsd-nat.c: Update.
3843         * sol-thread.c: Update.
3844         * sparc-nat.c: Update.
3845         * sparc64-tdep.c: Update.
3846         * spu-linux-nat.c: Update.
3847         * spu-tdep.c: Update.
3848         * target-debug.h: Update.
3849         * target.c: Update.
3850         * thread.c: Update.
3851         * tid-parse.c: Update.
3852         * tracefile-tfile.c: Update.
3853         * vax-bsd-nat.c: Update.
3854         * windows-nat.c: Update.
3855         * x86-linux-nat.c: Update.
3856         * x86-nat.c: Update.
3857
3858 2018-07-03  Tom Tromey  <tom@tromey.com>
3859
3860         * common/ptid.c (pid_to_ptid): Remove.
3861         * common/ptid.h (pid_to_ptid): Don't declare.
3862         * aix-thread.c: Update.
3863         * arm-linux-nat.c: Update.
3864         * common/ptid.c: Update.
3865         * common/ptid.h: Update.
3866         * corelow.c: Update.
3867         * ctf.c: Update.
3868         * darwin-nat.c: Update.
3869         * fbsd-nat.c: Update.
3870         * fork-child.c: Update.
3871         * gnu-nat.c: Update.
3872         * go32-nat.c: Update.
3873         * inf-ptrace.c: Update.
3874         * infcmd.c: Update.
3875         * inferior.c: Update.
3876         * infrun.c: Update.
3877         * linux-fork.c: Update.
3878         * linux-nat.c: Update.
3879         * nat/aarch64-linux-hw-point.c: Update.
3880         * nat/fork-inferior.c: Update.
3881         * nat/x86-linux-dregs.c: Update.
3882         * nto-procfs.c: Update.
3883         * obsd-nat.c: Update.
3884         * procfs.c: Update.
3885         * progspace.c: Update.
3886         * remote.c: Update.
3887         * rs6000-nat.c: Update.
3888         * s390-linux-nat.c: Update.
3889         * sol-thread.c: Update.
3890         * spu-linux-nat.c: Update.
3891         * target.c: Update.
3892         * top.c: Update.
3893         * tracefile-tfile.c: Update.
3894         * windows-nat.c: Update.
3895
3896 2018-07-03  Tom Tromey  <tom@tromey.com>
3897
3898         * common/ptid.h (ptid_build): Don't declare.
3899         * common/ptid.c (ptid_build): Remove.
3900         * aix-thread.c: Update.
3901         * bsd-kvm.c: Update.
3902         * bsd-uthread.c: Update.
3903         * common/agent.c: Update.
3904         * common/ptid.c: Update.
3905         * common/ptid.h: Update.
3906         * corelow.c: Update.
3907         * darwin-nat.c: Update.
3908         * fbsd-nat.c: Update.
3909         * gnu-nat.c: Update.
3910         * linux-fork.c: Update.
3911         * linux-nat.c: Update.
3912         * linux-thread-db.c: Update.
3913         * nat/linux-osdata.c: Update.
3914         * nat/linux-procfs.c: Update.
3915         * nto-procfs.c: Update.
3916         * obsd-nat.c: Update.
3917         * proc-service.c: Update.
3918         * procfs.c: Update.
3919         * ravenscar-thread.c: Update.
3920         * remote-sim.c: Update.
3921         * remote.c: Update.
3922         * sol-thread.c: Update.
3923         * target.c: Update.
3924         * windows-nat.c: Update.
3925
3926 2018-07-03  Tom Tromey  <tom@tromey.com>
3927
3928         * infrun.c (follow_exec): Use exit_inferior_silent.
3929         * inferior.c (exit_inferior_num_silent): Remove.
3930         * inferior.h (exit_inferior_num_silent): Don't declare.
3931
3932 2018-07-03  Tom Tromey  <tom@tromey.com>
3933
3934         PR cli/23340:
3935         * darwin-nat.c (darwin_attach_pid): Reset inferior and
3936         inferior_ptid on error.
3937
3938 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
3939             Simon Marchi  <simon.marchi@polymtl.ca>
3940
3941         PR tdep/8282
3942         * disasm.h (gdb_disassembler): Add
3943         `m_disassembler_options_holder'. member
3944         * disasm.c (get_all_disassembler_options): New function.
3945         (gdb_disassembler::gdb_disassembler): Use it.
3946         (gdb_buffered_insn_length_init_dis): Likewise.
3947         (gdb_buffered_insn_length): Adjust accordingly.
3948         (set_disassembler_options): Handle options with arguments.
3949         (show_disassembler_options_sfunc): Likewise.  Add a leading new
3950         line if showing options with descriptions.
3951         (disassembler_options_completer): Adapt to using the
3952         `disasm_options_and_args_t' structure.
3953         * mips-tdep.c (mips_disassembler_options): New variable.
3954         (mips_disassembler_options_o32): Likewise.
3955         (mips_disassembler_options_n32): Likewise.
3956         (mips_disassembler_options_n64): Likewise.
3957         (gdb_print_insn_mips): Don't set `disassembler_options'.
3958         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
3959         functions.
3960         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
3961         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
3962         `gdbarch_disassembler_options_implicit' and
3963         `gdbarch_valid_disassembler_options'.
3964         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
3965         `disasm_options_and_args_t' structure.
3966         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
3967         method.
3968         (valid_disassembler_options): Switch from `disasm_options_t' to
3969         the `disasm_options_and_args_t' structure.
3970         * NEWS: Document `set disassembler-options' support for the MIPS
3971         target.
3972         * gdbarch.h: Regenerate.
3973         * gdbarch.c: Regenerate.
3974
3975 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
3976
3977         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
3978
3979 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
3980
3981         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
3982         parameter in call to amd64_target_description.
3983         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
3984         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
3985         (amd64fbsd_init_abi): Likewise.
3986         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
3987         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
3988         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
3989         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
3990
3991 2018-06-29  Pedro Alves  <palves@redhat.com>
3992
3993         * gdb/amd64-tdep.h (amd64_create_target_description): Add
3994         "segments" parameter.
3995         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
3996         (_initialize_amd64_tdep): Update call to
3997         amd64_create_target_description.
3998         (amd64_target_description): Add "segments" parameter.  Adjust
3999         the implementation to use it.
4000         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
4001         call to amd64_create_target_description.
4002         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
4003         * gdb/arch/amd64.h (amd64_create_target_description): Add
4004         "segments" register.
4005         * gdb/arch/amd64.c (amd64_create_target_description): Add
4006         "segments" parameter.  Call create_feature_i386_64bit_segments
4007         only if SEGMENTS is true.
4008         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
4009         call to amd64_create_target_description.
4010
4011 2018-06-29  Pedro Alves  <palves@redhat.com>
4012
4013         * thread.c (thread_target_id_str): New, factored out from ...
4014         (print_thread_info_1): ... here.  Use it to compute the max
4015         "Target Id" column width.
4016
4017 2018-06-29  Pedro Alves  <palves@redhat.com>
4018
4019         * remote.c (remote_target::extra_thread_info): Delete
4020         'display_buf' and 'n' locals.  from the cache, regardless of
4021         packet mechanims is in use.  Use cache for qThreadExtra and qP
4022         methods too.
4023
4024 2018-06-29  Pedro Alves  <palves@redhat.com>
4025
4026         * blockframe.c (find_pc_sect_containing_function): New function.
4027         * breakpoint.c (print_breakpoint_location): Don't call
4028         find_pc_sect_function.
4029         * linespec.c (create_sals_line_offset): Record the location's
4030         symbol in the sal.
4031         * linespec.c (convert_address_location_to_sals): Fill in sal's
4032         symbol with find_pc_sect_containing_function.
4033         * symtab.c (find_function_start_sal): Rename to ...
4034         (find_function_start_sal_1): ... this.
4035         (find_function_start_sal): Reimplement as wrapper around
4036         find_function_start_sal_1, and use
4037         find_pc_sect_containing_function to fill in the sal's symbol.
4038         (find_function_start_sal(symbol*, bool)): Adjust.
4039         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
4040         comments.
4041         (find_pc_sect_containing_function): Declare.
4042
4043 2018-06-29  Pedro Alves  <palves@redhat.com>
4044
4045         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
4046         true if the the location has no symbol.
4047
4048 2018-06-28  Tom Tromey  <tom@tromey.com>
4049
4050         * NEWS: Mention --enable-codesign.
4051         * silent-rules.mk (ECHO_SIGN): New variable.
4052         * configure.ac: Add --enable-codesign.
4053         * configure: Rebuild.
4054         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
4055         (gdb$(EXEEXT)): Optionally invoke codesign.
4056
4057 2018-06-28  Pedro Alves  <palves@redhat.com>
4058
4059         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
4060         comments.
4061         (switch_to_thread_no_regs): Adjust comment.
4062         * infcmd.c (stop_pc): Delete.
4063         (post_create_inferior, info_program_command): Replace references
4064         to stop_pc with references to thread_info->suspend.stop_pc.
4065         * inferior.h (stop_pc): Delete declaration.
4066         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
4067         (handle_inferior_event_1, handle_signal_stop)
4068         (process_event_stop_test, keep_going_stepped_thread)
4069         (handle_step_into_function, handle_step_into_function_backward)
4070         (print_stop_location): Replace references to stop_pc with
4071         references to thread_info->suspend.stop_pc.
4072         (struct infcall_suspend_state) <stop_pc>: Delete field.
4073         (save_infcall_suspend_state, restore_infcall_suspend_state):
4074         Remove references to inf_stat->stop_pc.
4075         * linux-fork.c (fork_load_infrun_state): Likewise.
4076         * record-btrace.c (record_btrace_set_replay): Likewise.
4077         * record-full.c (record_full_goto_entry): Likewise.
4078         * remote.c (print_one_stopped_thread): Likewise.
4079         * target.c (target_resume): Extend comment.
4080         * thread.c (set_executing_thread): New.
4081         (set_executing): Use it.
4082         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
4083         Remove references to stop_pc.
4084
4085 2018-06-28  Pedro Alves  <palves@redhat.com>
4086
4087         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
4088         Moving fetching stop_pc until after ecs->event_thread is refreshed.
4089
4090 2018-06-28  Tom Tromey  <tom@tromey.com>
4091
4092         * coffread.c (coff_symfile_finish): Update.
4093         * xcoffread.c (xcoff_symfile_finish): Update.
4094         * elfread.c (elf_symfile_finish): Update.
4095         * symfile.h (dwarf2_free_objfile): Don't declare.
4096         * dwarf2read.c (_initialize_dwarf2_read): Use
4097         register_objfile_data_with_cleanup.
4098         (dwarf2_free_objfile): Now static.  Change signature.
4099
4100 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4101
4102         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
4103         option "-o" to add-symbol-file-load to add an offset to each
4104         section's load address.
4105         * symfile.c (set_objfile_default_section_offset): New function.
4106
4107 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4108
4109         * symfile.c (add_symbol_file_command): Make sure that sections
4110         with the same name are sorted in the same order.
4111
4112 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4113
4114         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
4115         require the second argument.  If omitted, load sections at the
4116         addresses specified in the file.
4117
4118 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4119
4120         * symfile.c (symbol_file_command, symbol_file_add_main_1)
4121         (_initialize_symfile): Add option "-o" to symbol-file to add an
4122         offset to each section of the symbol file.
4123
4124 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4125
4126         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
4127
4128 2018-06-27  Tom Tromey  <tom@tromey.com>
4129
4130         * stack.c (_initialize_stack): Update "func" help text.
4131
4132 2018-06-27  Tom Tromey  <tom@tromey.com>
4133
4134         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
4135         std::vector.
4136         (unwind_infopy_str, pyuw_create_unwind_info)
4137         (unwind_infopy_add_saved_register, pyuw_sniffer)
4138         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
4139         Update.
4140         (struct saved_reg): Add constructor.
4141         <value>: Now a gdbpy_ref<>.
4142
4143 2018-06-27  Tom Tromey  <tom@tromey.com>
4144
4145         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
4146
4147 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4148
4149         * gdb-gdb.py.in: Format using autopep8.
4150
4151 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4152
4153         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
4154         (type_lookup_function): Recognize CORE_ADDR values.
4155
4156 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4157
4158         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
4159         print tag_name.
4160
4161 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4162
4163         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
4164         <__lt__>: Add.
4165
4166 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4167
4168         * gdb-gdb.py: Move to...
4169         * gdb-gdb.py.in: ... here.
4170         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
4171         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
4172         dependencies.
4173         (distclean): Remove gdb-gdb.py when cleaning.
4174         (gdb-gdb.py, gdb-gdb.gdb): New rules.
4175         * configure: Re-generate.
4176
4177 2018-06-27  Pedro Alves  <palves@redhat.com>
4178
4179         * proc-service.c (get_ps_regcache): New.
4180         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
4181         (ps_lsetfpregs): Use it.
4182
4183 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
4184
4185         PR gdb/21695
4186         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
4187         (dwarf_decode_lines_1): Adjust.
4188
4189 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4190
4191         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
4192         override.
4193         <info_proc>: Likewise.
4194
4195 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
4196
4197         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
4198         to windows_fetch_one_register, and only handle the case of
4199         fetching one register.  Move the code that reloads the context
4200         and iterates over all registers if R is negative to...
4201         (windows_nat_target::fetch_registers): ... here.
4202         (do_windows_store_inferior_registers): Rename to
4203         windows_store_one_register, and only handle the case of storing
4204         one register.  Move the code that handles the case where r is
4205         negative to...
4206         (windows_nat_target::store_registers) ... here.
4207
4208 2018-06-26  Tom Tromey  <tom@tromey.com>
4209
4210         PR rust/22574:
4211         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
4212         * rust-lang.c (rust_print_struct_def): Add podata parameter.
4213         Update.
4214         (rust_internal_print_type): Add podata parameter.
4215         (rust_print_type): Update.
4216
4217 2018-06-26  Tom Tromey  <tom@tromey.com>
4218
4219         * typeprint.h (struct print_offset_data) <update, finish,
4220         maybe_print_hole>: New methods.
4221         <indentation>: New constant.
4222         * typeprint.c (print_offset_data::indentation): Define.
4223         (print_offset_data::maybe_print_hole, print_offset_data::update)
4224         (print_offset_data::finish): Move from c-typeprint.c and rename.
4225         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
4226         (print_spaces_filtered_with_print_options): Update.
4227         (c_print_type_union_field_offset, maybe_print_hole)
4228         (c_print_type_struct_field_offset): Move to typeprint.c and
4229         rename.
4230         (c_type_print_base_struct_union): Update.
4231
4232 2018-06-25  Pedro Alves  <palves@redhat.com>
4233
4234         * gdbthread.h (thread_info_ref, delete_thread)
4235         (delete_thread_silent, first_thread_of_inferior)
4236         (any_thread_of_inferior, switch_to_thread)
4237         (enable_thread_stack_temporaries)
4238         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
4239         (get_last_thread_stack_temporary)
4240         (value_in_thread_stack_temporaries, can_access_registers_thread):
4241         Spell out "struct thread_info" instead of just "thread_info".
4242         * inferior.h (notice_new_inferior): Likewise.
4243
4244 2018-06-25  Pedro Alves  <palves@redhat.com>
4245
4246         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
4247         pass thread_info pointer to delete_thread.
4248         (windows_nat_target::detach): Pass inferior pointer to
4249         detach_inferior.
4250         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
4251         delete_thread.
4252         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
4253         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
4254         and pass a thread_info pointer to delete_thread.
4255         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
4256         pass thread_info pointer to delete_thread.
4257         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
4258         delete_thread_silent call.
4259         * procfs.c (procfs_target::detach): Pass inferior pointer to
4260         detach_inferior.
4261         (procfs_target::wait): Pass thread_info pointer to delete_thread.
4262         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
4263         delete_thread_silent call.
4264         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
4265         pass thread_info pointer to delete_thread.
4266         (windows_nat_target::detach): Pass inferior pointer to
4267         delete_inferior.
4268
4269 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
4270
4271         * regcache.c (readable_regcache::read_part): Fix asserts.
4272         (reg_buffer::raw_collect_part): New function.
4273         (regcache::write_part): Fix asserts.
4274         (reg_buffer::raw_supply_part): New function.
4275         (regcache::transfer_regset_register): New helper function.
4276         (regcache::transfer_regset): Call new functions.
4277         (regcache_supply_regset): Use gdb_byte*.
4278         (regcache::supply_regset): Likewise.
4279         (regcache_collect_regset): Likewise.
4280         (regcache::collect_regset): Likewise.
4281         * regcache.h (reg_buffer::raw_collect_part): New declaration.
4282         (reg_buffer::raw_supply_part): Likewise.
4283         (regcache::transfer_regset_register): Likewise.
4284         (regcache::transfer_regset): Use gdb_byte*.
4285
4286 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
4287
4288         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
4289
4290 2018-06-21  Pedro Alves  <palves@redhat.com>
4291
4292         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
4293         instead of a ptid_t.  All callers adjusted.
4294         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
4295         adjusted.
4296         (print_ada_task_info, display_current_task_id, task_command_1):
4297         Adjust.
4298         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
4299         inferior_thread.
4300         (breakpoint_kind): Adjust.
4301         (remove_breakpoints_pid): Rename to ...
4302         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
4303         pointer.  All callers adjusted.
4304         (bpstat_clear_actions): Use inferior_thread.
4305         (get_bpstat_thread): New.
4306         (bpstat_do_actions): Use it.
4307         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
4308         to take a thread_info pointer.  All callers adjusted.
4309         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
4310         (breakpoint_re_set_thread): Use inferior_thread.
4311         * breakpoint.h (struct inferior): Forward declare.
4312         (bpstat_stop_status): Update.
4313         (remove_breakpoints_pid): Delete.
4314         (remove_breakpoints_inf): New.
4315         * bsd-uthread.c (bsd_uthread_target::wait)
4316         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
4317         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
4318         (maint_btrace_packet_history_cmd)
4319         (maint_btrace_clear_packet_history_cmd): Adjust.
4320         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
4321         inferior_thread.
4322         * cli/cli-interp.c: Include "inferior.h".
4323         * common/refcounted-object.h (struct
4324         refcounted_object_ref_policy): New.
4325         * compile/compile-object-load.c: Include gdbthread.h.
4326         (store_regs): Use inferior_thread.
4327         * corelow.c (core_target::close): Use current_inferior.
4328         (core_target_open): Adjust to use first_thread_of_inferior and use
4329         the current inferior.
4330         * ctf.c (ctf_target::close): Adjust to use current_inferior.
4331         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
4332         <thread>: ... this new field.  All references adjusted.
4333         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
4334         Take a thread_info pointer instead of a ptid_t.
4335         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
4336         (dummy_frame_discard, register_dummy_frame_dtor): Take a
4337         thread_info pointer instead of a ptid_t.
4338         * elfread.c: Include "inferior.h".
4339         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
4340         Use inferior_thread.
4341         * eval.c (evaluate_subexp): Likewise.
4342         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
4343         inferior_thread.
4344         * gdb_proc_service.h (struct thread_info): Forward declare.
4345         (struct ps_prochandle) <ptid>: Delete, replaced by ...
4346         <thread>: ... this new field.  All references adjusted.
4347         * gdbarch.h, gdbarch.c: Regenerate.
4348         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
4349         'thread' parameter.  All implementations and callers adjusted.
4350         * gdbthread.h (thread_info) <set_running>: New method.
4351         (delete_thread, delete_thread_silent): Take a thread_info pointer
4352         instead of a ptid.
4353         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
4354         (first_thread_of_process): Delete, replaced by ...
4355         (first_thread_of_inferior): ... this new function.  All callers
4356         adjusted.
4357         (any_live_thread_of_process): Delete, replaced by ...
4358         (any_live_thread_of_inferior): ... this new function.  All callers
4359         adjusted.
4360         (switch_to_thread, switch_to_no_thread): Declare.
4361         (is_executing): Delete.
4362         (enable_thread_stack_temporaries): Update comment.
4363         <enable_thread_stack_temporaries>: Take a thread_info pointer
4364         instead of a ptid_t.  Incref the thread.
4365         <~enable_thread_stack_temporaries>: Decref the thread.
4366         <m_ptid>: Delete
4367         <m_thr>: New.
4368         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
4369         (get_last_thread_stack_temporary)
4370         (value_in_thread_stack_temporaries, can_access_registers_thread):
4371         Take a thread_info pointer instead of a ptid_t.  All callers
4372         adjusted.
4373         * infcall.c (get_call_return_value): Use inferior_thread.
4374         (run_inferior_call): Work with thread pointers instead of ptid_t.
4375         (call_function_by_hand_dummy): Work with thread pointers instead
4376         of ptid_t.  Use thread_info_ref.
4377         * infcmd.c (proceed_thread_callback): Access thread's state
4378         directly.
4379         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
4380         access thread's state directly.
4381         (continue_command): Use inferior_thread.
4382         (info_program_command): Use find_thread_ptid and access thread
4383         state directly.
4384         (proceed_after_attach_callback): Use thread state directly.
4385         (notice_new_inferior): Take a thread_info pointer instead of a
4386         ptid_t.  All callers adjusted.
4387         (exit_inferior): Take an inferior pointer instead of a pid.  All
4388         callers adjusted.
4389         (exit_inferior_silent): New.
4390         (detach_inferior): Delete.
4391         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
4392         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
4393         (detach_inferior_command, kill_inferior_command): Use
4394         find_inferior_id instead of valid_gdb_inferior_id and
4395         gdb_inferior_id_to_pid.
4396         (inferior_command): Use inferior and thread pointers.
4397         * inferior.h (struct thread_info): Forward declare.
4398         (notice_new_inferior): Take a thread_info pointer instead of a
4399         ptid_t.  All callers adjusted.
4400         (detach_inferior): Delete declaration.
4401         (exit_inferior, exit_inferior_silent): Take an inferior pointer
4402         instead of a pid.  All callers adjusted.
4403         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
4404         (valid_gdb_inferior_id): Delete.
4405         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
4406         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
4407         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
4408         ...
4409         <inf>: ... this new field.
4410         <step_ptid>: Delete, replaced by ...
4411         <step_thread>: ... this new field.
4412         (get_displaced_stepping_state): Take an inferior pointer instead
4413         of a pid.  All callers adjusted.
4414         (displaced_step_in_progress_any_inferior): Adjust.
4415         (displaced_step_in_progress_thread): Take a thread pointer instead
4416         of a ptid_t.  All callers adjusted.
4417         (displaced_step_in_progress, add_displaced_stepping_state): Take
4418         an inferior pointer instead of a pid.  All callers adjusted.
4419         (get_displaced_step_closure_by_addr): Adjust.
4420         (remove_displaced_stepping_state): Take an inferior pointer
4421         instead of a pid.  All callers adjusted.
4422         (displaced_step_prepare_throw, displaced_step_prepare)
4423         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
4424         All callers adjusted.
4425         (start_step_over): Adjust.
4426         (infrun_thread_ptid_changed): Remove bit updating ptids in the
4427         displaced step queue.
4428         (do_target_resume): Adjust.
4429         (fetch_inferior_event): Use inferior_thread.
4430         (context_switch, get_inferior_stop_soon): Take an
4431         execution_control_state pointer instead of a ptid_t.  All callers
4432         adjusted.
4433         (switch_to_thread_cleanup): Delete.
4434         (stop_all_threads): Use scoped_restore_current_thread.
4435         * inline-frame.c: Include "gdbthread.h".
4436         (inline_state) <inline_state>: Take a thread pointer instead of a
4437         ptid_t.  All callers adjusted.
4438         <ptid>: Delete, replaced by ...
4439         <thread>: ... this new field.
4440         (find_inline_frame_state): Take a thread pointer instead of a
4441         ptid_t.  All callers adjusted.
4442         (skip_inline_frames, step_into_inline_frame)
4443         (inline_skipped_frames, inline_skipped_symbol): Take a thread
4444         pointer instead of a ptid_t.  All callers adjusted.
4445         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
4446         (inline_skipped_frames, inline_skipped_symbol): Likewise.
4447         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
4448         pointers directly.
4449         * linux-nat.c (get_detach_signal): Likewise.
4450         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
4451         (thread_db_notice_clone): Adjust.
4452         (thread_db_find_new_threads_silently)
4453         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
4454         a thread pointer instead of a ptid_t.  All callers adjusted.
4455         * mi/mi-cmd-var.c: Include "inferior.h".
4456         (mi_cmd_var_update_iter): Update to use thread pointers.
4457         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
4458         inferior directly.
4459         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
4460         out to ...
4461         (mi_output_running): ... this new function.
4462         (mi_on_resume_1): Adjust to use it.
4463         (mi_user_selected_context_changed): Adjust to use inferior_thread.
4464         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
4465         directly.
4466         (interrupt_thread_callback): : Adjust to use thread and inferior
4467         pointers.
4468         * proc-service.c: Include "gdbthread.h".
4469         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
4470         * progspace-and-thread.c: Include "inferior.h".
4471         * progspace.c: Include "inferior.h".
4472         * python/py-exitedevent.c (create_exited_event_object): Adjust to
4473         hold a reference to an inferior_object.
4474         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
4475         inferior_thread.
4476         * python/py-inferior.c (struct inferior_object): Give the type a
4477         tag name instead of a typedef.
4478         (python_on_normal_stop): No need to check if the current thread is
4479         listed.
4480         (inferior_to_inferior_object): Change return type to
4481         inferior_object.  All callers adjusted.
4482         (find_thread_object): Delete, bits factored out to ...
4483         (thread_to_thread_object): ... this new function.
4484         * python/py-infthread.c (create_thread_object): Use
4485         inferior_to_inferior_object.
4486         (thpy_is_stopped): Use thread pointer directly.
4487         (gdbpy_selected_thread): Use inferior_thread.
4488         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
4489         field, replaced with ...
4490         <thread>: ... this new field.  All users adjusted.
4491         (btpy_insn_or_gap_new): Drop const.
4492         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
4493         callers adjusted.
4494         * python/py-record.c: Include "gdbthread.h".
4495         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
4496         a ptid_t.  All callers adjusted.
4497         (gdbpy_current_recording): Use inferior_thread.
4498         * python/py-record.h (recpy_record_object) <ptid>: Delete
4499         field, replaced with ...
4500         <thread>: ... this new field.  All users adjusted.
4501         (recpy_element_object) <ptid>: Delete
4502         field, replaced with ...
4503         <thread>: ... this new field.  All users adjusted.
4504         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
4505         a ptid_t.  All callers adjusted.
4506         * python/py-threadevent.c: Include "gdbthread.h".
4507         (get_event_thread): Use thread_to_thread_object.
4508         * python/python-internal.h (struct inferior_object): Forward
4509         declare.
4510         (find_thread_object, find_inferior_object): Delete declarations.
4511         (thread_to_thread_object, inferior_to_inferior_object): New
4512         declarations.
4513         * record-btrace.c: Include "inferior.h".
4514         (require_btrace_thread): Use inferior_thread.
4515         (record_btrace_frame_sniffer)
4516         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
4517         (get_thread_current_frame): Use scoped_restore_current_thread and
4518         switch_to_thread.
4519         (get_thread_current_frame): Use thread pointer directly.
4520         (record_btrace_replay_at_breakpoint): Use thread's inferior
4521         pointer directly.
4522         * record-full.c: Include "inferior.h".
4523         * regcache.c: Include "gdbthread.h".
4524         (get_thread_arch_regcache): Use the inferior's address space
4525         directly.
4526         (get_thread_regcache, registers_changed_thread): New.
4527         * regcache.h (get_thread_regcache(thread_info *thread)): New
4528         overload.
4529         (registers_changed_thread): New.
4530         (remote_target) <remote_detach_1>: Swap order of parameters.
4531         (remote_add_thread): <remote_add_thread>: Return the new thread.
4532         (get_remote_thread_info(ptid_t)): New overload.
4533         (remote_target::remote_notice_new_inferior): Use thread pointers
4534         directly.
4535         (remote_target::process_initial_stop_replies): Use
4536         thread_info::set_running.
4537         (remote_target::remote_detach_1, remote_target::detach)
4538         (extended_remote_target::detach): Adjust.
4539         * stack.c (frame_show_address): Use inferior_thread.
4540         * target-debug.h (target_debug_print_thread_info_pp): New.
4541         * target-delegates.c: Regenerate.
4542         * target.c (default_thread_address_space): Delete.
4543         (memory_xfer_partial_1): Use current_inferior.
4544         (target_detach): Use current_inferior.
4545         (target_thread_address_space): Delete.
4546         (generic_mourn_inferior): Use current_inferior.
4547         * target.h (struct target_ops) <thread_address_space>: Delete.
4548         (target_thread_address_space): Delete.
4549         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
4550         pointers directly.
4551         (delete_thread_1, delete_thread, delete_thread_silent): Take a
4552         thread pointer instead of a ptid_t.  Adjust all callers.
4553         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
4554         (first_thread_of_process): Delete, replaced by ...
4555         (first_thread_of_inferior): ... this new function.  All callers
4556         adjusted.
4557         (any_thread_of_process): Rename to ...
4558         (any_thread_of_inferior): ... this, and take an inferior pointer.
4559         (any_live_thread_of_process): Rename to ...
4560         (any_live_thread_of_inferior): ... this, and take an inferior
4561         pointer.
4562         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
4563         (value_in_thread_stack_temporaries)
4564         (get_last_thread_stack_temporary): Take a thread pointer instead
4565         of a ptid_t.  Adjust all callers.
4566         (thread_info::set_running): New.
4567         (validate_registers_access): Use inferior_thread.
4568         (can_access_registers_ptid): Rename to ...
4569         (can_access_registers_thread): ... this, and take a thread
4570         pointer.
4571         (print_thread_info_1): Adjust to compare thread pointers instead
4572         of ptids.
4573         (switch_to_no_thread, switch_to_thread): Make extern.
4574         (scoped_restore_current_thread::~scoped_restore_current_thread):
4575         Use m_thread pointer directly.
4576         (scoped_restore_current_thread::scoped_restore_current_thread):
4577         Use inferior_thread.
4578         (thread_command): Use thread pointer directly.
4579         (thread_num_make_value_helper): Use inferior_thread.
4580         * top.c (execute_command): Use inferior_thread.
4581         * tui/tui-interp.c: Include "inferior.h".
4582         * varobj.c (varobj_create): Use inferior_thread.
4583         (value_of_root_1): Use find_thread_global_id instead of
4584         global_thread_id_to_ptid.
4585
4586 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
4587
4588         * regcache.c (readable_regcache::read_part): Avoid memcpy when
4589         possible.
4590         (regcache::write_part): Likewise.
4591         (readable_regcache::cooked_read_part): Update comment.
4592         (readable_regcache::cooked_write_part): Likewise.
4593         * regcache.h: (readable_regcache::read_part): Likewise.
4594         (regcache::write_part): Likewise.
4595
4596 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
4597             Dirk Schubert  <dirk.schubert@arm.com>
4598
4599         * aarch64-linux-nat.c (post_attach): New.
4600         (aarch64_linux_nat_target::post_attach): Override post_attach to
4601         record the number of hardware debug registers.
4602
4603 2018-06-20  Tom Tromey  <tom@tromey.com>
4604
4605         * python/py-param.c (add_setshow_generic): Make parameters const.
4606         (parmpy_init): Update.
4607
4608 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
4609
4610         * regcache.h (regcache_cooked_read_ftype): Rename to...
4611         (register_read_ftype): ...this, change type to function_view.
4612         (class reg_buffer) <save>: Remove src parameter.
4613         (readonly_detached_regcache) <readonly_detached_regcache>: Make
4614         parameter non-const in first overload.  Remove src parameter in
4615         second overload.
4616         * regcache.c (do_cooked_read): Remove.
4617         (readonly_detached_regcache::readonly_detached_regcache): Make
4618         parameter non-const, adjust call to other constructor.
4619         (reg_buffer::save): Remove src parameter.
4620         * frame.c (do_frame_register_read): Remove.
4621         (frame_save_as_regcache): Use lambda function.
4622         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
4623         parameter to ppu2spu_data *.
4624         (ppu2spu_sniffer): Use lambda function.
4625
4626 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
4627
4628         * record-full.c (record_full_target::insert_breakpoint): Remove
4629         "struct" keyword, add const.
4630
4631 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
4632
4633         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
4634         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
4635         * configure.ac: Remove AC_PREREQ, add missing quoting.
4636         * gnulib/configure.ac: Modernize usage of
4637         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
4638         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
4639         (AUTOMAKE_VERSION): Bump to 1.15.1.
4640         * configure: Re-generate.
4641         * config.in: Re-generate.
4642         * aclocal.m4: Re-generate.
4643         * gnulib/aclocal.m4: Re-generate.
4644         * gnulib/config.in: Re-generate.
4645         * gnulib/configure: Re-generate.
4646         * gnulib/import/Makefile.in: Re-generate.
4647
4648 2018-06-19  Pedro Alves  <palves@redhat.com>
4649
4650         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
4651         (lookup_minimal_symbol_by_pc_section): ... here with
4652         gdb_assert_not_reached added.
4653
4654 2018-06-19  Pedro Alves  <palves@redhat.com>
4655
4656         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
4657         parameter with a block parameter.  Compare location's block symbol
4658         with the frame's block instead of addresses.
4659         (skip_inline_frames): Pass the current block instead of the
4660         frame's address.  Break out as soon as we determine the frame
4661         should not be skipped.
4662
4663 2018-06-18  Tom Tromey  <tom@tromey.com>
4664
4665         * solib-aix.c (solib_aix_get_section_offsets): Return
4666         unique_xmalloc_ptr.
4667         (solib_aix_solib_create_inferior_hook): Update.
4668
4669 2018-06-18  Tom Tromey  <tom@tromey.com>
4670
4671         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
4672
4673 2018-06-18  Tom Tromey  <tom@tromey.com>
4674
4675         * solib-frv.c (frv_relocate_main_executable): Use
4676         unique_xmalloc_ptr.
4677         * solib-dsbt.c (dsbt_relocate_main_executable): Use
4678         unique_xmalloc_ptr.
4679
4680 2018-06-18  Tom Tromey  <tom@tromey.com>
4681
4682         * objfiles.h (inhibit_section_map_updates): Update.
4683         (resume_section_map_updates, resume_section_map_updates_cleanup):
4684         Remove.
4685         * solib-svr4.c (svr4_handle_solib_event): Update.
4686         * objfiles.c (inhibit_section_map_updates): Return
4687         scoped_restore_tmpl<int>.
4688         (resume_section_map_updates, resume_section_map_updates_cleanup):
4689         Remove.
4690
4691 2018-06-18  Tom Tromey  <tom@tromey.com>
4692
4693         * valprint.h (read_string): Update.
4694         * valprint.c (read_string): Change type of "buffer".
4695         (val_print_string): Update.
4696         * python/py-value.c (valpy_string): Update.
4697         * language.h (struct language_defn) <la_get_string>: Change
4698         type of "buffer".
4699         (default_get_string, c_get_string): Update.
4700         * language.c (default_get_string): Change type of "buffer".
4701         * guile/scm-value.c (gdbscm_value_to_string): Update.
4702         * c-lang.c (c_get_string): Change type of "buffer".
4703
4704 2018-06-18  Tom Tromey  <tom@tromey.com>
4705
4706         * ser-mingw.c (struct pipe_state_destroyer): New.
4707         (pipe_state_up): New typedef.
4708         (cleanup_pipe_state): Remove.
4709         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
4710
4711 2018-06-18  Tom Tromey  <tom@tromey.com>
4712
4713         * rust-lang.h (rust_yyerror): Don't declare.
4714         * rust-lang.c (rust_language_defn): Update.
4715         * rust-exp.y (yyerror): Now static.
4716         * parse.c (parse_exp_in_context_1): Update.
4717         * p-lang.h (p_yyerror): Don't declare.
4718         * p-lang.c (p_language_defn): Update.
4719         * p-exp.y (yyerror): Now static.
4720         * opencl-lang.c (opencl_language_defn): Update.
4721         * objc-lang.c (objc_language_defn): Update.
4722         * m2-lang.h (m2_yyerror): Don't declare.
4723         * m2-lang.c (m2_language_defn): Update.
4724         * m2-exp.y (yyerror): Now static.
4725         * language.h (struct language_defn) <la_error>: Remove.
4726         * language.c (unk_lang_error): Remove.
4727         (unknown_language_defn, auto_language_defn): Remove.
4728         * go-lang.h (go_yyerror): Don't declare.
4729         * go-lang.c (go_language_defn): Update.
4730         * go-exp.y (yyerror): Now static.
4731         * f-lang.h (f_yyerror): Don't declare.
4732         * f-lang.c (f_language_defn): Update.
4733         * f-exp.y (yyerror): Now static.
4734         * d-lang.h (d_yyerror): Don't declare.
4735         * d-lang.c (d_language_defn): Update.
4736         * d-exp.y (yyerror): Now static.
4737         * c-lang.h (c_yyerror): Don't declare.
4738         * c-lang.c (c_language_defn, cplus_language_defn)
4739         (asm_language_defn, minimal_language_defn): Update.
4740         * c-exp.y (yyerror): Now static.
4741         * ada-lang.h (ada_yyerror): Don't declare.
4742         * ada-lang.c (ada_language_defn): Update.
4743         * ada-exp.y (yyerror): Now static.
4744
4745 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
4746
4747         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
4748         (store_sveregs_to_thread): Likewise.
4749         (aarch64_linux_fetch_inferior_registers): Check for SVE.
4750         (aarch64_linux_store_inferior_registers): Likewise.
4751         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
4752         function.
4753         (aarch64_sve_regs_copy_to_regcache): Likewise.
4754         (aarch64_sve_regs_copy_from_regcache): Likewise.
4755         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
4756         declaration.
4757         (aarch64_sve_regs_copy_to_regcache): Likewise.
4758         (aarch64_sve_regs_copy_from_regcache): Likewise.
4759         (sve_context): Structure from Linux headers.
4760         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
4761         (SVE_SIG_ZREG_SIZE): Likewise.
4762         (SVE_SIG_PREG_SIZE): Likewise.
4763         (SVE_SIG_FFR_SIZE): Likewise.
4764         (SVE_SIG_REGS_OFFSET): Likewise.
4765         (SVE_SIG_ZREGS_OFFSET): Likewise.
4766         (SVE_SIG_ZREG_OFFSET): Likewise.
4767         (SVE_SIG_ZREGS_SIZE): Likewise.
4768         (SVE_SIG_PREGS_OFFSET): Likewise.
4769         (SVE_SIG_PREG_OFFSET): Likewise.
4770         (SVE_SIG_PREGS_SIZE): Likewise.
4771         (SVE_SIG_FFR_OFFSET): Likewise.
4772         (SVE_SIG_REGS_SIZE): Likewise.
4773         (SVE_SIG_CONTEXT_SIZE): Likewise.
4774         (SVE_PT_REGS_MASK): Likewise.
4775         (SVE_PT_REGS_FPSIMD): Likewise.
4776         (SVE_PT_REGS_SVE): Likewise.
4777         (SVE_PT_VL_INHERIT): Likewise.
4778         (SVE_PT_VL_ONEXEC): Likewise.
4779         (SVE_PT_REGS_OFFSET): Likewise.
4780         (SVE_PT_FPSIMD_OFFSET): Likewise.
4781         (SVE_PT_FPSIMD_SIZE): Likewise.
4782         (SVE_PT_SVE_ZREG_SIZE): Likewise.
4783         (SVE_PT_SVE_PREG_SIZE): Likewise.
4784         (SVE_PT_SVE_FFR_SIZE): Likewise.
4785         (SVE_PT_SVE_FPSR_SIZE): Likewise.
4786         (SVE_PT_SVE_FPCR_SIZE): Likewise.
4787         (__SVE_SIG_TO_PT): Likewise.
4788         (SVE_PT_SVE_OFFSET): Likewise.
4789         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
4790         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
4791         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
4792         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
4793         (SVE_PT_SVE_PREG_OFFSET): Likewise.
4794         (SVE_PT_SVE_PREGS_SIZE): Likewise.
4795         (SVE_PT_SVE_FFR_OFFSET): Likewise.
4796         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
4797         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
4798         (SVE_PT_SVE_SIZE): Likewise.
4799         (SVE_PT_SIZE): Likewise.
4800         (HAS_SVE_STATE): New define.
4801
4802 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
4803
4804         * nat/aarch64-sve-linux-sigcontext.h: New file.
4805         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
4806         new files.
4807         (SVE_VQ_MIN): Likewise.
4808         (SVE_VQ_MAX): Likewise.
4809         (SVE_VL_MIN): Likewise.
4810         (SVE_VL_MAX): Likewise.
4811         (SVE_NUM_ZREGS): Likewise.
4812         (SVE_NUM_PREGS): Likewise.
4813         (sve_vl_valid): Likewise.
4814         (struct user_sve_header): Likewise.
4815
4816 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
4817             Richard Bunt <Richard.Bunt@arm.com>
4818
4819         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
4820         was requested by GDB.
4821
4822 2018-06-15  Tom de Vries  <tdevries@suse.de>
4823
4824         * MAINTAINERS (Write After Approval): Add Tom de Vries.
4825
4826 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
4827
4828         * gnulib/update-gnulib.sh: Print expected versions of
4829         autoconf/aclocal.
4830
4831 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
4832
4833         * arch-utils.c (default_type_align): Use type_length_units.
4834         * gdbtypes.c (type_align): Use type_length_units.
4835
4836 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4837
4838         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
4839         of 'define' command.
4840
4841 2018-06-14  Tom de Vries  <tdevries@suse.de>
4842
4843         PR cli/22573
4844         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
4845         get_no_prettyformat_print_options.
4846
4847 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
4848
4849         * sparc-nat.h: Include target.h.
4850         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
4851         <fetch_registers>: Remove this argument in function call.
4852         <store_registers>: Remove this argument in function call, remove
4853         extra semicolon.
4854         <low_forget_process>: Call sparc64_forget_process instead of
4855         sparc_forget_process.
4856
4857 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4858
4859         * procfs.c (_initialize_procfs): Use add_inf_child_target.
4860         (procfs_target::make_corefile_notes): Adjust to new
4861         target_read_alloc return type.
4862
4863 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4864             Stephen Roberts  <stephen.roberts@arm.com>
4865
4866         PR gdb/22882
4867         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
4868         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
4869         Move should_notify_stop local into more inner scope.
4870
4871 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4872             Stephen Roberts  <stephen.roberts@arm.com>
4873
4874         PR gdb/22882
4875         * infrun.c (resume_1): Add call to mark_async_event_handler.
4876
4877 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4878
4879         * infrun.c (do_target_wait): Change old version of $pc printed.
4880
4881 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
4882
4883         * dwarf2read.c (read_index_from_section): Rename to...
4884         (read_gdb_index_from_section): ... this, update all callers.
4885         (dwarf2_read_index): Rename to...
4886         (dwarf2_read_gdb_index): ... this, update all callers.
4887
4888 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
4889
4890         * gdb/hppa-linux-nat.c
4891         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
4892         hppa_linux_nat_target::fetch_registers.
4893
4894 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4895
4896         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
4897         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
4898         (AARCH64_DWARF_SVE_FFR): Likewise.
4899         (AARCH64_DWARF_SVE_P0): Likewise.
4900         (AARCH64_DWARF_SVE_Z0): Likewise.
4901
4902 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4903
4904         * common/common-regcache.h (raw_compare): New function.
4905         * regcache.c (regcache::raw_compare): Likewise.
4906         * regcache.h (regcache::raw_compare): New declaration.
4907
4908 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4909
4910         * common/common-regcache.h (reg_buffer_common): New structure.
4911         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
4912         (reg_buffer::raw_supply): Likewise.
4913         (reg_buffer::raw_supply_integer): Likewise.
4914         (reg_buffer::raw_supply_zeroed): Likewise.
4915         (reg_buffer::raw_collect): Likewise.
4916         (reg_buffer::raw_collect_integer): Likewise.
4917         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
4918         (reg_buffer::raw_supply): Likewise.
4919         (reg_buffer::raw_supply_integer): Likewise.
4920         (reg_buffer::raw_supply_zeroed): Likewise.
4921         (reg_buffer::raw_collect): Likewise.
4922         (reg_buffer::raw_collect_integer): Likewise.
4923
4924 2018-06-10  Tom Tromey  <tom@tromey.com>
4925
4926         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
4927         (class remote_state) <stop_reply_queue>: Now std::vector.
4928         (remote_state::~remote_state)
4929         (remote_target::stop_reply_queue_length): Update.
4930         (struct queue_iter_param, remove_child_of_pending_fork)
4931         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
4932         (check_pending_event_prevents_wildcard_vcont_callback)
4933         (remove_stop_reply_for_inferior)
4934         (remove_stop_reply_of_remote_state)
4935         (remote_notif_remove_once_on_match)
4936         (stop_reply_match_ptid_and_ws)
4937         (remote_kill_child_of_pending_fork): Remove.
4938         (remote_target::remove_new_fork_children)
4939         (remote_target::check_pending_events_prevent_wildcard_vcont)
4940         (remote_target::discard_pending_stop_replies)
4941         (remote_target::discard_pending_stop_replies_in_queue)
4942         (remote_target::remote_notif_remove_queued_reply)
4943         (remote_target::queued_stop_reply)
4944         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
4945         (remote_target::wait, remote_target::kill_new_fork_children)
4946         (remote_target::async): Update.
4947
4948 2018-06-10  Tom Tromey  <tom@tromey.com>
4949
4950         * record-full.c (record_full_arch_list_cleanups): Remove.
4951         (record_full_message): Use try/catch.
4952         (record_full_wait_cleanups): Remove.
4953         (record_full_wait_1): Use try/catch.
4954         (record_full_restore): Likewise.
4955
4956 2018-06-10  Tom Tromey  <tom@tromey.com>
4957
4958         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
4959         declare VEC.  Add constructor.
4960         <in_target_beneath>: Now bool.
4961         (record_full_breakpoints): Now a std::vector, static.
4962         (record_full_sync_record_breakpoints)
4963         (record_full_init_record_breakpoints)
4964         (record_full_target::insert_breakpoint)
4965         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
4966
4967 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
4968
4969         * dwarf2read.c (process_cu_includes): Remove struct keyword.
4970         * serial.c (serial_interface_lookup): Remove struct keyword.
4971
4972 2018-06-10  Tom Tromey  <tom@tromey.com>
4973
4974         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
4975         method.
4976         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
4977         a method.
4978         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
4979         method.
4980         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
4981         "beneath" as a method.
4982         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
4983         Use "beneath" as a method.
4984
4985 2018-06-10  Tom Tromey  <tom@tromey.com>
4986
4987         * tracefile.c (struct trace_file_writer_deleter): New.
4988         <operator()>: Rename from trace_file_writer_xfree.
4989         (trace_file_writer_up): New typedef.
4990         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
4991
4992 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
4993
4994         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
4995         <m_registers, m_register_status>: Change type to
4996         std::unique_ptr.
4997         * regcache.c (reg_buffer::reg_buffer): Use new instead of
4998         XCNEWVEC.
4999
5000 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
5001
5002         * common/common-regcache.h (enum register_status): Add
5003         underlying type "signed char".
5004         * regcache.h (reg_buffer) <m_register_status>: Change type to
5005         register_status *.
5006         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
5007         register_status instead of signed char.
5008         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
5009         (reg_buffer::get_register_status): Remove cast.
5010         (readable_regcache::raw_read): Remove cast.
5011         (readable_regcache::cooked_read): Remove cast.
5012
5013 2018-06-09  Tom Tromey  <tom@tromey.com>
5014
5015         * source.c (reverse_search_command, forward_search_command): Use
5016         scoped_fd.
5017
5018 2018-06-09  Tom Tromey  <tom@tromey.com>
5019
5020         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
5021         (serial_ops_list): Now static, std::vector.
5022         (serial_interface_lookup, serial_add_interface): Update.
5023
5024 2018-06-09  Tom Tromey  <tom@tromey.com>
5025
5026         * dwarf2read.c (process_cu_includes): Update.
5027         (process_full_comp_unit): Update.
5028         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
5029         std::vector.
5030
5031 2018-06-08  Paul Koning  <paul_koning@dell.com>
5032
5033         PR gdb/23252
5034
5035         * python/python.c (do_start_initialization):
5036         Avoid call to internal Python API.
5037         (init__gdb_module): New function.
5038
5039 2018-06-08  Gary Benson <gbenson@redhat.com>
5040
5041         * linux-thread-db.c (valprint.h): New include.
5042         (struct check_thread_db_info): New structure.
5043         (check_thread_db_on_load, tdb_testinfo): New static globals.
5044         (check_thread_db, check_thread_db_callback): New functions.
5045         (try_thread_db_load_1): Run integrity checks if requested.
5046         (maintenance_check_libthread_db): New function.
5047         (_initialize_thread_db): Register "maint check libthread-db"
5048         and "maint set/show check-libthread-db".
5049         * NEWS: Mention the above new commands.
5050
5051 2018-06-08  Tom Tromey  <tom@tromey.com>
5052
5053         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
5054         now a method.
5055
5056 2018-06-08  Tom Tromey  <tom@tromey.com>
5057
5058         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
5059
5060 2018-06-08  Tom Tromey  <tom@tromey.com>
5061
5062         * common/btrace-common.h (struct btrace_data): Add constructor,
5063         destructor, move assignment operator.
5064         <empty, clear, fini>: New methods.
5065         <format>: Initialize.
5066         (btrace_data_init, btrace_data_fini, btrace_data_clear)
5067         (btrace_data_empty): Don't declare.
5068         * common/btrace-common.c (btrace_data_init): Remove.
5069         (btrace_data::fini): Rename from btrace_data_fini.
5070         (btrace_data::empty): Rename from btrace_data_empty.
5071         (btrace_data::clear): Rename from btrace_data_clear.  Return
5072         bool.
5073         * btrace.h (make_cleanup_btrace_data): Don't declare.
5074         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
5075         (parse_xml_btrace): Update.
5076         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
5077         (maint_btrace_clear_packet_history_cmd): Update.
5078
5079 2018-06-07  Pedro Alves  <palves@redhat.com>
5080
5081         * target.h (target_ops) <beneath>: Now a method.  All references
5082         updated.
5083         (class target_stack): New.
5084         * target.c (g_target_stack): New.
5085         (g_current_top_target): Delete.
5086         (current_top_target): Get the top target out of g_target_stack.
5087         (target_stack::push, target_stack::unpush): New.
5088         (push_target, unpush_target): Reimplement.
5089         (target_is_pushed): Reimplement in terms of g_target_stack.
5090         (target_ops::beneath, target_stack::find_beneath): New.
5091
5092 2018-06-07  Pedro Alves  <palves@redhat.com>
5093
5094         * target.h (find_target_beneath): Delete declaration.
5095         * target.c (find_target_beneath): Delete definition.
5096         * aix-thread.c: All callers of find_target_beneath adjusted to
5097         call target_ops::beneath instead.
5098         * bsd-uthread.c: Likewise.
5099         * linux-thread-db.c: Likewise.
5100         * ravenscar-thread.c: Likewise.
5101         * sol-thread.c: Likewise.
5102         * spu-multiarch.c: Likewise.
5103
5104 2018-06-07  Pedro Alves  <palves@redhat.com>
5105
5106         * target.h (target_ops) <beneath>: Now a method.  All references
5107         updated.
5108         (target_ops) <m_beneath>: New.
5109         * target.c (target_ops::beneath): New.
5110         * corelow.c: Adjust all references to target_ops::beneath.
5111         * linux-thread-db.c: Likewise.
5112         * make-target-delegates: Likewise.
5113         * record-btrace.c: Likewise.
5114         * record-full.c: Likewise.
5115         * remote.c: Likewise.
5116         * target.c: Likewise.
5117         * target-delegates.c: Regenerate.
5118
5119 2018-06-07  Pedro Alves  <palves@redhat.com>
5120
5121         * target.h (target_stack): Delete.
5122         (current_top_target): Declare function.
5123         * target.c (target_stack): Delete.
5124         (g_current_top_target): New.
5125         (current_top_target): New function.
5126         * auxv.c: Use current_top_target instead of target_stack
5127         throughout.
5128         * avr-tdep.c: Likewise.
5129         * breakpoint.c: Likewise.
5130         * corefile.c: Likewise.
5131         * elfread.c: Likewise.
5132         * eval.c: Likewise.
5133         * exceptions.c: Likewise.
5134         * frame.c: Likewise.
5135         * gdbarch-selftests.c: Likewise.
5136         * gnu-v3-abi.c: Likewise.
5137         * ia64-tdep.c: Likewise.
5138         * ia64-vms-tdep.c: Likewise.
5139         * infcall.c: Likewise.
5140         * infcmd.c: Likewise.
5141         * infrun.c: Likewise.
5142         * linespec.c: Likewise.
5143         * linux-tdep.c: Likewise.
5144         * minsyms.c: Likewise.
5145         * ppc-linux-nat.c: Likewise.
5146         * ppc-linux-tdep.c: Likewise.
5147         * procfs.c: Likewise.
5148         * regcache.c: Likewise.
5149         * remote.c: Likewise.
5150         * rs6000-tdep.c: Likewise.
5151         * s390-linux-nat.c: Likewise.
5152         * s390-tdep.c: Likewise.
5153         * solib-aix.c: Likewise.
5154         * solib-darwin.c: Likewise.
5155         * solib-dsbt.c: Likewise.
5156         * solib-spu.c: Likewise.
5157         * solib-svr4.c: Likewise.
5158         * solib-target.c: Likewise.
5159         * sparc-tdep.c: Likewise.
5160         * sparc64-tdep.c: Likewise.
5161         * spu-tdep.c: Likewise.
5162         * symfile.c: Likewise.
5163         * symtab.c: Likewise.
5164         * target-descriptions.c: Likewise.
5165         * target-memory.c: Likewise.
5166         * target.c: Likewise.
5167         * target.h: Likewise.
5168         * tracefile-tfile.c: Likewise.
5169         * tracepoint.c: Likewise.
5170         * valops.c: Likewise.
5171         * valprint.c: Likewise.
5172         * value.c: Likewise.
5173         * windows-tdep.c: Likewise.
5174         * mi/mi-main.c: Likewise.
5175
5176 2018-06-07  Tom Tromey  <tom@tromey.com>
5177
5178         * valprint.h (build_address_symbolic): Declare.
5179         * printcmd.c (print_address_symbolic): Update.
5180         (build_address_symbolic): Change "name" and "filename" to
5181         std::string.
5182         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
5183         Update.
5184         * defs.h (build_address_symbolic): Remove declaration.
5185
5186 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
5187
5188         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
5189         (aarch64_vnv_type): Add function.
5190         (aarch64_pseudo_register_name): Add V regs for SVE.
5191         (aarch64_pseudo_register_type): Likewise.
5192         (aarch64_pseudo_register_reggroup_p): Likewise.
5193         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
5194         (aarch64_pseudo_read_value): Add V regs for SVE.
5195         (aarch64_pseudo_write_2): Use V0 offset for SVE
5196         (aarch64_pseudo_write): Add V regs for SVE.
5197         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
5198
5199 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
5200
5201         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
5202         (sve_vl_from_vq): Likewise.
5203
5204 2018-06-05  Tom Tromey  <tom@tromey.com>
5205
5206         * cli/cli-cmds.c (show_version): Update.
5207         * top.c (print_gdb_version): Add "interactive" parameter.
5208         Update.
5209         * main.c (captured_main_1): Update.
5210         * top.h (print_gdb_version): Add "interactive" parameter and a
5211         comment.
5212
5213 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
5214
5215         * common/enum-flags.h: Add trailing semicolon to example in
5216         comment.
5217
5218 2018-06-05  Tom Tromey  <tom@tromey.com>
5219
5220         PR cli/12326:
5221         * NEWS: Add entry about pager.
5222         * utils.c (pagination_disabled_for_command): New global.
5223         (prompt_for_continue): Allow "c" response to prompt.
5224         (reinitialize_more_filter): Clear
5225         pagination_disabled_for_command.
5226         (fputs_maybe_filtered): Check pagination_disabled_for_command.
5227
5228 2018-06-04  Tom Tromey  <tom@tromey.com>
5229
5230         * ada-lang.h (ada_lookup_symbol_list): Update.
5231         * ada-lang.c (resolve_subexp): Update.
5232         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
5233         parameter.
5234         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
5235         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
5236         results parameter to std::vector.
5237         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
5238         Update.
5239         * ada-exp.y (block_lookup): Update.
5240         (select_possible_type_sym): Change type of syms.  Remove nsyms
5241         parameter.
5242         (write_var_or_type, write_name_assoc): Update.
5243
5244 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
5245
5246         * windows-nat.c (windows_nat_target::xfer_partial): Return
5247         TARGET_XFER_E_IO if we need to delegate to the target beneath
5248         but BENEATH is NULL.
5249
5250 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
5251
5252         * Makefile.in (config.status): Add configure.nat as a
5253         dependency.
5254
5255 2018-06-04  Tom Tromey  <tom@tromey.com>
5256
5257         * cp-name-parser.y (cpname_state): Add method declarations.
5258         (HANDLE_QUAL): Update.
5259         (cpname_state::d_grab, cpname_state::fill_comp)
5260         (cpname_state::make_operator, cpname_state::make_dtor)
5261         (cpname_state::make_builtin_type, cpname_state::make_name)
5262         (cpname_state::d_qualify, cpname_state::d_int_type)
5263         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
5264         (%union): Move earlier.
5265
5266 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5267
5268         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
5269
5270 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5271
5272         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
5273         (aarch64_pseudo_write_1): Likewise.
5274         (aarch64_pseudo_read_value): Use helper.
5275         (aarch64_pseudo_write): Likewise.
5276
5277 2018-06-04  Pedro Alves  <palves@redhat.com>
5278
5279         * darwin-nat.c (darwin_ops): Delete.
5280         (darwin_attach_pid): Use get_native_target.
5281
5282 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5283
5284         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
5285         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
5286
5287 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5288
5289         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
5290         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
5291         (aarch64_gdbarch_init): Check for SVE.
5292         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
5293
5294 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5295
5296         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
5297         * aarch64-tdep.h (aarch64_read_description): Likewise.
5298         * arch/aarch64.c (aarch64_create_target_description): Likewise.
5299         * arch/aarch64.h (aarch64_create_target_description): Likewise.
5300         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
5301         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
5302         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
5303
5304 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
5305
5306         * value.c (value_fetch_lazy_bitfield): New.
5307         (value_fetch_lazy_memory): New.
5308         (value_fetch_lazy_register): New.
5309         (value_fetch_lazy): Factor out to smaller functions.
5310
5311 2018-06-01  Tom Tromey  <tom@tromey.com>
5312
5313         * cp-name-parser.y (backslashable, represented): Now const.
5314
5315 2018-06-01  Tom Tromey  <tom@tromey.com>
5316
5317         * cp-name-parser.y: Include parser-defs.h.
5318         (parser_fprintf): Remove declaration.
5319
5320 2018-06-01  Tom Tromey  <tom@tromey.com>
5321
5322         * cp-name-parser.y: Use %pure-parser, %lex-param, and
5323         %parse-param.
5324         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
5325         (global_result): Remove globals.
5326         (struct cpname_state): New.
5327         (yyparse): Don't declare.
5328         (yylex, yyerror): Move declarations after %union.
5329         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
5330         (make_name): Add state parameter.
5331         Update all callers.
5332         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
5333         parameter.
5334         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
5335         Update.
5336         (yylex): Add lvalp, state parameters.
5337         (yyerror): Add state parameter.
5338         (cp_demangled_name_to_comp): Update.
5339
5340 2018-06-01  Tom Tromey  <tom@tromey.com>
5341
5342         * cp-name-parser.y (parser_fprintf): Declare.
5343         (GDB_YY_REMAP_PREFIX): Define.
5344         Include yy-remap.h.  Don't redefine yy* identifiers.
5345
5346 2018-06-01  Tom Tromey  <tom@tromey.com>
5347
5348         * python/py-type.c (typy_legacy_template_argument): Update.
5349         * cp-support.h (cp_demangled_name_to_comp): Update.
5350         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
5351         parameter to be a "std::string *".
5352         (main): Update.
5353
5354 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
5355
5356         * ada-lex.l: Include "diagnostics.h" instead of
5357         "common/diagnostics.h".
5358         * unittests/environ-selftests.c: Likewise.
5359         * common/diagnostics.h: Moved to ../include.
5360
5361 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
5362
5363         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
5364         to language_mode_manual while calling breakpoint_re_set_one.
5365
5366 2018-06-01  Tom Tromey  <tom@tromey.com>
5367
5368         * valops.c (value_cast_structs, destructor_name_p): Update.
5369         * symtab.c (gdb_mangle_name): Update.
5370         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
5371         Update.
5372         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
5373         (pascal_object_print_value_fields, pascal_object_print_value):
5374         Update.
5375         * p-typeprint.c (pascal_type_print_derivation_info): Update.
5376         * linespec.c (find_methods): Update.
5377         * gdbtypes.h (type_name_no_tag): Remove.
5378         (type_name_or_error): Rename from type_name_no_tag_or_error.
5379         * gdbtypes.c (type_name_no_tag): Remove.
5380         (type_name_or_error): Rename from type_name_no_tag_or_error.
5381         (lookup_struct_elt_type, check_typedef): Update.
5382         * expprint.c (print_subexp_standard): Update.
5383         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
5384         * d-namespace.c (d_lookup_nested_symbol): Update.
5385         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
5386         (cp_print_class_member): Update.
5387         * cp-namespace.c (cp_lookup_nested_symbol): Update.
5388         * completer.c (add_struct_fields): Update.
5389         * c-typeprint.c (cp_type_print_derivation_info)
5390         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
5391         Update.
5392         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
5393         (ada_prefer_type, ada_is_exception_sym): Update.
5394
5395 2018-06-01  Tom Tromey  <tom@tromey.com>
5396
5397         * valops.c (enum_constant_from_type, value_namespace_elt)
5398         (value_maybe_namespace_elt): Update.
5399         * valarith.c (find_size_for_pointer_math): Update.
5400         * target-descriptions.c (make_gdb_type): Update.
5401         * symmisc.c (print_symbol): Update.
5402         * stabsread.c (define_symbol, read_type)
5403         (complain_about_struct_wipeout, add_undefined_type)
5404         (cleanup_undefined_types_1): Update.
5405         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
5406         (rust_range_type_p, val_print_struct, rust_print_struct_def)
5407         (rust_internal_print_type, rust_composite_type)
5408         (rust_evaluate_funcall, rust_evaluate_subexp)
5409         (rust_inclusive_range_type_p): Update.
5410         * python/py-type.c (typy_get_tag): Update.
5411         * p-typeprint.c (pascal_type_print_base): Update.
5412         * mdebugread.c (parse_symbol, parse_type): Update.
5413         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
5414         Update.
5415         * guile/scm-type.c (gdbscm_type_tag): Update.
5416         * go-lang.c (sixg_string_p): Update.
5417         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
5418         Update.
5419         * gdbtypes.h (struct main_type) <tag_name>: Remove.
5420         (TYPE_TAG_NAME): Remove.
5421         * gdbtypes.c (type_name_no_tag): Simplify.
5422         (check_typedef, check_types_equal, recursive_dump_type)
5423         (copy_type_recursive, arch_composite_type): Update.
5424         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
5425         in summary mode when needed.
5426         * eval.c (evaluate_funcall): Update.
5427         * dwarf2read.c (fixup_go_packaging, read_structure_type)
5428         (process_structure_scope, read_enumeration_type)
5429         (read_namespace_type, read_module_type, determine_prefix): Update.
5430         * cp-support.c (inspect_type): Update.
5431         * coffread.c (process_coff_symbol, decode_base_type): Update.
5432         * c-varobj.c (c_is_path_expr_parent): Update.
5433         * c-typeprint.c (c_type_print_base_struct_union): Update.
5434         (c_type_print_base_1): Update.  Print struct/class/union/enum in
5435         summary when using C language.
5436         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
5437         (gen_maybe_namespace_elt): Update.
5438         * ada-lang.c (ada_type_name): Simplify.
5439         (empty_record, ada_template_to_fixed_record_type_1)
5440         (template_to_static_fixed_type)
5441         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
5442
5443 2018-06-01  Tom Tromey  <tom@tromey.com>
5444
5445         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
5446         c_print_type.
5447         * c-typeprint.c (c_print_type_1): Add "language" parameter.
5448         (c_print_type): Update.
5449         (c_print_type): New overload.
5450         (c_type_print_varspec_prefix, c_type_print_args)
5451         (c_type_print_varspec_suffix, c_print_type_no_offsets)
5452         (c_type_print_base_struct_union, c_type_print_base_1)
5453         (cp_type_print_method_args): Add "language" parameter.
5454         (c_type_print_base): Update.
5455         * c-lang.h (c_print_type): Add new overload.
5456
5457 2018-06-01  Tom Tromey  <tom@tromey.com>
5458
5459         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
5460         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
5461
5462 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
5463
5464         * aarch64-tdep.c (aarch64_sve_register_names): New const
5465         var.
5466         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
5467         (AARCH64_SVE_Z_REGS_NUM): New define.
5468         (AARCH64_SVE_P_REGS_NUM): Likewise.
5469         (AARCH64_SVE_NUM_REGS): Likewise.
5470
5471 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
5472
5473         * nat/linux-ptrace.h [__alpha__]
5474         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
5475         definitions.
5476
5477 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
5478
5479         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
5480         the endianness selected.
5481         * NEWS: Document `set endian auto' mode operation update.
5482
5483 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
5484
5485         * Makefile.in: Add new header.
5486         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
5487         (sve_vl_from_vg): Likewise.
5488         (sve_vq_from_vl): Likewise.
5489         (sve_vl_from_vq): Likewise.
5490         (sve_vq_from_vg): Likewise.
5491         (sve_vg_from_vq): Likewise.
5492         * configure.nat: Add new c file.
5493         * nat/aarch64-sve-linux-ptrace.c: New file.
5494         * nat/aarch64-sve-linux-ptrace.h: New file.
5495
5496 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
5497
5498         * aarch64-linux-nat.c (aarch64_linux_read_description):
5499         Add parmeter zero.
5500         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
5501         Likewise.
5502         * aarch64-tdep.c (tdesc_aarch64_list): Add.
5503         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
5504         (aarch64_gdbarch_init): Add parmeter zero.
5505         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
5506         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
5507         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
5508         parmeter.
5509         * doc/gdb.texinfo: Describe SVE feature
5510         * features/aarch64-sve.c: New file.
5511
5512 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
5513
5514         PR gdb/23210
5515         * gdbarch.sh (significant_addr_bit): Default to zero when
5516         not set by target architecture.
5517         * gdbarch.c: Re-generated.
5518         * utils.c (address_significant): Update.
5519
5520 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
5521
5522         * stack.c (func_command): Remove trailing newline in call to error.
5523
5524 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5525
5526         * regcache.h (regcache_raw_collect): Remove, update callers to
5527         use regcache::raw_collect.
5528         * regcache.c (regcache_raw_collect): Remove.
5529
5530 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5531
5532         * regcache.h (regcache_raw_supply): Remove, update callers to
5533         use detached_regcache::raw_supply.
5534         * regcache.c (regcache_raw_supply): Remove.
5535
5536 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5537
5538         * regcache.h (regcache_cooked_write_part): Remove, update
5539         callers to use regcache::cooked_write_part.
5540         * regcache.c (regcache_cooked_write_part): Remove.
5541
5542 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5543
5544         * regcache.h (regcache_cooked_read_part): Remove, update callers
5545         to use readable_regcache::cooked_read_part.
5546         * regcache.c (regcache_cooked_read_part): Remove.
5547
5548 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5549
5550         * regcache.h (regcache_cooked_read_value): Remove, update
5551         callers to use readable_regcache::cooked_read_value.
5552         * regcache.c (regcache_cooked_read_value): Remove.
5553
5554 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5555
5556         * regcache.h (regcache_cooked_write): Remove, update callers to
5557         use regcache::cooked_write.
5558         * regcache.c (regcache_cooked_write): Remove.
5559
5560 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5561
5562         * regcache.h (regcache_invalidate): Remove, update callers to
5563         use detached_regcache::invalidate instead.
5564         * regcache.c (regcache_invalidate): Remove.
5565
5566 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5567
5568         * regcache.h (regcache_raw_write_part): Remove, update callers
5569         to use regcache::raw_write_part instead.
5570         * regcache.c (regcache_raw_write_part): Remove.
5571
5572 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5573
5574         * regcache.h (regcache_raw_read_part): Remove, update callers to
5575         use readable_regcache::raw_read_part instead.
5576         * regcache.c (regcache_raw_read_part): Remove.
5577
5578 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5579
5580         * regcache.h (regcache_cooked_read): Remove, update callers to
5581         use readable_regcache::cooked_read instead.
5582         * regcache.c (regcache_cooked_read): Remove.
5583
5584 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5585
5586         * regcache.h (regcache_raw_write): Remove, update callers to use
5587         regcache::raw_write instead.
5588         * regcache.c (regcache_raw_write): Remove.
5589
5590 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5591
5592         * regcache.h (regcache_raw_read): Remove, update callers to use
5593         readable_regcache::raw_read instead.
5594         * regcache.c (regcache_raw_read): Remove.
5595
5596 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5597
5598         * regcache.h (regcache_raw_update): Remove, update callers to
5599         use readable_regcache::raw_update instead.
5600         * regcache.c (regcache_raw_update): Remove.
5601
5602 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5603
5604         * regcache.h (regcache_register_status): Remove, update callers
5605         to use reg_buffer::get_register_status directly instead.
5606         * regcache.c (regcache_register_status): Remove.
5607
5608 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5609
5610         * regcache.h (regcache_get_ptid): Remove, update all callers to
5611         call regcache::ptid instead.
5612         * regcache.c (regcache_get_ptid): Remove.
5613
5614 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5615
5616         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
5617
5618 2018-05-30  Pedro Alves  <palves@redhat.com>
5619
5620         * common/common-exceptions.h (exception_rethrow): Use
5621         ATTRIBUTE_NORETURN.
5622
5623 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
5624
5625         * breakpoint.c (print_solib_event, check_status_catch_solib):
5626         Remove struct keyword in range-based for loops.
5627         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
5628         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
5629         Likewise.
5630         * linespec.c (find_superclass_methods, search_minsyms_for_name):
5631         Likewise.
5632         * symfile.c (addr_info_make_relative): Likewise.
5633         * thread.c (value_in_thread_stack_temporaries): Likewise.
5634
5635 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
5636
5637         PR gdb/16841
5638         * valops.c (value_struct_elt_for_reference): Call check_typedef on
5639         aggregate type to get its real type before accessing it.
5640
5641 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
5642
5643         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
5644         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
5645         * coff-pe-read.c (add_pe_forwarded_sym): Replace
5646         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
5647         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
5648         * jit.c (jit_breakpoint_re_set_internal): Likewise.
5649         * printcmd.c (info_address_command): Likewise.
5650
5651 2018-05-29  Tom Tromey  <tom@tromey.com>
5652
5653         * windows-nat.c (handle_exception): Update fall-through comment.
5654
5655 2018-05-29  Tom Tromey  <tom@tromey.com>
5656
5657         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
5658         (struct program_space) <added_solibs>: Now a std::vector.
5659         * breakpoint.c (print_solib_event): Update.
5660         (check_status_catch_solib): Update.
5661         * progspace.c (clear_program_space_solib_cache): Update.
5662         * solib.c (update_solib_list): Update.
5663
5664 2018-05-29  Tom Tromey  <tom@tromey.com>
5665
5666         * python/py-type.c (typy_richcompare): Update.
5667         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
5668         * gdbtypes.h (types_deeply_equal): Return bool.
5669         (types_equal): Likewise.
5670         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
5671         declare VEC.
5672         (check_types_equal): Change worklist to std::vector.  Return
5673         bool.
5674         (struct type_equality_entry): Add constructor.
5675         (compare_maybe_null_strings): Return bool.
5676         (check_types_worklist): Return bool.  Change worklist to
5677         std::vector.
5678         (types_deeply_equal): Use std::vector.
5679         (types_equal): Return bool.
5680         (compare_maybe_null_strings): Simplify.
5681
5682 2018-05-29  Tom Tromey  <tom@tromey.com>
5683
5684         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
5685
5686 2018-05-29  Tom Tromey  <tom@tromey.com>
5687
5688         * objc-lang.h: Don't include cp-support.h.
5689         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
5690         declare VEC.
5691
5692 2018-05-27  Tom Tromey  <tom@tromey.com>
5693
5694         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
5695
5696 2018-05-25  Tom Tromey  <tom@tromey.com>
5697
5698         * value.c (value::location): Initialize.
5699
5700 2018-05-25  Tom Tromey  <tom@tromey.com>
5701
5702         * dbxread.c (init_bincl_list): Remove.
5703         (bincl_list): Now a std::vector.
5704         (bincls_allocated, next_bincl): Remove.
5705         (free_bincl_list, do_free_bincl_list_cleanup)
5706         (make_cleanup_free_bincl_list): Remove.
5707         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
5708         unique_xmalloc_ptr.
5709         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
5710         (struct header_file_location): Add constructor.
5711         (add_bincl_to_list): Remove.
5712
5713 2018-05-25  Tom Tromey  <tom@tromey.com>
5714
5715         * tui/tui.c (tui_enable): Update.
5716         * mi/mi-interp.c (mi_interp::init): Update.
5717         * interps.h (class interp) <name>: New method.
5718         <m_name>: Rename from name.
5719         (~scoped_restore_interp): Update.
5720         * interps.c (interp::interp): Update.
5721         (interp_add, interp_set, interp_lookup_existing)
5722         (current_interp_named_p): Update.
5723
5724 2018-05-25  Tom Tromey  <tom@tromey.com>
5725
5726         * interps.c (interp_name): Remove.
5727         * mi/mi-interp.c (mi_interp::init): Update.
5728         * interps.h (interp_name): Remove.
5729         (~scoped_restore_interp): Update.
5730         * tui/tui.c (tui_enable): Update.
5731
5732 2018-05-25  Tom Tromey  <tom@tromey.com>
5733
5734         * utils.c (fputs_maybe_filtered): Update.
5735         * linespec.c (decode_line_full): Update.
5736         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
5737         (mi_print_breakpoint_for_event, mi_solib_loaded)
5738         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
5739         (mi_user_selected_context_changed): Update.
5740         * mi/mi-main.c (mi_execute_command): Update.
5741         * cli/cli-script.c (execute_control_command): Update.
5742         * python/python.c (execute_gdb_command): Update.
5743         * solib.c (info_sharedlibrary_command): Update.
5744         * interps.c (interp_ui_out): Remove.
5745         * interps.h (interp_ui_out): Remove.
5746
5747 2018-05-25  Tom Tromey  <tom@tromey.com>
5748
5749         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
5750         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
5751         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
5752
5753 2018-05-25  Tom Tromey  <tom@tromey.com>
5754
5755         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
5756         * interps.c (interp_exec): Use scoped_restore.
5757
5758 2018-05-25  Tom Tromey  <tom@tromey.com>
5759
5760         * remote.c (remote_target::remote_file_get): Use
5761         gdb::byte_vector.
5762         (remote_target::remote_file_put): Likewise.
5763
5764 2018-05-25  Tom Tromey  <tom@tromey.com>
5765
5766         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
5767         a std::string.
5768         (get_pe_section_index, add_pe_exported_sym): Update.
5769         (read_pe_exported_syms): Use gdb::def_vector.
5770
5771 2018-05-25  Tom Tromey  <tom@tromey.com>
5772
5773         * frame.c (remove_prev_frame): Remove.
5774         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
5775
5776 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
5777
5778         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
5779         Remove prototypes.
5780         * mips-linux-nat.c (supply_fpregset): Always call
5781         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
5782         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
5783         `mips_fill_fpregset'.
5784         * mips-linux-tdep.c (mips_supply_fpregset)
5785         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
5786         (mips_fill_fpregset_wrapper): Remove functions.
5787         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
5788         (mips_linux_fpregset): Remove variable.
5789         (mips_linux_iterate_over_regset_sections): Use
5790         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
5791         (mips_linux_o32_sigframe_init): Remove comment.
5792
5793 2018-05-25  Pedro Alves  <palves@redhat.com>
5794
5795         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
5796         (struct readahead_cache, struct packet_reg, struct
5797         remote_arch_state, class remote_state): Move higher up in the
5798         file.
5799         (remote_target::m_remote_state): Now an object instead of a pointer.
5800         (remote_target::get_remote_state): Adjust.
5801
5802 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
5803
5804         * stack.c (select_and_print_frame): Delete.
5805         (struct function_bounds): Move struct within function.
5806         (func_command): Most content moved into new function
5807         find_frame_for_function, use new function, print result, add
5808         function comment.
5809         (find_frame_for_function): New function, now returns a result.
5810
5811 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5812
5813         * stack.c (iterate_over_block_arg_vars): Fix comment.
5814         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
5815
5816 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
5817
5818         PR gdb/23203
5819         * frame.c
5820         (scoped_restore_selected_frame::scoped_restore_selected_frame):
5821         Define.
5822         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
5823         Define.
5824         * frame.h (class scoped_restore_selected_frame): New class.
5825         * stack.c (print_frame_local_vars): Remove catching and rethrowing
5826         of any exception, use scoped_restore_selected_frame to restore the
5827         frame instead.
5828
5829 2018-05-24  Pedro Alves  <palves@redhat.com>
5830
5831         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
5832         override.
5833
5834 2018-05-23  Tom Tromey  <tom@tromey.com>
5835
5836         * complaints.c (struct complaints): Remove.
5837         (symfile_complaint_book): Remove.
5838         (series): New global.
5839         (complaint_internal): Update.
5840         (clear_complaints): Update.
5841
5842 2018-05-23  Tom Tromey  <tom@tromey.com>
5843
5844         * complaints.c (counters): New global.
5845         (struct complain): Remove.
5846         (struct complaints) <root>: Remove.
5847         (complaint_sentinel): Remove.
5848         (symfile_complaint_book): Update.
5849         (find_complaint) Remove.
5850         (complaint_internal, clear_complaints): Update.
5851
5852 2018-05-23  Tom Tromey  <tom@tromey.com>
5853
5854         * complaints.c (struct complain) <file, line>: Remove.
5855         (find_complaint): Remove file, line parameters.
5856         (complaint_internal): Update.
5857
5858 2018-05-23  Tom Tromey  <tom@tromey.com>
5859
5860         * complaints.c (vcomplaint): Remove.
5861         (complaint_internal) Merge in contents of vcomplaint.
5862
5863 2018-05-23  Tom Tromey  <tom@tromey.com>
5864
5865         * complaints.c (struct complaints) <explanation>: Remove.
5866         (symfile_explanations): Remove.
5867         (symfile_complaint_book): Update.
5868         (vcomplaint): Update.
5869         (struct explanation): Remove.
5870
5871 2018-05-23  Tom Tromey  <tom@tromey.com>
5872
5873         * complaints.c (symfile_complaints): Remove.
5874         (complaint_internal): Remove "complaints" parameter.
5875         (clear_complaints, vcomplaint): Remove "c" parameter.
5876         (get_complaints): Remove.
5877         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
5878         (dwarf2_debug_line_missing_file_complaint)
5879         (dwarf2_debug_line_missing_end_sequence_complaint)
5880         (dwarf2_complex_location_expr_complaint)
5881         (dwarf2_const_value_length_mismatch_complaint)
5882         (dwarf2_section_buffer_overflow_complaint)
5883         (dwarf2_macro_malformed_definition_complaint)
5884         (dwarf2_invalid_attrib_class_complaint)
5885         (create_addrmap_from_index, dw2_symtab_iter_next)
5886         (dw2_expand_marked_cus)
5887         (dw2_debug_names_iterator::find_vec_in_debug_names)
5888         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
5889         (create_debug_type_hash_table, init_cutu_and_read_dies)
5890         (partial_die_parent_scope, add_partial_enumeration)
5891         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
5892         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
5893         (read_import_statement, read_file_scope, create_dwo_cu_reader)
5894         (create_cus_hash_table, create_dwp_hash_table)
5895         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
5896         (dwarf2_rnglists_process, dwarf2_ranges_process)
5897         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
5898         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
5899         (handle_struct_member_die, process_structure_scope)
5900         (read_array_type, read_common_block, read_module_type)
5901         (read_tag_pointer_type, read_typedef, read_base_type)
5902         (read_subrange_type, load_partial_dies, partial_die_info::read)
5903         (partial_die_info::read, partial_die_info::read)
5904         (partial_die_info::read, read_checked_initial_length_and_offset)
5905         (dwarf2_string_attr, read_formatted_entries)
5906         (dwarf_decode_line_header)
5907         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5908         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
5909         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
5910         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
5911         (get_signatured_type, get_DW_AT_signature_type)
5912         (decode_locdesc, file_file_name, consume_improper_spaces)
5913         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
5914         (dwarf_decode_macro_bytes, dwarf_decode_macros)
5915         (dwarf2_symbol_mark_computed, set_die_type)
5916         (read_attribute_value): Update.
5917         * stap-probe.c (handle_stap_probe, get_stap_base_address):
5918         Update.
5919         * dbxread.c (unknown_symtype_complaint)
5920         (lbrac_mismatch_complaint, repeated_header_complaint)
5921         (set_namestring, function_outside_compilation_unit_complaint)
5922         (read_dbx_symtab, process_one_symbol): Update.
5923         * gdbtypes.c (stub_noname_complaint): Update.
5924         * windows-nat.c (handle_unload_dll): Update.
5925         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
5926         (decode_base_type): Update.
5927         * xcoffread.c (bf_notfound_complaint, ef_complaint)
5928         (eb_complaint, record_include_begin, record_include_end)
5929         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
5930         (process_xcoff_symbol, read_symbol)
5931         (function_outside_compilation_unit_complaint)
5932         (scan_xcoff_symtab): Update.
5933         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
5934         * buildsym.c (finish_block_internal, make_blockvector)
5935         (end_symtab_get_static_block, augment_type_symtab): Update.
5936         * dtrace-probe.c (dtrace_process_dof)
5937         (dtrace_static_probe_ops::get_probes): Update.
5938         * complaints.h (struct complaint): Don't declare.
5939         (symfile_complaints): Remove.
5940         (complaint_internal): Remove "complaints" parameter.
5941         (complaint): Likewise.
5942         (clear_complaints): Likewise.
5943         * symfile.c (syms_from_objfile_1, finish_new_objfile)
5944         (reread_symbols): Update.
5945         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
5946         (dwarf2_frame_cache, decode_frame_entry): Update.
5947         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
5948         * objc-lang.c (lookup_objc_class, lookup_child_selector)
5949         (info_selectors_command): Update.
5950         * macrotab.c (macro_include, check_for_redefinition)
5951         (macro_undef): Update.
5952         * objfiles.c (filter_overlapping_sections): Update.
5953         * stabsread.c (invalid_cpp_abbrev_complaint)
5954         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
5955         (define_symbol, error_type, read_type, rs6000_builtin_type)
5956         (stabs_method_name_from_physname, read_member_functions)
5957         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
5958         (attach_fields_to_type, complain_about_struct_wipeout)
5959         (read_range_type, read_args, common_block_start)
5960         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
5961         Update.
5962         * mdebugread.c (index_complaint, unknown_ext_complaint)
5963         (basic_type_complaint, bad_tag_guess_complaint)
5964         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
5965         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
5966         (parse_procedure, parse_lines)
5967         (function_outside_compilation_unit_complaint)
5968         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
5969         (bad_tag_guess_complaint, reg_value_complaint): Update.
5970         * cp-support.c (demangled_name_complaint): Update.
5971         * macroscope.c (sal_macro_scope): Update.
5972         * dwarf-index-write.c (class debug_names): Update.
5973
5974 2018-05-23  Tom Tromey  <tom@tromey.com>
5975
5976         * complaints.c (clear_complaints): Remove "noisy" parameter.
5977         * complaints.h (clear_complaints): Update.
5978         * symfile.c (syms_from_objfile_1, finish_new_objfile)
5979         (reread_symbols): Update.
5980
5981 2018-05-23  Tom Tromey  <tom@tromey.com>
5982
5983         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
5984         SUBSEQUENT_MESSAGE.
5985         (vcomplaint, clear_complaints): Update.
5986         (symfile_explanations): Remove some messages.
5987
5988 2018-05-23  Tom Tromey  <tom@tromey.com>
5989
5990         * complaints.c (internal_complaint): Remove.
5991         * complaints.h (internal_complaint): Remove.
5992
5993 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
5994
5995         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
5996
5997 2018-05-22  Pedro Alves  <palves@redhat.com>
5998
5999         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
6000         (remote_fileio_badfd, remote_fileio_return_errno)
6001         (remote_fileio_return_success, remote_fileio_func_open)
6002         (remote_fileio_func_open, remote_fileio_func_close)
6003         (remote_fileio_func_read, remote_fileio_func_write)
6004         (remote_fileio_func_lseek, remote_fileio_func_rename)
6005         (remote_fileio_func_unlink, remote_fileio_func_stat)
6006         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
6007         (remote_fileio_func_isatty, remote_fileio_func_system): Add
6008         remote_target parameter.
6009         (remote_fio_func_map) <func>: Add remote_target parameter.
6010         (do_remote_fileio_request, remote_fileio_request):
6011         * remote-fileio.h (remote_fileio_request):
6012         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
6013         remote_target parameter.
6014         (remote_notif_process, handle_notification): Adjust to pass down
6015         the remote.
6016         (remote_notif_state_allocate): Add remote_target parameter.  Save
6017         it.
6018         * remote-notif.h (struct remote_target): Forward declare.
6019         (struct notif_client) <parse, ack, can_get_pending_events>: Add
6020         remote_target parameter.
6021         (struct remote_notif_state) <remote>: New field.
6022         (remote_notif_ack, remote_notif_parse): Add remote_target
6023         parameter.
6024         (remote_notif_state_allocate, remote_notif_state_allocate): Add
6025         remote_target parameter.
6026         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
6027         (threads_listing_context, rmt_thread_action, protocol_feature)
6028         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
6029         (packet_result, struct threads_listing_context, remote_state):
6030         Move definitions and declarations higher up.
6031         (remote_target) <~remote_target>: Declare.
6032         (remote_download_command_source, remote_file_put, remote_file_get)
6033         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
6034         (remote_hostio_pread_vFile, remote_hostio_send_command)
6035         (remote_hostio_set_filesystem, remote_hostio_open)
6036         (remote_hostio_close, remote_hostio_unlink, remote_state)
6037         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
6038         (get_memory_write_packet_size, get_memory_read_packet_size)
6039         (append_pending_thread_resumptions, remote_detach_1)
6040         (append_resumption, remote_resume_with_vcont)
6041         (add_current_inferior_and_thread, wait_ns, wait_as)
6042         (process_stop_reply, remote_notice_new_inferior)
6043         (process_initial_stop_replies, remote_add_thread)
6044         (btrace_sync_conf, remote_btrace_maybe_reopen)
6045         (remove_new_fork_children, kill_new_fork_children)
6046         (discard_pending_stop_replies, stop_reply_queue_length)
6047         (check_pending_events_prevent_wildcard_vcont)
6048         (discard_pending_stop_replies_in_queue, stop_reply)
6049         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
6050         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
6051         (remote_interrupt_as, remote_interrupt_ns)
6052         (remote_get_noisy_reply, remote_query_attached)
6053         (remote_add_inferior, remote_current_thread, get_current_thread)
6054         (set_thread, set_general_thread, set_continue_thread)
6055         (set_general_process, write_ptid)
6056         (remote_unpack_thread_info_response, remote_get_threadinfo)
6057         (parse_threadlist_response, remote_get_threadlist)
6058         (remote_threadlist_iterator, remote_get_threads_with_ql)
6059         (remote_get_threads_with_qxfer)
6060         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
6061         (get_offsets, remote_check_symbols, remote_supported_packet)
6062         (remote_query_supported, remote_packet_size)
6063         (remote_serial_quit_handler, remote_detach_pid)
6064         (remote_vcont_probe, remote_resume_with_hc)
6065         (send_interrupt_sequence, interrupt_query)
6066         (remote_notif_get_pending_events, fetch_register_using_p)
6067         (send_g_packet, process_g_packet, fetch_registers_using_g)
6068         (store_register_using_P, store_registers_using_G)
6069         (set_remote_traceframe, check_binary_download)
6070         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
6071         (remote_xfer_live_readonly_partial, remote_read_bytes)
6072         (remote_send_printf, remote_flash_write, readchar)
6073         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
6074         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
6075         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
6076         (extended_remote_disable_randomization, extended_remote_run)
6077         (send_environment_packet, extended_remote_environment_support)
6078         (extended_remote_set_inferior_cwd, remote_write_qxfer)
6079         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
6080         (packet_command): Now methods of ...
6081         (remote_target): ... this class.
6082         (m_remote_state) <remote_target>: New field.
6083         (struct remote_state) <stop_reply_queue,
6084         remote_async_inferior_event_token, wait_forever_enabled_p>: New
6085         fields.
6086         (remote_state::remote_state): Allocate stop_reply_queue.
6087         (remote_state): Delete global.
6088         (get_remote_state_raw): Delete.
6089         (remote_target::get_remote_state): Allocate m_remote_state on
6090         demand.
6091         (get_current_remote_target): New.
6092         (remote_ops, extended_remote_ops): Delete.
6093         (wait_forever_enabled_p, remote_async_inferior_event_token):
6094         Delete, moved to struct remote_state.
6095         (remote_target::close): Delete self.  Destruction bits split to
6096         ...
6097         (remote_target::~remote_target): ... this.
6098         (show_memory_packet_size): Adjust to use
6099         get_current_remote_target.
6100         (struct protocol_feature) <func>: Add remote_target parameter.
6101         All callers adjusted.
6102         (curr_quit_handler_target): New.
6103         (remote_serial_quit_handler): Reimplement.
6104         (remote_target::open_1): Adjust to use get_current_remote_target.
6105         Heap-allocate remote_target/extended_remote_target instances.
6106         (vcont_builder::vcont_builder): Add remote_target parameter, and
6107         save it in m_remote.  All callers adjusted.
6108         (vcont_builder::m_remote): New field.
6109         (vcont_builder::restart, vcont_builder::flush)
6110         (vcont_builder::push_action): Use it.
6111         (remote_target::commit_resume): Use it.
6112         (struct queue_iter_param) <remote>: New field.
6113         (remote_target::remove_new_fork_children): Fill in 'remote' field.
6114         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
6115         (check_pending_event_prevents_wildcard_vcont_callback)
6116         (remote_target::check_pending_events_prevent_wildcard_vcont)
6117         (remote_target::discard_pending_stop_replies)
6118         (remote_target::discard_pending_stop_replies_in_queue)
6119         (remote_target::remote_notif_remove_queued_reply): Fill in
6120         'remote' field.
6121         (remote_notif_get_pending_events): New.
6122         (remote_target::readchar, remote_target::remote_serial_write):
6123         Save/restore curr_quit_handler_target.
6124         (putpkt): New.
6125         (kill_new_fork_children): Fill in 'remote' field.
6126         (packet_command): Use get_current_remote_target, defer to
6127         remote_target method of same name.
6128         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
6129         parameter, and save it in m_remote.  All callers adjusted.
6130         (scoped_remote_fd::release): Use m_remote.
6131         (scoped_remote_fd::m_remote): New field.
6132         (remote_file_put, remote_file_get, remote_file_delete): Use
6133         get_current_remote_target, defer to remote_target method of same
6134         name.
6135         (remote_btrace_reset): Add remote_state paremeter.  Update all
6136         callers.
6137         (remote_async_inferior_event_handler). Pass down 'data'.
6138         (remote_new_objfile): Use get_current_remote_target.
6139         (remote_target::vcont_r_supported): New.
6140         (set_range_stepping): Use get_current_remote_target and
6141         remote_target::vcont_r_supported.
6142         (_initialize_remote): Don't allocate 'remote_state' and
6143         'stop_reply_queue' globals.
6144         * remote.h (struct remote_target): Forward declare.
6145         (getpkt, putpkt, remote_notif_get_pending_events): Add
6146         'remote_target' parameter.
6147
6148 2018-05-22  Pedro Alves  <palves@redhat.com>
6149
6150         * remote.c (vcont_builder): Now a class.  Make all data members
6151         private.
6152         (vcont_builder) <vcont_builder, restart, flush, push_action>:
6153         Declare methods.
6154         (vcont_builder_restart): Rename to ...
6155         (vcont_builder::restart): ... this.
6156         (vcont_builder_flush): Rename to ...
6157         (vcont_builder::flush): ... this.
6158         (vcont_builder_push_action): Rename to ...
6159         (vcont_builder::push_action): ... this.
6160         (remote_target::commit_resume): Adjust.
6161
6162 2018-05-22  Pedro Alves  <palves@redhat.com>
6163
6164         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
6165         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
6166         (get_fixed_memory_packet_size): New.
6167         (get_memory_packet_size): Use it.
6168         (set_memory_packet_size): Don't override the config size with
6169         DEFAULT_MAX_MEMORY_PACKET_SIZE.
6170         (show_memory_packet_size): Use get_fixed_memory_packet_size.
6171         Don't refer to get_memory_packet_size if not connected to a remote
6172         target.  Show "(default)" if configured size is 0.
6173
6174 2018-05-22  Pedro Alves  <palves@redhat.com>
6175
6176         * remote.c (remote_target::mourn_inferior): Move
6177         discard_pending_stop_replies call here from ...
6178         (_initialize_remote): ... here.
6179
6180 2018-05-22  Pedro Alves  <palves@redhat.com>
6181
6182         * remote.c (compare_section_command): Remove set_general_process
6183         call.
6184
6185 2018-05-22  Pedro Alves  <palves@redhat.com>
6186
6187         * remote.c (struct packet_reg, struct remote_arch_state):
6188         Move higher up in the file.
6189         (remote_state) <m_arch_states>: Store remote_arch_state values
6190         instead of remote_arch_state pointers.
6191         (remote_state::get_remote_arch_state): Adjust.
6192
6193 2018-05-22  Pedro Alves  <palves@redhat.com>
6194
6195         * remote.c: Include <unordered_map>.
6196         (remote_state): Now a class.
6197         (remote_state) <get_remote_arch_state>: Declare method.
6198         <get_remote_arch_state>: New field.
6199         (remote_arch_state) <remote_arch_state>: Declare ctor.
6200         <regs>: Now a unique_ptr.
6201         (remote_gdbarch_data_handle): Delete.
6202         (get_remote_arch_state): Delete.
6203         (remote_state::get_remote_arch_state): New.
6204         (get_remote_state): Adjust to call remote_state's
6205         get_remote_arch_state method.
6206         (init_remote_state): Delete, bits factored out to ...
6207         (remote_arch_state::remote_arch_state): ... this new method.
6208         (get_remote_packet_size, get_memory_packet_size)
6209         (process_g_packet, remote_target::fetch_registers)
6210         (remote_target::prepare_to_store, store_registers_using_G)
6211         (remote_target::store_registers, remote_target::get_trace_status):
6212         Adjust to call remote_state's method.
6213         (_initialize_remote): Remove reference to
6214         remote_gdbarch_data_handle.
6215
6216 2018-05-22  Pedro Alves  <palves@redhat.com>
6217
6218         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
6219         pread>: New method declarations.
6220         (remote_target::open_1): Adjust.
6221         (readahead_cache_invalidate): Rename to ...
6222         (readahead_cache::invalidate): ... this, and adjust to be a class
6223         method.
6224         (readahead_cache_invalidate_fd): Rename to ...
6225         (readahead_cache::invalidate_fd): ... this, and adjust to be a
6226         class method.
6227         (remote_hostio_pwrite): Adjust.
6228         (remote_hostio_pread_from_cache): Rename to ...
6229         (readahead_cache::pread): ... this, and adjust to be a class
6230         method.
6231         (remote_hostio_close): Adjust.
6232
6233 2018-05-22  Pedro Alves  <palves@redhat.com>
6234
6235         * remote.c (remote_hostio_close_cleanup): Delete.
6236         (class scoped_remote_fd): New.
6237         (remote_file_put, remote_file_get): Use it.
6238
6239 2018-05-22  Pedro Alves  <palves@redhat.com>
6240
6241         (struct vCont_action_support): Use bool and initialize all fields.
6242         (struct readahead_cache): Initialize all fields.
6243         (remote_state): Use bool and initialize all fields.
6244         (remote_state::remote_state, remote_state::~remote_state): New.
6245         (new_remote_state): Delete.
6246         (_initialize_remote): Use new to allocate remote_state.
6247
6248 2018-05-22  Pedro Alves  <palves@redhat.com>
6249             張俊芝  <zjz@zjz.name>
6250
6251         PR gdb/22973
6252         * c-exp.y: Include "c-support.h".
6253         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
6254         of tolower.  Use c_ident_is_alpha to scan names.
6255         * c-lang.c: Include "c-support.h".
6256         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
6257         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
6258         * c-support.h: New file, with bits factored out from ...
6259         * cp-name-parser.y: ... this file.
6260         Include "c-support.h".
6261         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
6262         c-support.h and renamed.
6263         (symbol_end, yylex): Adjust.
6264
6265 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6266
6267         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
6268         parameter type to CORE_ADDR.
6269         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
6270         parameter type in declaration to CORE_ADDR.
6271         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
6272         target_auxv_search to get AT_HWCAP and use the result to get the
6273         target description.
6274         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
6275         to CORE_ADDR. Remove the cast of the return value to unsigned
6276         long. Fix error predicate of target_auxv_search.
6277         (ppc_linux_nat_target::read_description): Change the type of the
6278         hwcap variable to CORE_ADDR.
6279
6280 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6281
6282         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
6283         if the size of fpscr is larger than 32 bits.
6284
6285 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6286
6287         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
6288         (ppc32_linux_vsxregmap): New global.
6289         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
6290         regcache_supply_regset, and regcache_collect_regset.
6291         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
6292         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
6293         (fetch_vsx_register, store_vsx_register): Remove.
6294         (fetch_vsx_registers): Add regno parameter. Get regset using
6295         ppc_linux_vsxregset. Use regset to supply registers.
6296         (store_vsx_registers): Add regno parameter. Get regset using
6297         ppc_linux_vsxregset. Use regset to collect registers.
6298         (fetch_register): Call fetch_vsx_registers instead of
6299         fetch_vsx_register.
6300         (store_register): Call store_vsx_registers instead of
6301         store_vsx_register.
6302         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
6303         new regno parameter.
6304         (store_ppc_registers): Call store_vsx_registers with -1 for the
6305         new regno parameter.
6306         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
6307         (ppc_collect_vsxregset): Remove.
6308
6309 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6310
6311         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
6312         offset fields.
6313         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
6314         for vector register offset fields.
6315         (ppc64_fbsd_reg_offsets): Likewise.
6316         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
6317         to vector register offset fields.
6318         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
6319         to vector register offset fields.
6320         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
6321         vector register offset fields.
6322         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
6323         initializers for vector register offset fields.
6324         (rs6000_aix64_reg_offsets): Likewise.
6325         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
6326         (ppc_supply_vrregset): Remove.
6327         (ppc_collect_vrregset): Remove.
6328         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
6329         (ppc_linux_vrregset) : New function.
6330         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
6331         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
6332         (ppc32_linux_vrregset): Remove.
6333         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
6334         and use result instead of ppc32_linux_vrregset.
6335         (ppc32_linux_reg_offsets): Remove initializers for vector register
6336         offset fields.
6337         (ppc64_linux_reg_offsets): Likewise.
6338         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
6339         * ppc-linux-nat.c: Include regset.h.
6340         (gdb_vrregset_t): Adjust comment to account for little-endian
6341         mode.
6342         (supply_vrregset, fill_vrregset): Remove.
6343         (fetch_altivec_register, store_altivec_register): Remove.
6344         (fetch_altivec_registers): Add regno parameter. Get regset using
6345         ppc_linux_vrregset. Use regset to supply registers.
6346         (store_altivec_registers): Add regno parameter. Get regset using
6347         ppc_linux_vrregset. Use regset to collect registers.
6348         (fetch_register): Call fetch_altivec_registers instead of
6349         fetch_altivec_register.
6350         (store_register): Call store_altivec_registers instead of
6351         store_altivec_register.
6352         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
6353         the new regno parameter.
6354         (store_ppc_registers): Call store_altivec_registers with -1 for
6355         the new regno parameter.
6356
6357 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6358
6359         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
6360         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
6361         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
6362         (gdb_vrregset_t): Change array type size to
6363         PPC_LINUX_SIZEOF_VRREGSET.
6364         (gdb_vsxregset_t): Change array type size to
6365         PPC_LINUX_SIZEOF_VSXREGSET.
6366         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
6367         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
6368         PPC_LINUX_SIZEOF_VSXREGSET.
6369
6370 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6371
6372         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
6373         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
6374         nat/ppc-linux.c.
6375         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
6376         ppc_linux_target_wordsize with tid.
6377         (ppc_linux_nat_target::read_description): Call ppc_linux_target
6378         wordsize with tid.
6379         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
6380         (ppc64_64bit_inferior_p): Add static and inline specifiers.
6381         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
6382         tid parameter. Remove static specifier.
6383         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
6384         (ppc_linux_target_wordsize): New declaration.
6385
6386 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6387
6388         * arch/ppc-linux-common.c: New file.
6389         * arch/ppc-linux-common.h: New file.
6390         * arch/ppc-linux-tdesc.h: New file.
6391         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
6392         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
6393         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
6394         arch/ppc-linux-tdesc.h.
6395         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
6396         arch/ppc-linux-tdesc.h.
6397         (ppc_linux_nat_target::read_description): Remove target
6398         description matching code. Fill a ppc_linux_features struct and
6399         call ppc_linux_match_description with it. Move comment about ISA
6400         2.05 to ppc-linux-common.c.
6401         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
6402         arch/ppc-linux-tdesc.h.
6403         (ppc_linux_core_read_description): Remove target description
6404         matching code. Fill a ppc_linux_features struct and call
6405         ppc_linux_match_description with it.
6406         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
6407         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
6408         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
6409         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
6410         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
6411         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
6412         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
6413         (tdesc_powerpc_e500l): Remove.
6414
6415 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
6416
6417         * ada-lang.c (catch_assert_command): Pass empty string instead
6418         of NULL for excep_string argument.
6419
6420 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
6421
6422         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
6423         the width of the requested register exceeds the width of the
6424         `ptrace' data type.
6425
6426 2018-05-21  Tom Tromey  <tom@tromey.com>
6427
6428         * printcmd.c (output_command): Remove.
6429         (output_command_const): Rename to output_command.
6430         * valprint.h (output_command): Rename from output_command_const.
6431         * tracepoint.c (trace_dump_actions): Call output_command.
6432
6433 2018-05-21  Tom Tromey  <tom@tromey.com>
6434
6435         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
6436         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
6437         * ada-lang.h (create_ada_exception_catchpoint): Update.
6438         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
6439         std::string.
6440         (create_excep_cond_exprs, ~ada_catchpoint)
6441         (should_stop_exception, print_one_exception)
6442         (print_mention_exception, print_recreate_exception): Update.
6443         (ada_get_next_arg): Remove.
6444         (catch_ada_exception_command_split): Use std::string.  Change type
6445         of "excep_string", "cond_string".
6446         (catch_ada_exception_command): Update.
6447         (create_ada_exception_catchpoint): Change type of excep_string.
6448         (ada_exception_sal): Remove excep_string parameter.
6449         (~ada_catchpoint): Remove.
6450
6451 2018-05-21  Tom Tromey  <tom@tromey.com>
6452
6453         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
6454         cleanup.
6455
6456 2018-05-21  Tom Tromey  <tom@tromey.com>
6457
6458         * ada-lang.c (ada_exception_message_1, ada_exception_message):
6459         Return unique_xmalloc_ptr.
6460         (print_it_exception): Update.
6461
6462 2018-05-21  Tom Tromey  <tom@tromey.com>
6463
6464         * tracepoint.c (trace_dump_actions): Use std::string.
6465
6466 2018-05-21  Tom Tromey  <tom@tromey.com>
6467
6468         * symfile.c (reread_symbols): Use std::string for original_name.
6469
6470 2018-05-21  Tom Tromey  <tom@tromey.com>
6471
6472         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
6473         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
6474         constructor.
6475
6476 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
6477
6478         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
6479         instance to...
6480         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
6481         * objfiles.c (get_objfile_bfd_data): Allocate
6482         objfile_per_bfd_storage with obstack_new when allocating on
6483         obstack.
6484
6485 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
6486
6487         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
6488         OBSTACK_ZALLOC.
6489         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
6490         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
6491         * mdebugread.c (mdebug_build_psymtabs): Likewise.
6492         (add_pending): Likewise.
6493         (parse_symbol): Likewise.
6494         (parse_partial_symbols): Likewise.
6495         (psymtab_to_symtab_1): Likewise.
6496         (new_psymtab): Likewise.
6497         (elfmdebug_build_psymtabs): Likewise.
6498         * minsyms.c (terminate_minimal_symbol_table): Likewise.
6499         * objfiles.c (get_objfile_bfd_data): Likewise.
6500         (objfile_register_static_link): Likewise.
6501         * psymtab.c (allocate_psymtab): Likewise.
6502         * stabsread.c (read_member_functions): Likewise.
6503         * xcoffread.c (xcoff_end_psymtab): Likewise.
6504
6505 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
6506
6507         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
6508         compiler supports std::is_trivially_constructible.
6509         * common/poison.h: Include obstack.h.
6510         (IsMallocable): Define to is_trivially_constructible if the
6511         compiler supports it, define to true_type otherwise.
6512         (xobnew): New.
6513         (XOBNEW): Redefine.
6514         (xobnewvec): New.
6515         (XOBNEWVEC): Redefine.
6516         * gdb_obstack.h (obstack_zalloc): New.
6517         (OBSTACK_ZALLOC): Redefine.
6518         (obstack_calloc): New.
6519         (OBSTACK_CALLOC): Redefine.
6520         (obstack_new): New.
6521         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
6522         (gdbarch_obstack): New declaration in gdbarch.h, definition in
6523         gdbarch.c.
6524         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
6525         obstack_calloc/obstack_zalloc.
6526         (gdbarch_obstack_zalloc): Remove.
6527         * target-descriptions.c (tdesc_data_init): Use obstack_new.
6528
6529 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6530
6531         * stack.c (backtrace_command_1): Remove useless variable int i.
6532
6533 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6534
6535         * stack.c (print_frame_info): Fix comment.
6536
6537 2018-05-18  Tom Tromey  <tom@tromey.com>
6538
6539         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
6540         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
6541         (~dwarf2_per_objfile): Update
6542         (dwarf2_get_dwz_file): Use new.
6543         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
6544         unique_ptr.
6545
6546 2018-05-18  Tom Tromey  <tom@tromey.com>
6547
6548         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
6549         unique_ptr.
6550         * dwarf2read.c (struct dwp_file): Add constructor and
6551         initializers.
6552         (open_and_init_dwp_file): Return a unique_ptr.
6553         (dwarf2_per_objfile, create_dwp_hash_table)
6554         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
6555         (lookup_dwo_unit_in_dwp): Update.
6556         (open_and_init_dwp_file, get_dwp_file): Update.
6557
6558 2018-05-18  Tom Tromey  <tom@tromey.com>
6559
6560         * dwarf2read.c (dwarf2_per_objfile): Update.
6561         (struct mapped_index): Add initializers.
6562         (dwarf2_read_index): Use new.
6563         (dw2_symtab_iter_init): Update.
6564         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
6565         unique_ptr.
6566
6567 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
6568
6569         * dwarf2read.c (mapped_index) <total_size>: Remove.
6570
6571 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
6572
6573         * unittests/format_pieces-selftests.c (test_format_specifier):
6574         Add ARI comments.
6575
6576 2018-05-18  Tom Tromey  <tom@tromey.com>
6577
6578         * c-typeprint.c (maybe_print_hole): New function.
6579         (c_print_type_struct_field_offset): Update.
6580         (c_type_print_base_struct_union): Call maybe_print_hole.
6581
6582 2018-05-17  Keith Seitz  <keiths@redhat.com>
6583
6584         * breakpoint.c (build_bpstat_chain): New function, moved from
6585         bpstat_stop_status.
6586         (bpstat_stop_status): Add optional parameter, `stop_chain'.
6587         If no stop chain is passed, call build_bpstat_chain to build it.
6588         * breakpoint.h (build_bpstat_chain): Declare.
6589         (bpstat_stop_status): Move documentation here from breakpoint.c.
6590         * infrun.c (handle_signal_stop): Before eliding inlined frames,
6591         build the stop chain and pass it to skip_inline_frames.
6592         Pass this stop chain to bpstat_stop_status.
6593         * inline-frame.c: Include breakpoint.h.
6594         (stopped_by_user_bp_inline_frame): New function.
6595         (skip_inline_frames): Add parameter `stop_chain'.
6596         Move documention to inline-frame.h.
6597         If non-NULL, use stopped_by_user_bp_inline_frame to determine
6598         whether the frame should be elided.
6599         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
6600         Add moved documentation and update for new parameter.
6601
6602 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
6603
6604         PR cli/14975
6605         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6606         unittests/format_pieces-selftests.c.
6607         * common/format.h (format_piece) <operator==>: New.
6608         (format_pieces) <operator[]>: Remove.
6609         * common/format.c (format_pieces::format_pieces): Handle \e.
6610         * unittests/format_pieces-selftests.c: New.
6611
6612 2018-05-17  Tom Tromey  <tom@tromey.com>
6613
6614         PR symtab/23010:
6615         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
6616         (dw2_instantiate_symtab): Add skip_partial parameter.
6617         (dw2_find_last_source_symtab, dw2_map_expand_apply)
6618         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
6619         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
6620         (dw2_expand_symtabs_matching_one)
6621         (dw2_find_pc_sect_compunit_symtab)
6622         (dw2_debug_names_lookup_symbol)
6623         (dw2_debug_names_expand_symtabs_for_function): Update.
6624         (init_cutu_and_read_dies): Add skip_partial parameter.
6625         (process_psymtab_comp_unit, build_type_psymtabs_1)
6626         (process_skeletonless_type_unit, load_partial_comp_unit)
6627         (psymtab_to_symtab_1): Update.
6628         (load_full_comp_unit): Add skip_partial parameter.
6629         (process_imported_unit_die, dwarf2_read_addr_index)
6630         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
6631         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
6632         (read_signatured_type): Update.
6633
6634 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
6635
6636         * value.c (release_value): Remove unused variable.
6637         (record_latest_value): Likewise.
6638         (access_value_history): Likewise.
6639         (preserve_values): Likewise.
6640
6641 2018-05-17  Tom Tromey  <tom@tromey.com>
6642
6643         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
6644         Initialize.
6645
6646 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
6647
6648         PR gdb/22286
6649         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
6650         Also handle registers whose width is not a multiple of
6651         PTRACE_TYPE_RET.
6652         (linux_nat_trad_target::store_register): Likewise.
6653
6654 2018-05-16  Tom Tromey  <tom@tromey.com>
6655
6656         * gdbcore.h (core_bfd): Redefine.
6657         * corelow.c (core_target::close): Update.
6658         (core_target_open): Update.
6659         * progspace.h (struct program_space) <cbfd>: Now a
6660         gdb_bfd_ref_ptr.
6661
6662 2018-05-16  Tom Tromey  <tom@tromey.com>
6663
6664         PR cli/19551:
6665         * symfile-add-flags.h (enum symfile_add_flags)
6666         <SYMFILE_NOT_FILENAME>: New constant.
6667         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
6668         objfile name from BFD.
6669         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
6670         * minidebug.c (find_separate_debug_file_in_section): Put
6671         ".gnu_debugdata" into BFD's file name.
6672
6673 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
6674
6675         * regcache.c (regcache_read_ftype, regcache_write_ftype):
6676         Remove.
6677
6678 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
6679
6680         PR binutils/21446
6681         * aarch64-tdep.c (aarch64_analyze_prologue,
6682         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
6683         Indicate not interested in errors.
6684
6685 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
6686
6687         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
6688         Supply the MIPS_ZERO_REGNUM register.
6689
6690 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
6691
6692         * mips-tdep.c (mask_address_var): Make variable static.
6693
6694 2018-05-14  Tom Tromey  <tom@tromey.com>
6695
6696         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
6697
6698 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
6699
6700         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
6701         FXSAVE_ADDR for the mxcsr register.
6702
6703 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
6704
6705         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
6706
6707 2018-05-11  Pedro Alves  <palves@redhat.com>
6708
6709         * corelow.c (core_target) <core_target>: No longer inline.
6710         Initialize m_core_gdbarch, m_core_vec and build the section table
6711         here.
6712         <~core_target>: New.
6713         <core_gdbarch, get_core_register_section>: New methods.
6714         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
6715         factored out from ...
6716         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
6717         (core_ops): Delete.
6718         (sniff_core_bfd): Add gdbarch parameter.
6719         (core_close): Delete, merged into ...
6720         (core_target::close): ... here.  Delete self.
6721         (core_close_cleanup): Delete.
6722         (core_target_open): Allocate a core_target on the heap.  Use a
6723         unique_ptr instead of a cleanup.  Bits moved into the core_target
6724         ctor.  Adjust to use core_target methods instead of globals.
6725         (get_core_register_section): Rename to ...
6726         (core_target::get_core_register_section): ... this and adjust.
6727         (struct get_core_registers_cb_data): New.
6728         (get_core_registers_cb): Use it.  Use bool.
6729         (core_target::fetch_registers, core_target::files_info)
6730         (core_target::xfer_partial, core_target::read_description)
6731         (core_target::pid_to, core_target::thread_name): Adjust to
6732         reference class fields instead of globals.
6733         * target.h (struct target_ops_deleter, target_ops_up): New.
6734
6735 2018-05-11  Pedro Alves  <palves@redhat.com>
6736
6737         * corefile.c (core_file_command): Move to corelow.c.
6738         * corelow.c (the_core_target): Delete.
6739         (core_file_command): Moved from corefile.c.  Check exec_bfd
6740         instead of the_core_target.  Use target_detach instead of calling
6741         into the_core_target directly.
6742         (maybe_say_no_core_file_now): New.
6743         (core_target::detach): Use it.
6744         (_initialize_corelow): Remove references to the_core_target.
6745         * gdbcore.h (the_core_target): Delete.
6746
6747 2018-05-11  Tom Tromey  <tromey@redhat.com>
6748             Pedro Alves  <palves@redhat.com>
6749
6750         * corefile.c (core_bfd): Remove.
6751         * gdbcore.h (core_bfd): Now a macro.
6752         * progspace.h (struct program_space) <cbfd>: New field.
6753
6754 2018-05-11  Tom Tromey  <tom@tromey.com>
6755
6756         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
6757         gdb::def_vector.
6758
6759 2018-05-10  Tom Tromey  <tom@tromey.com>
6760
6761         * configure: Rebuild.
6762         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
6763
6764 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
6765
6766         PR server/23158:
6767         * regformats/regdat.sh: Adjust script, following the addition
6768         of the new expedite_regs parameter to init_target_desc.
6769
6770 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
6771     
6772         PR gdb/23127
6773         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
6774         set_gdbarch_significant_addr_bit.
6775         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
6776         set_gdbarch_significant_addr_bit.
6777         * utils.c (address_significant): Update to sign extend addr.
6778
6779 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
6780
6781         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
6782         (xtensa_linux_init_abi): Limit tdep->num_regs by
6783         tdep->num_nopriv_regs.
6784         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
6785         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
6786         not initialized.
6787
6788 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
6789
6790         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
6791
6792 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
6793
6794         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
6795         (I387_MXCSR_INIT_VAL): New constant.
6796         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
6797         buffer if it was supplied by the inferior.
6798         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
6799         (i387_xsave_get_clear_bv): New function.
6800         (i387_supply_xsave): Only read x87 control registers from the
6801         xsave buffer if the feature is enabled, and the state will have
6802         been written, otherwise, provide a suitable default.
6803         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
6804         including x87 control registers.  Update control registers if they
6805         have changed from the default value, and mark features as enabled
6806         as required.
6807         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
6808
6809 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
6810
6811         * spu-tdep.c (info_spu_event_command): Fix output formatting.
6812
6813 2018-05-07  Tom Tromey  <tom@tromey.com>
6814
6815         * configure: Rebuild.
6816         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
6817
6818 2018-05-07  Tom Tromey  <tom@tromey.com>
6819
6820         PR tdep/20362:
6821         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
6822         bit.  Use correct value for VDIV.
6823
6824 2018-05-04  Tom Tromey  <tom@tromey.com>
6825
6826         * configure: Rebuild.
6827         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
6828
6829 2018-05-04  Tom Tromey  <tom@tromey.com>
6830
6831         * linux-record.c (record_linux_system_call) <case
6832         RECORD_SYS_RECVFROM>: Add "break".
6833
6834 2018-05-04  Tom Tromey  <tom@tromey.com>
6835
6836         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
6837         Add missing "break".
6838         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
6839         Add missing "break".
6840
6841 2018-05-04  Tom Tromey  <tom@tromey.com>
6842
6843         * rs6000-tdep.c (ppc_process_record_op4)
6844         (ppc_process_record_op63): Add fall-through comment.
6845
6846 2018-05-04  Tom Tromey  <tom@tromey.com>
6847
6848         * i386-tdep.c (i386_process_record): Add fall-through comment.
6849
6850 2018-05-04  Tom Tromey  <tom@tromey.com>
6851
6852         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
6853         comment.
6854
6855 2018-05-04  Tom Tromey  <tom@tromey.com>
6856
6857         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
6858         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
6859         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
6860         comment.
6861         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
6862         comment.
6863         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
6864         comment.
6865
6866 2018-05-04  Tom Tromey  <tom@tromey.com>
6867
6868         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
6869
6870 2018-05-04  Tom Tromey  <tom@tromey.com>
6871
6872         * s390-tdep.c (s390_process_record): Fix fall-through comments.
6873         * xcoffread.c (scan_xcoff_symtab): Move comment later.
6874         * symfile.c (section_is_mapped): Fix fall-through comment.
6875         * stabsread.c (define_symbol, read_member_functions): Fix
6876         fall-through comment.
6877         * s390-linux-tdep.c (s390_process_record): Fix fall-through
6878         comment.
6879         * remote.c (remote_wait_as): Fix fall-through comment.
6880         * p-exp.y (yylex): Fix fall-through comment.
6881         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
6882         comment.
6883         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
6884         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
6885         * jv-exp.y (yylex): Fix fall-through comment.
6886         * go-exp.y (lex_one_token): Fix fall-through comment.
6887         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
6888         fall-through comment.
6889         * f-exp.y (yylex): Fix fall-through comment.
6890         * dwarf2read.c (process_die): Fix fall-through comments.
6891         * dbxread.c (process_one_symbol): Fix fall-through comment.
6892         * d-exp.y (lex_one_token): Fix fall-through comment.
6893         * cp-name-parser.y (yylex): Fix fall-through comment.
6894         * coffread.c (coff_symtab_read): Fix fall-through comment.
6895         * c-exp.y (lex_one_token): Fix fall-through comment.
6896         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
6897         comment.
6898         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
6899         comment.
6900
6901 2018-05-04  Tom Tromey  <tom@tromey.com>
6902
6903         PR python/22730:
6904         * NEWS: Mention gdb.execute change.
6905         * gdbcmd.h (execute_control_command): Don't declare.
6906         * python/python.c (execute_gdb_command): Use read_command_lines_1,
6907         execute_control_commands, execute_control_commands_to_string.
6908         * cli/cli-script.h (execute_control_commands)
6909         (execute_control_commands_to_string): Declare.
6910         (execute_control_command): Add from_tty parameter.
6911         * cli/cli-script.c (execute_control_commands)
6912         (execute_control_commands_to_string): New functions.
6913         (execute_user_command): Use execute_control_commands.
6914         (execute_control_command_1): Add "from_tty" parameter.  Update.
6915         (execute_control_command): Likewise.
6916
6917 2018-05-04  Tom Tromey  <tom@tromey.com>
6918
6919         PR python/22731:
6920         * NEWS: Mention that breakpoint commands are writable.
6921         * python/py-breakpoint.c (bppy_set_commands): New function.
6922         (breakpoint_object_getset) <"commands">: Use it.
6923
6924 2018-05-04  Tom Tromey  <tom@tromey.com>
6925
6926         * tracepoint.c (actions_command): Update.
6927         * mi/mi-cmd-break.c (mi_command_line_array)
6928         (mi_command_line_array_cnt, mi_command_line_array_ptr)
6929         (mi_read_next_line): Remove.
6930         (mi_cmd_break_commands): Update.
6931         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
6932         function_view.
6933         * cli/cli-script.c (get_command_line): Update.
6934         (process_next_line): Use function_view.  Constify.
6935         (recurse_read_control_structure, read_command_lines)
6936         (read_command_lines_1): Change argument types to function_view.
6937         (do_define_command, document_command): Update.
6938         * breakpoint.h (check_tracepoint_command): Don't declare.
6939         * breakpoint.c (check_tracepoint_command): Remove.
6940         (commands_command_1, create_tracepoint_from_upload): Update.
6941
6942 2018-05-04  Tom Tromey  <tom@tromey.com>
6943
6944         PR gdb/11750:
6945         * cli/cli-script.h (enum command_control_type) <define_control>:
6946         New constant.
6947         * cli/cli-script.c (multi_line_command_p): Handle define_control.
6948         (build_command_line, execute_control_command_1)
6949         (process_next_line): Likewise.
6950         (do_define_command): New function, extracted from define_command.
6951         (define_command): Use it.
6952
6953 2018-05-04  Tom Tromey  <tom@tromey.com>
6954
6955         * tracepoint.c (actions_command): Update.
6956         * cli/cli-script.h (read_command_lines): Update.
6957         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
6958         (MAX_TMPBUF): Remove define.
6959         (define_command): Use string_printf.
6960         (document_command): Likewise.
6961         * breakpoint.c (commands_command_1): Update.
6962
6963 2018-05-04  Tom Tromey  <tom@tromey.com>
6964
6965         * top.c (execute_command): Update.
6966         * cli/cli-script.h (print_command_lines): Now varargs.
6967         * cli/cli-script.c (print_command_lines): Now varargs.
6968         (execute_control_command_1) <case while_control, case if_control>:
6969         Update.
6970
6971 2018-05-04  Tom Tromey  <tom@tromey.com>
6972
6973         * tracepoint.c (all_tracepoint_actions): Rename from
6974         all_tracepoint_actions_and_cleanup.  Change return type.
6975         (actions_command, encode_actions_1, encode_actions)
6976         (trace_dump_actions, tdump_command): Update.
6977         * remote.c (remote_download_command_source): Update.
6978         * python/python.c (gdbpy_eval_from_control_command)
6979         (python_command, python_interactive_command): Update.
6980         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
6981         * guile/guile.c (guile_command)
6982         (gdbscm_eval_from_control_command, guile_command): Update.
6983         * compile/compile.c (compile_code_command)
6984         (compile_print_command, compile_to_object): Update.
6985         * cli/cli-script.h (struct command_lines_deleter): New.
6986         (counted_command_line): New typedef.
6987         (struct command_line): Add constructor, destructor.
6988         <body_list>: Remove.
6989         <body_list_0, body_list_1>: New members.
6990         (command_line_up): Remove typedef.
6991         (read_command_lines, read_command_lines_1, get_command_line):
6992         Update.
6993         (copy_command_lines): Don't declare.
6994         * cli/cli-script.c (build_command_line): Use "new".
6995         (get_command_line): Return counted_command_line.
6996         (print_command_lines, execute_user_command)
6997         (execute_control_command_1, while_command, if_command): Update.
6998         (realloc_body_list): Remove.
6999         (process_next_line, recurse_read_control_structure): Update.
7000         (read_command_lines, read_command_lines_1): Return counted_command_line.
7001         (free_command_lines): Use "delete".
7002         (copy_command_lines): Remove.
7003         (define_command, document_command, show_user_1): Update.
7004         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
7005         a counted_command_line.
7006         * breakpoint.h (counted_command_line): Remove typedef.
7007         (breakpoint_set_commands): Update.
7008         * breakpoint.c (check_no_tracepoint_commands)
7009         (validate_commands_for_breakpoint): Update.
7010         (breakpoint_set_commands): Change commands to be a
7011         counted_command_line.
7012         (commands_command_1, update_dprintf_command_list)
7013         (create_tracepoint_from_upload): Update.
7014
7015 2018-05-04  Tom Tromey  <tom@tromey.com>
7016
7017         * cli/cli-decode.h (cmd_list_element): New constructor.
7018         (~cmd_list_element): New destructor.
7019         (struct cmd_list_element): Add initializers.
7020         * cli/cli-decode.c (do_add_cmd): Use "new".
7021         (delete_cmd): Use "delete".
7022
7023 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
7024             Pedro Alves <palves@redhat.com>
7025
7026         PR breakpoints/19806 and support for PR external/20207.
7027         * NEWS: Mention Aarch64 watchpoint improvements.
7028         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
7029         watchpoints and PR external/20207 watchpoints.
7030         * nat/aarch64-linux-hw-point.c
7031         (kernel_supports_any_contiguous_range): New.
7032         (aarch64_watchpoint_offset): New.
7033         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
7034         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
7035         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
7036         (aarch64_align_watchpoint): New parameters aligned_offset_p and
7037         next_addr_orig_p.  Support PR external/20207 watchpoints.
7038         (aarch64_downgrade_regs): New.
7039         (aarch64_dr_state_insert_one_point): New parameters offset and
7040         addr_orig.
7041         (aarch64_dr_state_remove_one_point): Likewise.
7042         (aarch64_handle_breakpoint): Update caller.
7043         (aarch64_handle_aligned_watchpoint): Likewise.
7044         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
7045         aligned_offset.
7046         (aarch64_linux_set_debug_regs): Remove const from state.  Call
7047         aarch64_downgrade_regs.
7048         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
7049         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
7050         (DR_CONTROL_MASK): ... this.
7051         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
7052         (unsigned int aarch64_watchpoint_offset): New prototype.
7053         (aarch64_linux_set_debug_regs): Remove const from state.
7054         * utils.c (align_up, align_down): Move to ...
7055         * common/common-utils.c (align_up, align_down): ... here.
7056         * utils.h (align_up, align_down): Move to ...
7057         * common/common-utils.h (align_up, align_down): ... here.
7058
7059 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
7060
7061         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
7062         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
7063         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
7064         Re-implement to match the ABI as summarized in GCC's
7065         gcc/config/sparc/sparc.c.  All callers updated.
7066         (sparc32_store_arguments): Remove assertion.
7067
7068 2018-05-04  Tom Tromey  <tom@tromey.com>
7069
7070         * printcmd.c: Don't include tui.h.
7071         (decode_format): Use skip_spaces.
7072
7073 2018-05-04  Tom Tromey  <tom@tromey.com>
7074
7075         PR gdb/22619:
7076         * printcmd.c (last_count): New global.
7077         (x_command): Use saved count when repeating.
7078
7079 2018-05-04  Tom Tromey  <tom@tromey.com>
7080
7081         * nto-procfs.c (do_closedir_cleanup): Remove.
7082         (procfs_pidlist): Use gdb_dir_up.
7083         * procfs.c (do_closedir_cleanup): Remove.
7084         (proc_update_threads): Use gdb_dir_up.
7085         * common/filestuff.h (struct gdb_dir_deleter): New.
7086         (gdb_dir_up): New typedef.
7087
7088 2018-05-04  Tom Tromey  <tom@tromey.com>
7089
7090         * ada-lang.c (print_mention_exception): Use std::string.
7091
7092 2018-05-04  Tom Tromey  <tom@tromey.com>
7093
7094         * ada-lang.c (create_excep_cond_exprs): Update.
7095         (ada_exception_catchpoint_cond_string): Use std::string.
7096
7097 2018-05-04  Tom Tromey  <tom@tromey.com>
7098
7099         * ada-lang.c (xget_renaming_scope): Return std::string.
7100         (old_renaming_is_invisible): Update.
7101
7102 2018-05-04  Tom Tromey  <tom@tromey.com>
7103
7104         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
7105         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
7106
7107 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
7108
7109         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
7110
7111 2018-05-04  Tom Tromey  <tom@tromey.com>
7112
7113         * remote.c (remote_query_supported_append): Change type.
7114         (remote_check_symbols): Update.
7115
7116 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
7117
7118         PR gdb/11420
7119         * configure.ac: Prepend libpython.
7120         * python/python-config.py: Likewise.
7121         * configure: Regenerate.
7122
7123 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
7124
7125         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
7126
7127 2018-05-03  Pedro Alves  <palves@redhat.com>
7128
7129         * s390-linux-nat.c
7130         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
7131         override.  Write 'true' instead of '1'.
7132         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
7133         declaration.
7134
7135 2018-05-02  Pedro Alves  <palves@redhat.com>
7136
7137         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
7138         add_inf_child_target.
7139         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
7140         add_inf_child_target.
7141         * aix-thread.c (aix_thread_target_info): New.
7142         (aix_thread_target) <shortname, longname, doc>: Delete.
7143         <info>: New.
7144         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
7145         add_inf_child_target.
7146         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
7147         add_inf_child_target.
7148         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
7149         add_inf_child_target.
7150         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
7151         add_inf_child_target.
7152         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
7153         add_inf_child_target.
7154         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
7155         add_inf_child_target.
7156         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
7157         add_inf_child_target.
7158         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
7159         add_inf_child_target.
7160         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
7161         add_inf_child_target.
7162         * bfd-target.c (target_bfd_target_info): New.
7163         (target_bfd) <shortname, longname, doc>: Delete.
7164         <info>: New.
7165         * bsd-kvm.c (bsd_kvm_target_info): New.
7166         (bsd_kvm_target) <shortname, longname, doc>: Delete.
7167         <info>: New.
7168         (bsd_kvm_target::open): Rename to ...
7169         (bsd_kvm_target_open): ... this.  Adjust.
7170         * bsd-uthread.c (bsd_uthread_target_info): New.
7171         (bsd_uthread_target) <shortname, longname, doc>: Delete.
7172         <info>: New.
7173         * corefile.c (core_file_command): Adjust.
7174         * corelow.c (core_target_info): New.
7175         (core_target) <shortname, longname, doc>: Delete.
7176         <info>: New.
7177         (core_target::open): Rename to ...
7178         (core_target_open): ... this.  Adjust.
7179         * ctf.c (ctf_target_info): New.
7180         (ctf_target) <shortname, longname, doc>: Delete.
7181         <info>: New.
7182         (ctf_target::open): Rename to ...
7183         (ctf_target_open): ... this.
7184         (_initialize_ctf): Adjust.
7185         * exec.c (exec_target_info): New.
7186         (exec_target) <shortname, longname, doc>: Delete.
7187         <info>: New.
7188         (exec_target::open): Rename to ...
7189         (exec_target_open): ... this.
7190         * gdbcore.h (core_target_open): Declare.
7191         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
7192         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
7193         add_inf_child_target.
7194         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
7195         add_inf_child_target.
7196         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
7197         add_inf_child_target.
7198         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
7199         add_inf_child_target.
7200         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
7201         add_inf_child_target.
7202         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
7203         add_inf_child_target.
7204         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
7205         add_inf_child_target.
7206         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
7207         add_inf_child_target.
7208         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
7209         add_inf_child_target.
7210         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
7211         add_inf_child_target.
7212         * inf-child.c (inf_child_target_info): New.
7213         (inf_child_target::info): New.
7214         (inf_child_open_target): Remove 'target' parameter.  Use
7215         get_native_target instead.
7216         (inf_child_target::open): Delete.
7217         (add_inf_child_target): New.
7218         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
7219         Delete.
7220         <info>: New.
7221         (add_inf_child_target): Declare.
7222         (inf_child_open_target): Declare.
7223         * linux-thread-db.c (thread_db_target_info): New.
7224         (thread_db_target) <shortname, longname, doc>: Delete.
7225         <info>: New.
7226         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
7227         add_inf_child_target.
7228         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
7229         add_inf_child_target.
7230         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
7231         add_inf_child_target.
7232         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
7233         add_inf_child_target.
7234         * make-target-delegates (print_class): Adjust.
7235         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
7236         add_inf_child_target.
7237         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
7238         add_inf_child_target.
7239         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
7240         add_inf_child_target.
7241         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
7242         add_inf_child_target.
7243         * nto-procfs.c (nto_native_target_info): New.
7244         (nto_procfs_target_native) <shortname, longname, doc>:
7245         Delete.
7246         <info>: New.
7247         (nto_procfs_target_info): New.
7248         (nto_procfs_target_procfs) <shortname, longname, doc>:
7249         Delete.
7250         <info>: New.
7251         (init_procfs_targets): Adjust.
7252         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
7253         add_inf_child_target.
7254         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
7255         add_inf_child_target.
7256         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
7257         add_inf_child_target.
7258         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
7259         add_inf_child_target.
7260         * ravenscar-thread.c (ravenscar_target_info): New.
7261         (ravenscar_thread_target) <shortname, longname, doc>:
7262         Delete.
7263         <info>: New.
7264         * record-btrace.c (record_btrace_target_info):
7265         (record_btrace_target) <shortname, longname, doc>: Delete.
7266         <info>: New.
7267         (record_btrace_target::open): Rename to ...
7268         (record_btrace_target_open): ... this.  Adjust.
7269         * record-full.c (record_longname, record_doc): New.
7270         (record_full_base_target) <shortname, longname, doc>: Delete.
7271         <info>: New.
7272         (record_full_target_info): New.
7273         (record_full_target): <shortname>: Delete.
7274         <info>: New.
7275         (record_full_core_open_1, record_full_open_1): Update comments.
7276         (record_full_base_target::open): Rename to ...
7277         (record_full_open): ... this.
7278         (cmd_record_full_restore): Update.
7279         (_initialize_record_full): Update.
7280         * remote-sim.c (remote_sim_target_info): New.
7281         (gdbsim_target) <shortname, longname, doc>: Delete.
7282         <info>: New.
7283         (gdbsim_target::open): Rename to ...
7284         (gdbsim_target_open): ... this.
7285         (_initialize_remote_sim): Adjust.
7286         * remote.c (remote_doc): New.
7287         (remote_target_info): New.
7288         (remote_target) <shortname, longname, doc>: Delete.
7289         <info>: New.
7290         (extended_remote_target_info): New.
7291         (extended_remote_target) <shortname, longname, doc>: Delete.
7292         <info>: New.
7293         (remote_target::open_1): Make static.  Adjust.
7294         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
7295         * s390-linux-nat.c (_initialize_s390_nat): Use
7296         add_inf_child_target.
7297         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
7298         add_inf_child_target.
7299         * sol-thread.c (thread_db_target_info): New.
7300         (sol_thread_target) <shortname, longname, doc>: Delete.
7301         <info>: New.
7302         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
7303         add_inf_child_target.
7304         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
7305         add_inf_child_target.
7306         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
7307         add_inf_child_target.
7308         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
7309         add_inf_child_target.
7310         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
7311         add_inf_child_target.
7312         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
7313         add_inf_child_target.
7314         * spu-linux-nat.c (_initialize_spu_nat): Use
7315         add_inf_child_target.
7316         * spu-multiarch.c (spu_multiarch_target_info): New.
7317         (spu_multiarch_target) <shortname, longname, doc>: Delete.
7318         <info>: New.
7319         * target-delegates.c: Regenerate.
7320         * target.c: Include <unordered_map>.
7321         (target_ops_p): Delete.
7322         (DEF_VEC_P(target_ops_p)): Delete.
7323         (target_factories): New.
7324         (test_target_info): New.
7325         (test_target_ops::info): New.
7326         (open_target): Adjust to use target_factories.
7327         (add_target_with_completer): Rename to ...
7328         (add_target): ... this.  Change prototype.  Register target_info
7329         and open callback in target_factories.  Register target_info in
7330         command context instead of target_ops.
7331         (add_target): Delete old implementation.
7332         (add_deprecated_target_alias): Change prototype.  Adjust.
7333         (the_native_target): New.
7334         (set_native_target, get_native_target): New.
7335         (find_default_run_target): Use the_native_target.
7336         (find_attach_target, find_run_target): Simplify.
7337         (target_ops::open): Delete.
7338         (dummy_target_info): New.
7339         (dummy_target::shortname, dummy_target::longname)
7340         (dummy_target::doc): Delete.
7341         (dummy_target::info): New.
7342         (debug_target::shortname, debug_target::longname)
7343         (debug_target::doc): Delete.
7344         (debug_target::info): New.
7345         * target.h (struct target_info): New.
7346         (target_ops::~target_ops): Add comment.
7347         (target_ops::info): New.
7348         (target_ops::shortname, target_ops::longname, target_ops::doc): No
7349         longer virtual.  Implement in terms of target_info.
7350         (set_native_target, get_native_target): Declare.
7351         (target_open_ftype): New.
7352         (add_target, add_target_with_completer)
7353         (add_deprecated_target_alias): Change prototype.
7354         (test_target) <shortname, longname, doc>: Delete.
7355         <info>: New.
7356         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
7357         add_inf_child_target.
7358         * tracefile-tfile.c (tfile_target_info): New.
7359         (tfile_target) <shortname, longname, doc>: Delete.
7360         <info>: New.
7361         (tfile_target::open): Rename to ...
7362         (tfile_target_open): ... this.
7363         (_initialize_tracefile_tfile): Adjust.
7364         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
7365         add_inf_child_target.
7366         * windows-nat.c (_initialize_windows_nat): Use
7367         add_inf_child_target.
7368         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
7369         add_inf_child_target.
7370
7371 2018-05-02  Pedro Alves  <palves@redhat.com>
7372
7373         * linux-nat.h (linux_nat_target) <low_new_thread,
7374         low_delete_thread, low_new_fork, low_forget_process,
7375         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
7376         New virtual methods.
7377         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
7378         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
7379         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
7380         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
7381         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
7382         Delete.
7383         * linux-fork.c (delete_fork): Adjust to call low method.
7384         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
7385         (linux_nat_new_fork, linux_nat_forget_process_hook)
7386         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
7387         (linux_nat_status_is_event):
7388         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
7389         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
7390         to call low method.
7391         (sigtrap_is_event): Rename to ...
7392         (linux_nat_target::low_status_is_event): ... this.
7393         (linux_nat_set_status_is_event): Delete.
7394         (save_stop_reason, linux_nat_wait_1)
7395         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
7396         low methods.
7397         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
7398         (linux_nat_set_new_fork, linux_nat_set_forget_process)
7399         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
7400         (linux_nat_set_prepare_to_resume): Delete.
7401         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
7402         low virtual methods.
7403         * amd64-linux-nat.c: Likewise.
7404         * arm-linux-nat.c: Likewise.
7405         * i386-linux-nat.c: Likewise.
7406         * ia64-linux-nat.c: Likewise.
7407         * mips-linux-nat.c: Likewise.
7408         * ppc-linux-nat.c: Likewise.
7409         * s390-linux-nat.c: Likewise.
7410         * sparc64-linux-nat.c: Likewise.
7411         * x86-linux-nat.c: Likewise.
7412         * x86-linux-nat.h: Include "nat/x86-linux.h".
7413         (x86_linux_nat_target) <low_new_fork, low_forget_process,
7414         low_prepare_to_resume, low_new_thread, low_delete_thread>:
7415         Override methods.
7416
7417 2018-05-02  Pedro Alves  <palves@redhat.com>
7418
7419         * target.h (target_ops)
7420         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
7421         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
7422         stopped_by_watchpoint, have_continuable_watchpoint,
7423         stopped_data_address, watchpoint_addr_within_range,
7424         can_accel_watchpoint_condition, can_run, thread_alive,
7425         has_all_memory, has_memory, has_stack, has_registers,
7426         has_execution, can_async_p, is_async_p, supports_non_stop,
7427         always_non_stop_p, can_execute_reverse, supports_multi_process,
7428         supports_enable_disable_tracepoint,
7429         supports_disable_randomization, supports_string_tracing,
7430         supports_evaluation_of_breakpoint_conditions,
7431         can_run_breakpoint_commands, filesystem_is_local,
7432         can_download_tracepoint, get_trace_state_variable_value,
7433         set_trace_notes, get_tib_address, use_agent, can_use_agent,
7434         record_is_replaying, record_will_replay,
7435         augmented_libraries_svr4_read>: Adjust to return bool.
7436         * aarch64-linux-nat.c: All implementations adjusted.
7437         * aix-thread.c: All implementations adjusted.
7438         * arm-linux-nat.c: All implementations adjusted.
7439         * breakpoint.c: All implementations adjusted.
7440         * bsd-kvm.c: All implementations adjusted.
7441         * bsd-uthread.c: All implementations adjusted.
7442         * corelow.c: All implementations adjusted.
7443         * ctf.c: All implementations adjusted.
7444         * darwin-nat.c: All implementations adjusted.
7445         * darwin-nat.h: All implementations adjusted.
7446         * exec.c: All implementations adjusted.
7447         * fbsd-nat.c: All implementations adjusted.
7448         * fbsd-nat.h: All implementations adjusted.
7449         * gnu-nat.c: All implementations adjusted.
7450         * gnu-nat.h: All implementations adjusted.
7451         * go32-nat.c: All implementations adjusted.
7452         * ia64-linux-nat.c: All implementations adjusted.
7453         * inf-child.c: All implementations adjusted.
7454         * inf-child.h: All implementations adjusted.
7455         * inf-ptrace.c: All implementations adjusted.
7456         * inf-ptrace.h: All implementations adjusted.
7457         * linux-nat.c: All implementations adjusted.
7458         * linux-nat.h: All implementations adjusted.
7459         * mips-linux-nat.c: All implementations adjusted.
7460         * nto-procfs.c: All implementations adjusted.
7461         * ppc-linux-nat.c: All implementations adjusted.
7462         * procfs.c: All implementations adjusted.
7463         * ravenscar-thread.c: All implementations adjusted.
7464         * record-btrace.c: All implementations adjusted.
7465         * record-full.c: All implementations adjusted.
7466         * remote-sim.c: All implementations adjusted.
7467         * remote.c: All implementations adjusted.
7468         * s390-linux-nat.c: All implementations adjusted.
7469         * sol-thread.c: All implementations adjusted.
7470         * spu-multiarch.c: All implementations adjusted.
7471         * target-delegates.c: All implementations adjusted.
7472         * target.c: All implementations adjusted.
7473         * target.h: All implementations adjusted.
7474         * tracefile-tfile.c: All implementations adjusted.
7475         * tracefile.c: All implementations adjusted.
7476         * tracefile.h: All implementations adjusted.
7477         * windows-nat.c: All implementations adjusted.
7478         * x86-linux-nat.h: All implementations adjusted.
7479         * x86-nat.h: All implementations adjusted.
7480
7481 2018-05-02  Pedro Alves  <palves@redhat.com>
7482
7483         * make-target-delegates (scan_target_h): Don't trim lines here.
7484         Replace sequences of tabs and/or whitespace with a single
7485         whitespace.
7486         (top level, parsing methods): Trim each line before processing it
7487         here.
7488
7489 2018-05-02  Pedro Alves  <palves@redhat.com>
7490             John Baldwin  <jhb@freebsd.org>
7491
7492         * target.h (enum strata) <debug_stratum>: New.
7493         (struct target_ops) <all delegation methods>: Replace by C++
7494         virtual methods, and drop "to_" prefix.  All references updated
7495         throughout.
7496         <to_shortname, to_longname, to_doc, to_data,
7497         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
7498         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
7499         virtual methods.  All references updated throughout.
7500         <can_attach, supports_terminal_ours, can_create_inferior,
7501         get_thread_control_capabilities, attach_no_wait>: New
7502         virtual methods.
7503         <insert_breakpoint, remove_breakpoint>: Now
7504         TARGET_DEFAULT_NORETURN methods.
7505         <info_proc>: Now returns bool.
7506         <to_magic>: Delete.
7507         (OPS_MAGIC): Delete.
7508         (current_target): Delete.  All references replaced by references
7509         to ...
7510         (target_stack): ... this.  New.
7511         (target_shortname, target_longname): Adjust.
7512         (target_can_run): Now a function declaration.
7513         (default_child_has_all_memory, default_child_has_memory)
7514         (default_child_has_stack, default_child_has_registers)
7515         (default_child_has_execution): Remove target_ops parameter.
7516         (complete_target_initialization): Delete.
7517         (memory_breakpoint_target): New template class.
7518         (test_target_ops): Refactor as a C++ class with virtual methods.
7519         * make-target-delegates (NAME_PART): Tighten.
7520         (POINTER_PART, CP_SYMBOL): New.
7521         (SIMPLE_RETURN_PART): Reimplement.
7522         (VEC_RETURN_PART): Expect less.
7523         (RETURN_PART, VIRTUAL_PART): New.
7524         (METHOD): Adjust to C++ virtual methods.
7525         (scan_target_h): Remove reference to C99.
7526         (dname): Output "target_ops::" prefix.
7527         (write_function_header): Adjust to output a C++ class method.
7528         (write_declaration): New.
7529         (write_delegator): Adjust to output a C++ class method.
7530         (tdname): Output "dummy_target::" prefix.
7531         (write_tdefault, write_debugmethod): Adjust to output a C++ class
7532         method.
7533         (tdefault_names, debug_names): Delete.
7534         (return_types, tdefaults, styles, argtypes_array): New.
7535         (top level): All methods are delegators.
7536         (print_class): New.
7537         (top level): Print dummy_target and debug_target classes.
7538         * target-delegates.c: Regenerate.
7539         * target-debug.h (target_debug_print_enum_info_proc_what)
7540         (target_debug_print_thread_control_capabilities)
7541         (target_debug_print_thread_info_p): New.
7542         * target.c (dummy_target): Delete.
7543         (the_dummy_target, the_debug_target): New.
7544         (target_stack): Now extern.
7545         (set_targetdebug): Push/unpush debug target.
7546         (default_child_has_all_memory, default_child_has_memory)
7547         (default_child_has_stack, default_child_has_registers)
7548         (default_child_has_execution): Remove target_ops parameter.
7549         (complete_target_initialization): Delete.
7550         (add_target_with_completer): No longer call
7551         complete_target_initialization.
7552         (target_supports_terminal_ours): Use regular delegation.
7553         (update_current_target): Delete.
7554         (push_target): No longer check magic number.  Don't call
7555         update_current_target.
7556         (unpush_target): Don't call update_current_target.
7557         (target_is_pushed): No longer check magic number.
7558         (target_require_runnable): Skip for all stratums over
7559         process_stratum.
7560         (target_ops::info_proc): New.
7561         (target_info_proc): Use find_target_at and
7562         find_default_run_target.
7563         (target_supports_disable_randomization): Use regular delegation.
7564         (target_get_osdata): Use find_target_at.
7565         (target_ops::open, target_ops::close, target_ops::can_attach)
7566         (target_ops::attach, target_ops::can_create_inferior)
7567         (target_ops::create_inferior, target_ops::can_run)
7568         (target_can_run): New.
7569         (default_fileio_target): Use regular delegation.
7570         (target_ops::fileio_open, target_ops::fileio_pwrite)
7571         (target_ops::fileio_pread, target_ops::fileio_fstat)
7572         (target_ops::fileio_close, target_ops::fileio_unlink)
7573         (target_ops::fileio_readlink): New.
7574         (target_fileio_open_1, target_fileio_unlink)
7575         (target_fileio_readlink): Always call the target method.  Handle
7576         FILEIO_ENOSYS.
7577         (return_zero, return_zero_has_execution): Delete.
7578         (init_dummy_target): Delete.
7579         (dummy_target::dummy_target, dummy_target::shortname)
7580         (dummy_target::longname, dummy_target::doc)
7581         (debug_target::debug_target, debug_target::shortname)
7582         (debug_target::longname, debug_target::doc): New.
7583         (target_supports_delete_record): Use regular delegation.
7584         (setup_target_debug): Delete.
7585         (maintenance_print_target_stack): Skip debug_stratum.
7586         (initialize_targets): Instantiate the_dummy_target and
7587         the_debug_target.
7588         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
7589         use target_stack.
7590         (target_auxv_search, fprint_target_auxv): Adjust.
7591         (info_auxv_command): Adjust to use target_stack.
7592         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
7593         * exceptions.c (print_flush): Handle a NULL target_stack.
7594         * regcache.c (target_ops_no_register): Refactor as class with
7595         virtual methods.
7596
7597         * exec.c (exec_target): New class.
7598         (exec_ops): Now an exec_target.
7599         (exec_open, exec_close_1, exec_get_section_table)
7600         (exec_xfer_partial, exec_files_info, exec_has_memory)
7601         (exec_make_note_section): Refactor as exec_target methods.
7602         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
7603         Delete.
7604         (exec_target::find_memory_regions): New.
7605         (_initialize_exec): Don't call init_exec_ops.
7606         * gdbcore.h (exec_file_clear): Delete.
7607
7608         * corefile.c (core_target): Delete.
7609         (core_file_command): Adjust.
7610         * corelow.c (core_target): New class.
7611         (the_core_target): New.
7612         (core_close): Remove target_ops parameter.
7613         (core_close_cleanup): Adjust.
7614         (core_target::close): New.
7615         (core_open, core_detach, get_core_registers, core_files_info)
7616         (core_xfer_partial, core_thread_alive, core_read_description)
7617         (core_pid_to_str, core_thread_name, core_has_memory)
7618         (core_has_stack, core_has_registers, core_info_proc): Rework as
7619         core_target methods.
7620         (ignore, core_remove_breakpoint, init_core_ops): Delete.
7621         (_initialize_corelow): Initialize the_core_target.
7622         * gdbcore.h (core_target): Delete.
7623         (the_core_target): New.
7624
7625         * ctf.c: (ctf_target): New class.
7626         (ctf_ops): Now a ctf_target.
7627         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
7628         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
7629         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
7630         methods.
7631         (init_ctf_ops): Delete.
7632         (_initialize_ctf): Don't call it.
7633         * tracefile-tfile.c (tfile_target): New class.
7634         (tfile_ops): Now a tfile_target.
7635         (tfile_open, tfile_close, tfile_files_info)
7636         (tfile_get_tracepoint_status, tfile_trace_find)
7637         (tfile_fetch_registers, tfile_xfer_partial)
7638         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
7639         Refactor as tfile_target methods.
7640         (tfile_xfer_partial_features): Remove target_ops parameter.
7641         (init_tfile_ops): Delete.
7642         (_initialize_tracefile_tfile): Don't call it.
7643         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
7644         (tracefile_has_stack, tracefile_has_registers)
7645         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
7646         tracefile_target methods.
7647         (init_tracefile_ops): Delete.
7648         (tracefile_target::tracefile_target): New.
7649         * tracefile.h: Include "target.h".
7650         (tracefile_target): New class.
7651         (init_tracefile_ops): Delete.
7652
7653         * spu-multiarch.c (spu_multiarch_target): New class.
7654         (spu_ops): Now a spu_multiarch_target.
7655         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
7656         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
7657         (spu_search_memory, spu_mourn_inferior): Refactor as
7658         spu_multiarch_target methods.
7659         (init_spu_ops): Delete.
7660         (_initialize_spu_multiarch): Remove references to init_spu_ops,
7661         complete_target_initialization.
7662
7663         * ravenscar-thread.c (ravenscar_thread_target): New class.
7664         (ravenscar_ops): Now a ravenscar_thread_target.
7665         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
7666         (ravenscar_thread_alive, ravenscar_pid_to_str)
7667         (ravenscar_fetch_registers, ravenscar_store_registers)
7668         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
7669         (ravenscar_stopped_by_hw_breakpoint)
7670         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
7671         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
7672         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
7673         methods.
7674         (init_ravenscar_thread_ops): Delete.
7675         (_initialize_ravenscar): Remove references to
7676         init_ravenscar_thread_ops and complete_target_initialization.
7677
7678         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
7679         (bsd_uthread_target): New class.
7680         (bsd_uthread_ops): Now a bsd_uthread_target.
7681         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
7682         (bsd_uthread_close, bsd_uthread_mourn_inferior)
7683         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
7684         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
7685         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
7686         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
7687         (bsd_uthread_target): Delete function.
7688         (_initialize_bsd_uthread): Remove reference to
7689         complete_target_initialization.
7690
7691         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
7692         (target_bfd): ... this new class.
7693         (target_bfd_xfer_partial, target_bfd_get_section_table)
7694         (target_bfd_close): Refactor as target_bfd methods.
7695         (target_bfd::~target_bfd): New.
7696         (target_bfd_reopen): Adjust.
7697         (target_bfd::close): New.
7698
7699         * record-btrace.c (record_btrace_target): New class.
7700         (record_btrace_ops): Now a record_btrace_target.
7701         (record_btrace_open, record_btrace_stop_recording)
7702         (record_btrace_disconnect, record_btrace_close)
7703         (record_btrace_async, record_btrace_info)
7704         (record_btrace_insn_history, record_btrace_insn_history_range)
7705         (record_btrace_insn_history_from, record_btrace_call_history)
7706         (record_btrace_call_history_range)
7707         (record_btrace_call_history_from, record_btrace_record_method)
7708         (record_btrace_is_replaying, record_btrace_will_replay)
7709         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
7710         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
7711         (record_btrace_store_registers, record_btrace_prepare_to_store)
7712         (record_btrace_to_get_unwinder)
7713         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
7714         (record_btrace_commit_resume, record_btrace_wait)
7715         (record_btrace_stop, record_btrace_can_execute_reverse)
7716         (record_btrace_stopped_by_sw_breakpoint)
7717         (record_btrace_supports_stopped_by_sw_breakpoint)
7718         (record_btrace_stopped_by_hw_breakpoint)
7719         (record_btrace_supports_stopped_by_hw_breakpoint)
7720         (record_btrace_update_thread_list, record_btrace_thread_alive)
7721         (record_btrace_goto_begin, record_btrace_goto_end)
7722         (record_btrace_goto, record_btrace_stop_replaying_all)
7723         (record_btrace_execution_direction)
7724         (record_btrace_prepare_to_generate_core)
7725         (record_btrace_done_generating_core): Refactor as
7726         record_btrace_target methods.
7727         (init_record_btrace_ops): Delete.
7728         (_initialize_record_btrace): Remove reference to
7729         init_record_btrace_ops.
7730         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
7731         the execution_direction global.
7732         (record_full_base_target, record_full_target)
7733         (record_full_core_target): New classes.
7734         (record_full_ops): Now a record_full_target.
7735         (record_full_core_ops): Now a record_full_core_target.
7736         (record_full_target::detach, record_full_target::disconnect)
7737         (record_full_core_target::disconnect)
7738         (record_full_target::mourn_inferior, record_full_target::kill):
7739         New.
7740         (record_full_open, record_full_close, record_full_async): Refactor
7741         as methods of the record_full_base_target class.
7742         (record_full_resume, record_full_commit_resume): Refactor
7743         as methods of the record_full_target class.
7744         (record_full_wait, record_full_stopped_by_watchpoint)
7745         (record_full_stopped_data_address)
7746         (record_full_stopped_by_sw_breakpoint)
7747         (record_full_supports_stopped_by_sw_breakpoint)
7748         (record_full_stopped_by_hw_breakpoint)
7749         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
7750         methods of the record_full_base_target class.
7751         (record_full_store_registers, record_full_xfer_partial)
7752         (record_full_insert_breakpoint, record_full_remove_breakpoint):
7753         Refactor as methods of the record_full_target class.
7754         (record_full_can_execute_reverse, record_full_get_bookmark)
7755         (record_full_goto_bookmark, record_full_execution_direction)
7756         (record_full_record_method, record_full_info, record_full_delete)
7757         (record_full_is_replaying, record_full_will_replay)
7758         (record_full_goto_begin, record_full_goto_end, record_full_goto)
7759         (record_full_stop_replaying): Refactor as methods of the
7760         record_full_base_target class.
7761         (record_full_core_resume, record_full_core_kill)
7762         (record_full_core_fetch_registers)
7763         (record_full_core_prepare_to_store)
7764         (record_full_core_store_registers, record_full_core_xfer_partial)
7765         (record_full_core_insert_breakpoint)
7766         (record_full_core_remove_breakpoint)
7767         (record_full_core_has_execution): Refactor
7768         as methods of the record_full_core_target class.
7769         (record_full_base_target::supports_delete_record): New.
7770         (init_record_full_ops): Delete.
7771         (init_record_full_core_ops): Delete.
7772         (record_full_save): Refactor as method of the
7773         record_full_base_target class.
7774         (_initialize_record_full): Remove references to
7775         init_record_full_ops and init_record_full_core_ops.
7776
7777         * remote.c (remote_target, extended_remote_target): New classes.
7778         (remote_ops): Now a remote_target.
7779         (extended_remote_ops): Now an extended_remote_target.
7780         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
7781         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
7782         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
7783         (remote_pass_signals, remote_set_syscall_catchpoint)
7784         (remote_program_signals, )
7785         (remote_thread_always_alive): Remove target_ops parameter.
7786         (remote_thread_alive, remote_thread_name)
7787         (remote_update_thread_list, remote_threads_extra_info)
7788         (remote_static_tracepoint_marker_at)
7789         (remote_static_tracepoint_markers_by_strid)
7790         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
7791         (remote_open): Refactor as methods of remote_target.
7792         (extended_remote_open, extended_remote_detach)
7793         (extended_remote_attach, extended_remote_post_attach):
7794         (extended_remote_supports_disable_randomization)
7795         (extended_remote_create_inferior): : Refactor as method of
7796         extended_remote_target.
7797         (remote_set_permissions, remote_open_1, remote_detach)
7798         (remote_follow_fork, remote_follow_exec, remote_disconnect)
7799         (remote_resume, remote_commit_resume, remote_stop)
7800         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
7801         (remote_terminal_ours, remote_wait, remote_fetch_registers)
7802         (remote_prepare_to_store, remote_store_registers)
7803         (remote_flash_erase, remote_flash_done, remote_files_info)
7804         (remote_kill, remote_mourn, remote_insert_breakpoint)
7805         (remote_remove_breakpoint, remote_insert_watchpoint)
7806         (remote_watchpoint_addr_within_range)
7807         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
7808         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
7809         (remote_supports_stopped_by_sw_breakpoint)
7810         (remote_stopped_by_hw_breakpoint)
7811         (remote_supports_stopped_by_hw_breakpoint)
7812         (remote_stopped_by_watchpoint, remote_stopped_data_address)
7813         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
7814         (remote_verify_memory): Refactor as methods of remote_target.
7815         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
7816         parameter.
7817         (remote_xfer_partial, remote_get_memory_xfer_limit)
7818         (remote_search_memory, remote_rcmd, remote_memory_map)
7819         (remote_pid_to_str, remote_get_thread_local_address)
7820         (remote_get_tib_address, remote_read_description): Refactor as
7821         methods of remote_target.
7822         (remote_target::fileio_open, remote_target::fileio_pwrite)
7823         (remote_target::fileio_pread, remote_target::fileio_close): New.
7824         (remote_hostio_readlink, remote_hostio_fstat)
7825         (remote_filesystem_is_local, remote_can_execute_reverse)
7826         (remote_supports_non_stop, remote_supports_disable_randomization)
7827         (remote_supports_multi_process, remote_supports_cond_breakpoints)
7828         (remote_supports_enable_disable_tracepoint)
7829         (remote_supports_string_tracing)
7830         (remote_can_run_breakpoint_commands, remote_trace_init)
7831         (remote_download_tracepoint, remote_can_download_tracepoint)
7832         (remote_download_trace_state_variable, remote_enable_tracepoint)
7833         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
7834         (remote_trace_start, remote_get_trace_status)
7835         (remote_get_tracepoint_status, remote_trace_stop)
7836         (remote_trace_find, remote_get_trace_state_variable_value)
7837         (remote_save_trace_data, remote_get_raw_trace_data)
7838         (remote_set_disconnected_tracing, remote_core_of_thread)
7839         (remote_set_circular_trace_buffer, remote_traceframe_info)
7840         (remote_get_min_fast_tracepoint_insn_len)
7841         (remote_set_trace_buffer_size, remote_set_trace_notes)
7842         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
7843         (remote_disable_btrace, remote_teardown_btrace)
7844         (remote_read_btrace, remote_btrace_conf)
7845         (remote_augmented_libraries_svr4_read, remote_load)
7846         (remote_pid_to_exec_file, remote_can_do_single_step)
7847         (remote_execution_direction, remote_thread_handle_to_thread_info):
7848         Refactor as methods of remote_target.
7849         (init_remote_ops, init_extended_remote_ops): Delete.
7850         (remote_can_async_p, remote_is_async_p, remote_async)
7851         (remote_thread_events, remote_upload_tracepoints)
7852         (remote_upload_trace_state_variables): Refactor as methods of
7853         remote_target.
7854         (_initialize_remote): Remove references to init_remote_ops and
7855         init_extended_remote_ops.
7856
7857         * remote-sim.c (gdbsim_target): New class.
7858         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
7859         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
7860         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
7861         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
7862         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
7863         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
7864         Refactor as methods of gdbsim_target.
7865         (gdbsim_ops): Now a gdbsim_target.
7866         (init_gdbsim_ops): Delete.
7867         (gdbsim_cntrl_c): Adjust.
7868         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
7869
7870         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
7871         (the_amd64_linux_nat_target): New.
7872         (amd64_linux_fetch_inferior_registers)
7873         (amd64_linux_store_inferior_registers): Refactor as methods of
7874         amd64_linux_nat_target.
7875         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
7876         * i386-linux-nat.c: Don't include "linux-nat.h".
7877         (i386_linux_nat_target): New class.
7878         (the_i386_linux_nat_target): New.
7879         (i386_linux_fetch_inferior_registers)
7880         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
7881         as methods of i386_linux_nat_target.
7882         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
7883         * inf-child.c (inf_child_ops): Delete.
7884         (inf_child_fetch_inferior_registers)
7885         (inf_child_store_inferior_registers): Delete.
7886         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
7887         methods of inf_child_target.
7888         (inf_child_target::supports_terminal_ours)
7889         (inf_child_target::terminal_init)
7890         (inf_child_target::terminal_inferior)
7891         (inf_child_target::terminal_ours_for_output)
7892         (inf_child_target::terminal_ours, inf_child_target::interrupt)
7893         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
7894         New.
7895         (inf_child_open, inf_child_disconnect, inf_child_close)
7896         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
7897         (inf_child_post_startup_inferior, inf_child_can_run)
7898         (inf_child_pid_to_exec_file): Refactor as methods of
7899         inf_child_target.
7900         (inf_child_follow_fork): Delete.
7901         (inf_child_target::can_create_inferior)
7902         (inf_child_target::can_attach): New.
7903         (inf_child_target::has_all_memory, inf_child_target::has_memory)
7904         (inf_child_target::has_stack, inf_child_target::has_registers)
7905         (inf_child_target::has_execution): New.
7906         (inf_child_fileio_open, inf_child_fileio_pwrite)
7907         (inf_child_fileio_pread, inf_child_fileio_fstat)
7908         (inf_child_fileio_close, inf_child_fileio_unlink)
7909         (inf_child_fileio_readlink, inf_child_use_agent)
7910         (inf_child_can_use_agent): Refactor as methods of
7911         inf_child_target.
7912         (return_zero, inf_child_target): Delete.
7913         (inf_child_target::inf_child_target): New.
7914         * inf-child.h: Include "target.h".
7915         (inf_child_target): Delete function prototype.
7916         (inf_child_target): New class.
7917         (inf_child_open_target, inf_child_mourn_inferior)
7918         (inf_child_maybe_unpush_target): Delete.
7919         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
7920         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
7921         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
7922         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
7923         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
7924         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
7925         (inf_ptrace_wait, inf_ptrace_xfer_partial)
7926         (inf_ptrace_thread_alive, inf_ptrace_files_info)
7927         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
7928         methods of inf_ptrace_target.
7929         (inf_ptrace_target): Delete function.
7930         * inf-ptrace.h: Include "inf-child.h".
7931         (inf_ptrace_target): Delete function declaration.
7932         (inf_ptrace_target): New class.
7933         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
7934         * linux-nat.c (linux_target): New.
7935         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
7936         (linux_nat_target::~linux_nat_target): New.
7937         (linux_child_post_attach, linux_child_post_startup_inferior)
7938         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
7939         (linux_child_remove_fork_catchpoint)
7940         (linux_child_insert_vfork_catchpoint)
7941         (linux_child_remove_vfork_catchpoint)
7942         (linux_child_insert_exec_catchpoint)
7943         (linux_child_remove_exec_catchpoint)
7944         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
7945         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
7946         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
7947         (linux_nat_stopped_data_address)
7948         (linux_nat_stopped_by_sw_breakpoint)
7949         (linux_nat_supports_stopped_by_sw_breakpoint)
7950         (linux_nat_stopped_by_hw_breakpoint)
7951         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
7952         (linux_nat_kill, linux_nat_mourn_inferior)
7953         (linux_nat_xfer_partial, linux_nat_thread_alive)
7954         (linux_nat_update_thread_list, linux_nat_pid_to_str)
7955         (linux_nat_thread_name, linux_child_pid_to_exec_file)
7956         (linux_child_static_tracepoint_markers_by_strid)
7957         (linux_nat_is_async_p, linux_nat_can_async_p)
7958         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
7959         (linux_nat_supports_multi_process)
7960         (linux_nat_supports_disable_randomization, linux_nat_async)
7961         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
7962         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
7963         (linux_nat_fileio_open, linux_nat_fileio_readlink)
7964         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
7965         methods of linux_nat_target.
7966         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
7967         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
7968         parameter.
7969         (check_stopped_by_watchpoint): Adjust.
7970         (linux_xfer_partial): Delete.
7971         (linux_target_install_ops, linux_target, linux_nat_add_target):
7972         Delete.
7973         (linux_nat_target::linux_nat_target): New.
7974         * linux-nat.h: Include "inf-ptrace.h".
7975         (linux_nat_target): New.
7976         (linux_target, linux_target_install_ops, linux_nat_add_target):
7977         Delete function declarations.
7978         (linux_target): Declare global.
7979         * linux-thread-db.c (thread_db_target): New.
7980         (thread_db_target::thread_db_target): New.
7981         (thread_db_ops): Delete.
7982         (the_thread_db_target): New.
7983         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
7984         (thread_db_update_thread_list, thread_db_pid_to_str)
7985         (thread_db_extra_thread_info)
7986         (thread_db_thread_handle_to_thread_info)
7987         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
7988         (thread_db_resume): Refactor as methods of thread_db_target.
7989         (init_thread_db_ops): Delete.
7990         (_initialize_thread_db): Remove reference to init_thread_db_ops.
7991         * x86-linux-nat.c: Don't include "linux-nat.h".
7992         (super_post_startup_inferior): Delete.
7993         (x86_linux_nat_target::~x86_linux_nat_target): New.
7994         (x86_linux_child_post_startup_inferior)
7995         (x86_linux_read_description, x86_linux_enable_btrace)
7996         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
7997         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
7998         methods of x86_linux_nat_target.
7999         (x86_linux_create_target): Delete.  Bits folded ...
8000         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
8001         pointer.
8002         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
8003         (x86_linux_nat_target): New class.
8004         (x86_linux_create_target): Delete.
8005         (x86_linux_add_target): Now takes a linux_nat_target pointer.
8006         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
8007         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
8008         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
8009         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
8010         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
8011         make extern.
8012         (x86_use_watchpoints): Delete.
8013         * x86-nat.h: Include "breakpoint.h" and "target.h".
8014         (x86_use_watchpoints): Delete.
8015         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
8016         (x86_stopped_by_watchpoint, x86_stopped_data_address)
8017         (x86_insert_watchpoint, x86_remove_watchpoint)
8018         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
8019         (x86_stopped_by_hw_breakpoint): New declarations.
8020         (x86_nat_target): New template class.
8021
8022         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
8023         (the_ppc_linux_nat_target): New.
8024         (ppc_linux_fetch_inferior_registers)
8025         (ppc_linux_can_use_hw_breakpoint)
8026         (ppc_linux_region_ok_for_hw_watchpoint)
8027         (ppc_linux_ranged_break_num_registers)
8028         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
8029         (ppc_linux_insert_mask_watchpoint)
8030         (ppc_linux_remove_mask_watchpoint)
8031         (ppc_linux_can_accel_watchpoint_condition)
8032         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
8033         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
8034         (ppc_linux_watchpoint_addr_within_range)
8035         (ppc_linux_masked_watch_num_registers)
8036         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
8037         (ppc_linux_read_description): Refactor as methods of
8038         ppc_linux_nat_target.
8039         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
8040
8041         * procfs.c (procfs_xfer_partial): Delete forward declaration.
8042         (procfs_target): New class.
8043         (the_procfs_target): New.
8044         (procfs_target): Delete function.
8045         (procfs_auxv_parse, procfs_attach, procfs_detach)
8046         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
8047         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
8048         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
8049         (procfs_create_inferior, procfs_update_thread_list)
8050         (procfs_thread_alive, procfs_pid_to_str)
8051         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
8052         (procfs_stopped_data_address, procfs_insert_watchpoint)
8053         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
8054         (proc_find_memory_regions, procfs_info_proc)
8055         (procfs_make_note_section): Refactor as methods of procfs_target.
8056         (_initialize_procfs): Adjust.
8057         * sol-thread.c (sol_thread_target): New class.
8058         (sol_thread_ops): Now a sol_thread_target.
8059         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
8060         (sol_thread_fetch_registers, sol_thread_store_registers)
8061         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
8062         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
8063         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
8064         (init_sol_thread_ops): Delete.
8065         (_initialize_sol_thread): Adjust.  Remove references to
8066         init_sol_thread_ops and complete_target_initialization.
8067
8068         * windows-nat.c (windows_nat_target): New class.
8069         (windows_fetch_inferior_registers)
8070         (windows_store_inferior_registers, windows_resume, windows_wait)
8071         (windows_attach, windows_detach, windows_pid_to_exec_file)
8072         (windows_files_info, windows_create_inferior)
8073         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
8074         (windows_close, windows_pid_to_str, windows_xfer_partial)
8075         (windows_get_tib_address, windows_get_ada_task_ptid)
8076         (windows_thread_name, windows_thread_alive): Refactor as
8077         windows_nat_target methods.
8078         (do_initial_windows_stuff): Adjust.
8079         (windows_target): Delete function.
8080         (_initialize_windows_nat): Adjust.
8081
8082         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
8083         (darwin_mourn_inferior, darwin_kill_inferior)
8084         (darwin_create_inferior, darwin_attach, darwin_detach)
8085         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
8086         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
8087         (darwin_supports_multi_process): Refactor as darwin_nat_target
8088         methods.
8089         (darwin_resume_to, darwin_files_info): Delete.
8090         (_initialize_darwin_inferior): Rename to ...
8091         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
8092         * darwin-nat.h: Include "inf-child.h".
8093         (darwin_nat_target): New class.
8094         (darwin_complete_target): Delete.
8095         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
8096         (darwin_target): New.
8097         (i386_darwin_fetch_inferior_registers)
8098         (i386_darwin_store_inferior_registers): Refactor as methods of
8099         darwin_nat_target.
8100         (darwin_complete_target): Delete, with ...
8101         (_initialize_i386_darwin_nat): ... bits factored out here.
8102
8103         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
8104         (the_alpha_linux_nat_target): New.
8105         (alpha_linux_register_u_offset): Refactor as
8106         alpha_linux_nat_target method.
8107         (_initialize_alpha_linux_nat): Adjust.
8108         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
8109         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
8110         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
8111         methods of linux_nat_trad_target.
8112         (linux_trad_target): Delete.
8113         * linux-nat-trad.h (linux_trad_target): Delete function.
8114         (linux_nat_trad_target): New class.
8115         * mips-linux-nat.c (mips_linux_nat_target): New class.
8116         (super_fetch_registers, super_store_registers, super_close):
8117         Delete.
8118         (the_mips_linux_nat_target): New.
8119         (mips64_linux_regsets_fetch_registers)
8120         (mips64_linux_regsets_store_registers)
8121         (mips64_linux_fetch_registers, mips64_linux_store_registers)
8122         (mips_linux_register_u_offset, mips_linux_read_description)
8123         (mips_linux_can_use_hw_breakpoint)
8124         (mips_linux_stopped_by_watchpoint)
8125         (mips_linux_stopped_data_address)
8126         (mips_linux_region_ok_for_hw_watchpoint)
8127         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
8128         (mips_linux_close): Refactor as methods of mips_linux_nat.
8129         (_initialize_mips_linux_nat): Adjust to C++ification.
8130
8131         * aix-thread.c (aix_thread_target): New class.
8132         (aix_thread_ops): Now an aix_thread_target.
8133         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
8134         (aix_thread_fetch_registers, aix_thread_store_registers)
8135         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
8136         (aix_thread_thread_alive, aix_thread_pid_to_str)
8137         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
8138         Refactor as methods of aix_thread_target.
8139         (init_aix_thread_ops): Delete.
8140         (_initialize_aix_thread): Remove references to init_aix_thread_ops
8141         and complete_target_initialization.
8142         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
8143         (rs6000_nat_target): New class.
8144         (the_rs6000_nat_target): New.
8145         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
8146         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
8147         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
8148         (super_create_inferior): Delete.
8149         (_initialize_rs6000_nat): Adjust to C++ification.
8150
8151         * arm-linux-nat.c (arm_linux_nat_target): New class.
8152         (the_arm_linux_nat_target): New.
8153         (arm_linux_fetch_inferior_registers)
8154         (arm_linux_store_inferior_registers, arm_linux_read_description)
8155         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
8156         (arm_linux_remove_hw_breakpoint)
8157         (arm_linux_region_ok_for_hw_watchpoint)
8158         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
8159         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
8160         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
8161         arm_linux_nat_target.
8162         (_initialize_arm_linux_nat): Adjust to C++ification.
8163
8164         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
8165         (the_aarch64_linux_nat_target): New.
8166         (aarch64_linux_fetch_inferior_registers)
8167         (aarch64_linux_store_inferior_registers)
8168         (aarch64_linux_child_post_startup_inferior)
8169         (aarch64_linux_read_description)
8170         (aarch64_linux_can_use_hw_breakpoint)
8171         (aarch64_linux_insert_hw_breakpoint)
8172         (aarch64_linux_remove_hw_breakpoint)
8173         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
8174         (aarch64_linux_region_ok_for_hw_watchpoint)
8175         (aarch64_linux_stopped_data_address)
8176         (aarch64_linux_stopped_by_watchpoint)
8177         (aarch64_linux_watchpoint_addr_within_range)
8178         (aarch64_linux_can_do_single_step): Refactor as methods of
8179         aarch64_linux_nat_target.
8180         (super_post_startup_inferior): Delete.
8181         (_initialize_aarch64_linux_nat): Adjust to C++ification.
8182
8183         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
8184         (the_hppa_linux_nat_target): New.
8185         (hppa_linux_fetch_inferior_registers)
8186         (hppa_linux_store_inferior_registers): Refactor as methods of
8187         hppa_linux_nat_target.
8188         (_initialize_hppa_linux_nat): Adjust to C++ification.
8189
8190         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
8191         (the_ia64_linux_nat_target): New.
8192         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
8193         (ia64_linux_stopped_data_address)
8194         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
8195         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
8196         ia64_linux_nat_target methods.
8197         (super_xfer_partial): Delete.
8198         (_initialize_ia64_linux_nat): Adjust to C++ification.
8199
8200         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
8201         (the_m32r_linux_nat_target): New.
8202         (m32r_linux_fetch_inferior_registers)
8203         (m32r_linux_store_inferior_registers): Refactor as
8204         m32r_linux_nat_target methods.
8205         (_initialize_m32r_linux_nat): Adjust to C++ification.
8206
8207         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
8208         (the_m68k_linux_nat_target): New.
8209         (m68k_linux_fetch_inferior_registers)
8210         (m68k_linux_store_inferior_registers): Refactor as
8211         m68k_linux_nat_target methods.
8212         (_initialize_m68k_linux_nat): Adjust to C++ification.
8213
8214         * s390-linux-nat.c (s390_linux_nat_target): New class.
8215         (the_s390_linux_nat_target): New.
8216         (s390_linux_fetch_inferior_registers)
8217         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
8218         (s390_insert_watchpoint, s390_remove_watchpoint)
8219         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
8220         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
8221         (s390_auxv_parse, s390_read_description): Refactor as methods of
8222         s390_linux_nat_target.
8223         (_initialize_s390_nat): Adjust to C++ification.
8224
8225         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
8226         (the_sparc_linux_nat_target): New.
8227         (_initialize_sparc_linux_nat): Adjust to C++ification.
8228         * sparc-nat.c (sparc_fetch_inferior_registers)
8229         (sparc_store_inferior_registers): Remove target_ops parameter.
8230         * sparc-nat.h (sparc_fetch_inferior_registers)
8231         (sparc_store_inferior_registers): Remove target_ops parameter.
8232         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
8233         (the_sparc64_linux_nat_target): New.
8234         (_initialize_sparc64_linux_nat): Adjust to C++ification.
8235
8236         * spu-linux-nat.c (spu_linux_nat_target): New class.
8237         (the_spu_linux_nat_target): New.
8238         (spu_child_post_startup_inferior, spu_child_post_attach)
8239         (spu_child_wait, spu_fetch_inferior_registers)
8240         (spu_store_inferior_registers, spu_xfer_partial)
8241         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
8242         methods.
8243         (_initialize_spu_nat): Adjust to C++ification.
8244
8245         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
8246         (the_tilegx_linux_nat_target): New.
8247         (fetch_inferior_registers, store_inferior_registers):
8248         Refactor as methods.
8249         (_initialize_tile_linux_nat): Adjust to C++ification.
8250
8251         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
8252         (the_xtensa_linux_nat_target): New.
8253         (xtensa_linux_fetch_inferior_registers)
8254         (xtensa_linux_store_inferior_registers): Refactor as
8255         xtensa_linux_nat_target methods.
8256         (_initialize_xtensa_linux_nat): Adjust to C++ification.
8257
8258         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
8259         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
8260         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
8261         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
8262         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
8263         (fbsd_stopped_by_sw_breakpoint)
8264         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
8265         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
8266         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
8267         (fbsd_post_startup_inferior, fbsd_post_attach)
8268         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
8269         (fbsd_set_syscall_catchpoint)
8270         (super_xfer_partial, super_resume, super_wait)
8271         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
8272         (fbsd_handle_debug_trap): Remove target_ops parameter.
8273         (fbsd_nat_add_target): Delete.
8274         * fbsd-nat.h: Include "inf-ptrace.h".
8275         (fbsd_nat_add_target): Delete.
8276         (USE_SIGTRAP_SIGINFO): Define.
8277         (fbsd_nat_target): New class.
8278
8279         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
8280         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
8281         (amd64bsd_target): Delete.
8282         * amd64-bsd-nat.h: New file.
8283         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
8284         "x86-bsd-nat.h".
8285         (amd64_fbsd_nat_target): New class.
8286         (the_amd64_fbsd_nat_target): New.
8287         (amd64fbsd_read_description): Refactor as method of
8288         amd64_fbsd_nat_target.
8289         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
8290         (_initialize_amd64fbsd_nat): Adjust to C++ification.
8291         * amd64-nat.h (amd64bsd_target): Delete function declaration.
8292         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
8293         (i386bsd_store_inferior_registers): Remove target_ops parameter.
8294         (i386bsd_target): Delete.
8295         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
8296         (i386bsd_fetch_inferior_registers)
8297         (i386bsd_store_inferior_registers): Declare.
8298         (i386_bsd_nat_target): New class.
8299         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
8300         (the_i386_fbsd_nat_target): New.
8301         (i386fbsd_resume, i386fbsd_read_description): Refactor as
8302         i386_fbsd_nat_target methods.
8303         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
8304         (_initialize_i386fbsd_nat): Adjust to C++ification.
8305         * x86-bsd-nat.c (super_mourn_inferior): Delete.
8306         (x86bsd_mourn_inferior, x86bsd_target): Delete.
8307         (_initialize_x86_bsd_nat): Adjust to C++ification.
8308         * x86-bsd-nat.h: Include "x86-nat.h".
8309         (x86bsd_target): Delete declaration.
8310         (x86bsd_nat_target): New class.
8311
8312         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
8313         (the_aarch64_fbsd_nat_target): New.
8314         (aarch64_fbsd_fetch_inferior_registers)
8315         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
8316         aarch64_fbsd_nat_target.
8317         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
8318         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
8319         (the_alpha_bsd_nat_target): New.
8320         (alphabsd_fetch_inferior_registers)
8321         (alphabsd_store_inferior_registers): Refactor as
8322         alpha_bsd_nat_target methods.
8323         (_initialize_alphabsd_nat): Refactor as methods of
8324         alpha_bsd_nat_target.
8325         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
8326         (the_amd64_nbsd_nat_target): New.
8327         (_initialize_amd64nbsd_nat): Adjust to C++ification.
8328         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
8329         (the_amd64_obsd_nat_target): New.
8330         (_initialize_amd64obsd_nat): Adjust to C++ification.
8331         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
8332         (the_arm_fbsd_nat_target): New.
8333         (arm_fbsd_fetch_inferior_registers)
8334         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
8335         (_initialize_arm_fbsd_nat): Refactor as methods of
8336         arm_fbsd_nat_target.
8337         (_initialize_arm_fbsd_nat): Adjust to C++ification.
8338         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
8339         (the_arm_netbsd_nat_target): New.
8340         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
8341         arm_netbsd_nat_target.
8342         (_initialize_arm_netbsd_nat): Adjust to C++ification.
8343         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
8344         (the_hppa_nbsd_nat_target): New.
8345         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
8346         hppa_nbsd_nat_target methods.
8347         (_initialize_hppanbsd_nat): Adjust to C++ification.
8348         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
8349         (the_hppa_obsd_nat_target): New.
8350         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
8351         methods of hppa_obsd_nat_target.
8352         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
8353         add_target.
8354         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
8355         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
8356         add_target.
8357         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
8358         (_initialize_i386obsd_nat): Use add_target.
8359         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
8360         (the_m68k_bsd_nat_target): New.
8361         (m68kbsd_fetch_inferior_registers)
8362         (m68kbsd_store_inferior_registers): Refactor as methods of
8363         m68k_bsd_nat_target.
8364         (_initialize_m68kbsd_nat): Adjust to C++ification.
8365         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
8366         (the_mips_fbsd_nat_target): New.
8367         (mips_fbsd_fetch_inferior_registers)
8368         (mips_fbsd_store_inferior_registers): Refactor as methods of
8369         mips_fbsd_nat_target.
8370         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
8371         add_target.
8372         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
8373         (the_mips_nbsd_nat_target): New.
8374         (mipsnbsd_fetch_inferior_registers)
8375         (mipsnbsd_store_inferior_registers): Refactor as methods of
8376         mips_nbsd_nat_target.
8377         (_initialize_mipsnbsd_nat): Adjust to C++ification.
8378         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
8379         (the_mips64_obsd_nat_target): New.
8380         (mips64obsd_fetch_inferior_registers)
8381         (mips64obsd_store_inferior_registers): Refactor as methods of
8382         mips64_obsd_nat_target.
8383         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
8384         add_target.
8385         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
8386         nbsd_nat_target.
8387         * nbsd-nat.h: Include "inf-ptrace.h".
8388         (nbsd_nat_target): New class.
8389         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
8390         (obsd_wait): Refactor as methods of obsd_nat_target.
8391         (obsd_add_target): Delete.
8392         * obsd-nat.h: Include "inf-ptrace.h".
8393         (obsd_nat_target): New class.
8394         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
8395         (the_ppc_fbsd_nat_target): New.
8396         (ppcfbsd_fetch_inferior_registers)
8397         (ppcfbsd_store_inferior_registers): Refactor as methods of
8398         ppc_fbsd_nat_target.
8399         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
8400         add_target.
8401         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
8402         (the_ppc_nbsd_nat_target): New.
8403         (ppcnbsd_fetch_inferior_registers)
8404         (ppcnbsd_store_inferior_registers): Refactor as methods of
8405         ppc_nbsd_nat_target.
8406         (_initialize_ppcnbsd_nat): Adjust to C++ification.
8407         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
8408         (the_ppc_obsd_nat_target): New.
8409         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
8410         methods of ppc_obsd_nat_target.
8411         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
8412         add_target.
8413         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
8414         (the_sh_nbsd_nat_target): New.
8415         (shnbsd_fetch_inferior_registers)
8416         (shnbsd_store_inferior_registers): Refactor as methods of
8417         sh_nbsd_nat_target.
8418         (_initialize_shnbsd_nat): Adjust to C++ification.
8419         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
8420         (inf_ptrace_xfer_partial): Delete.
8421         (sparc_xfer_partial, sparc_target): Delete.
8422         * sparc-nat.h (sparc_fetch_inferior_registers)
8423         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
8424         (sparc_target): Delete function declaration.
8425         (sparc_target): New template class.
8426         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
8427         (_initialize_sparcnbsd_nat): Adjust to C++ification.
8428         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
8429         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
8430         add_target.
8431         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
8432         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
8433         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
8434         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
8435         add_target.
8436         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
8437         (the_vax_bsd_nat_target): New.
8438         (vaxbsd_fetch_inferior_registers)
8439         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
8440         methods.
8441         (_initialize_vaxbsd_nat): Adjust to C++ification.
8442
8443         * bsd-kvm.c (bsd_kvm_target): New class.
8444         (bsd_kvm_ops): Now a bsd_kvm_target.
8445         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
8446         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
8447         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
8448         bsd_kvm_target.
8449         (bsd_kvm_return_one): Delete.
8450         (bsd_kvm_add_target): Adjust to C++ification.
8451
8452         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
8453         (nto_procfs_target_procfs): New classes.
8454         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
8455         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
8456         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
8457         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
8458         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
8459         (procfs_remove_hw_breakpoint, procfs_resume)
8460         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
8461         (procfs_kill_inferior, procfs_store_registers)
8462         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
8463         as methods of nto_procfs_target.
8464         (nto_procfs_ops): Now an nto_procfs_target_procfs.
8465         (nto_native_ops): Delete.
8466         (procfs_open, procfs_native_open): Delete.
8467         (nto_native_ops): Now an nto_procfs_target_native.
8468         (init_procfs_targets): Adjust to C++ification.
8469         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
8470         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
8471         Refactor as methods of nto_procfs_target.
8472
8473         * go32-nat.c (go32_nat_target): New class.
8474         (the_go32_nat_target): New.
8475         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
8476         (go32_store_registers, go32_xfer_partial, go32_files_info)
8477         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
8478         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
8479         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
8480         (go32_pid_to_str): Refactor as methods of go32_nat_target.
8481         (go32_target): Delete.
8482         (_initialize_go32_nat): Adjust to C++ification.
8483
8484         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
8485         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
8486         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
8487         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
8488         gnu_nat_target.
8489         (gnu_target): Delete.
8490         * gnu-nat.h (gnu_target): Delete.
8491         (gnu_nat_target): New class.
8492         * i386-gnu-nat.c (gnu_base_target): New.
8493         (i386_gnu_nat_target): New class.
8494         (the_i386_gnu_nat_target): New.
8495         (_initialize_i386gnu_nat): Adjust to C++ification.
8496
8497 2018-05-02  Pedro Alves  <palves@redhat.com>
8498
8499         * bfd-target.c (target_bfd_xclose): Rename to ...
8500         (target_bfd_close): ... this.
8501         (target_bfd_reopen): Adjust.
8502         * target.c (target_close): Remove references to to_xclose.
8503         * target.h (target_ops::to_xclose): Delete.
8504         (target_ops::to_close): Update comments.
8505
8506 2018-05-02  Pedro Alves  <palves@redhat.com>
8507
8508         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
8509         "linux-nat.h".
8510         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
8511         * inf-ptrace.c (inf_ptrace_register_u_offset)
8512         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
8513         (inf_ptrace_store_register, inf_ptrace_store_registers)
8514         (inf_ptrace_trad_target): Move to ...
8515         * linux-nat-trad.c: ... this new file.
8516         * linux-nat-trad.h: New file.
8517         * linux-nat.c (linux_target_install_ops): Make extern.
8518         (linux_trad_target): Delete.
8519         * linux-nat.h (linux_trad_target): Delete declaration.
8520         (linux_target_install_ops): Declare.
8521         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
8522         "linux-nat.h".
8523
8524 2018-05-02  Pedro Alves  <palves@redhat.com>
8525
8526         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
8527         procfs_target/add_target here.
8528         * procfs.c (procfs_target): Make static.
8529         (_initialize_procfs): Call add_target here.
8530         * procfs.h (struct target_ops): Remove forward declaration.
8531         (procfs_target): Remove declaration.
8532         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
8533
8534 2018-05-02  Pedro Alves  <palves@redhat.com>
8535
8536         * procfs.c (procfs_stopped_by_watchpoint)
8537         (procfs_insert_watchpoint, procfs_remove_watchpoint)
8538         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
8539         Forward declare.
8540         (procfs_use_watchpoints): Delete, move contents...
8541         (procfs_target): ... here.
8542         * procfs.h (procfs_use_watchpoints): Delete declaration.
8543         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
8544         procfs_use_watchpoints.
8545         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
8546         procfs_use_watchpoints.
8547
8548 2018-05-02  Tom Tromey  <tom@tromey.com>
8549
8550         PR python/20084:
8551         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
8552         and var_zuinteger_unlimited.
8553         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
8554         and PARAM_ZUINTEGER_UNLIMITED.
8555         (set_parameter_value): Handle var_zuinteger and
8556         var_zuinteger_unlimited.
8557         (add_setshow_generic): Likewise.
8558         (parmpy_init): Likewise.
8559
8560 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
8561
8562         PR rust/23124
8563         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
8564         pointer is not null before dereferencing it.
8565
8566 2018-04-30  Tom Tromey  <tom@tromey.com>
8567
8568         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
8569         is_mi_like_p.
8570
8571 2018-04-30  Tom Tromey  <tom@tromey.com>
8572
8573         * breakpoint.c (mention): Remove use of is_mi_like_p.
8574         (print_mention_ranged_breakpoint): Likewise.
8575         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
8576         of is_mi_like_p.
8577
8578 2018-04-30  Tom Tromey  <tom@tromey.com>
8579
8580         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
8581
8582 2018-04-30  Tom Tromey  <tom@tromey.com>
8583
8584         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
8585         (info_spu_event_command): Remove some uses of is_mi_like_p.
8586
8587 2018-04-30  Tom Tromey  <tom@tromey.com>
8588
8589         * python/py-framefilter.c (py_print_single_arg)
8590         (enumerate_locals, py_print_args, py_print_frame): Remove some
8591         uses of is_mi_like_p.
8592
8593 2018-04-30  Tom Tromey  <tom@tromey.com>
8594
8595         * ui-out.c: Update.
8596         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
8597         * ui-out.h (ui_out::is_mi_like_p): Now const.
8598         (ui_out::do_is_mi_like_p): Now const.
8599         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
8600
8601 2018-04-30  Tom Tromey  <tom@tromey.com>
8602
8603         * varobj.c (varobj_set_visualizer): Use new_reference.
8604         * python/python.c (gdbpy_decode_line): Use new_reference.
8605         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
8606         new_reference.
8607
8608 2018-04-30  Tom Tromey  <tom@tromey.com>
8609
8610         * varobj.c (install_new_value): Use new_reference.
8611         * value.h (value_incref): Return void.  Swap intro comment with
8612         value_decref.
8613         * value.c (set_value_parent): Use new_reference.
8614         (value_incref): Return void.  Update intro comment.
8615         (release_value): Use new_reference.
8616         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
8617
8618 2018-04-30  Tom Tromey  <tom@tromey.com>
8619
8620         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
8621         * gdb_bfd.h (new_bfd_ref): Remove.
8622         (gdb_bfd_open): Update comment.
8623         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
8624         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
8625         (gdb_bfd_fdopenr): Use new_reference.
8626         * exec.c (exec_file_attach): Use new_reference.
8627
8628 2018-04-30  Tom Tromey  <tom@tromey.com>
8629
8630         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
8631         method.
8632
8633 2018-04-30  Tom Tromey  <tom@tromey.com>
8634
8635         * jit.c (jit_read_code_entry): Use type_align.
8636         * i386-tdep.c (i386_gdbarch_init): Don't call
8637         set_gdbarch_long_long_align_bit.
8638         * gdbarch.sh: Remove long_long_align_bit.
8639         * gdbarch.c, gdbarch.h: Rebuild.
8640         * arc-tdep.c (arc_type_align): New function.
8641         (arc_gdbarch_init): Use arc_type_align.  Don't call
8642         set_gdbarch_long_long_align_bit.
8643
8644 2018-04-30  Tom Tromey  <tom@tromey.com>
8645
8646         * rust-lang.c (rust_type_alignment): Remove.
8647         (rust_composite_type): Use type_align.
8648
8649 2018-04-30  Tom Tromey  <tom@tromey.com>
8650
8651         * NEWS: Mention Type.align.
8652         * python/py-type.c (typy_get_alignof): New function.
8653         (type_object_getset): Add "alignof".
8654
8655 2018-04-30  Tom Tromey  <tom@tromey.com>
8656
8657         PR exp/17095:
8658         * NEWS: Update.
8659         * std-operator.def (UNOP_ALIGNOF): New operator.
8660         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
8661         New.
8662         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
8663         * c-lang.c (c_op_print_tab): Add alignof.
8664         * c-exp.y (ALIGNOF): New token.
8665         (exp): Add "ALIGNOF" production.
8666         (ident_tokens): Add _Alignof and alignof.
8667
8668 2018-04-30  Tom Tromey  <tom@tromey.com>
8669
8670         * i386-tdep.c (i386_type_align): New function.
8671         (i386_gdbarch_init): Update.
8672         * gdbarch.sh (type_align): New method.
8673         * gdbarch.c, gdbarch.h: Rebuild.
8674         * arch-utils.h (default_type_align): Declare.
8675         * arch-utils.c (default_type_align): New function.
8676         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
8677         (struct type) <align_log2>: New field.
8678         <instance_flags>: Now a bitfield.
8679         (TYPE_RAW_ALIGN): New macro.
8680         (type_align, type_raw_align, set_type_align): Declare.
8681         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
8682         functions.
8683         * dwarf2read.c (quirk_rust_enum): Set type alignment.
8684         (get_alignment, maybe_set_alignment): New functions.
8685         (read_structure_type, read_enumeration_type, read_array_type)
8686         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
8687         (read_subrange_type, read_base_type): Set type alignment.
8688
8689 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
8690
8691         * dwarf2read.c (read_index_from_section): Use bool.
8692
8693 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
8694
8695         PR gdb/22950
8696         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
8697         with #ifdef.
8698
8699 2018-04-29  John Reiser  <jreiser@BitWagon.com>
8700
8701         PR build/22873
8702         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
8703         last step, and do it atomically.
8704
8705 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
8706
8707         * compile/compile-c-types.c (convert_int, convert_float):
8708         Update for C FE v1.
8709
8710 2018-04-27  Tom Tromey  <tom@tromey.com>
8711
8712         PR rust/22545:
8713         * rust-lang.c (rust_inclusive_range_type_p): New function.
8714         (rust_range): Handle inclusive ranges.
8715         (rust_compute_range): Likewise.
8716         * rust-exp.y (struct rust_op) <inclusive>: New field.
8717         (DOTDOTEQ): New constant.
8718         (range_expr): Add "..=" productions.
8719         (operator_tokens): Add "..=" token.
8720         (ast_range): Add "inclusive" parameter.
8721         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
8722         ranges.
8723         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
8724         bounds values.
8725         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
8726         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
8727         Update comments.
8728         * expprint.c (print_subexp_standard): Handle new bounds values.
8729         (dump_subexp_body_standard): Likewise.
8730
8731 2018-04-27  Tom Tromey  <tom@tromey.com>
8732
8733         * configure: Rebuild.
8734         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
8735         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
8736         "OVERRIDE".
8737         (class symbol_needs_eval_context): Likewise.
8738         * dwarf2read.c (mock_mapped_index::symbol_name_count)
8739         (mock_mapped_index::symbol_name_at): Use "override".  Remove
8740         "virtual".
8741         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
8742         "override".
8743         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
8744         * aarch64-tdep.c (instruction_reader::read): Use "override".
8745         (instruction_reader_test::read): Likewise.
8746         * arm-tdep.c (instruction_reader::read): Use "override".
8747         (instruction_reader_thumb::read): Likewise.
8748
8749 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
8750
8751         PR remote/9665
8752         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
8753         instead of remote_send.
8754         (remote_send): Remove.
8755
8756 2018-04-26  Pedro Alves  <palves@redhat.com>
8757
8758         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
8759         find_function_start_sal instead of find_pc_line.
8760
8761 2018-04-26  Pedro Alves  <palves@redhat.com>
8762
8763         * breakpoint.c (set_breakpoint_location_function): Handle
8764         mst_data_gnu_ifunc.
8765         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
8766         * elfread.c (elf_symtab_read): Give data symbols with
8767         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
8768         (elf_rel_plt_read): Update comment.
8769         * linespec.c (convert_linespec_to_sals): Handle
8770         mst_data_gnu_ifunc.
8771         (minsym_found): Handle mst_data_gnu_ifunc.
8772         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
8773         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
8774         * parse.c (find_minsym_type_and_address): Handle
8775         mst_data_gnu_ifunc.
8776         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
8777         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
8778         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
8779         comment.
8780         <mst_data_gnu_ifunc>: New enumerator.
8781
8782 2018-04-26  Pedro Alves  <palves@redhat.com>
8783
8784         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
8785         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
8786         'want_trampoline' parameter by a lookup_msym_prefer parameter.
8787         Handle it.
8788         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
8789         (lookup_minimal_symbol_by_pc): Adjust.
8790         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
8791         (lookup_solib_trampoline_symbol_by_pc): Adjust.
8792         * minsyms.h (lookup_msym_prefer): New enum.
8793         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
8794         parameter by a lookup_msym_prefer parameter.
8795
8796 2018-04-26  Pedro Alves  <palves@redhat.com>
8797
8798         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
8799         ends in "@plt" instead of looking at the symbol's section.
8800
8801 2018-04-26  Pedro Alves  <palves@redhat.com>
8802
8803         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
8804         all references.
8805         (find_pc_partial_function_gnu_ifunc): Rename to ...
8806         (find_pc_partial_function): ... this, and remove references to
8807         'is_gnu_ifunc_p'.
8808         (find_pc_partial_function): Delete old implementation.
8809         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
8810
8811 2018-04-26  Pedro Alves  <palves@redhat.com>
8812
8813         * linespec.c (struct bound_minimal_symbol_search_key): New.
8814         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
8815         skip first line if we found a GNU ifunc minimal symbol by name.
8816         (compare_msymbols): Change parameters to work with a destructured
8817         lhs minsym.
8818         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
8819         functions.
8820
8821 2018-04-26  Pedro Alves  <palves@redhat.com>
8822
8823         * breakpoint.c (set_breakpoint_location_function): Don't resolve
8824         ifunc targets here.  Instead, if we have an ifunc minsym, use its
8825         address/name.
8826         (add_location_to_breakpoint): Store the minsym and the objfile in
8827         the breakpoint location.
8828         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
8829         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
8830         Record the minsym in the sal.
8831         * symtab.h (symtab_and_line) <msymbol>: New field.
8832
8833 2018-04-26  Pedro Alves  <palves@redhat.com>
8834
8835         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
8836         unless we actually resolved the ifunc.
8837
8838 2018-04-26  Pedro Alves  <palves@redhat.com>
8839
8840         * c-exp.y (variable production): Prefer ifunc minsyms over
8841         regular function symbols.
8842         * symtab.c (find_gnu_ifunc): New function.
8843         * minsyms.h (lookup_msym_prefer): New enum.
8844         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
8845         parameter by a lookup_msym_prefer parameter.
8846         * symtab.h (find_gnu_ifunc): New declaration.
8847
8848 2018-04-26  Pedro Alves  <palves@redhat.com>
8849
8850         * blockframe.c (find_gnu_ifunc_target_type): New function.
8851         (find_function_type): New.
8852         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
8853         return a value with a memory address.
8854         (eval_call): For calls to GNU ifunc functions, try to find the
8855         type of the target function from the type that the resolver
8856         returns.
8857         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
8858         symbols.
8859         * infcall.c (find_function_return_type): Delete.
8860         (find_function_addr): Add 'function_type' parameter.  For calls to
8861         GNU ifunc functions, try to find the type of the target function
8862         from the type that the resolver returns, and return it via
8863         FUNCTION_TYPE.
8864         (call_function_by_hand_dummy): Adjust to use the function type
8865         returned by find_function_addr.
8866         (find_function_addr): Add 'function_type' parameter and move
8867         description here.
8868         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
8869         declarations.
8870
8871 2018-04-26  Pedro Alves  <palves@redhat.com>
8872
8873         * c-exp.y (variable production): Skip finding an alias for ifunc
8874         symbols.
8875
8876 2018-04-26  Pedro Alves  <palves@redhat.com>
8877
8878         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
8879
8880 2018-04-25  Pedro Alves  <palves@redhat.com>
8881
8882         * infcmd.c (kill_command): Print the pid as string, not the whole
8883         thread's ptid.  Add comment.  s/has been killed/killed/ in output
8884         message.
8885         * remote.c (remote_detach_1): Print the pid as string, not the
8886         whole thread's ptid.
8887
8888 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
8889             Sergio Durigan Junior  <sergiodj@redhat.com>
8890             Pedro Alves  <palves@redhat.com>
8891
8892         * infcmd.c (kill_command): Print message when inferior has
8893         been killed.
8894         * inferior.c (print_inferior_events): Remove 'static'.  Set as
8895         '1'.
8896         (add_inferior): Improve message printed when
8897         'print_inferior_events' is on.
8898         (exit_inferior): Remove message printed when
8899         'print_inferior_events' is on.
8900         (detach_inferior): Improve message printed when
8901         'print_inferior_events' is on.
8902         (initialize_inferiors): Use 'add_inferior_silent' to set
8903         'current_inferior_'.
8904         * inferior.h (print_inferior_events): Declare here as
8905         'extern'.
8906         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
8907         '[Detaching...]' messages when 'print_inferior_events' is on.
8908         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
8909         as prefix/suffix for messages.  Remove periods.  Fix erroneous
8910         'Detaching after fork from child...', replace it by '... from
8911         parent...'.
8912         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
8913         prefix/suffix when printing 'Detaching...' messages.  Print
8914         them when 'print_inferior_events' is on.
8915         * remote.c (remote_detach_1): Print message when detaching
8916         from inferior and '!is_fork_parent'.
8917
8918 2018-04-24  Tom Tromey  <tom@tromey.com>
8919
8920         * cli-out.h: Reindent.
8921
8922 2018-04-24  Tom Tromey  <tom@tromey.com>
8923
8924         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
8925         (cli_ui_out::do_field_string): Use fputs_filtered.
8926         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
8927
8928 2018-04-23  Tom Tromey  <tom@tromey.com>
8929
8930         * guile/scm-frame.c (gdbscm_frame_read_var): Use
8931         gdb::unique_xmalloc_ptr.
8932
8933 2018-04-23  Tom Tromey  <tom@tromey.com>
8934
8935         * configure: Rebuild.
8936
8937 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
8938
8939         PR gdb/23095
8940         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
8941         prepare_for_testing.  Set normal_bp to r_debug_state if target
8942         is bsd.
8943
8944 2018-04-21  Pedro Alves  <palves@redhat.com>
8945             Rajendra SY  <rajendra.sy@gmail.com>
8946
8947         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
8948         * remote.c (extended_remote_attach): In all-stop mode, mark the
8949         thread as executing.
8950
8951 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8952
8953         * thread.c (thread_apply_all_command): Fix comment.
8954         (thread_command): Fix comment.
8955
8956 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
8957
8958         * common/tdesc.h (tdesc_create_feature): Remove xml filename
8959         parameter.
8960         * features/aarch64-core.c (create_feature_aarch64_core):
8961         Regenerate.
8962         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
8963         Likewise.
8964         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
8965         Likewise.
8966         * features/i386/32bit-avx512.c
8967         (create_feature_i386_32bit_avx512): Likewise.
8968         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
8969         Likewise.
8970         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
8971         Likewise.
8972         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
8973         Likewise.
8974         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
8975         Likewise.
8976         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
8977         Likewise.
8978         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
8979         Likewise.
8980         * features/i386/64bit-avx512.c
8981         (create_feature_i386_64bit_avx512): Likewise.
8982         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
8983         Likewise.
8984         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
8985         Likewise.
8986         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
8987         Likewise.
8988         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
8989         Likewise.
8990         * features/i386/64bit-segments.c
8991         (create_feature_i386_64bit_segments): Likewise.
8992         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
8993         Likewise.
8994         * features/i386/x32-core.c
8995         (create_feature_i386_x32_core): Likewise.
8996         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
8997         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
8998         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
8999         * target-descriptions.c: In generated code, don't pass xml
9000         filename.
9001
9002 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9003
9004         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
9005         (print_xml_feature::visit_post): Likewise.
9006         (print_xml_feature::visit): Likewise.
9007         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
9008         (print_xml_feature): Add new class.
9009         * regformats/regdat.sh: Null xmltarget on feature targets.
9010         * target-descriptions.c (struct target_desc): Add xmltarget.
9011         (maintenance_check_tdesc_xml_convert): Add unittest function.
9012         (tdesc_get_features_xml): Add function to get xml.
9013         (maintenance_check_xml_descriptions): Test xml generation.
9014         * xml-tdesc.c (string_read_description_xml): Add function.
9015         * xml-tdesc.h (string_read_description_xml): Add declaration.
9016
9017 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9018
9019         * features/Makefile: Add feature marker to targets with new style
9020         target descriptions.
9021         * regformats/aarch64.dat: Regenerate.
9022         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
9023         * regformats/i386/amd64-avx-linux.dat: Likewise.
9024         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
9025         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
9026         * regformats/i386/amd64-linux.dat: Likewise.
9027         * regformats/i386/amd64-mpx-linux.dat: Likewise.
9028         * regformats/i386/amd64.dat: Likewise.
9029         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
9030         * regformats/i386/i386-avx-linux.dat: Likewise.
9031         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
9032         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
9033         * regformats/i386/i386-linux.dat: Likewise.
9034         * regformats/i386/i386-mmx-linux.dat: Likewise.
9035         * regformats/i386/i386-mpx-linux.dat: Likewise.
9036         * regformats/i386/i386.dat: Likewise.
9037         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
9038         * regformats/i386/x32-avx-linux.dat: Likewise.
9039         * regformats/i386/x32-linux.dat: Likewise.
9040         * regformats/tic6x-c62x-linux.dat: Likewise.
9041         * regformats/tic6x-c64x-linux.dat: Likewise.
9042         * regformats/tic6x-c64xp-linux.dat: Likewise.
9043         * regformats/regdat.sh: Parse feature marker.
9044
9045 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9046
9047         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
9048         (tdesc_osabi_name): Likewise.
9049         * target-descriptions.c (tdesc_architecture_name): Add new
9050         function.
9051         (tdesc_osabi_name): Likewise.
9052
9053 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9054
9055         * common/tdesc.c (tdesc_predefined_type): Move to here.
9056         (tdesc_named_type): Likewise.
9057         (tdesc_create_vector): Likewise.
9058         (tdesc_create_struct): Likewise.
9059         (tdesc_set_struct_size): Likewise.
9060         (tdesc_create_union): Likewise.
9061         (tdesc_create_flags): Likewise.
9062         (tdesc_create_enum): Likewise.
9063         (tdesc_add_field): Likewise.
9064         (tdesc_add_typed_bitfield): Likewise.
9065         (tdesc_add_bitfield): Likewise.
9066         (tdesc_add_flag): Likewise.
9067         (tdesc_add_enum_value): Likewise.
9068         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
9069         (struct tdesc_type_vector): Likewise.
9070         (struct tdesc_type_field): Likewise.
9071         (struct tdesc_type_with_fields): Likewise.
9072         (tdesc_create_enum): Add declaration.
9073         (tdesc_add_typed_bitfield): Likewise.
9074         (tdesc_add_enum_value): Likewise.
9075         * target-descriptions.c (tdesc_type_field): Move from here.
9076         (tdesc_type_builtin): Likewise.
9077         (tdesc_type_vector): Likewise.
9078         (tdesc_type_with_fields): Likewise.
9079         (tdesc_predefined_types): Likewise.
9080         (tdesc_named_type): Likewise.
9081         (tdesc_create_vector): Likewise.
9082         (tdesc_create_struct): Likewise.
9083         (tdesc_set_struct_size): Likewise.
9084         (tdesc_create_union): Likewise.
9085         (tdesc_create_flags): Likewise.
9086         (tdesc_create_enum): Likewise.
9087         (tdesc_add_field): Likewise.
9088         (tdesc_add_typed_bitfield): Likewise.
9089         (tdesc_add_bitfield): Likewise.
9090         (tdesc_add_flag): Likewise.
9091         (tdesc_add_enum_value): Likewise.
9092         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
9093         (tdesc_add_typed_bitfield): Likewise.
9094         (tdesc_add_enum_value): Likewise.
9095
9096 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9097
9098         * common/tdesc.c (tdesc_feature::accept): Move to here.
9099         (tdesc_feature::operator==): Likewise.
9100         (tdesc_create_reg): Likewise.
9101         * common/tdesc.h (tdesc_type_kind): Likewise.
9102         (struct tdesc_type): Likewise.
9103         (struct tdesc_feature): Likewise.
9104         * regformats/regdat.sh: Create a feature.
9105         * target-descriptions.c (tdesc_type_kind): Move from here.
9106         (tdesc_type): Likewise.
9107         (tdesc_type_up): Likewise.
9108         (tdesc_feature): Likewise.
9109         (tdesc_create_reg): Likewise.
9110
9111 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9112
9113         * Makefile.in: Add arch/tdesc.c
9114         * common/tdesc.c: New file.
9115         * common/tdesc.h (tdesc_element_visitor): Move to here.
9116         (tdesc_element): Likewise.
9117         (tdesc_reg): Likewise.
9118         (tdesc_reg_up): Likewise.
9119         * regformats/regdef.h (reg): Add offset to constructors.
9120         * target-descriptions.c (tdesc_element_visitor): Move from here.
9121         (tdesc_element): Likewise.
9122         (tdesc_reg): Likewise.
9123         (tdesc_reg_up): Likewise.
9124
9125 2018-04-17  Tom Tromey  <tom@tromey.com>
9126
9127         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
9128         discriminant field.
9129
9130 2018-04-17  Tom Tromey  <tom@tromey.com>
9131
9132         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
9133
9134 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
9135
9136         * symtab.c (print_symbol_info): Skip printing filename and line
9137         number when `last' is NULL.
9138         (symtab_symbol_info): Use empty string instead of NULL for first
9139         invocation of print_symbol_info.
9140         (rbreak_command): Pass NULL to `last' parameter of
9141         print_symbol_info.
9142
9143 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
9144
9145         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
9146         instead of nullptr.
9147
9148 2018-04-16  Pedro Alves  <palves@redhat.com>
9149
9150         * MAINTAINERS (sh): Remove.
9151         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
9152         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
9153         (ALLDEPFILES): Remove sh64-tdep.c.
9154         * NEWS: Mentions that support for SH-5/SH64 is removed.
9155         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
9156         (sh*-*-openbsd*): Ditto.
9157         (sh64-*-elf*): Remove.
9158         (sh*): Remove.
9159         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
9160         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
9161         * sh-tdep.c: No longer include "sh64-tdep.h".
9162         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
9163         * sh64-tdep.c, sh64-tdep.h: Remove files.
9164
9165 2018-04-16  Pedro Alves  <palves@redhat.com>
9166
9167         * MAINTAINERS: Remove m88k.
9168         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
9169         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
9170         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
9171         * NEWS: Mention that support for m88k was removed.
9172         * configure.host (m88*-*-*): Remove support.
9173         * configure.nat (m88k-*-*): Remove support.
9174         * configure.tgt (m88*-*-openbsd*): Remove.
9175         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
9176
9177 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
9178
9179         * configure.tgt (x86_tobjs): New variable.
9180         (amd64_tobjs, i386_tobjs): Use it.
9181
9182 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
9183
9184         * symtab.c (print_symbol_info): Precede the symbol definition by
9185         the line number when available.
9186         * NEWS: Advertise this enhancement.
9187
9188 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9189
9190         * NEWS (New options): announce set/show record btrace cpu.
9191         * btrace.c: Include record-btrace.h.
9192         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
9193         the vendor is unknown.
9194         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
9195         Maybe overwrite the btrace configuration's cpu.
9196         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
9197         (btrace_fetch): Add cpu parameter.  Update callers.
9198         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
9199         Maybe overwrite the btrace configuration's cpu.  Skip enabling
9200         errata workarounds if the vendor is unknown.
9201         * python/py-record-btrace.c: Include record-btrace.h.
9202         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
9203         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
9204         * record-btrace.c (record_btrace_cpu_state_kind): New.
9205         (record_btrace_cpu): New.
9206         (set_record_btrace_cpu_cmdlist): New.
9207         (record_btrace_get_cpu): New.
9208         (require_btrace_thread, record_btrace_info)
9209         (record_btrace_resume_thread): Call record_btrace_get_cpu.
9210         (cmd_set_record_btrace_cpu_none): New.
9211         (cmd_set_record_btrace_cpu_auto): New.
9212         (cmd_set_record_btrace_cpu): New.
9213         (cmd_show_record_btrace_cpu): New.
9214         (_initialize_record_btrace): Initialize set/show record btrace cpu
9215         commands.
9216         * record-btrace.h (record_btrace_get_cpu): New.
9217
9218 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9219
9220         * record.c (set_record_command): Fix typo in message.
9221
9222 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9223
9224         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
9225
9226 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9227
9228         * infrun.c (process_event_stop_test): Call
9229         gdbarch_in_indirect_branch_thunk.
9230         * gdbarch.sh (in_indirect_branch_thunk): New.
9231         * gdbarch.c: Regenerated.
9232         * gdbarch.h: Regenerated.
9233         * x86-tdep.h: New.
9234         * x86-tdep.c: New.
9235         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
9236         (HFILES_NO_SRCDIR): Add x86-tdep.h.
9237         (ALLDEPFILES): Add x86-tdep.c.
9238         * arch-utils.h (default_in_indirect_branch_thunk): New.
9239         * arch-utils.c (default_in_indirect_branch_thunk): New.
9240         * i386-tdep: Include x86-tdep.h.
9241         (i386_in_indirect_branch_thunk): New.
9242         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
9243         function.
9244         * amd64-tdep: Include x86-tdep.h.
9245         (amd64_in_indirect_branch_thunk): New.
9246         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
9247
9248 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
9249
9250         PR gdb/23053
9251         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
9252         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
9253         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
9254         regression.
9255
9256 2018-04-12  Tom Tromey  <tom@tromey.com>
9257
9258         * rust-lang.c (rust_print_struct_def): Remove univariant code.
9259         (rust_evaluate_subexp): Likewise.
9260
9261 2018-04-12  Pedro Alves  <palves@redhat.com>
9262
9263         * procfs.c (procfs_detach): Make forward declaration's prototype
9264         match definition's protototype.
9265         (proc_get_LDT_entry): Remove stale do_cleanups call.
9266
9267 2018-04-12  Pedro Alves  <palves@redhat.com>
9268
9269         * target.h (target_ops::to_has_exited): Delete.
9270         (target_has_exited): Delete.
9271         * target-delegates.c: Regenerate.
9272
9273 2018-04-11  Pedro Alves  <palves@redhat.com>
9274
9275         * target.c (fileio_fh_t::t): Add comment.
9276         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
9277         (target_fileio_close): Handle a NULL target.
9278         (invalidate_fileio_fh): New.
9279         (target_close): Call it.
9280         * remote.c (remote_hostio_send_command): No longer check whether
9281         remote_desc is open.
9282
9283 2018-04-11  Pedro Alves  <palves@redhat.com>
9284
9285         * target.c (fileio_fh_t): Make it a named struct instead of a
9286         typedef.
9287         (fileio_fh_t::is_closed): New method.
9288         (DEF_VEC_O (fileio_fh_t)): Remove.
9289         (fileio_fhandles): Now a std::vector.
9290         (is_closed_fileio_fh): Delete.
9291         (acquire_fileio_fd): Adjust.  Rename parameters.
9292         (release_fileio_fd): Adjust.
9293         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
9294         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
9295         (target_fileio_close): Adjust.
9296
9297 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
9298
9299         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
9300         index.
9301
9302 2018-04-10  Pedro Alves  <palves@redhat.com>
9303
9304         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
9305         (scoped_finish_thread_state): New class.
9306         * infcmd.c (run_command_1): Use it instead of finish_thread_state
9307         cleanup.
9308         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
9309         (fetch_inferior_event, normal_stop): Likewise.
9310         * thread.c (finish_thread_state_cleanup): Delete.
9311
9312 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9313             Pedro Alves  <palves@redhat.com>
9314
9315         * value.c: Include "selftest.h" and "common/array-view.h".
9316         (struct range) <operator ==>: New.
9317         (test_ranges_contain): New.
9318         (check_ranges_vector): New.
9319         (test_insert_into_bit_range_vector): New.
9320         (_initialize_values): Register selftests.
9321         * common/array-view.h (operator==, operator!=): New.
9322
9323 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9324
9325         * common/gdb_vecs.h (unordered_remove): Add overload that takes
9326         an iterator.
9327         * inline-frame.c: Include <algorithm>.
9328         (struct inline_state): Add constructor.
9329         (inline_state_s): Remove.
9330         (DEF_VEC_O(inline_state_s)): Remove.
9331         (inline_states): Change type to std::vector.
9332         (find_inline_frame_state): Adjust to std::vector.
9333         (allocate_inline_frame_state): Remove.
9334         (clear_inline_frame_state): Adjust to std::vector.
9335         (skip_inline_frames): Adjust to std::vector.
9336
9337 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9338
9339         * tracepoint.h (struct trace_state_variable): Add constructor.
9340         <name>: Change type to std::string.
9341         * tracepoint.c (tsv_s): Remove.
9342         (DEF_VEC_O(tsv_s)): Remove.
9343         (tvariables): Change to std::vector.
9344         (create_trace_state_variable): Adjust to std::vector.
9345         (find_trace_state_variable): Likewise.
9346         (find_trace_state_variable_by_number): Likewise.
9347         (delete_trace_state_variable): Likewise.
9348         (trace_variable_command): Adjust to std::string.
9349         (delete_trace_variable_command): Likewise.
9350         (tvariables_info_1): Adjust to std::vector.
9351         (save_trace_state_variables): Likewise.
9352         (start_tracing): Likewise.
9353         (merge_uploaded_trace_state_variables): Adjust to std::vector
9354         and std::string.
9355         * target.h (struct target_ops)
9356         <to_download_trace_state_variable>: Pass reference to
9357         trace_state_variable.
9358         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
9359         * target-delegates.c: Re-generate.
9360         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
9361         (mi_tsv_deleted): Likewise.
9362         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
9363         * remote.c (remote_download_trace_state_variable): Change
9364         pointer to reference and adjust.
9365         * make-target-delegates (parse_argtypes): Handle references.
9366         (write_function_header): Likewise.
9367         (munge_type): Likewise.
9368
9369 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9370
9371         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9372         string_view-selftests.c.
9373         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
9374         testsuite.
9375         * unittests/basic_string_view/cons/char/1.cc: Likewise.
9376         * unittests/basic_string_view/cons/char/2.cc: Likewise.
9377         * unittests/basic_string_view/cons/char/3.cc: Likewise.
9378         * unittests/basic_string_view/element_access/char/1.cc:
9379         Likewise.
9380         * unittests/basic_string_view/element_access/char/empty.cc:
9381         Likewise.
9382         * unittests/basic_string_view/element_access/char/front_back.cc:
9383         Likewise.
9384         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
9385         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
9386         Likewise.
9387         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
9388         Likewise.
9389         * unittests/basic_string_view/modifiers/swap/char/1.cc:
9390         Likewise.
9391         * unittests/basic_string_view/operations/compare/char/1.cc:
9392         Likewise.
9393         * unittests/basic_string_view/operations/compare/char/13650.cc:
9394         Likewise.
9395         * unittests/basic_string_view/operations/copy/char/1.cc:
9396         Likewise.
9397         * unittests/basic_string_view/operations/data/char/1.cc:
9398         Likewise.
9399         * unittests/basic_string_view/operations/find/char/1.cc:
9400         Likewise.
9401         * unittests/basic_string_view/operations/find/char/2.cc:
9402         Likewise.
9403         * unittests/basic_string_view/operations/find/char/3.cc:
9404         Likewise.
9405         * unittests/basic_string_view/operations/find/char/4.cc:
9406         Likewise.
9407         * unittests/basic_string_view/operations/rfind/char/1.cc:
9408         Likewise.
9409         * unittests/basic_string_view/operations/rfind/char/2.cc:
9410         Likewise.
9411         * unittests/basic_string_view/operations/rfind/char/3.cc:
9412         Likewise.
9413         * unittests/basic_string_view/operations/substr/char/1.cc:
9414         Likewise.
9415         * unittests/basic_string_view/operators/char/2.cc: Likewise.
9416         * unittests/string_view-selftests.c: New file.
9417
9418 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9419
9420         * unittests/basic_string_view/capacity/1.cc: New file.
9421         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
9422         * unittests/basic_string_view/cons/char/1.cc: New file.
9423         * unittests/basic_string_view/cons/char/2.cc: New file.
9424         * unittests/basic_string_view/cons/char/3.cc: New file.
9425         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
9426         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
9427         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
9428         * unittests/basic_string_view/element_access/char/1.cc: New file.
9429         * unittests/basic_string_view/element_access/char/2.cc: New file.
9430         * unittests/basic_string_view/element_access/char/empty.cc: New file.
9431         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
9432         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
9433         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
9434         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
9435         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
9436         * unittests/basic_string_view/include.cc: New file.
9437         * unittests/basic_string_view/inserters/char/1.cc: New file.
9438         * unittests/basic_string_view/inserters/char/2.cc: New file.
9439         * unittests/basic_string_view/inserters/char/3.cc: New file.
9440         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
9441         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
9442         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
9443         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
9444         * unittests/basic_string_view/literals/types.cc: New file.
9445         * unittests/basic_string_view/literals/values.cc: New file.
9446         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
9447         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
9448         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
9449         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
9450         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
9451         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
9452         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
9453         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
9454         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
9455         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
9456         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
9457         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
9458         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
9459         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
9460         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
9461         * unittests/basic_string_view/operations/data/char/1.cc: New file.
9462         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
9463         * unittests/basic_string_view/operations/find/char/1.cc: New file.
9464         * unittests/basic_string_view/operations/find/char/2.cc: New file.
9465         * unittests/basic_string_view/operations/find/char/3.cc: New file.
9466         * unittests/basic_string_view/operations/find/char/4.cc: New file.
9467         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
9468         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
9469         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
9470         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
9471         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
9472         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
9473         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
9474         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
9475         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
9476         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
9477         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
9478         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
9479         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
9480         * unittests/basic_string_view/operators/char/2.cc: New file.
9481         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
9482         * unittests/basic_string_view/range_access/char/1.cc: New file.
9483         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
9484         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
9485         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
9486         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
9487         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
9488         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
9489         * unittests/basic_string_view/requirements/typedefs.cc: New file.
9490         * unittests/basic_string_view/typedefs.cc: New file.
9491         * unittests/basic_string_view/types/1.cc: New file.
9492
9493 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9494
9495         * common/gdb_string_view.h: Remove libstdc++ implementation
9496         details, adjust to gdb reality.
9497         * common/gdb_string_view.tcc: Likewise.
9498         * cli/cli-script.c (struct string_view): Remove.
9499         (user_args) <m_args>: Change element type to gdb::string_view.
9500         (user_args::insert_args): Adjust.
9501
9502 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9503
9504         * common/gdb_string_view.h: New file.
9505         * common/gdb_string_view.tcc: New file.
9506
9507 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9508
9509         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
9510         * configure: Re-generate.
9511
9512 2018-04-09  Pedro Alves  <palves@redhat.com>
9513
9514         * gdbarch.sh: Include "observable.h" instead of "observer.h".
9515         (set_target_gdbarch): Call
9516         gdb::observers::architecture_changed.notify instead of
9517         observer_notify_architecture_changed.
9518
9519 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9520
9521         * tracepoint.c (struct current_traceframe_cleanup): Remove.
9522         (do_restore_current_traceframe_cleanup): Remove.
9523         (restore_current_traceframe_cleanup_dtor): Remove.
9524         (make_cleanup_restore_current_traceframe): Remove.
9525         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
9526         New.
9527         * tracepoint.h (struct scoped_restore_current_traceframe): New.
9528         * infrun.c (fetch_inferior_event): Use
9529         scoped_restore_current_traceframe.
9530
9531 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9532
9533         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
9534         Remove.
9535         <n_allocated_type_units>: Remove.
9536         <all_type_units>: Change to std::vector.
9537         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
9538         to std::vector change.
9539         (dwarf2_per_objfile::get_cutu): Likewise.
9540         (dwarf2_per_objfile::get_tu): Likewise.
9541         (create_signatured_type_table_from_index): Likewise.
9542         (create_signatured_type_table_from_debug_names): Likewise.
9543         (dw2_symtab_iter_next): Likewise.
9544         (dw2_print_stats): Likewise.
9545         (dw2_expand_all_symtabs): Likewise.
9546         (dw2_expand_marked_cus): Likewise.
9547         (dw2_debug_names_iterator::next): Likewise.
9548         (dwarf2_initialize_objfile): Likewise.
9549         (add_signatured_type_cu_to_table): Likewise.
9550         (create_all_type_units): Likewise.
9551         (add_type_unit): Likewise.
9552         (struct tu_abbrev_offset): Add constructor.
9553         (build_type_psymtabs_1): Adjust to std::vector change.
9554         (print_tu_stats): Likewise.
9555         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
9556         (write_debug_names): Likewise.
9557
9558 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9559
9560         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
9561         Make an std::vector.
9562         <n_comp_units>: Remove.
9563         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
9564         to std::vector change.
9565         (dwarf2_per_objfile::get_cutu): Likewise.
9566         (dwarf2_per_objfile::get_cu): Likewise.
9567         (create_cus_from_index): Likewise.
9568         (create_addrmap_from_index): Likewise.
9569         (create_addrmap_from_aranges): Likewise.
9570         (dwarf2_read_index): Likewise.
9571         (dw2_find_last_source_symtab): Likewise.
9572         (dw2_map_symtabs_matching_filename): Likewise.
9573         (dw2_symtab_iter_next): Likewise.
9574         (dw2_print_stats): Likewise.
9575         (dw2_expand_all_symtabs): Likewise.
9576         (dw2_expand_symtabs_with_fullname): Likewise.
9577         (dw2_expand_marked_cus): Likewise.
9578         (dw2_map_symbol_filenames): Likewise.
9579         (create_cus_from_debug_names): Likewise.
9580         (dwarf2_read_debug_names): Likewise.
9581         (dw2_debug_names_iterator::next): Likewise.
9582         (dwarf2_initialize_objfile): Likewise.
9583         (set_partial_user): Likewise.
9584         (dwarf2_build_psymtabs_hard): Likewise.
9585         (read_comp_units_from_section): Remove arguments, adjust to
9586         std::vector change.
9587         (create_all_comp_units): Adjust to std::vector and
9588         read_comp_units_from_section changes.
9589         (dwarf2_find_containing_comp_unit): Adjust to std::vector
9590         change.
9591         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
9592         (psyms_seen_size): Likewise.
9593         (write_gdbindex): Likewise.
9594         (write_debug_names): Likewise.
9595
9596 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9597
9598         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
9599         with dwarf2_per_objfile.
9600         (create_cus_from_index): Likewise.
9601         (create_signatured_type_table_from_index): Likewise.
9602         (dwarf2_read_index): Likewise.
9603         (dwarf2_initialize_objfile): Likewise.
9604         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
9605         per_cu rather than get_dwarf2_per_objfile.
9606
9607 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9608
9609         * dwarf2read.h (struct signatured_type): Forward declare.
9610         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
9611         New methods.
9612         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
9613         (dw2_get_cutu): ...this.
9614         (dwarf2_per_objfile::get_cu): Rename from...
9615         (dw2_get_cu): ...this.
9616         (dwarf2_per_objfile::get_tu): New.
9617         (create_addrmap_from_index): Adjust.
9618         (create_addrmap_from_aranges): Adjust.
9619         (dw2_find_last_source_symtab): Adjust.
9620         (dw2_map_symtabs_matching_filename): Adjust.
9621         (dw2_symtab_iter_next): Adjust.
9622         (dw2_print_stats): Adjust.
9623         (dw2_expand_all_symtabs): Adjust.
9624         (dw2_expand_symtabs_with_fullname): Adjust.
9625         (dw2_expand_marked_cus): Adjust.
9626         (dw_expand_symtabs_matching_file_matcher): Adjust.
9627         (dw2_map_symbol_filenames): Adjust.
9628         (dw2_debug_names_iterator::next): Adjust.
9629         (dwarf2_initialize_objfile): Adjust.
9630         (set_partial_user): Adjust.
9631         (dwarf2_build_psymtabs_hard): Adjust.
9632
9633 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9634
9635         * dwarf2read.c (create_signatured_type_table_from_debug_names):
9636         Remove unused variables.
9637         (dw2_map_symtabs_matching_filename): Likewise.
9638         (dwarf2_record_block_ranges): Likewise.
9639         (dwarf2_read_addr_index): Likewise.
9640         (follow_die_offset): Likewise.
9641
9642 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9643
9644         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
9645         to symbol_file_add_main.
9646
9647 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9648
9649         PR mi/22299
9650         * mi/mi-console.c (do_fputc_async_safe): New.
9651         (mi_console_file::write_async_safe): New.
9652         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
9653         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
9654         New.
9655         * ui-file.c (ui_file::putstrn): Adjust call to
9656         fputstrn_unfiltered.
9657         * utils.c (printchar): Replace do_fputs and do_fprintf
9658         parameters by do_fputc.
9659         (fputstr_filtered): Adjust call to printchar.
9660         (fputstr_unfiltered): Likewise.
9661         (fputstrn_filtered): Likewise.
9662         (fputstrn_unfiltered): Add do_fputc parameter, pass to
9663         printchar.
9664         * utils.h (do_fputc_ftype): New typedef.
9665         (fputstrn_unfiltered): Add do_fputc parameter.
9666
9667 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9668
9669         * regformats/i386/i386-avx.dat: Remove.
9670
9671 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
9672
9673         PR gdb/22979
9674         * amd64-tdep.c (amd64_none_init_abi): New function.
9675         (amd64_x32_none_init_abi): New function.
9676         (_initialize_amd64_tdep): Register handlers for x86-64 and
9677         x64_32 with GDB_OSABI_NONE.
9678         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
9679         GDB_OSABI_NONE osabi.
9680
9681 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
9682
9683         PR gdb/22980
9684         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
9685         GDB_OSABI_NONE.
9686         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
9687         * osabi.c (gdb_osabi_names): Add "unknown" entry.
9688
9689 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
9690
9691         * common/byte-vector.h (char_vector): New type.
9692         * target.h (target_read_alloc): Return
9693         gdb::optional<byte_vector>.
9694         (target_read_stralloc): Return gdb::optional<char_vector>.
9695         (target_get_osdata): Return gdb::optional<char_vector>.
9696         * target.c (target_read_alloc_1): Templatize.  Replacement
9697         manual memory management with vector.
9698         (target_read_alloc): Change return type, adjust.
9699         (target_read_stralloc): Change return type, adjust.
9700         (target_get_osdata): Change return type, adjust.
9701         * auxv.c (struct auxv_info) <length>: Remove.
9702         <data>: Change type to gdb::optional<byte_vector>.
9703         (auxv_inferior_data_cleanup): Free auxv_info with delete.
9704         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
9705         (target_auxv_search): Adjust.
9706         (fprint_target_auxv): Adjust.
9707         * avr-tdep.c (avr_io_reg_read_command): Adjust.
9708         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
9709         (linux_make_corefile_notes): Adjust.
9710         * osdata.c (get_osdata): Adjust.
9711         * remote.c (remote_get_threads_with_qxfer): Adjust.
9712         (remote_memory_map): Adjust.
9713         (remote_traceframe_info): Adjust.
9714         (btrace_read_config): Adjust.
9715         (remote_read_btrace): Adjust.
9716         (remote_pid_to_exec_file): Adjust.
9717         * solib-aix.c (solib_aix_get_library_list): Adjust.
9718         * solib-dsbt.c (decode_loadmap): Don't free buf.
9719         (dsbt_get_initial_loadmaps): Adjust.
9720         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
9721         * solib-target.c (solib_target_current_sos): Adjust.
9722         * tracepoint.c (sdata_make_value): Adjust.
9723         * xml-support.c (xinclude_start_include): Adjust.
9724         (xml_fetch_content_from_file): Adjust.
9725         * xml-support.h (xml_fetch_another): Change return type.
9726         (xml_fetch_content_from_file): Change return type.
9727         * xml-syscall.c (xml_init_syscalls_info): Adjust.
9728         * xml-tdesc.c (file_read_description_xml): Adjust.
9729         (fetch_available_features_from_target): Change return type.
9730         (target_fetch_description_xml): Adjust.
9731         (target_read_description_xml): Adjust.
9732
9733 2018-04-06  Tom Tromey  <tom@tromey.com>
9734
9735         * value.c (~value): Update.
9736         (struct value) <contents>: Now unique_xmalloc_ptr.
9737         (value_contents_bits_eq, allocate_value_contents)
9738         (value_contents_raw, value_contents_all_raw)
9739         (value_contents_for_printing, value_contents_for_printing_const)
9740         (set_value_enclosing_type): Update.
9741
9742 2018-04-06  Tom Tromey  <tom@tromey.com>
9743
9744         * value.c (range_s): Remove typedef, VEC.
9745         (struct range): Add operator<.
9746         (range_lessthan): Remove.
9747         (ranges_contain): Change type.
9748         (~value): Update.
9749         (struct value) <unavailable, optimized_out>: Now std::vector.
9750         (value_entirely_available)
9751         (value_entirely_covered_by_range_vector)
9752         (value_entirely_unavailable, value_entirely_optimized_out):
9753         Update.
9754         (insert_into_bit_range_vector): Change argument type.
9755         (find_first_range_overlap): Likewise.
9756         (struct ranges_and_idx, value_contents_bits_eq)
9757         (require_not_optimized_out, require_available): Update.
9758         (ranges_copy_adjusted): Change argument types.
9759         (value_optimized_out, value_copy, value_fetch_lazy): Update.
9760
9761 2018-04-06  Tom Tromey  <tom@tromey.com>
9762
9763         * value.c (~value): Update.
9764         (struct value) <parent>: Now a value_ref_ptr.
9765         (value_parent, set_value_parent, value_address, value_copy):
9766         Update.
9767
9768 2018-04-06  Tom Tromey  <tom@tromey.com>
9769
9770         * value.c (struct value): Add constructor, destructor, and member
9771         initializers.
9772         (allocate_value_lazy, value_decref): Update.
9773
9774 2018-04-06  Tom Tromey  <tom@tromey.com>
9775
9776         * value.c (struct value) <released, next>: Remove.
9777         (all_values): Now a std::vector.
9778         (allocate_value_lazy): Update.
9779         (value_next): Remove.
9780         (value_mark, value_free_to_mark, release_value)
9781         (value_release_to_mark): Update.
9782
9783 2018-04-06  Tom Tromey  <tom@tromey.com>
9784
9785         * value.h (fetch_subexp_value, value_release_to_mark): Update.
9786         (free_value_chain): Remove.
9787         * value.c (free_value_chain): Remove.
9788         (value_release_to_mark): Return a std::vector.
9789         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
9790         std::vector.
9791         (check_condition): Update.
9792         * eval.c (fetch_subexp_value): Change "val_chain" to a
9793         std::vector.
9794         * breakpoint.c (update_watchpoint): Update.
9795         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
9796
9797 2018-04-06  Tom Tromey  <tom@tromey.com>
9798
9799         * value.h (free_all_values): Remove.
9800         * value.c (free_all_values): Remove.
9801
9802 2018-04-06  Tom Tromey  <tom@tromey.com>
9803
9804         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
9805         (value_history_chain, value_history_count): Remove.
9806         (value_history): New global.
9807         (record_latest_value, access_value_history, show_values)
9808         (preserve_values): Update.
9809
9810 2018-04-06  Tom Tromey  <tom@tromey.com>
9811
9812         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
9813         * varobj.c (varobj_set_display_format, varobj_set_value)
9814         (install_default_visualizer, construct_visualizer)
9815         (install_new_value, ~varobj, varobj_get_value_type)
9816         (my_value_of_variable, varobj_editable_p): Update.
9817         * c-varobj.c (c_describe_child, c_value_of_variable)
9818         (cplus_number_of_children, cplus_describe_child): Update.
9819         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
9820         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
9821         (ada_value_of_variable, ada_value_is_changeable_p): Update.
9822
9823 2018-04-06  Tom Tromey  <tom@tromey.com>
9824
9825         * printcmd.c (last_examine_address): Change type to
9826         value_ref_ptr.
9827         (do_examine, x_command): Update.
9828
9829 2018-04-06  Tom Tromey  <tom@tromey.com>
9830
9831         * value.c (release_value): Update.
9832         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
9833         (struct bpstats) <val>: Now a value_ref_ptr.
9834         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
9835         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
9836         (~watchpoint, print_it_watchpoint, watch_command_1)
9837         (invalidate_bp_value_on_memory_change): Update.
9838
9839 2018-04-06  Tom Tromey  <tom@tromey.com>
9840
9841         * varobj.c (varobj_clear_saved_item)
9842         (update_dynamic_varobj_children, install_new_value, ~varobj):
9843         Update.
9844         * value.h (value_incref): Move declaration earlier.
9845         (value_decref): Rename from value_free.
9846         (struct value_ref_policy): New.
9847         (value_ref_ptr): New typedef.
9848         (struct value_deleter): Remove.
9849         (gdb_value_up): Remove typedef.
9850         (release_value): Change return type.
9851         (release_value_or_incref): Remove.
9852         * value.c (set_value_parent): Update.
9853         (value_incref): Change return type.
9854         (value_decref): Rename from value_free.
9855         (value_free_to_mark, free_all_values, free_value_chain): Update.
9856         (release_value): Return value_ref_ptr.
9857         (release_value_or_incref): Remove.
9858         (record_latest_value, set_internalvar, clear_internalvar):
9859         Update.
9860         * stack.c (info_frame_command): Don't call value_free.
9861         * python/py-value.c (valpy_dealloc, valpy_new)
9862         (value_to_value_object): Update.
9863         * printcmd.c (do_examine): Update.
9864         * opencl-lang.c (lval_func_free_closure): Update.
9865         * mi/mi-main.c (register_changed_p): Don't call value_free.
9866         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
9867         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
9868         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
9869         value_free.
9870         * guile/scm-value.c (vlscm_free_value_smob)
9871         (vlscm_scm_from_value): Update.
9872         * frame.c (frame_register_unwind, frame_unwind_register_signed)
9873         (frame_unwind_register_unsigned, get_frame_register_bytes)
9874         (put_frame_register_bytes): Don't call value_free.
9875         * findvar.c (address_from_register): Don't call value_free.
9876         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
9877         * dwarf2loc.c (entry_data_value_free_closure)
9878         (value_of_dwarf_reg_entry, free_pieced_value_closure)
9879         (dwarf2_evaluate_loc_desc_full): Update.
9880         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
9881         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
9882         (~watchpoint, watch_command_1)
9883         (invalidate_bp_value_on_memory_change): Update.
9884         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
9885
9886 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
9887
9888         PR gdb/23022
9889         * warning.m4: Add -Wno-error=deprecated-register.
9890         * configure: Re-generate.
9891
9892 2018-04-05  Tom Tromey  <tom@tromey.com>
9893
9894         * linespec.h: Remove include of "vec.h".
9895
9896 2018-04-05  Tom Tromey  <tom@tromey.com>
9897
9898         * linespec.c (typep): Remove typedef.
9899         (find_methods, find_superclass_methods): Take a std::vector.
9900         (find_method): Use std::vector.
9901
9902 2018-04-05  Tom Tromey  <tom@tromey.com>
9903
9904         * utils.c (compare_strings): Remove.
9905         * utils.h (compare_strings): Remove.
9906         * objc-lang.h (find_imps): Update.
9907         * objc-lang.c (find_methods): Take a std::vector.
9908         (uniquify_strings, find_imps): Likewise.
9909         * linespec.c (find_methods): Take a std::vector.
9910         (decode_objc): Use std::vector.
9911         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
9912         a std::vector.
9913         (find_method, find_function_symbols): Use std::vector.
9914
9915 2018-04-05  Tom Tromey  <tom@tromey.com>
9916
9917         * completer.c (completion_tracker::completion_tracker): Remove
9918         cast.
9919         (completion_tracker::discard_completions): Likewise.
9920         * breakpoint.c (ambiguous_names_p): Remove cast.
9921         * ada-lang.c (_initialize_ada_language): Remove cast.
9922         * utils.h (streq): Update.
9923         (streq_hash): Add new declaration.
9924         * utils.c (streq): Return bool.
9925         (streq_hash): New function.
9926
9927 2018-04-05  Tom Tromey  <tom@tromey.com>
9928
9929         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
9930         Remove a string copy.
9931
9932 2018-04-05  Tom Tromey  <tom@tromey.com>
9933
9934         * linespec.c (filter_results): Use std::vector.
9935         (decode_line_2, decode_line_full): Update.
9936
9937 2018-04-05  Tom Tromey  <tom@tromey.com>
9938
9939         * linespec.c (canonical_to_fullform): Return std::string.
9940         (filter_results): Update.
9941         (struct decode_line_2_item): Add constructor.
9942         <fullform, displayform>: Now std::string.
9943         (decode_line_2_compare_items): Now a std::sort comparator.
9944         (decode_line_2): Update.
9945
9946 2018-04-05  Tom Tromey  <tom@tromey.com>
9947
9948         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
9949         (unexpected_linespec_error): Update.
9950         (linespec_parse_basic, parse_linespec): Update.
9951
9952 2018-04-05  Tom Tromey  <tom@tromey.com>
9953
9954         * linespec.c (linespec_parse_basic): Reindent.
9955
9956 2018-04-05  Tom Tromey  <tom@tromey.com>
9957
9958         * minsyms.h (iterate_over_minimal_symbols): Update.
9959         * minsyms.c (iterate_over_minimal_symbols): Take a
9960         gdb::function_view.
9961         * linespec.c (struct collect_minsyms): Remove.
9962         (compare_msyms): Now a std::sort comparator.
9963         (add_minsym): Add parameters.
9964         (search_minsyms_for_name): Update.  Use std::vector.
9965
9966 2018-04-03  Tom Tromey  <tom@tromey.com>
9967
9968         * mipsread.c (read_alphacoff_dynamic_symtab): Use
9969         gdb::byte_vector.
9970
9971 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
9972
9973         * MAINTAINERS (Write After Approval): Add Weimin Pan.
9974
9975 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
9976
9977         PR gdb/16959
9978         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
9979         printing static type.
9980
9981 2018-04-01  Tom Tromey  <tom@tromey.com>
9982
9983         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
9984         (rs6000_xfer_shared_libraries): Update.
9985
9986 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
9987
9988         * common/gdb_vecs.h (char_ptr): Remove.
9989         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
9990
9991 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
9992
9993         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
9994         with std::vector.
9995         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
9996
9997 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
9998
9999         * tracepoint.h (struct uploaded_tp): Initialize fields.
10000         <actions, step_actions, cmd_strings>: Change type to
10001         std::vector<char *>.
10002         * tracepoint.c (get_uploaded_tp): Allocate with new.
10003         (free_uploaded_tps): Free with delete.
10004         (parse_tracepoint_definition): Adjust to std::vector change.
10005         * breakpoint.c (read_uploaded_action): Likewise.
10006         (create_tracepoint_from_upload): Likewise.
10007         * ctf.c (ctf_write_uploaded_tp): Likewise.
10008         (SET_ARRAY_FIELD): Likewise.
10009         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
10010
10011 2018-03-30  Tom Tromey  <tom@tromey.com>
10012
10013         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
10014         std::unique_ptr.
10015         (svr4_keep_data_in_core): Update.
10016         (svr4_read_so_list): Update.
10017
10018 2018-03-30  Tom Tromey  <tom@tromey.com>
10019
10020         * windows-nat.c (handle_output_debug_string, handle_exception):
10021         Update.
10022         * target.h (target_read_string): Update.
10023         * target.c (target_read_string): Change "string" to
10024         unique_xmalloc_ptr.
10025         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
10026         Update.
10027         * solib-frv.c (frv_current_sos): Update.
10028         * solib-dsbt.c (dsbt_current_sos): Update.
10029         * solib-darwin.c (darwin_current_sos): Update.
10030         * linux-thread-db.c (inferior_has_bug): Update.
10031         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
10032         Update.  Remove alloca.
10033         * ada-lang.c (ada_main_name): Update.
10034
10035 2018-03-30  Tom Tromey  <tom@tromey.com>
10036
10037         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
10038         (struct dwo_file_deleter): New.
10039         (dwo_file_up): New typedef.
10040         (open_and_init_dwo_file): Use dwo_file_up.
10041         (free_dwo_file_cleanup): Remove.
10042
10043 2018-03-30  Tom Tromey  <tom@tromey.com>
10044
10045         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
10046         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
10047
10048 2018-03-30  Tom Tromey  <tom@tromey.com>
10049
10050         * dwarf2read.c (class free_cached_comp_units): New class.
10051         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
10052         (free_cached_comp_units): Remove function.
10053
10054 2018-03-30  Tom Tromey  <tom@tromey.com>
10055
10056         * utils.h (make_cleanup_unpush_target): Remove.
10057         * inf-ptrace.c (struct target_unpusher): New.
10058         (target_unpush_up) New typedef.
10059         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
10060         target_unpush_up.
10061         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
10062
10063 2018-03-27  Tom Tromey  <tom@tromey.com>
10064
10065         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
10066
10067 2018-03-27  Pedro Alves  <palves@redhat.com>
10068             Tom Tromey  <tom@tromey.com>
10069
10070         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
10071         destructor.  Now a class.
10072         (gdb_readline_wrapper_cleanup): Remove function.
10073         (gdb_readline_wrapper): Remove cleanups.
10074
10075 2018-03-27  Tom Tromey  <tom@tromey.com>
10076
10077         * typeprint.h (struct type_print_options) <local_typedefs,
10078         global_typedefs>: Remove "struct" keyword.
10079         (class typedef_hash_table): New class.
10080         (recursively_update_typedef_hash, add_template_parameters)
10081         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
10082         (find_typedef_in_hash): Don't declare.
10083         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
10084         (typedef_hash_table::recursively_update): Rename from
10085         recursively_update_typedef_hash.  Now a member.
10086         (typedef_hash_table::add_template_parameters): Rename from
10087         add_template_parameters.  Now a member.
10088         (typedef_hash_table::typedef_hash_table): Now a constructor;
10089         rename from create_typedef_hash.
10090         (typedef_hash_table::~typedef_hash_table): Now a destructor;
10091         rename from free_typedef_hash.
10092         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
10093         (do_free_global_table): Remove.
10094         (typedef_hash_table::typedef_hash_table): New constructor; renamed
10095         from copy_type_recursive.
10096         (create_global_typedef_table): Remove.
10097         (typedef_hash_table::find_global_typedef): Now a member of
10098         typedef_hash_table.
10099         (typedef_hash_table::find_typedef): Rename from
10100         find_typedef_in_hash; now a member.
10101         (whatis_exp): Update.
10102         * extension.h (struct ext_lang_type_printers): Add constructor and
10103         destructor.
10104         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
10105         declare.
10106         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
10107         Now a constructor; rename from start_ext_lang_type_printers.
10108         (ext_lang_type_printers): Now a destructor; rename from
10109         free_ext_lang_type_printers.
10110         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
10111         Update.
10112         (c_type_print_base_struct_union): Update.  Remove cleanups.
10113
10114 2018-03-27  Tom Tromey  <tom@tromey.com>
10115
10116         * dwarf-index-write.c: Include <cmath>.
10117
10118 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
10119
10120         * NEWS: Add entry describing new "set|show varsize-limit" command.
10121         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
10122         command.
10123         * printcmd.c (_initialize_printcmd): Add "set var" alias of
10124         "set variable".
10125
10126 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
10127
10128         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
10129         dwarf-index-write.c
10130         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
10131         * dwarf-index-common.c: New file.
10132         * dwarf-index-common.h: New file.
10133         * dwarf-index-write.c: New file.
10134         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
10135         (struct dwarf2_section_info): Move from here.
10136         (dwarf2_section_info_def): Likewise.
10137         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
10138         (offset_type): Likewise.
10139         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
10140         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
10141         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
10142         (byte_swap): Likewise.
10143         (MAYBE_SWAP): Likewise.
10144         (dwarf2_per_cu_ptr): Likewise.
10145         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
10146         (struct tu_stats): Likewise.
10147         (struct dwarf2_per_objfile): Likewise.
10148         (struct dwarf2_per_cu_data): Likewise.
10149         (struct signatured_type): Likewise.
10150         (sig_type_ptr): Likewise.
10151         (DEF_VEC_P (sig_type_ptr)): Likewise.
10152         (INDEX4_SUFFIX): Likewise.
10153         (INDEX5_SUFFIX): Likewise.
10154         (DEBUG_STR_SUFFIX): Likewise.
10155         (dwarf2_read_section): Make non-static.
10156         (mapped_index_string_hash): Move from here.
10157         (dwarf5_djb_hash): Likewise.
10158         (file_write): Likewise.
10159         (class data_buf): Likewise.
10160         (struct symtab_index_entry): Likewise.
10161         (struct mapped_symtab): Likewise.
10162         (find_slot): Likewise.
10163         (hash_expand): Likewise.
10164         (add_index_entry): Likewise.
10165         (uniquify_cu_indices): Likewise.
10166         (class c_str_view): Likewise.
10167         (class c_str_view_hasher): Likewise.
10168         (class vector_hasher): Likewise.
10169         (write_hash_table): Likewise.
10170         (psym_index_map): Likewise.
10171         (struct addrmap_index_data): Likewise.
10172         (add_address_entry): Likewise.
10173         (add_address_entry_worker): Likewise.
10174         (write_address_map): Likewise.
10175         (symbol_kind): Likewise.
10176         (write_psymbols): Likewise.
10177         (struct signatured_type_index_data): Likewise.
10178         (write_one_signatured_type): Likewise.
10179         (recursively_count_psymbols): Likewise.
10180         (recursively_write_psymbols): Likewise.
10181         (class debug_names): Likewise.
10182         (check_dwarf64_offsets): Likewise.
10183         (psyms_seen_size): Likewise.
10184         (write_gdbindex): Likewise.
10185         (write_debug_names): Likewise.
10186         (assert_file_size): Likewise.
10187         (write_psymtabs_to_index): Likewise.
10188         (save_gdb_index_command): Likewise.
10189         (_initialize_dwarf2_read): Don't register the "save gdb-index"
10190         command.
10191         * dwarf2read.h: New file.
10192
10193 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
10194
10195         PR gdb/22670
10196         * dwarf2read.c (dwarf2_physname): Do not return the demangled
10197         symbol name if the CU's language stores symbol names in linkage
10198         format.
10199         * language.h (struct language_defn)
10200         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
10201         all instances of this struct.
10202
10203 2018-03-26  Tom Tromey  <tom@tromey.com>
10204
10205         * stack.c (backtrace_command_1): Remove verbose code.
10206
10207 2018-03-26  Tom Tromey  <tom@tromey.com>
10208
10209         * python/py-framefilter.c (py_print_type): Don't catch
10210         exceptions.  Return void.
10211         (py_print_value): Likewise.
10212         (py_print_single_arg): Likewise.
10213         (enumerate_args): Don't catch exceptions.
10214         (py_print_args): Likewise.
10215         (py_print_frame): Likewise.
10216         (gdbpy_apply_frame_filter): Catch exceptions here.
10217
10218 2018-03-26  Tom Tromey  <tom@tromey.com>
10219
10220         * stack.c (_initialize_stack): Remove trailing newlines from help
10221         text.  Add "Usage" line to "backtrace" help.
10222
10223 2018-03-26  Tom Tromey  <tom@tromey.com>
10224
10225         PR python/16486:
10226         * python/py-framefilter.c (py_print_args): Call wrap_hint.
10227
10228 2018-03-26  Tom Tromey  <tom@tromey.com>
10229
10230         * python/py-framefilter.c (py_print_single_arg): Return
10231         EXT_LANG_BT_ERROR from catch.
10232
10233 2018-03-26  Tom Tromey  <tom@tromey.com>
10234
10235         PR backtrace/15584:
10236         * stack.c (backtrace_command_1): Move some code into no-filters
10237         "if".
10238
10239 2018-03-26  Tom Tromey  <tom@tromey.com>
10240
10241         * python/py-framefilter.c (throw_quit_or_print_exception): New
10242         function.
10243         (gdbpy_apply_frame_filter): Use it.
10244
10245 2018-03-26  Tom Tromey  <tom@tromey.com>
10246
10247         PR cli/17716:
10248         * python/py-framefilter.c (py_print_type, py_print_value)
10249         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
10250         RETURN_MASK_ERROR.
10251
10252 2018-03-26  Tom Tromey  <tom@tromey.com>
10253
10254         * python/py-framefilter.c (enumerate_args): Use
10255         gdb::unique_xmalloc_ptr.
10256
10257 2018-03-26  Tom Tromey  <tom@tromey.com>
10258
10259         * python/py-framefilter.c (py_print_frame): Return
10260         EXT_LANG_BT_OK.
10261         (gdbpy_apply_frame_filter): Update comment.
10262         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
10263         Remove.
10264         <EXT_LANG_BT_NO_FILTERS>: Change value.
10265
10266 2018-03-26  Tom Tromey  <tom@tromey.com>
10267
10268         PR backtrace/15582:
10269         * stack.c (backtrace_command): Parse "hide" argument.
10270         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
10271         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
10272         constant.
10273
10274 2018-03-26  Tom Tromey  <tom@tromey.com>
10275
10276         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
10277         add "flags".
10278         (backtrace_command): Remove "fulltrace", add "flags".
10279
10280 2018-03-26  Tom Tromey  <tom@tromey.com>
10281
10282         * stack.c (backtrace_command): Rewrite command line parsing.
10283
10284 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
10285
10286         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
10287
10288 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
10289
10290         * filename-seen-cache.h: Add include guard.
10291
10292 2018-03-26  Keith Seitz  <keiths@redhat.com>
10293
10294         * symfile.c (place_section): Remove "struct" from section_addr_info
10295         in comment.
10296         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
10297         "struct" keyword from section_addr_info.
10298
10299 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
10300
10301         * regformats/regdef.h (reg): Add constructors.
10302
10303 2018-03-25  Pedro Alves  <palves@redhat.com>
10304
10305         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
10306         if then/else bodies in var_func_name extraction.
10307
10308 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
10309
10310         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
10311         lookup_minimal_symbol() to find symbol entry.
10312         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
10313
10314 2018-03-23  Keith Seitz  <keiths@redhat.com>
10315
10316         PR c++/22968
10317         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
10318         nested type definitions for C++, too.
10319
10320 2018-03-23  Tom Tromey  <tom@tromey.com>
10321
10322         * machoread.c (struct oso_el): Add a constructor.  Don't define as
10323         a typedef.
10324         (macho_register_oso): Remove.
10325         (macho_symtab_read): Take a std::vector.
10326         (oso_el_compare_name): Now a std::sort comparator.
10327         (macho_symfile_read_all_oso): Take a std::vector.
10328         (macho_symfile_read): Use std::vector.  Remove cleanups.
10329
10330 2018-03-22  Tom Tromey  <tom@tromey.com>
10331
10332         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
10333         (record_full_goto_bookmark): Use std::string.
10334
10335 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10336
10337         PR tdep/18295
10338         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
10339         a single mask.
10340
10341 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10342
10343         * rs6000-tdep.c (store_insn_p): New function.
10344         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
10345         and cr_reg to their unshifted values. Use store_insn_p to
10346         match LR saves using either R1 or fdata->alloca_reg. Use
10347         store_insn_p to match CR saves. Set alloca_reg_offset
10348         when alloca_reg and framep are set. Remove lr_reg shift
10349         when assigning to fdata->lr_register.
10350
10351 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10352
10353         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
10354         command line args instead of emitting a warning.
10355
10356 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
10357
10358         * tracepoint.h (struct static_tracepoint_marker): Initialize
10359         fields, define default constructor, move constructor and move
10360         assignment, disable the rest.
10361         <str_id, extra>: Make std::string.
10362         (release_static_tracepoint_marker): Remove.
10363         (free_current_marker): Remove.
10364         * tracepoint.c (free_current_marker): Remove.
10365         (parse_static_tracepoint_marker_definition): Adjust to
10366         std::string, use new hex2str overload.
10367         (release_static_tracepoint_marker): Remove.
10368         (print_one_static_tracepoint_marker): Get marker by reference
10369         and adjust to std::string.
10370         (info_static_tracepoint_markers_command): Adjust to std::vector
10371         changes
10372         * target.h (static_tracepoint_marker_p): Remove typedef.
10373         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
10374         (struct target_ops) <to_static_tracepoint_marker_at>: Return
10375         bool.
10376         <to_static_tracepoint_markers_by_strid>: Return std::vector.
10377         * target-debug.h
10378         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
10379         (target_debug_print_std_vector_static_tracepoint_marker): New.
10380         (target_debug_print_struct_static_tracepoint_marker_p): Rename
10381         to...
10382         (target_debug_print_static_tracepoint_marker_p): ... this.
10383         * target-delegates.c: Re-generate.
10384         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
10385         Make std::string.
10386         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
10387         (decode_static_tracepoint_spec): Adjust to std::vector.
10388         (tracepoint_print_one_detail): Adjust to std::string.
10389         (strace_marker_decode_location): Adjust to std::string.
10390         (update_static_tracepoint): Adjust to std::string, remove call
10391         to release_static_tracepoint_marker.
10392         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
10393         Adjust to std::vector.
10394         * remote.c (remote_static_tracepoint_marker_at): Return bool.
10395         (remote_static_tracepoint_markers_by_strid): Adjust to
10396         std::vector.
10397         * common/rsp-low.h (hex2str): New overload with explicit count
10398         of bytes.
10399         * common/rsp-low.c (hex2str): New overload with explicit count
10400         of bytes.
10401         * unittests/rsp-low-selftests.c (test_hex2str): New function.
10402         (_initialize_rsp_low_selftests): Add test_hex2str test.
10403         * unittests/tracepoint-selftests.c
10404         (test_parse_static_tracepoint_marker_definition): Adjust to
10405         std::string.
10406
10407 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
10408
10409         * tracepoint.c (parse_static_tracepoint_marker_definition):
10410         Consider case where the definition is followed by more
10411         definitions.
10412         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10413         tracepoint-selftests.c.
10414         * unittests/tracepoint-selftests.c: New.
10415
10416 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10417
10418         * MAINTAINERS (Write After Approval): Add Pedro Franco de
10419         Carvalho.
10420
10421 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
10422
10423         * symtab.c (find_pc_sect_line): fixed indentation.
10424
10425 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
10426
10427         * symtab.c (find_pc_sect_line): now uses binary search.
10428
10429 2018-03-19  Tom Tromey  <tom@tromey.com>
10430
10431         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
10432         "IDENT" production.
10433
10434 2018-03-19  Pedro Alves  <palves@redhat.com>
10435             Tom Tromey  <tom@tromey.com>
10436
10437         * unittests/observable-selftests.c: New file.
10438         * common/observable.h: New file.
10439         * observable.h: New file.
10440         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
10441         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
10442         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
10443         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
10444         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
10445         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
10446         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
10447         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
10448         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
10449         python/py-breakpoint.c, python/py-finishbreakpoint.c,
10450         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
10451         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
10452         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
10453         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
10454         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
10455         tui/tui-interp.c, valops.c: Update all users.
10456         * tui/tui-hooks.c (tui_bp_created_observer)
10457         (tui_bp_deleted_observer, tui_bp_modified_observer)
10458         (tui_inferior_exit_observer, tui_before_prompt_observer)
10459         (tui_normal_stop_observer, tui_register_changed_observer):
10460         Remove.
10461         (tui_observers_token): New global.
10462         (attach_or_detach, tui_attach_detach_observers): New functions.
10463         (tui_install_hooks, tui_remove_hooks): Use
10464         tui_attach_detach_observers.
10465         * record-btrace.c (record_btrace_thread_observer): Remove.
10466         (record_btrace_thread_observer_token): New global.
10467         * observer.sh: Remove.
10468         * observer.c: Rename to observable.c.
10469         * observable.c (namespace gdb_observers): Define new objects.
10470         (observer_debug): Move into gdb_observers namespace.
10471         (struct observer, struct observer_list, xalloc_observer_list_node)
10472         (xfree_observer_list_node, generic_observer_attach)
10473         (generic_observer_detach, generic_observer_notify): Remove.
10474         (_initialize_observer): Update.
10475         Don't include observer.inc.
10476         * Makefile.in (generated_files): Remove observer.h, observer.inc.
10477         (clean mostlyclean): Likewise.
10478         (observer.h, observer.inc): Remove targets.
10479         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
10480         (COMMON_SFILES): Use observable.c, not observer.c.
10481         * .gitignore: Remove observer.h.
10482
10483 2018-03-18  Tom Tromey  <tom@tromey.com>
10484
10485         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
10486         gdb::def_vector.
10487         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
10488
10489 2018-03-17  Tom Tromey  <tom@tromey.com>
10490
10491         * auto-load.c (auto_load_objfile_script_1): Use std::string.
10492
10493 2018-03-17  Tom Tromey  <tom@tromey.com>
10494
10495         * target.c (class scoped_target_fd): New.
10496         (target_fileio_close_cleanup): Remove.
10497         (target_fileio_read_alloc_1): Use scoped_target_fd.
10498
10499 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
10500
10501         * silent-rules.mk: New.
10502         * Makefile.in: Include silent-rules.mk
10503         (srcdir, VPATH, top_srcdir): Move up.
10504         (COMPILE): Add ECHO_CXX.
10505         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
10506         (init.c): Add ECHO_INIT_C.
10507         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
10508         (version.c): Add ECHO_GEN.
10509         (printcmd.o): Add ECHO_CXX.
10510         (target-float.o): Add ECHO_CXX.
10511         (ada-exp.o): Add ECHO_CXX.
10512         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
10513         (insight$(EXEEXT)): Add ECHO_CXXLD.
10514         * gnulib/configure.ac: Add AM_SILENT_RULES.
10515         * gnulib/aclocal.m4: Re-generate.
10516         * gnulib/configure: Re-generate.
10517         * gnulib/import/Makefile.in: Re-generate.
10518
10519 2018-03-16  Tom Tromey  <tom@tromey.com>
10520
10521         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
10522         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
10523         * utils.c (do_free_section_addr_info)
10524         (make_cleanup_free_section_addr_info): Remove.
10525         * symfile.h (struct other_sections): Add constructor.
10526         (struct section_addr_info): Remove.
10527         (section_addr_info): New typedef.
10528         (struct sym_fns) <sym_offsets>: Change type of parameter.
10529         (build_section_addr_info_from_objfile)
10530         (relative_addr_info_to_section_offsets, addr_info_make_relative)
10531         (default_symfile_offsets, symbol_file_add)
10532         (symbol_file_add_from_bfd)
10533         (build_section_addr_info_from_section_table): Update.
10534         (alloc_section_addr_info, free_section_addr_info): Don't declare.
10535         * symfile.c (alloc_section_addr_info): Remove.
10536         (build_section_addr_info_from_section_table): Change return type.
10537         Update.
10538         (build_section_addr_info_from_bfd)
10539         (build_section_addr_info_from_objfile): Likewise.
10540         (free_section_addr_info): Remove.
10541         (relative_addr_info_to_section_offsets): Change type of "addrs".
10542         (addrs_section_compar): Now a std::sort comparator.
10543         (addrs_section_sort): Change return type.
10544         (addr_info_make_relative): Change type of "addrs".  Update.
10545         (default_symfile_offsets, syms_from_objfile_1)
10546         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
10547         (symbol_file_add_separate): Update.
10548         (symbol_file_add): Change type of "addrs".  Update.
10549         (add_symbol_file_command): Update.  Remove cleanups.
10550         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
10551         cleanups.
10552         * symfile-debug.c (debug_sym_offsets): Change type of "info".
10553         * solib.c (solib_read_symbols): Update.
10554         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
10555         * machoread.c (macho_symfile_offsets): Update.
10556         * jit.c (jit_bfd_try_read_symtab): Update.
10557
10558 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
10559
10560         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10561         unittests/utils-selftests.c.
10562         * unittests/utils-selftests.c: New file.
10563
10564 2018-03-14  Tom Tromey  <tom@tromey.com>
10565
10566         PR cli/14977:
10567         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
10568         for NULL.
10569
10570 2018-03-14  Tom Tromey  <tom@tromey.com>
10571
10572         PR cli/19918:
10573         * printcmd.c (printf_pointer): Allow "-" in format.
10574
10575 2018-03-14  Tom Tromey  <tom@tromey.com>
10576
10577         * printcmd.c (_initialize_printcmd): Add usage to printf.
10578
10579 2018-03-14  Yao Qi  <qiyao@sourceware.org>
10580
10581         * MAINTAINERS: Update my email address.
10582
10583 2018-03-13  Tom Tromey  <tom@tromey.com>
10584
10585         * machoread.c (macho_check_dsym): Change filenamep to a
10586         std::string*.
10587         (macho_symfile_read): Update.
10588         * symfile.c (load_command): Use std::string.
10589
10590 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
10591
10592         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
10593         to error message string.
10594         (riscv_register_name): Use xsnprintf instead of sprintf.
10595         (riscv_insn::fetch_instruction): Use gdb_assert instead of
10596         internal_error.
10597         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
10598         error.
10599         (riscv_push_dummy_call): Likewise.
10600
10601 2018-03-12  Tom Tromey  <tom@tromey.com>
10602
10603         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
10604         Use gdb::byte_vector.
10605         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
10606
10607 2018-03-12  Yao Qi  <yao.qi@linaro.org>
10608
10609         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
10610         parameter type to readable_regcache.
10611         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
10612         the declaration.
10613
10614 2018-03-11  Tom Tromey  <tom@tromey.com>
10615
10616         * dwarf2read.c (struct nextfield): Add initializers.
10617         (struct nextfnfield): Remove.
10618         (struct fnfieldlist): Add initializers.  Remove "length" and
10619         "head", use std::vector.
10620         (struct decl_field_list): Remove.
10621         (struct field_info): Add initializers.
10622         <fields, baseclasses>: Now std::vector.
10623         <nbaseclasses, nfnfields, typedef_field_list_count,
10624         nested_types_list_count>: Remove.
10625         (dwarf2_add_field, dwarf2_add_type_defn)
10626         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
10627         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
10628         (process_structure_scope): Update.
10629
10630 2018-03-11  Tom Tromey  <tom@tromey.com>
10631
10632         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
10633         for use by std::sort.
10634         (build_type_psymtabs_1): Use std::vector.
10635
10636 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
10637
10638         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
10639         and LIBMPFR in the printed configuration.
10640
10641 2018-03-08  Tom Tromey  <tom@tromey.com>
10642
10643         * source.c (get_filename_and_charpos): Use scoped_fd.
10644         * nto-procfs.c (procfs_open_1): Use scoped_fd.
10645         (procfs_pidlist): Likewise.
10646         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
10647         (iterate_over_mappings): Likewise.
10648
10649 2018-03-08  Tom Tromey  <tom@tromey.com>
10650
10651         * infcall.c (struct call_return_meta_info)
10652         <stack_temporaries_enabled>: Remove.
10653         (get_call_return_value, call_function_by_hand_dummy): Update.
10654         * thread.c (disable_thread_stack_temporaries): Remove.
10655         (enable_thread_stack_temporaries): Remove.
10656         (thread_stack_temporaries_enabled_p): Return bool.
10657         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
10658         (get_last_thread_stack_temporary): Update.
10659         * eval.c (evaluate_subexp): Update.
10660         * gdbthread.h (class enable_thread_stack_temporaries): Now a
10661         class, not a function.
10662         (value_ptr, value_vec): Remove typedefs.
10663         (class thread_info) <stack_temporaries_enabled>: Now bool.
10664         <stack_temporaries>: Now a std::vector.
10665         (thread_stack_temporaries_enabled_p)
10666         (value_in_thread_stack_temporaries): Return bool.
10667
10668 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
10669
10670         * remote.c (putpkt_binary): Fix omitted bytes reporting.
10671         (getpkt_or_notif_sane_1): Likewise.
10672
10673 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
10674
10675         * build-id.c (build_id_to_debug_bfd): Use std::string.
10676
10677 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
10678
10679         * build-id.c (find_separate_debug_file_by_buildid): Return
10680         std::string.
10681         * build-id.h (find_separate_debug_file_by_buildid): Return
10682         std::string.
10683         * coffread.c (coff_symfile_read): Adjust to std::string.
10684         * elfread.c (elf_symfile_read): Adjust to std::string.
10685         * symfile.c (separate_debug_file_exists): Change parameter to
10686         std::string.
10687         (find_separate_debug_file): Return std::string.
10688         (find_separate_debug_file_by_debuglink): Return std::string.
10689         * symfile.h (find_separate_debug_file_by_debuglink): Return
10690         std::string.
10691
10692 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
10693
10694         * common/xml-utils.c (xml_escape_text): Move code to...
10695         (xml_escape_text_append): ... this new function.
10696         * common/xml-utils.h (xml_escape_text_append): New declaration.
10697         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
10698         New function.
10699         (_initialize_xml_utils): register test_xml_escape_text_append as
10700         a selftest.
10701
10702 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
10703
10704         * defs.h: Remove MAX_REGISTER_SIZE.
10705         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
10706         asserts.
10707         * python/py-unwind.c (pyuw_sniffer): Likewise.
10708
10709 2018-03-07  Tom Tromey  <tom@tromey.com>
10710
10711         * linux-tdep.c (linux_info_proc): Update.
10712         * target.h (struct target_ops) <to_fileio_readlink>: Return
10713         optional<string>.
10714         (target_fileio_readlink): Return optional<string>.
10715         * remote.c (remote_hostio_readlink): Return optional<string>.
10716         * inf-child.c (inf_child_fileio_readlink): Return
10717         optional<string>.
10718         * target.c (target_fileio_readlink): Return optional<string>.
10719
10720 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
10721
10722         * regcache.c (cooked_read_test): Add riscv to the list of
10723         architectures that have a save_reggroup.
10724
10725 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10726
10727         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
10728         value is not a dynamic class object.
10729
10730 2018-03-06  Tom Tromey  <tom@tromey.com>
10731
10732         * rust-exp.y: Formatting fixes.
10733
10734 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10735
10736         * riscv-tdep.c (riscv_register_name): Remove target description
10737         support.
10738         (riscv_gdbarch_init): Remove target description check.
10739
10740 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10741
10742         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
10743         comment.
10744         * riscv-tdep.h: Likewise.
10745
10746 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10747
10748         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
10749         (riscv_pseudo_register_write): Delete.
10750         (riscv_gdbarch_init): Remove all use of pseudo registers.
10751
10752 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10753
10754         * record-btrace.c (btrace_print_lines): Replace cleanup
10755         parameter with RAII equivalents.
10756         (btrace_insn_history): Replace cleanup with RAII equivalents.
10757         * ui-out.h (make_cleanup_ui_out_list_begin_end,
10758         make_cleanup_ui_out_tuple_begin_end): Remove.
10759         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
10760         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
10761         make_cleanup_ui_out_list_begin_end): Remove.
10762
10763 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10764
10765         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
10766         parameter types to std::vector.  Use bool.
10767         (record_btrace_wait): Replace VEC(tp_t) with
10768         std::vector<thread_info *>.
10769         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
10770
10771 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10772
10773         * record-btrace.c (record_btrace_disable_callback): Remove.
10774         (struct scoped_btrace_disable): New.
10775         (record_btrace_open): Use scoped_btrace_disable.
10776
10777 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10778
10779         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
10780         reading values from registers.
10781
10782 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10783
10784         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
10785         where appropriate.
10786
10787 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10788
10789         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
10790         change parameter type.  Use GDB's print functions, and use
10791         core_addr_to_string where appropriate.
10792         (riscv_push_dummy_call): Use core_addr_to_string where
10793         appropriate, update call to riscv_print_arg_location, and reindent
10794         a few lines.
10795         (riscv_return_value): Update call to riscv_print_arg_location.
10796
10797 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10798             Tim Newsome <tim@sifive.com>
10799             Albert Ou <a0u@eecs.berkeley.edu>
10800             Darius Rad <darius@bluespec.com>
10801
10802         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
10803         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
10804         (ALLDEPFILES): Add riscv-tdep.c
10805         * configure.tgt: Add riscv support.
10806         * riscv-tdep.c: New file.
10807         * riscv-tdep.h: New file.
10808         * NEWS: Mention new target.
10809         * MAINTAINERS: Add entry for riscv.
10810
10811 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10812
10813         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
10814         fields within aggregates.
10815
10816 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
10817
10818         * record-btrace.c (btrace_print_lines): Change type of flags to
10819         gdb_disassembly_flags.
10820
10821 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10822
10823         * fbsd-nat.c: Include "inf-ptrace.h".
10824         (USE_SIGTRAP_SIGINFO): Conditionally define.
10825         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
10826         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
10827         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
10828         function.
10829         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
10830         Likewise.
10831         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
10832         Likewise.
10833         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
10834         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
10835         "supports_stopped_by_hw_breakpoint" target methods.
10836
10837 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10838
10839         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
10840         * fbsd-nat.c (debug_fbsd_nat): New variable.
10841         (show_fbsd_nat_debug): New function.
10842         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
10843         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
10844
10845 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10846
10847         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
10848         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
10849         prototype.
10850         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
10851         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
10852         method.
10853
10854 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10855
10856         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
10857         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
10858
10859 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10860
10861         * charset.c (struct charset_vector): New.
10862         (charsets): Change type to charset_vector.
10863         (find_charset_names): Adjust.
10864         (add_one): Adjust.
10865         (_initialize_charset): Adjust.
10866
10867 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10868
10869         * progspace.h (struct program_space) <deleted_solibs>: Change
10870         type to std::vector<std::string>.
10871         * progspace.c (clear_program_space_solib_cache): Adjust.
10872         * breakpoint.c (print_solib_event): Adjust.
10873         (check_status_catch_solib): Adjust.
10874         * solib.c (update_solib_list): Adjust.
10875         * ui-out.h (class ui_out) <field_string>: New overload.
10876         * ui-out.c (ui_out::field_string): New overload.
10877
10878 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10879
10880         * progspace.h (struct program_space): Add constructor and
10881         destructor, initialize fields.
10882         (add_program_space): Remove.
10883         * progspace.c (add_program_space): Rename to...
10884         (program_space::program_space): ... this.
10885         (release_program_space): Rename to...
10886         (program_space::~program_space): ... this.
10887         (delete_program_space): Use delete to delete program_space.
10888         (initialize_progspace): Use new to allocate program_space.
10889         * inferior.c (add_inferior_with_spaces): Likewise.
10890         (clone_inferior_command): Likewise.
10891         * infrun.c (follow_fork_inferior): Likewise.
10892         (handle_vfork_child_exec_or_exit): Likewise.
10893
10894 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10895
10896         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
10897         (delim_string_to_char_ptr_vec): Return std::vector of
10898         gdb::unique_xmalloc_ptr.
10899         (dirnames_to_char_ptr_vec_append): Take std::vector of
10900         gdb::unique_xmalloc_ptr.
10901         (dirnames_to_char_ptr_vec): Return std::vector of
10902         gdb::unique_xmalloc_ptr.
10903         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
10904         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
10905         (delim_string_to_char_ptr_vec): Return an std::vector of
10906         gdb::unique_xmalloc_ptr, adjust the code.
10907         (dirnames_to_char_ptr_vec_append): Take an std::vector of
10908         gdb::unique_xmalloc_ptr, adjust the code.
10909         (dirnames_to_char_ptr_vec): Return an std::vector of
10910         gdb::unique_xmalloc_ptr, adjust the code.
10911         * auto-load.c (auto_load_safe_path_vec): Change type to
10912         std::vector of gdb::unique_xmalloc_ptr.
10913         (auto_load_expand_dir_vars): Return an std::vector of
10914         gdb::unique_xmalloc_ptr, adjust the code.
10915         (auto_load_safe_path_vec_update): Adjust.
10916         (filename_is_in_auto_load_safe_path_vec): Adjust.
10917         (auto_load_objfile_script_1): Adjust.
10918         * build-id.c (build_id_to_debug_bfd): Adjust.
10919         * linux-thread-db.c (thread_db_load_search): Adjust.
10920         * source.c (add_path): Adjust.
10921         (openp): Adjust.
10922         * symfile.c (find_separate_debug_file): Adjust.
10923         * utils.c (do_free_char_ptr_vec): Remove.
10924         (make_cleanup_free_char_ptr_vec): Remove.
10925
10926 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
10927
10928         PR gdb/22907
10929         * common/pathstuff.c: Conditionally include "<windows.h>".
10930
10931 2018-03-01  Georg Sauthoff  <mail@georg.so>
10932
10933         PR gdb/22888
10934         * gcore.in: Quote variables and switch interpreter to bash.
10935
10936 2018-03-01  Tom Tromey  <tom@tromey.com>
10937
10938         * dwarf2read.c (alloc_discriminant_info): Fix default_index
10939         assertion.  Add assertion for discriminant_index.
10940         (quirk_rust_enum): Use correct base type name in univariant case.
10941
10942 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
10943
10944         * record.c (get_call_history_modifiers): Return a
10945         record_print_flags.
10946         (cmd_record_call_history): Adjust.
10947         * record-btrace.c (record_btrace_call_history): Adjust.
10948         (record_btrace_call_history_range): Adjust.
10949         (record_btrace_call_history_from): Adjust.
10950         * target-debug.h (target_debug_print_record_print_flags): New.
10951         * target-delegates.c: Re-generate.
10952         * target.c (target_call_history): Change flags type.
10953         (target_call_history_from): Likewise.
10954         (target_call_history_range): Likewise.
10955         * target.h (struct target_ops) <target_call_history>: Likewise.
10956         (target_call_history_from): Likewise.
10957         (target_call_history_range): Likewise.
10958
10959 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
10960             Simon Marchi  <simon.marchi@polymtl.ca>
10961
10962         * common/common-utils.c: Include "sys/stat.h".
10963         (is_regular_file): Move here from "source.c"; change return
10964         type to "bool".
10965         * common/common-utils.h (is_regular_file): New prototype.
10966         * common/pathstuff.c (contains_dir_separator): New function.
10967         * common/pathstuff.h (contains_dir_separator): New prototype.
10968         * source.c: Don't include "sys/stat.h".
10969         (is_regular_file): Move to "common/common-utils.c".
10970
10971 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
10972
10973         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
10974         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
10975         * auto-load.c: Include "common/pathstuff.h".
10976         * common/common-def.h (current_directory): Move here.
10977         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
10978         function.
10979         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
10980         prototype.
10981         * common/pathstuff.c: New file.
10982         * common/pathstuff.h: New file.
10983         * compile/compile.c: Include "common/pathstuff.h".
10984         * defs.h (current_directory): Move to "common/common-defs.h".
10985         * dwarf2read.c: Include "common/pathstuff.h".
10986         * exec.c: Likewise.
10987         * guile/scm-safe-call.c: Likewise.
10988         * linux-thread-db.c: Likewise.
10989         * main.c: Likewise.
10990         * nto-tdep.c: Likewise.
10991         * objfiles.c: Likewise.
10992         * source.c: Likewise.
10993         * symtab.c: Likewise.
10994         * utils.c: Include "common/pathstuff.h".
10995         (gdb_realpath): Move to "common/pathstuff.c".
10996         (gdb_realpath_keepfile): Likewise.
10997         (gdb_abspath): Likewise.
10998         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
10999         (gdb_realpath_keepfile): Likewise.
11000         (gdb_abspath): Likewise.
11001
11002 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
11003
11004         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
11005         wildcard process pid for super_resume for kernels with a
11006         specific bug.
11007
11008 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
11009
11010         * compile/compile.c (get_args): Add additional comments
11011         explaining function.
11012
11013 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
11014             Tom Tromey  <tom@tromey.com>
11015
11016         * target.h (memory_write_request_s): Remove typedef.  Don't define
11017         VEC.
11018         (target_write_memory_blocks): Change argument to std::vector.
11019         (struct memory_write_request): Add constructor.
11020         * target-memory.c (compare_block_starting_address): Return bool.
11021         Change argument types.
11022         (claim_memory): Change arguments to use std::vector.
11023         (split_regular_and_flash_blocks, blocks_to_erase)
11024         (compute_garbled_blocks): Likewise.
11025         (cleanup_request_data, cleanup_write_requests_vector): Remove.
11026         (target_write_memory_blocks): Change argument to std::vector.
11027         * symfile.c (struct load_section_data): Add constructor and
11028         destructor.  Use std::vector for "requests".
11029         (struct load_progress_data): Add initializers.
11030         (load_section_callback): Update.  Use "new".
11031         (clear_memory_write_data): Remove.
11032         (generic_load): Update.
11033
11034 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
11035
11036         * arch/aarch64.h: Use common/tdesc.h.
11037
11038 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
11039
11040         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
11041         architecture with a 64-bit ABI.
11042
11043 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
11044
11045         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
11046         ahead of target description loading.
11047
11048 2018-02-26  Tom Tromey  <tom@tromey.com>
11049
11050         * stack.c (backtrace_command_1): Update.
11051         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
11052         of "flags".
11053         * python/py-framefilter.c (py_print_frame)
11054         (gdbpy_apply_frame_filter): Change type of "flags".
11055         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
11056         of "flags".
11057         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
11058         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
11059         * extension.h (enum frame_filter_flag): Rename from
11060         frame_filter_flags.
11061         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
11062         (apply_ext_lang_frame_filter): Change type of "flags".
11063         * extension.c (apply_ext_lang_frame_filter): Change type of
11064         "flags".
11065         * extension-priv.h (struct extension_language_ops)
11066         <apply_frame_filter>: Change type of "flags".
11067
11068 2018-02-26  Tom Tromey  <tom@tromey.com>
11069
11070         PR python/16497:
11071         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
11072         off-by-one in py_end computation.
11073         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
11074         PRINT_MORE_FRAMES.
11075         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
11076         constant.
11077
11078 2018-02-26  Tom Tromey  <tom@tromey.com>
11079
11080         * dwarf2read.c (struct variant_field): New.
11081         (struct nextfield) <variant>: New field.
11082         (dwarf2_add_field): Handle DW_TAG_variant_part.
11083         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
11084         discriminated union.
11085         (read_structure_type): Handle DW_TAG_variant_part.
11086         (handle_struct_member_die): New function, extracted from
11087         process_structure_scope.  Handle DW_TAG_variant.
11088         (process_structure_scope): Handle discriminated unions.  Call
11089         handle_struct_member_die.
11090
11091 2018-02-26  Tom Tromey  <tom@tromey.com>
11092
11093         * rust-lang.h (rust_last_path_segment): Declare.
11094         * rust-lang.c (rust_last_path_segment): Now public.  Change
11095         contract.
11096         (struct disr_info): Remove.
11097         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
11098         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
11099         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
11100         (rust_enum_p, rust_enum_variant): New function.
11101         (rust_underscore_fields): Remove "offset" parameter.
11102         (rust_print_enum): New function.
11103         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
11104         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
11105         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
11106         enums.
11107         (rust_internal_print_type): New function, from rust_print_type.
11108         Remove enum code.
11109         (rust_print_type): Call rust_internal_print_type.
11110         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
11111         Update enum handling.
11112         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
11113         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
11114         (rust_union_quirks): New functions.
11115         (process_full_comp_unit, process_full_type_unit): Call
11116         rust_union_quirks.
11117         (process_structure_scope): Update rust_unions if necessary.
11118
11119 2018-02-26  Tom Tromey  <tom@tromey.com>
11120
11121         * value.h (value_union_variant): Declare.
11122         * valops.c (value_union_variant): New function.
11123         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
11124         (struct discriminant_info): New.
11125         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
11126         enumerator.
11127         (struct main_type) <flag_discriminated_union>: New field.
11128
11129 2018-02-26  Tom Tromey  <tom@tromey.com>
11130
11131         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11132         unittests/unpack-selftests.c.
11133         * unittests/unpack-selftests.c: New file.
11134         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
11135
11136 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11137
11138         * dwarf2read.c (struct partial_die_info) <read>: New method.
11139         (read_partial_die): Remove the declaration.
11140         (load_partial_dies): Update.
11141         (partial_die_info::partial_die_info):
11142         (read_partial_die): Change it to partial_die_info::read.
11143
11144 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11145
11146         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
11147         (fixup_partial_die): Remove declaration.
11148         (scan_partial_symbols): Update.
11149         (partial_die_parent_scope): Likewise.
11150         (partial_die_full_name): Likewise.
11151         (fixup_partial_die): Change it to partial_die_info::fixup.
11152
11153 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11154
11155         * dwarf2read.c (read_partial_die): Update the declaration.
11156         (load_partial_dies): Caller update.
11157         (read_partial_die): Remove one argument abbrev_len.
11158
11159 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11160
11161         * dwarf2read.c (struct partial_die_info): Add ctor, delete
11162         assignment operator.
11163         (load_partial_dies): Use ctor and copy ctor.
11164         (read_partial_die): Update.
11165         (dwarf2_cu::find_partial_die): Use ctor.
11166
11167 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11168
11169         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
11170         (find_partial_die_in_comp_unit): Change it to
11171         dwarf2_cu::find_partial_die.
11172         (find_partial_die): Update.
11173
11174 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11175
11176         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
11177         is NULL.
11178
11179 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11180
11181         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
11182
11183 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
11184
11185         * arch/amd64.h: Use common/tdesc.h.
11186         * arch/i386.c: Likewise.
11187         * arch/i386.h: Likewise.
11188         * arch/tic6x.c: Likewise.
11189         * arch/tdesc.h: Move file from here...
11190         * common/tdesc.h: ...to here.
11191         * features/aarch64-core.c: Regenerate.
11192         * features/aarch64-fpu.c: Regenerate.
11193         * features/i386/32bit-avx.c: Regenerate.
11194         * features/i386/32bit-avx512.c: Regenerate.
11195         * features/i386/32bit-core.c: Regenerate.
11196         * features/i386/32bit-linux.c: Regenerate.
11197         * features/i386/32bit-mpx.c: Regenerate.
11198         * features/i386/32bit-pkeys.c: Regenerate.
11199         * features/i386/32bit-sse.c: Regenerate.
11200         * features/i386/64bit-avx.c: Regenerate.
11201         * features/i386/64bit-avx512.c: Regenerate.
11202         * features/i386/64bit-core.c: Regenerate.
11203         * features/i386/64bit-linux.c: Regenerate.
11204         * features/i386/64bit-mpx.c: Regenerate.
11205         * features/i386/64bit-pkeys.c: Regenerate.
11206         * features/i386/64bit-segments.c: Regenerate.
11207         * features/i386/64bit-sse.c: Regenerate.
11208         * features/i386/x32-core.c: Regenerate.
11209         * features/tic6x-c6xp.c: Regenerate.
11210         * features/tic6x-core.c: Regenerate.
11211         * features/tic6x-gp.c: Regenerate.
11212         * target-descriptions.c: Use common/tdesc.h.
11213         * target-descriptions.h: Likewise.
11214
11215 2018-02-24  Tom Tromey  <tom@tromey.com>
11216
11217         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
11218         (try_thread_db_load_from_dir, thread_db_load_search): Use
11219         std::string.
11220         (info_auto_load_libthread_db_compare): Return bool.  Change
11221         argument types.
11222         (info_auto_load_libthread_db): Use std::vector, std::string.
11223         Remove cleanups.
11224
11225 2018-02-24  Tom Tromey  <tom@tromey.com>
11226
11227         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
11228         std::string.
11229         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
11230         std::string*.
11231         * gdbarch.c: Rebuild.
11232         * gdbarch.h: Rebuild.
11233         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
11234         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
11235         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
11236         std::string*.
11237
11238 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
11239
11240         * gdbtypes.h (sect_offset): Change type to uint64_t.
11241         (sect_offset_str): New function.
11242         * dwarf2read.c (create_addrmap_from_aranges): Use
11243         sect_offset_str.
11244         (error_check_comp_unit_head): Likewise.
11245         (create_debug_type_hash_table): Likewise.
11246         (read_cutu_die_from_dwo): Likewise.
11247         (init_cutu_and_read_dies): Likewise.
11248         (init_cutu_and_read_dies_no_follow): Likewise.
11249         (process_psymtab_comp_unit_reader): Likewise.
11250         (partial_die_parent_scope): Likewise.
11251         (peek_die_abbrev): Likewise.
11252         (process_queue): Likewise.
11253         (dwarf2_physname): Likewise.
11254         (read_namespace_alias): Likewise.
11255         (read_import_statement): Likewise.
11256         (create_dwo_cu_reader): Likewise.
11257         (create_cus_hash_table): Likewise.
11258         (lookup_dwo_cutu): Likewise.
11259         (inherit_abstract_dies): Likewise.
11260         (read_func_scope): Likewise.
11261         (read_call_site_scope): Likewise.
11262         (dwarf2_add_member_fn): Likewise.
11263         (read_common_block): Likewise.
11264         (read_module_type): Likewise.
11265         (read_typedef): Likewise.
11266         (read_subrange_type): Likewise.
11267         (load_partial_dies): Likewise.
11268         (read_partial_die): Likewise.
11269         (find_partial_die): Likewise.
11270         (read_str_index): Likewise.
11271         (dwarf2_string_attr): Likewise.
11272         (build_error_marker_type): Likewise.
11273         (lookup_die_type): Likewise.
11274         (dump_die_shallow): Likewise.
11275         (follow_die_ref): Likewise.
11276         (dwarf2_fetch_die_loc_sect_off): Likewise.
11277         (dwarf2_fetch_constant_bytes): Likewise.
11278         (follow_die_sig): Likewise.
11279         (get_signatured_type): Likewise.
11280         (get_DW_AT_signature_type): Likewise.
11281         (dwarf2_find_containing_comp_unit): Likewise.
11282         (set_die_type): Likewise.
11283
11284 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
11285
11286         * arch/aarch64.c: Include "common-defs.h".
11287         * arch/amd64.c: Likewise.
11288         * arch/i386.c: Likewise.
11289
11290 2018-02-21  Tom Tromey  <tom@tromey.com>
11291
11292         * value.h: (extract_field_op): Update.
11293         * eval.c (extract_field_op): Return a const char *.
11294         * expression.h (parse_expression_for_completion): Update.
11295         * completer.c (complete_expression): Update.
11296         (add_struct_fields): Make fieldname const.
11297         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
11298         (mark_completion_tag, parse_exp_in_context_1): Update.
11299         (parse_expression_for_completion): Change "name" to
11300         unique_xmalloc_ptr*.
11301
11302 2018-02-21  Tom Tromey  <tom@tromey.com>
11303
11304         * infcall.c (call_function_by_hand_dummy): Use std::vector.
11305
11306 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11307
11308         * avr-tdep.c (avr_read_pc): Change parameter type to
11309         readable_regcache.
11310         * gdbarch.sh (read_pc): Likewise.
11311         * gdbarch.c: Re-generated.
11312         * gdbarch.h: Re-generated.
11313         * hppa-tdep.c (hppa_read_pc): Change parameter type to
11314         readable_regcache.
11315         * ia64-tdep.c (ia64_read_pc): Likewise.
11316         * mips-tdep.c (mips_read_pc): Likewise.
11317         * spu-tdep.c (spu_read_pc): Likewise.
11318
11319 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11320
11321         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
11322         * regcache-dump.c: New file.
11323         * regcache.c: Move register_dump to regcache-dump.c.
11324         (maintenance_print_registers): Likewise.
11325         (maintenance_print_raw_registers): Likewise.
11326         (maintenance_print_cooked_registers): Likewise.
11327         (maintenance_print_register_groups): Likewise.
11328         (maintenance_print_remote_registers): Likewise.
11329         (_initialize_regcache): Likewise.
11330         * regcache.h (register_dump): Moved from regcache.c.
11331
11332 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11333
11334         * regcache.c (regcache::regcache): Update.
11335         (regcache::invalidate): Move it to detached_regcache::invalidate.
11336         (get_thread_arch_aspace_regcache): Update.
11337         (regcache::raw_update): Update.
11338         (regcache::cooked_read): Remove some code.
11339         (regcache::cooked_read_value): Likewise.
11340         (regcache::raw_write): Remove assert on m_readonly_p.
11341         (regcache::raw_supply_integer): Move it to
11342         detached_regcache::raw_supply_integer.
11343         (regcache::raw_supply_zeroed): Likewise.
11344         * regcache.h (detached_regcache) <raw_supply_integer>: New
11345         declaration.
11346         <raw_supply_zeroed, invalidate>: Likewise.
11347         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
11348         <invalidate>: Likewise.
11349         <m_readonly_p>: Removed.
11350
11351 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11352
11353         * infcmd.c (get_return_value): Let stop_regs point to
11354         get_current_regcache.
11355         * regcache.c (regcache::regcache): Remove.
11356         (register_dump_reg_buffer): New class.
11357         (regcache_print): Adjust.
11358         * regcache.h (regcache): Remove constructors.
11359
11360 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11361
11362         * regcache.c (class register_dump): New class.
11363         (register_dump_regcache, register_dump_none): New class.
11364         (register_dump_remote, register_dump_groups): New class.
11365         (regcache_print): Update.
11366         * regcache.h (regcache_dump_what): Move it to regcache.c.
11367         (regcache) <dump>: Remove.
11368
11369 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11370
11371         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
11372          reg_buffer_rw *.
11373         (jit_unwind_reg_set_impl): Call raw_supply.
11374         (jit_frame_sniffer): Use reg_buffer_rw.
11375         * record-full.c (record_full_core_regbuf): Change its type.
11376         (record_full_core_open_1): Use reg_buffer_rw.
11377         (record_full_close): Likewise.
11378         (record_full_core_fetch_registers): Use regcache->raw_supply.
11379         (record_full_core_store_registers): Likewise.
11380         * regcache.c (regcache::get_register_status): Move it to
11381         reg_buffer.
11382         (regcache_raw_set_cached_value): Remove.
11383         (regcache::raw_set_cached_value): Remove.
11384         (regcache::raw_write): Call raw_supply.
11385         (regcache::raw_supply): Move it to reg_buffer_rw.
11386         * regcache.h (regcache_raw_set_cached_value): Remove.
11387         (reg_buffer_rw): New class.
11388
11389 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11390
11391         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
11392         readonly_detached_regcache.
11393         (dummy_frame_prev_register): Use regcache->cooked_read.
11394         * frame.c (frame_save_as_regcache): Change return type.
11395         (frame_pop): Update.
11396         * frame.h (frame_save_as_regcache): Update declaration.
11397         * inferior.h (get_infcall_suspend_state_regcache): Update
11398         declaration.
11399         * infrun.c (infcall_suspend_state) <registers>: use
11400         readonly_detached_regcache.
11401         (save_infcall_suspend_state): Don't use regcache_dup.
11402         (get_infcall_suspend_state_regcache): Change return type.
11403         * linux-fork.c (struct fork_info) <savedregs>: Change to
11404         readonly_detached_regcache.
11405         <pc>: New field.
11406         (fork_save_infrun_state): Don't use regcache_dup.
11407         (info_checkpoints_command): Adjust.
11408         * mi/mi-main.c (register_changed_p): Update declaration.
11409         (mi_cmd_data_list_changed_registers): Use
11410         readonly_detached_regcache.
11411         (register_changed_p): Change parameter type to
11412         readonly_detached_regcache.
11413         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
11414         readonly_detached_regcache.
11415         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
11416         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
11417         New.
11418         (regcache::save): Move it to reg_buffer.
11419         (regcache::restore): Change parameter type.
11420         (regcache_dup): Remove.
11421         * regcache.h (reg_buffer) <save>: New method.
11422         (readonly_detached_regcache): New class.
11423         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
11424         readonly_detached_regcache.
11425         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
11426
11427 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11428
11429         * frame.c (frame_save_as_regcache): Use regcache method save.
11430         (frame_pop): Use regcache method restore.
11431         * infrun.c (restore_infcall_suspend_state): Likewise.
11432         * linux-fork.c (fork_load_infrun_state): Likewise.
11433         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
11434         save.
11435         * regcache.c (regcache_save): Remove.
11436         (regcache::restore): More asserts.
11437         (regcache_cpy): Remove.
11438         * regcache.h (regcache_save): Remove the declaration.
11439         (regcache::restore): Move from private to public.
11440         Remove the friend declaration of regcache_cpy.
11441         (regcache_cpy): Remove declaration.
11442
11443 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11444
11445         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
11446         parameter type to 'readable_regcache *'.
11447         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
11448         * arm-tdep.c (arm_neon_quad_read): Likewise.
11449         (arm_pseudo_read): Likewise.
11450         * avr-tdep.c (avr_pseudo_register_read): Likewise.
11451         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
11452         * frv-tdep.c (frv_pseudo_register_read): Likewise.
11453         * gdbarch.c: Re-generated.
11454         * gdbarch.h: Re-generated.
11455         * gdbarch.sh (pseudo_register_read): Change parameter type to
11456         'readable_regcache *'.
11457         (pseudo_register_read_value): Likewise.
11458         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
11459         (h8300_pseudo_register_read): Likewise.
11460         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
11461         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
11462         (i386_pseudo_register_read_into_value): Likewise.
11463         (i386_pseudo_register_read_value): Likewise.
11464         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
11465         declaration.
11466         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
11467         * m32c-tdep.c (m32c_raw_read): Likewise.
11468         (m32c_read_flg): Likewise.
11469         (m32c_banked_register): Likewise.
11470         (m32c_banked_read): Likewise.
11471         (m32c_sb_read): Likewise.
11472         (m32c_part_read): Likewise.
11473         (m32c_cat_read): Likewise.
11474         (m32c_r3r2r1r0_read): Likewise.
11475         (m32c_pseudo_register_read): Likewise.
11476         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
11477         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
11478         (mep_pseudo_cr64_read): Likewise.
11479         (mep_pseudo_register_read): Likewise.
11480         * mips-tdep.c (mips_pseudo_register_read): Likewise.
11481         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
11482         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
11483         * regcache.c (regcache::raw_read): Move it to readable_regcache.
11484         (regcache::cooked_read): Likewise.
11485         (regcache::cooked_read_value): Likewise.
11486         (regcache_cooked_read_signed):
11487         (regcache::cooked_read): Likewise.
11488         * regcache.h (readable_regcache): New class.
11489         (regcache): Inherit readable_regcache.  Move some methods to
11490         readable_regcache.
11491         * rl78-tdep.c (rl78_pseudo_register_read): Change
11492         parameter type to 'readable_regcache *'.
11493         * rs6000-tdep.c (do_regcache_raw_read): Remove.
11494         (e500_pseudo_register_read): Change parameter type to
11495         'readable_regcache *'.
11496         (dfp_pseudo_register_read): Likewise.
11497         (vsx_pseudo_register_read): Likewise.
11498         (efpr_pseudo_register_read): Likewise.
11499         * s390-tdep.c (s390_pseudo_register_read): Likewise.
11500         * sh-tdep.c (sh_pseudo_register_read): Likewise.
11501         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
11502         (sh64_pseudo_register_read): Likewise.
11503         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
11504         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
11505         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
11506         (spu_pseudo_register_read): Likewise.
11507         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
11508         (xtensa_pseudo_register_read): Likewise.
11509
11510 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11511
11512         * regcache.c (regcache::regcache): Call reg_buffer ctor.
11513         (regcache::arch): Move it to reg_buffer::arch.
11514         (regcache::register_buffer): Likewise.
11515         (regcache::assert_regnum): Likewise.
11516         (regcache::num_raw_registers): Likewise.
11517         * regcache.h (reg_buffer): New class.
11518         (regcache): Inherit reg_buffer.
11519
11520 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
11521
11522         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
11523         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
11524
11525 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
11526
11527         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
11528
11529 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
11530
11531         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
11532         (SFILES): Remove common/*.c files.
11533         (COMMON_OBS): Remove some *.o files built from common/*.c files.
11534         * common/common.host: Add common reference.
11535         * configure.ac: Likewise.
11536         * configure: Regenerate.
11537
11538 2018-02-16  Yao Qi  <yao.qi@linaro.org>
11539
11540         * block.c (block_namespace_info): Inherit allocate_on_obstack.
11541         (block_initialize_namespace): Use new.
11542         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
11543         (dwarf2_free_objfile): Use delete.
11544         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
11545         (copy_type_recursive): Use new.
11546         * gdb_obstack.h (allocate_on_obstack): New.
11547
11548 2018-02-15  Yao Qi  <yao.qi@linaro.org>
11549
11550         PR gdb/22849
11551         * inferior.c (exit_inferior_1): Reset inf->control.
11552
11553 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
11554
11555         * ada-lang.c (ada_to_fixed_value_create): Delete advance
11556         declaration.
11557
11558 2018-02-14  Pedro Alves  <palves@redhat.com>
11559
11560         * frame-unwind.c (frame_unwind_try_unwinder): Always call
11561         frame_cleanup_after_sniffer on exception.
11562
11563 2018-02-14  Tom Tromey  <tom@tromey.com>
11564
11565         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
11566         const.
11567         (solib_bfd_open): Make pathname const.
11568         * solib.c (solib_bfd_open): Make pathname const.
11569         * solib-spu.c (spu_bfd_fopen): Make name const.
11570         (spu_bfd_open): Make pathname const.
11571         * solib-darwin.c (darwin_bfd_open): Make pathname const.
11572         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
11573
11574 2018-02-14  Tom Tromey  <tom@tromey.com>
11575
11576         * symfile.c (symfile_bfd_open): Update.
11577         * source.h (openp, source_full_path_of, find_and_open_source):
11578         Change argument type to unique_xmalloc_ptr.
11579         * source.c (openp): Take a unique_xmalloc_ptr.
11580         (source_full_path_of, find_and_open_source): Likewise.
11581         (open_source_file, symtab_to_fullname): Update.
11582         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
11583         unique_xmalloc_ptr.
11584         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
11585         (exec_file_find): Update.
11586         * psymtab.c (psymtab_to_fullname): Update.
11587         * nto-tdep.h (nto_find_and_open_solib): Update.
11588         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
11589         unique_xmalloc_ptr.
11590         * exec.c (exec_file_attach): Update.
11591         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
11592         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
11593
11594 2018-02-14  Tom Tromey  <tom@tromey.com>
11595
11596         * solib.c: Include source.h.
11597         * nto-tdep.c: Include source.h.
11598         * mi/mi-cmd-env.c: Include source.h.
11599         * infcmd.c: Include source.h.
11600         * exec.c: Include source.h.
11601         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
11602         (add_path, directory_switch, source_path, init_source_path): Move
11603         declarations...
11604         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
11605         (add_path, directory_switch, source_path, init_source_path):
11606         ...here.
11607
11608 2018-02-14  Tom Tromey  <tom@tromey.com>
11609
11610         * solist.h (exec_file_find, solib_find): Return
11611         unique_xmalloc_ptr.
11612         (solib_bfd_fopen): Take a const char *.
11613         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
11614         (exec_file_find, solib_find): Likewise.
11615         (solib_bfd_fopen): Do not take ownership of "pathname".
11616         (solib_bfd_open): Use unique_xmalloc_ptr.
11617         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
11618         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
11619         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
11620         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
11621
11622 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
11623
11624         * ada-lang.c (name_match_type_from_name): Remove reference to
11625         ada_name_for_lookup in function's documentation.
11626         * ada-lang.h (ada_name_for_lookup): Delete declaration.
11627
11628 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
11629
11630         * defs.h (enum openp_flags): New enum.
11631         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
11632         Move to enum openp_flags.
11633         (openp_flags): New enum flags.
11634         (openp): Change parameter type to openp_flags.
11635         * source.c (openp): Change parameter type to openp_flags.
11636         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
11637         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
11638
11639 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
11640
11641         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
11642         per-command.
11643
11644 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
11645
11646         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
11647         into...
11648         (class dwarf2_queue_guard): ...the destructor of this new class.
11649         (dw2_do_instantiate_symtab): Create instance of the new class
11650         dwarf2_queue_guard, remove cleanup.
11651
11652 2018-02-09  Tom Tromey  <tom@tromey.com>
11653
11654         * source.c (find_source_lines): Don't reference past the end of
11655         the vector.
11656
11657 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11658
11659         * remote.c (remote_btrace_maybe_reopen): Change error message.
11660         * btrace.c (btrace_enable): Likewise.
11661         (parse_xml_btrace): Likewise.
11662         (parse_xml_btrace_conf): Likewise.
11663
11664 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11665
11666         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
11667         (linux_enable_pt, linux_enable_bts): Call
11668         diagnose_perf_event_open_fail.
11669
11670 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11671
11672         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
11673         Remove parameter and change return type.  Update callers.  Move it.
11674         (linux_enable_bts, linux_enable_pt): Improve error message.
11675         (linux_enable_pt): Remove zero buffer size check.
11676         (linux_enable_btrace): Improve error messages.  Remove NULL return
11677         check.
11678
11679 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11680
11681         * btrace.c (btrace_enable): Remove target_supports_btrace call.
11682         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
11683         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
11684         (linux_supports_pt, linux_supports_btrace): Remove.
11685         (linux_enable_bts): Call cpu_supports_bts.
11686         * nat/linux-btrace.h (linux_supports_btrace): Remove.
11687         * remote.c (remote_supports_btrace): Remove.
11688         (init_remote_ops): Remove remote_supports_btrace.
11689         * target-delegates.c: Regenerated.
11690         * target.c (target_supports_btrace): Remove.
11691         * target.h (target_ops) <to_supports_btrace>: Remove
11692         (target_supports_btrace): Remove.
11693         * x86-linux-nat.c (x86_linux_create_target): Remove
11694         linux_supports_btrace.
11695
11696 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11697
11698         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
11699         btrace failed.
11700         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
11701         exception and use message in own exception.
11702
11703 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11704
11705         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
11706         (perf_event_pt_event_type): Use gdb_file_up.
11707         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
11708         scoped_fd, and scoped_mmap.
11709
11710 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11711
11712         * common/scoped_mmap.h: New.
11713         * unittests/scoped_mmap-selftest.c: New.
11714         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11715         unittests/scoped_mmap-selftest.c.
11716
11717 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11718
11719         * common/scoped_fd.h: New.
11720         * unittests/scoped_fd-selftest.c: New.
11721         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11722         unittests/scoped_fd-selftest.c.
11723
11724 2018-02-09  Tom Tromey  <tom@tromey.com>
11725
11726         * auto-load.c (auto_load_section_scripts): Use
11727         gdb::unique_xmalloc_ptr.
11728
11729 2018-02-09  Tom Tromey  <tom@tromey.com>
11730
11731         * auto-load.c (execute_script_contents): Use std::string.
11732
11733 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
11734
11735         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
11736         Python function, rather than a new command.
11737
11738 2018-02-08  Tom Tromey  <tom@tromey.com>
11739
11740         * solib.c (solib_find_1): Use std::string.
11741         (solib_bfd_fopen): Use unique_xmalloc_ptr.
11742
11743 2018-02-08  Tom Tromey  <tom@tromey.com>
11744
11745         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
11746
11747 2018-02-08  Tom Tromey  <tom@tromey.com>
11748
11749         * source.c (find_source_lines): Use gdb::def_vector.
11750
11751 2018-02-08  Tom Tromey  <tom@tromey.com>
11752
11753         * macrocmd.c (struct temporary_macro_definition): New.
11754         (macro_define_command): Use temporary_macro_definition.  Remove
11755         cleanups.
11756         (free_macro_definition_ptr): Remove.
11757
11758 2018-02-08  Tom Tromey  <tom@tromey.com>
11759
11760         * macroexp.c (maybe_expand): Use std::string.
11761
11762 2018-02-08  Tom Tromey  <tom@tromey.com>
11763
11764         * macroexp.c (struct macro_buffer): Add initializers for some
11765         members.
11766         (init_buffer, init_shared_buffer, free_buffer)
11767         (free_buffer_return_text): Remove.
11768         (macro_buffer): New constructors.
11769         (~macro_buffer): New destructor.
11770         (macro_buffer::set_shared): New method.
11771         (macro_buffer::resize_buffer, macro_buffer::appendc)
11772         (macro_buffer::appendmem): Now methods, not free functions.
11773         (set_token, append_tokens_without_splicing, stringify)
11774         (macro_stringify): Update.
11775         (gather_arguments): Change return type.  Remove argc_p argument,
11776         add args_ptr argument.  Use std::vector.
11777         (substitute_args): Remove argc argument.  Accept std::vector.
11778         (expand): Update.  Use std::vector.
11779         (scan, macro_expand, macro_expand_next): Update.
11780
11781 2018-02-08  Tom Tromey  <tom@tromey.com>
11782
11783         * symtab.c (default_collect_symbol_completion_matches_break_on):
11784         Use unique_xmalloc_ptr.
11785         * macroscope.h: (sal_macro_scope, user_macro_scope)
11786         (default_macro_scope): Return unique_xmalloc_ptr.
11787         * macroscope.c (sal_macro_scope, user_macro_scope)
11788         (default_macro_scope): Return unique_xmalloc_ptr.
11789         * macroexp.h (macro_expand, macro_expand_once): Return
11790         unique_xmalloc_ptr.
11791         * macroexp.c (macro_expand, macro_expand_once): Return
11792         unique_xmalloc_ptr.
11793         * macrocmd.c (macro_expand_command, macro_expand_once_command)
11794         (info_macro_command, info_macros_command): Use
11795         unique_xmalloc_ptr.
11796         * compile/compile-c-support.c (write_macro_definitions): Use
11797         unique_xmalloc_ptr.
11798         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
11799
11800 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
11801
11802         * value.c (value_static_field): Assign field type instead of
11803         containing type when returning an optimized out value.
11804
11805 2018-02-06  Yao Qi  <yao.qi@linaro.org>
11806
11807         * ft32-tdep.c (ft32_read_pc): Remove.
11808         (ft32_write_pc): Remove.
11809         (ft32_gdbarch_init): Update.
11810         * m32r-tdep.c (m32r_read_pc): Remove.
11811         (m32r_gdbarch_init): Update.
11812         * mep-tdep.c (mep_read_pc): Remove.
11813         (mep_gdbarch_init): Update.
11814         * microblaze-tdep.c (microblaze_write_pc): Remove.
11815         (microblaze_gdbarch_init): Update.
11816         * mn10300-tdep.c (mn10300_read_pc): Remove.
11817         (mn10300_write_pc): Remove.
11818         (mn10300_gdbarch_init): Update.
11819         * moxie-tdep.c (moxie_read_pc): Remove.
11820         (moxie_write_pc): Remove.
11821         (moxie_gdbarch_init): Update.
11822
11823 2018-02-06  Yao Qi  <yao.qi@linaro.org>
11824
11825         * expprint.c (print_subexp_standard): Handle
11826         OP_F77_UNDETERMINED_ARGLIST.
11827         (dump_subexp_body_standard): Likewise.
11828
11829 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
11830
11831         * target-descriptions.c (tdesc_element_visitor) Add empty
11832         implementations.
11833         (tdesc_type): Move make_gdb_type from here.
11834         (tdesc_type_builtin): Likewise.
11835         (tdesc_type_vector): Likewise.
11836         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
11837         (make_gdb_type_struct): Move from tdesc_type_with_fields.
11838         (make_gdb_type_union): Likewise.
11839         (make_gdb_type_flags): Likewise.
11840         (make_gdb_type_enum): Likewise.
11841         (make_gdb_type): New function.
11842         (tdesc_register_type): Use static make_gdb_type.
11843
11844 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
11845
11846         * infcmd.c (default_print_one_register_info): Align natural-format
11847         column values consistently one under another.
11848         (pad_to_column): New function.
11849
11850 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
11851
11852         * dwarf2read.c (dwarf2_physname): Move commment.
11853
11854 2018-02-01  Leszek Swirski  <leszeks@google.com>
11855
11856         * varobj.c (varobj_formatted_print_options): Allow recursive
11857         pretty printing if pretty printing is enabled.
11858
11859 2018-02-01  Leszek Swirski  <leszeks@google.com>
11860
11861         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
11862         names after a structop as a filename.
11863
11864 2018-02-01  Yao Qi  <yao.qi@linaro.org>
11865
11866         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
11867         (arm_record_coproc_data_proc): Likewise.
11868
11869 2018-02-01  Yao Qi  <yao.qi@linaro.org>
11870
11871         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
11872
11873 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
11874
11875         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
11876         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
11877
11878 2018-01-31  Pedro Alves  <palves@redhat.com>
11879
11880         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
11881         * inflow.c (child_terminal_save_inferior): Wrap reference to
11882         tcgetpgrp in HAVE_TERMIOS_H.
11883         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
11884         _WIN32.
11885         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
11886         always iterate over all inferiors.
11887         (gdbsim_cntrl_c): Adjust.
11888         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
11889
11890 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
11891
11892         * gdbtypes.c (lookup_array_range_type): Make sure the array's
11893         index type is objfile-owned if the element type is as well.
11894
11895 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
11896
11897         GDB 8.1 released.
11898
11899 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11900
11901         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
11902         "features/s390x-linux64.c".
11903         (_initialize_s390_linux_tdep): Remove initialization of tdescs
11904         s390_linux32 and s390x_linux64.
11905         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
11906         default tdesc.
11907         * s390-tdep.c: Include "features/s390-linux32.c" and
11908         "features/s390x-linux64.c".
11909         (s390_tdesc_valid): Add check for tdesc_has_registers.
11910         (s390_gdbarch_init): Make sure there is always a valid tdesc.
11911         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
11912         tdesc_s390x_linux64.
11913         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
11914         tdesc_s390x_linux64 to...
11915         * s390-tdep.h: ...here.
11916
11917 2018-01-30  Pedro Alves  <palves@redhat.com>
11918
11919         PR gdb/13211
11920         * config.in, configure: Regenerate.
11921         * configure.ac: Check for getpgid.
11922         * go32-nat.c (go32_pass_ctrlc): New.
11923         (go32_target): Install it.
11924         * inf-child.c (inf_child_target): Install
11925         child_terminal_save_inferior, child_pass_ctrlc and
11926         child_interrupt.
11927         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
11928         (inf_ptrace_target): No longer install it.
11929         * infcmd.c (interrupt_target_1): Adjust.
11930         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
11931         (child_interrupt): Declare.
11932         (inferior::terminal_state): New.
11933         * inflow.c (struct terminal_info): Update comments.
11934         (inferior_process_group): Delete.
11935         (terminal_is_ours): Delete.
11936         (gdb_tty_state): New.
11937         (child_terminal_init): Adjust.
11938         (is_gdb_terminal, sharing_input_terminal_1)
11939         (sharing_input_terminal): New functions.
11940         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
11941         Set the process's actual process group in the foreground if
11942         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
11943         mark terminal as the inferior's if not sharing GDB's terminal.
11944         Don't check attach_flag.
11945         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
11946         pass down a target_terminal_state.
11947         (child_terminal_save_inferior): New, factored out from ...
11948         (child_terminal_ours_1): ... this.  Handle
11949         target_terminal_state::is_ours_for_output.
11950         (child_interrupt, child_pass_ctrlc): New.
11951         (inflow_inferior_exit): Clear the inferior's terminal_state.
11952         (copy_terminal_info): Copy the inferior's terminal state.
11953         (_initialize_inflow): Remove reference to terminal_is_ours.
11954         * inflow.h (inferior_process_group): Delete.
11955         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
11956         * procfs.c (procfs_target): Don't install procfs_interrupt.
11957         (procfs_interrupt): Delete.
11958         * remote.c (remote_serial_quit_handler): Adjust.
11959         (remote_interrupt): Remove ptid parameter.  Adjust.
11960         * target-delegates.c: Regenerate.
11961         * target.c: Include "terminal.h".
11962         (target_terminal::terminal_state): Rename to ...
11963         (target_terminal::m_terminal_state): ... this.
11964         (target_terminal::init): Adjust.
11965         (target_terminal::inferior): Adjust to per-inferior
11966         terminal_state.
11967         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
11968         (target_terminal::ours, target_terminal::ours_for_output): Use
11969         target_terminal_is_ours_kind.
11970         (target_interrupt): Remove ptid parameter.  Adjust.
11971         (default_target_pass_ctrlc): Adjust.
11972         * target.h (target_ops::to_terminal_save_inferior): New field.
11973         (target_ops::to_interrupt): Remove ptid_t parameter.
11974         (target_interrupt): Remove ptid_t parameter.  Update comment.
11975         (target_pass_ctrlc): Update comment.
11976         * target/target.h (target_terminal_state): New scoped enum,
11977         factored out of ...
11978         (target_terminal::terminal_state): ... here.
11979         (target_terminal::inferior): Update comments.
11980         (target_terminal::restore_inferior): New.
11981         (target_terminal::is_inferior, target_terminal::is_ours)
11982         (target_terminal::is_ours_for_output): Adjust.
11983         (target_terminal::scoped_restore_terminal_state): Adjust to
11984         rename, and call restore_inferior() instead of inferior().
11985         (target_terminal::scoped_restore_terminal_state::m_state): Change
11986         type.
11987         (target_terminal::terminal_state): Rename to ...
11988         (target_terminal::m_terminal_state): ... this and change type.
11989
11990 2018-01-30  Pedro Alves  <palves@redhat.com>
11991
11992         * linux-nat.c (wait_for_signal): New function.
11993         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
11994         directly.
11995         (async_terminal_is_ours)
11996         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
11997         (linux_nat_add_target): Don't override
11998         to_terminal_inferior/to_terminal_ours.
11999
12000 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
12001
12002         * remote.c (remote_follow_fork): Don't call "detach_inferior".
12003
12004 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
12005
12006         * dwarf2read.c (free_dwo_files): Add forward-declaration.
12007         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
12008         dwarf2_per_objfile_free here.
12009         (dwarf2_per_objfile_free): Remove.
12010         (_initialize_dwarf2_read): Don't register
12011         dwarf2_per_objfile_free as a registry cleanup.
12012
12013 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
12014
12015         Avoid compilation errors in MinGW native builds
12016
12017         The error is triggered by including python-internal.h, and the
12018         error message is:
12019
12020              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
12021                       from build-gnulib/import/math.h:27,
12022                       from d:/usr/Python26/include/pyport.h:235,
12023                       from d:/usr/Python26/include/Python.h:58,
12024                       from python/python-internal.h:94,
12025                       from python/py-arch.c:24:
12026              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
12027         using ::hypot;
12028                 ^~~~~
12029
12030         This happens because Python headers define 'hypot' to expand t
12031         '_hypot' in the Windows builds.
12032         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
12033         'hypoth'.  This avoids a compilation error.
12034
12035 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
12036
12037         * MAINTAINERS (Write After Approval): Fix ordering.
12038
12039 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
12040
12041         * MAINTAINERS (Write After Approval): Add Alan Hayward.
12042
12043 2018-01-26  Alan Modra  <amodra@gmail.com>
12044
12045         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
12046         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
12047         Remove nop.  Make const.  Comment.
12048         (powerpc32_plt_stub_so_2): New.
12049         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
12050         Correct count.  Update uses.
12051         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
12052         Move common code reading PLT entry word.  Correct
12053         powerpc32_plt_stub PLT address calculation.
12054         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
12055         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
12056         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
12057         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
12058         (ppc64_standard_linkage8): Likewise.
12059         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
12060         Correct insns description.
12061         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
12062
12063 2018-01-24  Pedro Alves  <palves@redhat.com>
12064
12065         GCC PR libstdc++/83906
12066         * gdbtypes.c (operator==(const dynamic_prop &,
12067         const dynamic_prop &)): New.
12068         (operator==(const range_bounds &, const range_bounds &)): New.
12069         (check_types_equal): Use them instead of memcmp.
12070         * gdbtypes.h (operator==(const dynamic_prop &,
12071         const dynamic_prop &)): Declare.
12072         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
12073         (operator==(const range_bounds &, const range_bounds &)): Declare.
12074         (operator!=(const range_bounds &, const range_bounds &)): Declare.
12075
12076 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12077
12078         * s390-linux-tdep.c (s390_record_address_mask)
12079         (s390_record_calc_disp_common, s390_record_calc_disp)
12080         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
12081         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
12082         (s390_process_record): Move to s390-tdep.c.
12083         (s390_linux_init_abi_any): Adjust.
12084         * s390-tdep.c (s390_record_address_mask)
12085         (s390_record_calc_disp_common, s390_record_calc_disp)
12086         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
12087         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
12088         (s390_process_record): Moved from s390-linux-tdep.c
12089         (s390_gdbarch_init): Adjust.
12090
12091 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12092
12093         * s390-linux-nat.c (s390-tdep.h): New include.
12094         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
12095         (HFILES_NO_SRCDIR): Add s390-tdep.h.
12096         (ALLDEPFILES): Add s390-tdep.c.
12097         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
12098         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
12099         * s390-tdep.h: ...this.  New file.
12100         * s390-linux-tdep.c (s390-tdep.h): New include.
12101         (_initialize_s390_tdep): Rename to...
12102         (_initialize_s390_linux_tdep): ...this and adjust.
12103         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
12104         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
12105         s390-tdep.h.
12106         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
12107         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
12108         (s390_is_partial_instruction, s390_software_single_step)
12109         (is_non_branch_ril, s390_displaced_step_copy_insn)
12110         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
12111         (s390_prologue_data, s390_addr, s390_store, s390_load)
12112         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
12113         (s390_register_call_saved, s390_guess_tracepoint_registers)
12114         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
12115         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
12116         (s390_pseudo_register_name, s390_pseudo_register_type)
12117         (s390_pseudo_register_read, s390_pseudo_register_write)
12118         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
12119         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
12120         (s390_addr_bits_remove, s390_address_class_type_flags)
12121         (s390_address_class_type_flags_to_name)
12122         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
12123         (s390_function_arg_float, s390_function_arg_vector)
12124         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
12125         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
12126         (s390_frame_align, s390_register_return_value, s390_return_value)
12127         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
12128         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
12129         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
12130         (s390_trad_frame_prev_register, s390_unwind_cache)
12131         (s390_prologue_frame_unwind_cache)
12132         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
12133         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
12134         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
12135         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
12136         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
12137         (s390_frame_base_address, s390_local_base_address)
12138         (s390_frame_base, s390_gcc_target_options)
12139         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
12140         (s390_validate_reg_range, s390_tdesc_valid)
12141         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
12142         * s390-tdep.c: ...this.  New file.
12143
12144 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12145
12146         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
12147         (s390_process_record, s390_gdbarch_tdep_alloc)
12148         (s390_linux_init_abi_any): Use/set new hook.
12149
12150 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12151
12152         * s390-linux-tdep.c (osabi.h): New include.
12153         (s390_linux_init_abi_31, s390_linux_init_abi_64)
12154         (s390_linux_init_abi_any): New functions.
12155         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
12156
12157 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12158
12159         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
12160         tdesc_has_registers check
12161
12162 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12163
12164         * s390-linux-tdep.c (s390_tdesc_valid): New function.
12165         (s390_validate_reg_range): New macro.
12166         (s390_gdbarch_init): Adjust.
12167
12168 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12169
12170         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
12171         (s390_gdbarch_tdep_alloc): Adjust.
12172         (s390_gdbarch_init): Adjust.
12173
12174 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12175
12176         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
12177         <have_tdb>: Change type to bool.
12178         (s390_gdbarch_tdep_alloc): Adjust.
12179         (s390_gdbarch_init): Adjust.
12180
12181 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12182
12183         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
12184         (gdbarch_tdep) <have_upper, have_vx>: New fields.
12185         (s390_gdbarch_tdep_alloc): New function.
12186         (s390_gdbarch_init): Allocate tdep at start and use its fields
12187         instead of separate variables.
12188
12189 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12190
12191         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
12192         when looking for cached gdbarch and add comment for remaining.
12193
12194 2018-01-22  Pedro Alves  <palves@redhat.com>
12195             Sergio Durigan Junior  <sergiodj@redhat.com>
12196
12197         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
12198         case.
12199
12200 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
12201
12202         * MAINTAINERS: Update my company e-mail address.
12203
12204 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12205
12206         * regcache.c (cooked_write_test): New function.
12207         (_initialize_regcache): Register the test.
12208
12209 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12210
12211         * ia64-tdep.c (ia64_pseudo_register_read): Call
12212         regcache->cooked_read instead of regcache_cooked_read_unsigned.
12213         * m32c-tdep.c (m32c_cat_read): Likewise.
12214         (m32c_r3r2r1r0_read): Likewise.
12215         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12216         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
12217
12218 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12219
12220         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
12221         method raw_read instead of regcache_raw_read.
12222         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12223         * arm-tdep.c (arm_neon_quad_read): Likewise.
12224         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12225         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12226         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12227         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
12228         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12229         (i386_pseudo_register_read_into_value): Likewise.
12230         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12231         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12232         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12233         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
12234         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
12235         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
12236         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
12237         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
12238         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
12239
12240 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12241
12242         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
12243         * configure.tgt: Remove target mt.
12244         * mt-tdep.c: Remove.
12245         * regcache.c (cooked_read_test): Remove the check for mt.
12246
12247 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12248
12249         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
12250         instead of gdbarch_pseudo_register_read_value.
12251
12252 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
12253
12254         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
12255         language is Ada.
12256
12257 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
12258
12259         * linespec.c (create_sals_line_offset): Remove code that preserved
12260         the symtab_and_line's line number.
12261
12262 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12263
12264         * varobj.c (varobj_create): Don't set valid_block when creating a
12265         floating varobj.
12266
12267 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12268
12269         * varobj.c (varobj_create): Remove out of date comment.
12270
12271 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12272
12273         PR mi/20395
12274         * ada-exp.y (write_var_from_sym): Pass extra parameter when
12275         updating innermost block.
12276         * parse.c (innermost_block_tracker::update): Take extra type
12277         parameter, and check types match before updating innermost block.
12278         (write_dollar_variable): Update innermost block for registers.
12279         * parser-defs.h (enum innermost_block_tracker_type): New enum.
12280         (innermost_block_tracker::innermost_block_tracker): Initialise
12281         m_types member.
12282         (innermost_block_tracker::reset): Take type parameter.
12283         (innermost_block_tracker::update): Take type parameter, and pass
12284         type through as needed.
12285         (innermost_block_tracker::m_types): New member.
12286         * varobj.c (varobj_create): Pass type when reseting innermost
12287         block.
12288
12289 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12290
12291         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
12292         * ada-lang.c (resolve_subexp): Likewise.
12293         * breakpoint.c (set_breakpoint_condition) Likewise.
12294         (watch_command_1) Likewise.
12295         * c-exp.y (variable): Likewise.
12296         * d-exp.y (PrimaryExpression): Likewise.
12297         * f-exp.y (variable): Likewise.
12298         * go-exp.y (variable): Likewise.
12299         * m2-exp.y (variable): Likewise.
12300         * objfiles.c (objfile::~objfile): Likewise.
12301         * p-exp.y (variable): Likewise.
12302         * parse.c (innermost_block): Change type.
12303         * parser-defs.h (class innermost_block_tracker): New.
12304         (innermost_block): Change to innermost_block_tracker.
12305         * printcmd.c (display_command): Switch to innermost_block API.
12306         (do_one_display): Likewise.
12307         * rust-exp.y (do_one_display): Likewise.
12308         * symfile.c (clear_symtab_users): Likewise.
12309         * varobj.c (varobj_create): Switch to innermost_block API, replace
12310         use of innermost_block with block stored on varobj object.
12311
12312 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12313
12314         * expression.h (innermost_block): Remove declaration.
12315         * varobj.c: Add 'parser-defs.h' include.
12316
12317 2018-01-19  Tom Tromey  <tom@tromey.com>
12318
12319         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
12320         symbols in the static and global blocks.
12321
12322 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
12323
12324         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
12325         gdb_ptrace.h, and move including gdb_wait.h ...
12326         * nat/linux-ptrace.h: ... to here.
12327
12328 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
12329
12330         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
12331         inf_ptrace_detach_success.
12332         (inf_ptrace_detach_success): Add inferior parameter, use it
12333         instead of inferior_ptid, pass it to detach_inferior.
12334         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
12335         parameter.
12336         * inferior.c (detach_inferior): Add overload that takes an
12337         inferior object.
12338         * inferior.h (detach_inferior): Likewise.
12339         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
12340         use inferior_ptid, adjust call to inf_ptrace_detach_success.
12341         * linux-thread-db.c (thread_db_detach): Use inf parameter.
12342
12343 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
12344
12345         * target.h (struct target_ops) <to_detach>: Add inferior
12346         parameter.
12347         (target_detach): Likewise.
12348         * target.c (dispose_inferior): Pass inferior down.
12349         (target_detach): Pass inferior down.  Assert that it is equal to
12350         the current inferior.
12351         * aix-thread.c (aix_thread_detach): Pass inferior down.
12352         * corefile.c (core_file_command): Pass current_inferior() down.
12353         * corelow.c (core_detach): Add inferior parameter.
12354         * darwin-nat.c (darwin_detach): Likewise.
12355         * gnu-nat.c (gnu_detach): Likewise.
12356         * inf-ptrace.c (inf_ptrace_detach): Likewise.
12357         * infcmd.c (detach_command): Pass current_inferior() down to
12358         target_detach.
12359         * infrun.c (follow_fork_inferior): Pass parent_inf to
12360         target_detach.
12361         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
12362         target_detach.
12363         * linux-nat.c (linux_nat_detach): Add inferior parameter.
12364         * linux-thread-db.c (thread_db_detach): Likewise.
12365         * nto-procfs.c (procfs_detach): Likewise.
12366         * procfs.c (procfs_detach): Likewise.
12367         * record.c (record_detach): Likewise.
12368         * record.h (struct inferior): Forward-declare.
12369         (record_detach): Add inferior parameter.
12370         * remote-sim.c (gdbsim_detach): Likewise.
12371         * remote.c (remote_detach_1): Likewise.
12372         (remote_detach): Likewise.
12373         (extended_remote_detach): Likewise.
12374         * sol-thread.c (sol_thread_detach): Likewise.
12375         * target-debug.h (target_debug_print_inferior_p): New macro.
12376         * target-delegates.c: Re-generate.
12377         * top.c (kill_or_detach): Pass inferior down to target_detach.
12378         * windows-nat.c (windows_detach): Add inferior parameter.
12379
12380 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
12381
12382         * target.h (struct target_ops) <to_detach>: Remove args
12383         parameter.
12384         (target_detach): Likewise.
12385         * target.c (dispose_inferior): Adjust.
12386         (target_detach): Remove args parameter, adjust.
12387         * aix-thread.c (aix_thread_detach): Adjust.
12388         * corefile.c (core_file_command): Adjust.
12389         * corelow.c (core_detach): Adjust.
12390         * darwin-nat.c (darwin_detach): Adjust.
12391         * gnu-nat.c (gnu_detach): Adjust.
12392         * inf-ptrace.c (inf_ptrace_detach): Adjust.
12393         * infcmd.c (detach_command): Adjust
12394         * infrun.c (follow_fork_inferior): Adjust.
12395         (handle_vfork_child_exec_or_exit): Adjust.
12396         * linux-fork.c (linux_fork_detach): Remove args parameter.
12397         * linux-fork.h (linux_fork_detach): Likewise.
12398         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
12399         * linux-thread-db.c (thread_db_detach): Likewise.
12400         * nto-procfs.c (procfs_detach): Likewise.
12401         * procfs.c (procfs_detach): Likewise.
12402         (do_detach): Remove signo parameter.
12403         * record.c (record_detach): Remove args parameter.
12404         * record.h (record_detach): Likewise.
12405         * remote-sim.c (gdbsim_detach): Likewise.
12406         * remote.c (remote_detach_1): Likewise.
12407         (remote_detach): Likewise.
12408         (extended_remote_detach): Likewise.
12409         * sol-thread.c (sol_thread_detach): Likewise.
12410         * target-delegates.c: Re-generate.
12411         * top.c (struct qt_args) <args>: Remove field.
12412         (kill_or_detach): Don't pass args.
12413         (quit_force): Don't set args.
12414         * windows-nat.c (windows_detach): Remove args parameter.
12415
12416 2018-01-19  Yao Qi  <yao.qi@linaro.org>
12417
12418         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
12419         (arm_linux_init_abi): Install it.
12420
12421 2018-01-19  Yao Qi  <yao.qi@linaro.org>
12422
12423         * osabi.c (gdb_osabi_names): Extend the regexp for
12424         arm-linux-gnueabihf.
12425
12426 2018-01-18  Yao Qi  <yao.qi@linaro.org>
12427
12428         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
12429         m_abbrevs.
12430         (abbrev_table::add_abbrev): Update.
12431         (abbrev_table::lookup_abbrev): Update.
12432
12433 2018-01-18  Yao Qi  <yao.qi@linaro.org>
12434
12435         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
12436
12437 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
12438
12439         * compile/compile.c (compile_to_object): Convert "triplet_rx"
12440         to "std::string".
12441
12442 2018-01-17  Tom Tromey  <tom@tromey.com>
12443
12444         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
12445
12446 2018-01-17  Tom Tromey  <tom@tromey.com>
12447
12448         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
12449         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
12450         (create_array_type_with_stride): Update.
12451         * dwarf2read.c (set_die_type): Update.
12452
12453 2018-01-17  Tom Tromey  <tom@tromey.com>
12454
12455         * dwarf2read.c (delayed_method_info): Remove typedef.
12456         (dwarf2_cu::method_info): Now a std::vector.
12457         (add_to_method_list): Update.
12458         (free_delayed_list): Remove.
12459         (compute_delayed_physnames): Update.
12460         (process_full_comp_unit, process_full_type_unit): Clear the method
12461         list.  Remove cleanups.
12462         (psymtab_include_file_name): Add name_holder parameter.  Use
12463         unique_xmalloc_ptr.
12464         (dwarf_decode_lines): Update.
12465
12466 2018-01-17  Tom Tromey  <tom@tromey.com>
12467             Simon Marchi  <simon.marchi@ericsson.com>
12468
12469         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
12470         (dwarf2_per_objfile::free_cached_comp_units)
12471         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
12472         (init_cutu_and_read_dies_no_follow): Update.
12473         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
12474         (dwarf2_cu::~dwarf2_cu): New.
12475         (free_heap_comp_unit, free_stack_comp_unit): Remove.
12476         (age_cached_comp_units, free_one_cached_comp_unit): Update.
12477
12478 2018-01-17  Tom Tromey  <tom@tromey.com>
12479             Simon Marchi  <simon.marchi@ericsson.com>
12480
12481         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
12482         (struct die_reader_specs) <abbrev_table>: New member.
12483         (struct abbrev_table): Add constructor.
12484         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
12485         <abbrev_obstack>: Now an auto_obstack.
12486         (abbrev_table_up): New typedef.
12487         (init_cu_die_reader): Add abbrev_table parameter.
12488         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
12489         Add result_dwo_abbrev_table.
12490         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
12491         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
12492         Update.
12493         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
12494         parameter.
12495         (skip_children): Update.
12496         (abbrev_table::alloc_abbrev): Rename from
12497         abbrev_table_alloc_abbrev.
12498         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
12499         (abbrev_table::lookup_abbrev): Rename from
12500         abbrev_table_lookup_abbrev.
12501         (abbrev_table_read_table): Return abbrev_table_up.
12502         (abbrev_table_free, abbrev_table_free_cleanup)
12503         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
12504         (load_partial_dies): Update.
12505
12506 2018-01-17  Tom Tromey  <tom@tromey.com>
12507
12508         * dwarf2read.c (dwarf2_compute_name): Update comment.
12509         (read_func_scope, read_variable): Update.
12510         (new_symbol): Remove.
12511         (new_symbol_full): Rename to new_symbol.
12512
12513 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
12514
12515         PR gdb/16577
12516         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
12517         a warning instead of throwing an error, set section size to 0 and return
12518         NULL.
12519         * gdb_bfd.h (gdb_bfd_map_section): Update description.
12520
12521 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
12522
12523         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
12524         std::string.
12525         (linux_ptrace_attach_fail_reason_string): Likewise.
12526         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
12527         Likewise.
12528         (linux_ptrace_attach_fail_reason_string): Likewise.
12529         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
12530
12531 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
12532
12533         * linux-nat.c (linux_nat_attach): Remove xstrdup.
12534
12535 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
12536
12537         PR gdb/21559
12538         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
12539         checking for fs_base/gs_base fields in struct user_regs_struct.
12540         * configure: Regenerate.
12541
12542 2018-01-17  Yao Qi  <yao.qi@linaro.org>
12543
12544         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
12545         function.
12546         (aarch64_linux_init_abi): Install it to gdbarch hook
12547         gcc_target_options.
12548
12549 2018-01-15  Pedro Alves  <palves@redhat.com>
12550
12551         * common/signals-state-save-restore.c
12552         (save_original_signals_state): Fix typos.
12553
12554 2017-01-12  Tom Tromey  <tom@tromey.com>
12555             Sergio Durigan Junior  <sergiodj@redhat.com>
12556
12557         * Makefile.in (install-only): Install gdb-add-index.
12558
12559 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
12560
12561         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
12562
12563 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12564
12565         * infrun.c (keep_going_pass_signal): Clear step-over info when
12566         insert_breakpoints fails.
12567
12568 2018-01-11  Pedro Alves  <palves@redhat.com>
12569
12570         PR gdb/22583
12571         * infrun.c (resume): Rename to ...
12572         (resume_1): ... this.
12573         (resume): Reimplement as wrapper around resume_1.
12574
12575 2018-01-11  Pedro Alves  <palves@redhat.com>
12576
12577         PR remote/22597
12578         * remote.c (remote_parse_stop_reply): Default to the last-set
12579         general thread instead of to 'magic_null_ptid'.
12580
12581 2018-01-10  Pedro Alves  <palves@redhat.com>
12582
12583         * language.h (language_get_symbol_name_matcher): Rename ...
12584         (get_symbol_name_matcher): ... this.
12585         * language.c (language_get_symbol_name_matcher): Ditto.
12586         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
12587         callers adjusted.
12588
12589 2018-01-10  Pedro Alves  <palves@redhat.com>
12590
12591         PR gdb/22670
12592         * dwarf2read.c
12593         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
12594         Adjust to use language_get_symbol_name_matcher instead of
12595         language_defn::la_get_symbol_name_matcher.
12596         * language.c (language_get_symbol_name_matcher): If in Ada mode
12597         and the lookup name is a verbatim match, return Ada's matcher.
12598         * language.h (language_get_symbol_name_matcher): Adjust comment.
12599         (ada_lookup_name_info::verbatim_p):: New method.
12600
12601 2018-01-10  Pedro Alves  <palves@redhat.com>
12602
12603         PR gdb/22670
12604         * ada-lang.c (ada_collect_symbol_completion_matches): If the
12605         minsym's language is language_auto or language_cplus, pass down
12606         language_ada instead.
12607         * symtab.c (compare_symbol_name): Don't frob symbol language here.
12608
12609 2018-01-10  Pedro Alves  <palves@redhat.com>
12610
12611         PR gdb/22670
12612         * minsyms.c (linkage_name_str): New function.
12613         (iterate_over_minimal_symbols): Use it.
12614
12615 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12616
12617         * NEWS: Document that 'info proc' now works on FreeBSD.
12618
12619 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12620
12621         * configure.ac: Check for kinfo_getfile in libutil.
12622         * configure: Regenerate.
12623         * config.in: Regenerate.
12624         * fbsd-nat.c: Include "fbsd-tdep.h".
12625         (fbsd_fetch_cmdline): New.
12626         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
12627         rather than calling error.
12628         (fbsd_info_proc): New.
12629         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
12630         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
12631         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
12632
12633 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12634
12635         * fbsd-nat.c (struct free_deleter): Remove.
12636         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
12637
12638 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12639
12640         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
12641         NULL for an empty pathname.
12642
12643 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12644
12645         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
12646         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
12647         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
12648         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
12649         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
12650         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
12651         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
12652         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
12653         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
12654         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
12655         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
12656         (fbsd_core_fetch_timeval, fbsd_print_sigset)
12657         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
12658         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
12659         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
12660
12661 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
12662
12663         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
12664         (gnu_xfer_auxv): New function.
12665         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
12666         TARGET_OBJECT_AUXV.
12667
12668 2018-01-08  Yao Qi  <yao.qi@linaro.org>
12669             Simon Marchi  <simon.marchi@ericsson.com>
12670
12671         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
12672         common/selftest.c.
12673         (COMMON_OBS): Remove selftest.o.
12674         * configure.ac: Append selftest-arch.c and common/selftest.c to
12675         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
12676         * configure: Re-generated.
12677         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
12678         GDB_SELF_TEST.
12679         (maintenance_info_selftests): Likewise.
12680
12681 2018-01-08  Xavier Roirand  <roirand@adacore.com>
12682
12683         * ada-valprint.c (val_print_packed_array_elements): Use
12684         proper number of elements when printing an array indexed
12685         by an enumeration type.
12686
12687 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
12688
12689         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
12690         (dw2_get_file_names_reader): Adjust.
12691         (lookup_dwo_signatured_type): Adjust.
12692         (lookup_dwp_signatured_type): Adjust.
12693         (lookup_signatured_type): Adjust.
12694         (create_type_unit_group): Adjust.
12695         (get_type_unit_group): Adjust.
12696         (process_psymtab_comp_unit_reader): Adjust.
12697         (build_type_psymtabs_reader): Adjust.
12698         (scan_partial_symbols): Adjust.
12699         (add_partial_symbol): Adjust.
12700         (add_partial_subprogram): Adjust.
12701         (peek_die_abbrev): Adjust.
12702         (fixup_go_packaging): Adjust.
12703         (process_imported_unit_die): Adjust.
12704         (dwarf2_compute_name): Adjust.
12705         (dwarf2_physname): Adjust.
12706         (read_import_statement): Adjust.
12707         (handle_DW_AT_stmt_list): Adjust.
12708         (read_file_scope): Adjust.
12709         (read_func_scope): Adjust.
12710         (read_lexical_block_scope): Adjust.
12711         (read_call_site_scope): Adjust.
12712         (read_variable): Adjust.
12713         (dwarf2_rnglists_process): Adjust.
12714         (dwarf2_ranges_process): Adjust.
12715         (dwarf2_ranges_read): Adjust.
12716         (dwarf2_get_pc_bounds): Adjust.
12717         (dwarf2_record_block_ranges): Adjust.
12718         (dwarf2_add_field): Adjust.
12719         (dwarf2_add_member_fn): Adjust.
12720         (read_structure_type): Adjust.
12721         (process_structure_scope): Adjust.
12722         (read_enumeration_type): Adjust.
12723         (read_array_type): Adjust.
12724         (mark_common_block_symbol_computed): Adjust.
12725         (read_common_block): Adjust.
12726         (read_namespace_type): Adjust.
12727         (read_namespace): Adjust.
12728         (read_module_type): Adjust.
12729         (read_tag_pointer_type): Adjust.
12730         (read_tag_ptr_to_member_type): Adjust.
12731         (read_tag_string_type): Adjust.
12732         (read_subroutine_type): Adjust.
12733         (read_typedef): Adjust.
12734         (read_base_type): Adjust.
12735         (attr_to_dynamic_prop): Adjust.
12736         (read_subrange_type): Adjust.
12737         (read_unspecified_type): Adjust.
12738         (dwarf2_read_abbrevs): Adjust.
12739         (load_partial_dies): Adjust.
12740         (read_partial_die): Adjust.
12741         (find_partial_die): Adjust.
12742         (guess_partial_die_structure_name): Adjust.
12743         (fixup_partial_die): Adjust.
12744         (read_attribute_value): Adjust.
12745         (read_addr_index): Adjust.
12746         (read_addr_index_from_leb128): Adjust.
12747         (read_str_index): Adjust.
12748         (dwarf2_string_attr): Adjust.
12749         (get_debug_line_section): Adjust.
12750         (dwarf_decode_line_header): Adjust.
12751         (lnp_state_machine::check_line_address): Adjust.
12752         (dwarf_decode_lines_1): Adjust.
12753         (dwarf_decode_lines): Adjust.
12754         (dwarf2_start_symtab): Adjust.
12755         (var_decode_location): Adjust.
12756         (new_symbol_full): Adjust.
12757         (dwarf2_const_value_data): Adjust.
12758         (dwarf2_const_value_attr): Adjust.
12759         (dwarf2_const_value): Adjust.
12760         (die_type): Adjust.
12761         (die_containing_type): Adjust.
12762         (build_error_marker_type): Adjust.
12763         (lookup_die_type): Adjust.
12764         (guess_full_die_structure_name): Adjust.
12765         (anonymous_struct_prefix): Adjust.
12766         (determine_prefix): Adjust.
12767         (dwarf2_name): Adjust.
12768         (follow_die_ref_or_sig): Adjust.
12769         (follow_die_offset): Adjust.
12770         (follow_die_ref): Adjust.
12771         (follow_die_sig_1): Adjust.
12772         (follow_die_sig): Adjust.
12773         (get_signatured_type): Adjust.
12774         (get_DW_AT_signature_type): Adjust.
12775         (decode_locdesc): Adjust.
12776         (dwarf_decode_macros): Adjust.
12777         (cu_debug_loc_section): Adjust.
12778         (fill_in_loclist_baton): Adjust.
12779         (dwarf2_symbol_mark_computed): Adjust.
12780         (init_one_comp_unit): Don't assign
12781         dwarf2_cu::dwarf2_per_objfile.
12782         (set_die_type): Adjust.
12783
12784 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
12785
12786         * dwarf2read.c (struct mapped_debug_names): Add constructor.
12787         <dwarf2_per_objfile>: New field.
12788         (dwarf2_per_objfile): Remove global.
12789         (get_dwarf2_per_objfile): New function.
12790         (set_dwarf2_per_objfile): New function.
12791         (dwarf2_build_psymtabs_hard): Change objfile parameter to
12792         dwarf2_per_objfile.
12793         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
12794         (read_abbrev_offset): Likewise.
12795         (read_indirect_string): Likewise.
12796         (read_indirect_line_string): Likewise.
12797         (read_indirect_string_at_offset): Likewise.
12798         (read_indirect_string_from_dwz): Likewise.
12799         (dwarf2_find_containing_comp_unit): Change objfile parameter to
12800         dwarf2_per_objfile.
12801         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
12802         (create_all_comp_units): Change objfile parameter to
12803         dwarf2_per_objfile.
12804         (create_all_type_units): Likewise.
12805         (process_queue): Add dwarf2_per_objfile parameter.
12806         (read_and_check_comp_unit_head): Likewise.
12807         (lookup_dwo_unit_in_dwp): Likewise.
12808         (get_dwp_file): Likewise.
12809         (process_cu_includes): Likewise.
12810         (struct free_dwo_file_cleanup_data): New struct.
12811         (dwarf2_has_info): Use get_dwarf2_per_objfile and
12812         set_dwarf2_per_objfile.
12813         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
12814         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
12815         context, adjust calls.
12816         (dw2_instantiate_symtab): Likewise.
12817         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
12818         (dw2_get_cu): Likewise.
12819         (create_cu_from_index_list): Change objfile parameter to
12820         dwarf2_per_objfile.
12821         (create_cus_from_index_list): Get dwarf2_per_objfile from
12822         context, adjust calls.
12823         (create_cus_from_index): Likewise.
12824         (create_signatured_type_table_from_index): Change objfile
12825         parameter to dwarf2_per_objfile.
12826         (create_signatured_type_table_from_debug_names): Change objfile
12827         parameter to dwarf2_per_objfile.
12828         (create_addrmap_from_index): Likewise.
12829         (create_addrmap_from_aranges): Likewise.
12830         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
12831         (dw2_setup): Remove.
12832         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
12833         context.
12834         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
12835         get_dwarf2_per_objfile.
12836         (dw2_forget_cached_source_info): Likewise.
12837         (dw2_map_symtabs_matching_filename): Likewise.
12838         (struct dw2_symtab_iterator) <index>: Remove.
12839         <dwarf2_per_objfile>: New field.
12840         (dw2_symtab_iter_init): Replace index parameter with
12841         dwarf2_per_objfile.
12842         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
12843         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
12844         (dw2_print_stats): Likewise.
12845         (dw2_dump): Likewise.
12846         (dw2_expand_symtabs_for_function): Likewise.
12847         (dw2_expand_all_symtabs): Likewise.
12848         (dw2_expand_symtabs_with_fullname): Likewise.
12849         (dw2_expand_marked_cus): Replace index and objfile parameters
12850         with dwarf2_per_objfile.
12851         (dw_expand_symtabs_matching_file_matcher): Add
12852         dwarf2_per_objfile parameter and adjust calls.
12853         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
12854         adjust calls.
12855         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
12856         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
12857         adjust calls.
12858         (create_cus_from_debug_names_list): Replace objfile parameter
12859         with dwarf2_per_objfile and adjust calls.
12860         (create_cus_from_debug_names): Likewise.
12861         (dwarf2_read_debug_names): Likewise.
12862         (mapped_debug_names::namei_to_name): Adjust call.
12863         (dw2_debug_names_iterator::next): Likewise.
12864         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
12865         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
12866         (dw2_debug_names_dump): Likewise.
12867         (dw2_debug_names_expand_symtabs_for_function): Likewise.
12868         (dw2_debug_names_expand_symtabs_matching): Likewise.
12869         (dwarf2_initialize_objfile): Likewise.
12870         (dwarf2_build_psymtabs): Likewise.
12871         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
12872         this_cu.
12873         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
12874         (read_and_check_comp_unit_head): Likewise.
12875         (read_abbrev_offset): Likewise.
12876         (create_debug_type_hash_table): Likewise.
12877         (create_debug_types_hash_table): Likewise.
12878         (create_all_type_units): Replace objfile parameter with
12879         dwarf2_per_objfile.
12880         (add_type_unit): Add dwarf2_per_objfile parameter.
12881         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
12882         with dwarf2_per_objfile.
12883         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
12884         (lookup_dwp_signatured_type): Likewise.
12885         (lookup_signatured_type): Likewise.
12886         (read_cutu_die_from_dwo): Likewise.
12887         (init_tu_and_read_dwo_dies): Likewise.
12888         (init_cutu_and_read_dies): Likewise.
12889         (init_cutu_and_read_dies_no_follow): Likewise.
12890         (allocate_type_unit_groups_table): Add objfile parameter.
12891         (create_type_unit_group): Use dwarf2_per_objfile from cu.
12892         (get_type_unit_group): Likewise.
12893         (process_psymtab_comp_unit): Update call.
12894         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
12895         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
12896         (print_tu_stats): Likewise.
12897         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
12898         in void* parameter.
12899         (build_type_psymtabs): Change objfile parameter to
12900         dwarf2_per_objfile.
12901         (process_skeletonless_type_unit): Use dwarf2_per_objfile
12902         passed in void* parameter.
12903         (process_skeletonless_type_units): Change objfile parameter to
12904         dwarf2_per_objfile.
12905         (set_partial_user): Likewise.
12906         (dwarf2_build_psymtabs_hard): Likewise.
12907         (read_comp_units_from_section): Likewise.
12908         (create_all_comp_units): Likewise.
12909         (scan_partial_symbols): Update calls.
12910         (add_partial_symbol): Likewise.
12911         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
12912         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
12913         (process_queue): Add dwarf2_per_objfile parameter.
12914         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
12915         (compute_compunit_symtab_includes): Likewise.
12916         (process_cu_includes): Add dwarf2_per_objfile parameter.
12917         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
12918         (process_full_type_unit): Likewise.
12919         (process_imported_unit_die): Update call.
12920         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
12921         (read_file_scope): Likewise.
12922         (allocate_dwo_file_hash_table): Add objfile parameter.
12923         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
12924         (create_cus_hash_table): Likewise.
12925         (create_dwp_hash_table): Likewise.
12926         (create_dwo_unit_in_dwp_v1): Likewise.
12927         (create_dwp_v2_section): Likewise.
12928         (create_dwo_unit_in_dwp_v2): Likewise.
12929         (lookup_dwo_unit_in_dwp): Likewise.
12930         (try_open_dwop_file): Likewise.
12931         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
12932         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
12933         cleanup to include a reference to dwarf2_per_objfile.
12934         (open_dwp_file): Add dwarf2_per_objfile parameter.
12935         (open_and_init_dwp_file): Likewise.
12936         (get_dwp_file): Likewise.
12937         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
12938         (queue_and_load_all_dwo_tus): Update call.
12939         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
12940         data.
12941         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
12942         (dwarf2_ranges_process): Likewise.
12943         (dwarf2_get_pc_bounds): Likewise.
12944         (mark_common_block_symbol_computed): Likewise.
12945         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
12946         (dwarf2_read_abbrevs): Update call.
12947         (read_partial_die): Use dwarf2_per_objfile from cu.
12948         (find_partial_die): Likewise.
12949         (fixup_partial_die): Likewise.
12950         (read_attribute_value): Likewise.
12951         (read_indirect_string_at_offset_from): Add objfile parameter.
12952         (read_indirect_string_at_offset): Add dwarf2_per_objfile
12953         parameter.
12954         (read_indirect_string_from_dwz): Add objfile parameter.
12955         (read_indirect_string): Add objfile parameter.
12956         (read_addr_index_1): Add dwarf2_per_objfile parameter.
12957         (read_addr_index): Use dwarf2_per_objfile from cu.
12958         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
12959         call dw2_setup.
12960         (read_str_index): Use dwarf2_per_objfile from cu.
12961         (get_debug_line_section): Likewise.
12962         (read_formatted_entries): Add dwarf2_per_objfile parameter.
12963         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
12964         (new_symbol_full): Use dwarf2_per_objfile from cu.
12965         (build_error_marker_type): Likewise.
12966         (lookup_die_type): Likewise.
12967         (determine_prefix): Likewise.
12968         (follow_die_offset): Likewise.
12969         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
12970         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
12971         (dwarf2_fetch_die_type_sect_off): Likewise.
12972         (dwarf2_get_die_type): Likewise.
12973         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
12974         (get_signatured_type): Likewise.
12975         (get_DW_AT_signature_type): Likewise.
12976         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
12977         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
12978         (cu_debug_loc_section): Likewise.
12979         (fill_in_loclist_baton): Likewise.
12980         (dwarf2_symbol_mark_computed): Likewise.
12981         (dwarf2_find_containing_comp_unit): Change objfile parameter to
12982         dwarf2_per_objfile.
12983         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
12984         parameter.
12985         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
12986         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
12987         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
12988         (set_die_type): Use dwarf2_free_objfile from cu.
12989         (get_die_type_at_offset): Likewise.
12990         (dwarf2_per_objfile_free): Don't assign global variable.
12991         (debug_names) <constructor>: Add dwarf2_per_objfile
12992         parameter, update m_debugstrlookup construction.
12993         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
12994         parameter.
12995         <m_dwarf2_per_objfile>: New field.
12996         <lookup>: Use m_dwarf2_per_objfile.
12997         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
12998         (psyms_seen_size): Likewise.
12999         (write_gdbindex): Replace objfile parameter with
13000         dwarf2_per_objfile.
13001         (write_debug_names): Likewise.
13002         (write_psymtabs_to_index): Likewise.
13003         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
13004         calls.
13005
13006 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
13007
13008         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
13009         <dwarf2_per_objfile>: New field.
13010         (struct dwarf2_per_cu_data) <objfile>: Remove.
13011         <dwarf2_per_objfile>: New field.
13012         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
13013         of objfile.
13014         (create_signatured_type_table_from_index): Likewise.
13015         (create_debug_type_hash_table): Likewise.
13016         (fill_in_sig_entry_from_dwo_entry): Likewise.
13017         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
13018         (create_type_unit_group): Assign dwarf2_per_objfile instead of
13019         objfile.
13020         (create_partial_symtab): Access objfile through
13021         dwarf2_per_objfile.
13022         (process_psymtab_comp_unit_reader): Likewise.
13023         (read_comp_units_from_section): Likewise.
13024         (scan_partial_symbols): Likewise.
13025         (add_partial_symbol): Likewise.
13026         (add_partial_subprogram): Likewise.
13027         (peek_die_abbrev): Likewise.
13028         (fixup_go_packaging): Likewise.
13029         (process_full_comp_unit): Likewise.
13030         (process_full_type_unit): Likewise.
13031         (process_imported_unit_die): Likewise.
13032         (dwarf2_compute_name): Likewise.
13033         (dwarf2_physname): Likewise.
13034         (read_import_statement): Likewise.
13035         (create_cus_hash_table): Assign dwarf2_physname instead of
13036         objfile.
13037         (read_func_scope): Access objfile through dwarf2_per_objfile.
13038         (read_lexical_block_scope): Likewise.
13039         (read_call_site_scope): Likewise.
13040         (read_variable): Likewise.
13041         (dwarf2_rnglists_process): Likewise.
13042         (dwarf2_ranges_process): Likewise.
13043         (dwarf2_ranges_read): Likewise.
13044         (dwarf2_record_block_ranges): Likewise.
13045         (dwarf2_add_field): Likewise.
13046         (dwarf2_add_member_fn): Likewise.
13047         (read_structure_type): Likewise.
13048         (process_structure_scope): Likewise.
13049         (read_enumeration_type): Likewise.
13050         (read_array_type): Likewise.
13051         (read_common_block): Likewise.
13052         (read_namespace_type): Likewise.
13053         (read_namespace): Likewise.
13054         (read_module_type): Likewise.
13055         (read_tag_pointer_type): Likewise.
13056         (read_tag_ptr_to_member_type): Likewise.
13057         (read_tag_string_type): Likewise.
13058         (read_subroutine_type): Likewise.
13059         (read_typedef): Likewise.
13060         (read_base_type): Likewise.
13061         (attr_to_dynamic_prop): Likewise.
13062         (read_subrange_type): Likewise.
13063         (read_unspecified_type): Likewise.
13064         (load_partial_dies): Likewise.
13065         (read_partial_die): Likewise.
13066         (find_partial_die): Likewise.
13067         (guess_partial_die_structure_name): Likewise.
13068         (fixup_partial_die): Likewise.
13069         (read_attribute_value): Likewise.
13070         (read_addr_index_from_leb128): Likewise.
13071         (dwarf2_read_addr_index): Likewise.
13072         (dwarf2_string_attr): Likewise.
13073         (lnp_state_machine::check_line_address): Likewise.
13074         (dwarf_decode_lines_1): Likewise.
13075         (dwarf_decode_lines): Likewise.
13076         (dwarf2_start_symtab): Likewise.
13077         (var_decode_location): Likewise.
13078         (new_symbol_full): Likewise.
13079         (dwarf2_const_value_data): Likewise.
13080         (dwarf2_const_value_attr): Likewise.
13081         (dwarf2_const_value): Likewise.
13082         (die_type): Likewise.
13083         (die_containing_type): Likewise.
13084         (lookup_die_type): Likewise.
13085         (guess_full_die_structure_name): Likewise.
13086         (anonymous_struct_prefix): Likewise.
13087         (dwarf2_name): Likewise.
13088         (follow_die_ref_or_sig): Likewise.
13089         (follow_die_offset): Likewise.
13090         (follow_die_ref): Likewise.
13091         (dwarf2_fetch_die_loc_sect_off): Likewise.
13092         (dwarf2_fetch_constant_bytes): Likewise.
13093         (dwarf2_fetch_die_type_sect_off): Likewise.
13094         (dwarf2_get_die_type): Likewise.
13095         (follow_die_sig): Likewise.
13096         (decode_locdesc): Likewise.
13097         (dwarf2_per_cu_objfile): Likewise.
13098         (dwarf2_per_cu_text_offset): Likewise.
13099         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
13100         objfile.
13101         (set_die_type): Access objfile through
13102         dwarf2_per_objfile.
13103
13104 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
13105
13106         * valprint.c (converted_character_d): Remove typedef.
13107         (DEF_VEC_O (converted_character_d)): Remove.
13108         (count_next_character): Use std::vector.
13109         (print_converted_chars_to_obstack): Likewise.
13110         (generic_printstr): Likewise.
13111
13112 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13113
13114         * xml-support.h (struct gdb_xml_value): Add constructor.
13115         <value>: Change type to unique_xmalloc_ptr.
13116         (gdb_xml_value_s): Remove typedef.
13117         (DEF_VEC_O (gdb_xml_value_s)): Remove.
13118         (gdb_xml_element_start_handler): Change parameter type to
13119         std::vector.
13120         (xml_find_attribute): Likewise.
13121         * xml-support.c (xml_find_attribute): Change parameter type to
13122         std::vector and adjust.
13123         (gdb_xml_values_cleanup): Remove.
13124         (gdb_xml_parser::start_element): Adjust to std::vector.
13125         (xinclude_start_include): Change paraeter type to std::vector
13126         and adjust.
13127         * btrace.c (check_xml_btrace_version): Likewise.
13128         (parse_xml_btrace_block): Likewise.
13129         (parse_xml_btrace_pt_config_cpu): Likewise.
13130         (parse_xml_btrace_pt): Likewise.
13131         (parse_xml_btrace_conf_bts): Likewise.
13132         (parse_xml_btrace_conf_pt): Likewise.
13133         * memory-map.c (memory_map_start_memory): Likewise.
13134         (memory_map_start_property): Likewise.
13135         * osdata.c (osdata_start_osdata): Likewise.
13136         (osdata_start_item): Likewise.
13137         (osdata_start_column): Likewise.
13138         * remote.c (start_thread): Likewise.
13139         * solib-aix.c (library_list_start_library): Likewise.
13140         (library_list_start_list): Likewise.
13141         * solib-svr4.c (library_list_start_library): Likewise.
13142         (svr4_library_list_start_list): Likewise.
13143         * solib-target.c (library_list_start_segment): Likewise.
13144         (library_list_start_section): Likewise.
13145         (library_list_start_library): Likewise.
13146         (library_list_start_list): Likewise.
13147         * tracepoint.c (traceframe_info_start_memory): Likewise.
13148         (traceframe_info_start_tvar): Likewise.
13149         * xml-syscall.c (syscall_start_syscall): Likewise.
13150         * xml-tdesc.c (tdesc_start_target): Likewise.
13151         (tdesc_start_feature): Likewise.
13152         (tdesc_start_reg): Likewise.
13153         (tdesc_start_union): Likewise.
13154         (tdesc_start_struct): Likewise.
13155         (tdesc_start_flags): Likewise.
13156         (tdesc_start_enum): Likewise.
13157         (tdesc_start_field): Likewise.
13158         (tdesc_start_enum_value): Likewise.
13159         (tdesc_start_vector): Likewise.
13160
13161 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13162
13163         * extension.h (struct xmethod_worker) <clone>: Remove.
13164         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
13165         Remove.
13166         (python_xmethod_worker::clone): Remove.
13167         * valops.c (find_overload_match): Use std::move instead of
13168         clone.
13169
13170 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13171
13172         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
13173         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
13174         <free_xmethod_worker_data>: Remove.
13175         <get_matching_xmethod_workers>: Chance VEC to std::vector.
13176         <get_xmethod_arg_types>: Remove.
13177         <get_xmethod_result_type>: Remove.
13178         <invoke_xmethod>: Remove.
13179         * extension.c (new_xmethod_worker): Remove.
13180         (clone_xmethod_worker): Remove.
13181         (get_matching_xmethod_workers): Return void, pass std::vector by
13182         pointer.
13183         (get_xmethod_arg_types): Rename to...
13184         (xmethod_worker::get_arg_types): ... this, and adjust.
13185         (get_xmethod_result_type): Rename to...
13186         (xmethod_worker::get_result_type): ... this, and adjust.
13187         (invoke_xmethod): Remove.
13188         (free_xmethod_worker): Remove.
13189         (free_xmethod_worker_vec): Remove.
13190         * extension.h (enum ext_lang_rc): Move here from
13191         extension-priv.h.
13192         (struct xmethod_worker): Add constructor and destructor.
13193         <data>: Remove.
13194         <value>: Remove.
13195         <invoke, clone, do_get_result_type, do_get_arg_types>: New
13196         virtual pure methods.
13197         <get_arg_types, get_result_type>: New methods.
13198         (xmethod_worker_ptr): Remove typedef.
13199         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
13200         (xmethod_worker_vec): Remove typedef.
13201         (xmethod_worker_up): New typedef.
13202         (invoke_xmethod): Remove.
13203         (clone_xmethod_worker): Remove.
13204         (free_xmethod_worker): Remove.
13205         (free_xmethod_worker_vec): Remove.
13206         (get_xmethod_arg_types): Remove.
13207         (get_xmethod_result_type): Remove.
13208         * valops.c (find_method_list): Use std::vector, don't use
13209         intermediate vector.
13210         (value_find_oload_method_list): Use std::vector.
13211         (find_overload_match): Use std::vector.
13212         (find_oload_champ): Use std::vector.
13213         * value.c (value_free): Use operator delete.
13214         (value_of_xmethod): Rename to...
13215         (value_from_xmethod): ... this.  Don't assign
13216         xmethod_worker::value, take rvalue-reference.
13217         (result_type_of_xmethod): Adjust.
13218         (call_xmethod): Adjust.
13219         * value.h: Include extension.h.
13220         (struct xmethod_worker): Don't forward-declare.
13221         (value_of_xmethod): Rename to...
13222         (value_from_xmethod): ... this, take rvalue-reference.
13223         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
13224         (struct python_xmethod_worker): ... this, add constructor and
13225         destructor.
13226         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
13227         (gdbpy_free_xmethod_worker_data): Rename to...
13228         (python_xmethod_worker::~python_xmethod_worker): ... this and
13229         adjust.
13230         (gdbpy_clone_xmethod_worker_data): Rename to...
13231         (python_xmethod_worker::clone): ... this and adjust.
13232         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
13233         temporary vector.
13234         (gdbpy_get_xmethod_arg_types): Rename to...
13235         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
13236         (gdbpy_get_xmethod_result_type): Rename to...
13237         (python_xmethod_worker::do_get_result_type): ... this and
13238         adjust.
13239         (gdbpy_invoke_xmethod): Rename to...
13240         (python_xmethod_worker::invoke): ... this and adjust.
13241         (new_python_xmethod_worker): Rename to...
13242         (python_xmethod_worker::python_xmethod_worker): ... this and
13243         adjust.
13244         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
13245         Remove.
13246         (gdbpy_free_xmethod_worker_data): Remove.
13247         (gdbpy_get_matching_xmethod_workers): Use std::vector.
13248         (gdbpy_get_xmethod_arg_types): Remove.
13249         (gdbpy_get_xmethod_result_type): Remove.
13250         (gdbpy_invoke_xmethod): Remove.
13251         * python/python.c (python_extension_ops): Remove obsolete
13252         callbacks.
13253
13254 2018-01-05  Pedro Alves  <palves@redhat.com>
13255
13256         PR gdb/18653
13257         * common/signals-state-save-restore.c
13258         (save_original_signals_state): New parameter 'quiet'.  Warn if we
13259         find a custom handler preinstalled, instead of internal erroring.
13260         But only warn if !quiet.
13261         * common/signals-state-save-restore.h
13262         (save_original_signals_state): New parameter 'quiet'.
13263         * main.c (captured_main_1): Move save_original_signals_state call
13264         after option handling, and pass QUIET.
13265
13266 2018-01-05  Pedro Alves  <palves@redhat.com>
13267
13268         * spu-tdep.c (spu_catch_start): Pass
13269         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
13270
13271 2018-01-05  Pedro Alves  <palves@redhat.com>
13272
13273         PR gdb/22670
13274         * ada-lang.c (literal_symbol_name_matcher): New function.
13275         (ada_get_symbol_name_matcher): Use it for
13276         symbol_name_match_type::SEARCH_NAME.
13277         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
13278         it down instead of assuming symbol_name_match_type::FULL.
13279         * block.h (block_lookup_symbol): New parameter 'match_type'.
13280         * c-valprint.c (print_unpacked_pointer): Use
13281         lookup_symbol_search_name instead of lookup_symbol.
13282         * compile/compile-object-load.c (get_out_value_type): Pass down
13283         symbol_name_match_type::SEARCH_NAME.
13284         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
13285         symbol_name_match_type::FULL.
13286         * cp-support.c (cp_get_symbol_name_matcher): Handle
13287         symbol_name_match_type::SEARCH_NAME.
13288         * infrun.c (insert_exception_resume_breakpoint): Use
13289         lookup_symbol_search_name.
13290         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
13291         * psymtab.c (maintenance_check_psymtabs): Use
13292         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
13293         * stack.c (print_frame_args): Use lookup_symbol_search_name and
13294         SYMBOL_SEARCH_NAME.
13295         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
13296         if symbol_name_match_type::SEARCH_NAME.
13297         (lookup_symbol_in_language): Pass down
13298         symbol_name_match_type::FULL.
13299         (lookup_symbol_search_name): New.
13300         (lookup_language_this): Pass down
13301         symbol_name_match_type::SEARCH_NAME.
13302         (lookup_symbol_aux, lookup_local_symbol): New parameter
13303         'match_type'.  Pass it down.
13304         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
13305         (lookup_symbol_search_name): New declaration.
13306         (lookup_symbol_in_block): New 'match_type' parameter.
13307
13308 2018-01-05  Pedro Alves  <palves@redhat.com>
13309
13310         PR gdb/22670
13311         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
13312         ada_lookup_symbol.
13313         (ada_lookup_symbol): Reimplement in terms of
13314         ada_lookup_symbol_list, bits factored out from
13315         ada_lookup_encoded_symbol.
13316
13317 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13318
13319         * ada-exp.y (write_object_renaming): When subscripting an array
13320         using a symbol as the index, pass the block in call to
13321         ada_lookup_encoded_symbol when looking that symbol up.
13322
13323 2018-01-05  Jerome Guitton  <guitton@adacore.com>
13324
13325         * ada-lang.c (ada_array_length): Use ada_index_type instead of
13326         TYPE_INDEX_TYPE.
13327
13328 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13329
13330         * ada-lang.c (ada_to_fixed_value_create): Add handling of
13331         the case where VALUE_LVAL (val0) is not lval_memory.
13332
13333 2018-01-05  Xavier Roirand  <roirand@adacore.com>
13334
13335         * ada-valprint.c (print_optional_low_bound): Handle
13336         character-indexed array printing like boolean-indexed array
13337         printing.
13338
13339 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13340
13341         * NEWS: Create a new section for the next release branch.
13342         Rename the section of the current branch, now that it has
13343         been cut.
13344
13345 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13346
13347         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
13348         * version.in: Bump version to 8.1.50.DATE-git.
13349
13350 2018-01-03  Xavier Roirand  <roirand@adacore.com>
13351
13352         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
13353         Add field.
13354         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
13355         Add field.
13356         (default_exception_support_info) <catch_handlers_sym>: Add field.
13357         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
13358         (ada_exception_name_addr_1): Add "catch handlers" handling.
13359         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
13360         Update all callers.
13361         (create_excep_cond_exprs) <ex>: Add parameter.
13362         (re_set_exception): Update create_excep_cond_exprs call.
13363         (print_it_exception, print_one_exception, print_mention_exception)
13364         (print_recreate_exception): Add "catch handler" handling.
13365         (allocate_location_catch_handlers, re_set_catch_handlers)
13366         (check_status_catch_handlers, print_it_catch_handlers)
13367         (print_one_catch_handlers, print_mention_catch_handlers)
13368         (print_recreate_catch_handlers): New function.
13369         (catch_handlers_breakpoint_ops): New variable.
13370         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
13371         Add parameter.  Add "catch handler" handling.
13372         (ada_exception_sym_name, ada_exception_breakpoint_ops):
13373         Add "catch handler" handling.
13374         (ada_exception_catchpoint_cond_string): Add "catch handler"
13375         handling.
13376         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
13377         call.
13378         (catch_ada_handlers_command): New function.
13379         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
13380         operations structure.
13381         (_initialize_ada_language): Add "catch handlers" command entry.
13382         * NEWS: Document "catch handlers" feature.
13383
13384 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
13385
13386         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
13387         account when creating the array type of the slice.
13388         (ada_value_slice): Likewise.
13389
13390 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
13391
13392         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
13393         New enum value.
13394         (create_array_type_with_stride): Add byte_stride_prop parameter.
13395         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
13396         New parameter.  Update all callers in this file.
13397         (array_type_has_dynamic_stride): New function.
13398         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
13399         of arrays with dynamic byte strides.
13400         * dwarf2read.c (read_array_type): Add support for dynamic
13401         DW_AT_byte_stride attributes.
13402
13403 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
13404
13405         * dwarf2read.c (read_unspecified_type): Treat
13406         DW_TAG_enumeration_type DIEs from Ada units as stubs.
13407
13408 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13409
13410         Update copyright year range in all GDB files.
13411
13412 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13413
13414         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
13415         and gdb/testsuite/gdb.base/step-line.c.
13416
13417 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13418
13419         * copyright.py (main): Dump the contents of
13420         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
13421         even if BY_HAND is empty.
13422
13423 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13424
13425         * top.c (print_gdb_version): Update Copyright year in version
13426         message.
13427
13428 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13429
13430         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
13431
13432 For older changes see ChangeLog-2017.
13433 \f
13434 Local Variables:
13435 mode: change-log
13436 left-margin: 8
13437 fill-column: 74
13438 version-control: never
13439 coding: utf-8
13440 End: