Fix possible exception leak in python.c
[external/binutils.git] / gdb / ChangeLog
1 2018-09-07  Tom Tromey  <tom@tromey.com>
2
3         * python/python.c (execute_gdb_command): Call bpstat_do_actions
4         inside the TRY.
5
6 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
7
8         * nios2-tdep.c (nios2_type_align): New.
9         (nios2_gdb_arch_init): Install type_align hook.
10
11 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
12
13         * eval.c (fake_method::fake_method): Call xzalloc directly for a
14         type that is neither object file owned, nor gdbarch owned.
15         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
16         gdbarch is non-NULL.
17         (alloc_type_instance): Allocate non-objfile owned types on the
18         gdbarch obstack.
19         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
20         using TYPE_ALLOC to ensure memory is allocated on the correct
21         obstack.
22         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
23         obstack, or the gdbarch obstack.
24         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
25
26 2018-09-14  Tom Tromey  <tom@tromey.com>
27
28         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
29         block.
30
31 2018-09-14  Tom Tromey  <tom@tromey.com>
32
33         * nat/fork-inferior.c (get_startup_shell): Remove "static".
34
35 2018-09-13  Tom Tromey  <tom@tromey.com>
36
37         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
38         static.
39
40 2018-09-13  Tom Tromey  <tom@tromey.com>
41
42         * exec.c (try_open_exec_file): Use std::string.
43
44 2018-09-13  Tom Tromey  <tom@tromey.com>
45
46         * utils.h (gdb_bfd_errmsg): Return std::string.
47         * exec.c (exec_file_attach): Update.
48         * compile/compile-object-load.c (compile_object_load): Update.
49         * utils.c (gdb_bfd_errmsg): Return std::string.
50
51 2018-09-13  Tom Tromey  <tom@tromey.com>
52
53         * procfs.c (struct procinfo_deleter): New.
54         (procinfo_up): New typedef.
55         (do_destroy_procinfo_cleanup): Remove.
56         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
57
58 2018-09-13  Tom Tromey  <tom@tromey.com>
59
60         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
61
62 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
63 2018-09-13  Tom Tromey  <tom@tromey.com>
64
65         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
66         (pspy_get_objfiles): New function.
67         (progspace_object_methods): New.
68         (pspace_object_type): Add tp_methods callback.
69         * python/python-internal.h (build_objfiles_list): New
70         declaration.
71         * python/python.c (build_objfiles_list): New function.
72         (gdbpy_objfiles): Implement using build_objfiles_list.
73         * NEWS: Mention the Progspace.objfiles method.
74
75 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
76
77         * python/py-inferior.c (infpy_get_progspace): New function.
78         (inferior_object_getset): Add progspace property.
79         * NEWS: Mention the new property.
80
81 2018-09-13  Tom Tromey  <tom@tromey.com>
82
83         PR rust/23650:
84         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
85
86 2018-09-13  Tom Tromey  <tom@tromey.com>
87
88         PR rust/23626:
89         * rust-lang.c (rust_enum_variant): Now static.
90         (rust_empty_enum_p): New function.
91         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
92         Handle empty enum.
93
94 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
95
96         * python/py-inferior.c (infpy_repr): New.
97         (inferior_object_type): Register infpy_repr.
98         * python/py-objfile.c (objfpy_repr): New.
99         (objfile_object_type): Register objfpy_repr.
100
101 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
102
103         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
104
105 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
106
107         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
108         typo.
109
110 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
111
112         * common/common-utils.c: Don't include '<sys/stat.h>'.
113         (is_regular_file): Move to...
114         * common/filestuff.c (is_regular_file): ... here.
115         * common/common-utils.h (is_regular_file): Move to...
116         * common/filestuff.h (is_regular_file): ... here.
117
118 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
119
120         * skip.c (debug_skip): New variable.
121         (skiplist_entry::do_skip_file_p): Add debug output.
122         (skiplist_entry::do_skip_gfile_p): Likewise.
123         (skiplist_entry::skip_function_p): Likewise.
124         (_initialize_step_skip): Create debug command.
125         * NEWS: Mention set/show debug skip.
126
127 2018-09-11  Xavier Roirand  <roirand@adacore.com>
128
129         * darwin-nat.c (should_disable_startup_with_shell):
130         New function.
131         (darwin_nat_target::create_inferior): Add call.
132
133 2018-09-11  Xavier Roirand  <roirand@adacore.com>
134
135         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
136         inf_port, msg_state>: Initialize.
137         (struct darwin_thread_info) <signaled, single_step>: Change
138         type and initialize.
139         (struct darwin_thread_info) <event>: Initialize.
140
141 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
142
143         PR gdb/23555
144         PR gdb/23558
145         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
146         guesses.
147
148 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
149
150         Revert:
151         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
152
153         PR gdb/23555
154         PR gdb/23558
155         * gnulib/aclocal.m4: Regenerate.
156         * gnulib/config.in: Regenerate.
157         * gnulib/configure: Regenerate.
158         * gnulib/import/Makefile.am: Update.
159         * gnulib/import/Makefile.in: Update.
160         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
161         * gnulib/import/_Noreturn.h: ... this.
162         * gnulib/import/alloca.in.h: Update.
163         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
164         * gnulib/import/arg-nonnull.h: ... this.
165         * gnulib/import/assure.h: Update.
166         * gnulib/import/at-func.c: Update.
167         * gnulib/import/basename-lgpl.c: Update.
168         * gnulib/import/extra/snippet/c++defs.h: Rename to...
169         * gnulib/import/c++defs.h: ... this.
170         * gnulib/import/canonicalize-lgpl.c: Update.
171         * gnulib/import/cdefs.h: Update.
172         * gnulib/import/chdir-long.c: Update.
173         * gnulib/import/chdir-long.h: Update.
174         * gnulib/import/cloexec.c: Update.
175         * gnulib/import/cloexec.h: Update.
176         * gnulib/import/close.c: Update.
177         * gnulib/import/closedir.c: Update.
178         * gnulib/import/config.charset: Update.
179         * gnulib/import/dirent-private.h: Update.
180         * gnulib/import/dirent.in.h: Update.
181         * gnulib/import/dirfd.c: Update.
182         * gnulib/import/dirname-lgpl.c: Update.
183         * gnulib/import/dirname.h: Update.
184         * gnulib/import/dosname.h: Update.
185         * gnulib/import/dup-safer-flag.c: Update.
186         * gnulib/import/dup-safer.c: Update.
187         * gnulib/import/dup.c: Update.
188         * gnulib/import/dup2.c: Update.
189         * gnulib/import/errno.in.h: Update.
190         * gnulib/import/error.c: Update.
191         * gnulib/import/error.h: Update.
192         * gnulib/import/exitfail.c: Update.
193         * gnulib/import/exitfail.h: Update.
194         * gnulib/import/extra/update-copyright: Update.
195         * gnulib/import/fchdir.c: Update.
196         * gnulib/import/fcntl.c: Update.
197         * gnulib/import/fcntl.in.h: Update.
198         * gnulib/import/fd-hook.c: Update.
199         * gnulib/import/fd-hook.h: Update.
200         * gnulib/import/fd-safer-flag.c: Update.
201         * gnulib/import/fd-safer.c: Update.
202         * gnulib/import/fdopendir.c: Update.
203         * gnulib/import/filename.h: Update.
204         * gnulib/import/filenamecat-lgpl.c: Update.
205         * gnulib/import/filenamecat.h: Update.
206         * gnulib/import/flexmember.h: Update.
207         * gnulib/import/float+.h: Update.
208         * gnulib/import/float.c: Update.
209         * gnulib/import/float.in.h: Update.
210         * gnulib/import/fnmatch.c: Update.
211         * gnulib/import/fnmatch.in.h: Update.
212         * gnulib/import/fnmatch_loop.c: Update.
213         * gnulib/import/fpucw.h: Update.
214         * gnulib/import/frexp.c: Update.
215         * gnulib/import/frexpl.c: Update.
216         * gnulib/import/fstat.c: Update.
217         * gnulib/import/fstatat.c: Update.
218         * gnulib/import/getcwd-lgpl.c: Update.
219         * gnulib/import/getcwd.c: Update.
220         * gnulib/import/getdtablesize.c: Update.
221         * gnulib/import/getlogin_r.c: Update.
222         * gnulib/import/getprogname.c: Update.
223         * gnulib/import/getprogname.h: Update.
224         * gnulib/import/gettext.h: Update.
225         * gnulib/import/gettimeofday.c: Update.
226         * gnulib/import/glob-libc.h: Update.
227         * gnulib/import/glob.c: Update.
228         * gnulib/import/glob.in.h: Update.
229         * gnulib/import/glob_internal.h: Update.
230         * gnulib/import/glob_pattern_p.c: Update.
231         * gnulib/import/globfree.c: Update.
232         * gnulib/import/hard-locale.c: Update.
233         * gnulib/import/hard-locale.h: Update.
234         * gnulib/import/intprops.h: Update.
235         * gnulib/import/inttypes.in.h: Update.
236         * gnulib/import/isnan.c: Update.
237         * gnulib/import/isnand-nolibm.h: Update.
238         * gnulib/import/isnand.c: Update.
239         * gnulib/import/isnanl-nolibm.h: Update.
240         * gnulib/import/isnanl.c: Update.
241         * gnulib/import/itold.c: Update.
242         * gnulib/import/libc-config.h: Update.
243         * gnulib/import/limits.in.h: Update.
244         * gnulib/import/localcharset.c: Update.
245         * gnulib/import/localcharset.h: Update.
246         * gnulib/import/localtime-buffer.c: Update.
247         * gnulib/import/localtime-buffer.h: Update.
248         * gnulib/import/lstat.c: Update.
249         * gnulib/import/m4/00gnulib.m4: Update.
250         * gnulib/import/m4/__inline.m4: Update.
251         * gnulib/import/m4/absolute-header.m4: Update.
252         * gnulib/import/m4/alloca.m4: Update.
253         * gnulib/import/m4/builtin-expect.m4: Update.
254         * gnulib/import/m4/canonicalize.m4: Update.
255         * gnulib/import/m4/chdir-long.m4: Update.
256         * gnulib/import/m4/close.m4: Update.
257         * gnulib/import/m4/closedir.m4: Update.
258         * gnulib/import/m4/configmake.m4: Update.
259         * gnulib/import/m4/d-ino.m4: Update.
260         * gnulib/import/m4/d-type.m4: Update.
261         * gnulib/import/m4/dirent_h.m4: Update.
262         * gnulib/import/m4/dirfd.m4: Update.
263         * gnulib/import/m4/dirname.m4: Update.
264         * gnulib/import/m4/double-slash-root.m4: Update.
265         * gnulib/import/m4/dup.m4: Update.
266         * gnulib/import/m4/dup2.m4: Update.
267         * gnulib/import/m4/eealloc.m4: Update.
268         * gnulib/import/m4/environ.m4: Update.
269         * gnulib/import/m4/errno_h.m4: Update.
270         * gnulib/import/m4/error.m4: Update.
271         * gnulib/import/m4/exponentd.m4: Update.
272         * gnulib/import/m4/exponentl.m4: Update.
273         * gnulib/import/m4/extensions.m4: Update.
274         * gnulib/import/m4/extern-inline.m4: Update.
275         * gnulib/import/m4/fchdir.m4: Update.
276         * gnulib/import/m4/fcntl-o.m4: Update.
277         * gnulib/import/m4/fcntl.m4: Update.
278         * gnulib/import/m4/fcntl_h.m4: Update.
279         * gnulib/import/m4/fdopendir.m4: Update.
280         * gnulib/import/m4/filenamecat.m4: Update.
281         * gnulib/import/m4/flexmember.m4: Update.
282         * gnulib/import/m4/float_h.m4: Update.
283         * gnulib/import/m4/fnmatch.m4: Update.
284         * gnulib/import/m4/fnmatch_h.m4: Update.
285         * gnulib/import/m4/fpieee.m4: Update.
286         * gnulib/import/m4/frexp.m4: Update.
287         * gnulib/import/m4/frexpl.m4: Update.
288         * gnulib/import/m4/fstat.m4: Update.
289         * gnulib/import/m4/fstatat.m4: Update.
290         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
291         * gnulib/import/m4/getcwd-path-max.m4: Update.
292         * gnulib/import/m4/getcwd.m4: Update.
293         * gnulib/import/m4/getdtablesize.m4: Update.
294         * gnulib/import/m4/getlogin.m4: Update.
295         * gnulib/import/m4/getlogin_r.m4: Update.
296         * gnulib/import/m4/getpagesize.m4: Update.
297         * gnulib/import/m4/getprogname.m4: Update.
298         * gnulib/import/m4/gettimeofday.m4: Update.
299         * gnulib/import/m4/glibc21.m4: Update.
300         * gnulib/import/m4/glob.m4: Update.
301         * gnulib/import/m4/glob_h.m4: Update.
302         * gnulib/import/m4/gnulib-cache.m4: Update.
303         * gnulib/import/m4/gnulib-common.m4: Update.
304         * gnulib/import/m4/gnulib-comp.m4: Update.
305         * gnulib/import/m4/gnulib-tool.m4: Update.
306         * gnulib/import/m4/hard-locale.m4: Update.
307         * gnulib/import/m4/include_next.m4: Update.
308         * gnulib/import/m4/inttypes-pri.m4: Update.
309         * gnulib/import/m4/inttypes.m4: Update.
310         * gnulib/import/m4/isnand.m4: Update.
311         * gnulib/import/m4/isnanl.m4: Update.
312         * gnulib/import/m4/largefile.m4: Update.
313         * gnulib/import/m4/limits-h.m4: Update.
314         * gnulib/import/m4/localcharset.m4: Update.
315         * gnulib/import/m4/locale-fr.m4: Update.
316         * gnulib/import/m4/locale-ja.m4: Update.
317         * gnulib/import/m4/locale-zh.m4: Update.
318         * gnulib/import/m4/localtime-buffer.m4: Update.
319         * gnulib/import/m4/longlong.m4: Update.
320         * gnulib/import/m4/lstat.m4: Update.
321         * gnulib/import/m4/malloc.m4: Update.
322         * gnulib/import/m4/malloca.m4: Update.
323         * gnulib/import/m4/math_h.m4: Update.
324         * gnulib/import/m4/mbrtowc.m4: Update.
325         * gnulib/import/m4/mbsinit.m4: Update.
326         * gnulib/import/m4/mbsrtowcs.m4: Update.
327         * gnulib/import/m4/mbstate_t.m4: Update.
328         * gnulib/import/m4/memchr.m4: Update.
329         * gnulib/import/m4/memmem.m4: Update.
330         * gnulib/import/m4/mempcpy.m4: Update.
331         * gnulib/import/m4/memrchr.m4: Update.
332         * gnulib/import/m4/mkdir.m4: Update.
333         * gnulib/import/m4/mkstemp.m4: Update.
334         * gnulib/import/m4/mmap-anon.m4: Update.
335         * gnulib/import/m4/mode_t.m4: Update.
336         * gnulib/import/m4/msvc-inval.m4: Update.
337         * gnulib/import/m4/msvc-nothrow.m4: Update.
338         * gnulib/import/m4/multiarch.m4: Update.
339         * gnulib/import/m4/nocrash.m4: Update.
340         * gnulib/import/m4/off_t.m4: Update.
341         * gnulib/import/m4/onceonly.m4: Update.
342         * gnulib/import/m4/open-cloexec.m4: Update.
343         * gnulib/import/m4/open.m4: Update.
344         * gnulib/import/m4/openat.m4: Update.
345         * gnulib/import/m4/opendir.m4: Update.
346         * gnulib/import/m4/pathmax.m4: Update.
347         * gnulib/import/m4/rawmemchr.m4: Update.
348         * gnulib/import/m4/readdir.m4: Update.
349         * gnulib/import/m4/readlink.m4: Update.
350         * gnulib/import/m4/realloc.m4: Update.
351         * gnulib/import/m4/rename.m4: Update.
352         * gnulib/import/m4/rewinddir.m4: Update.
353         * gnulib/import/m4/rmdir.m4: Update.
354         * gnulib/import/m4/save-cwd.m4: Update.
355         * gnulib/import/m4/secure_getenv.m4: Update.
356         * gnulib/import/m4/setenv.m4: Update.
357         * gnulib/import/m4/signal_h.m4: Update.
358         * gnulib/import/m4/ssize_t.m4: Update.
359         * gnulib/import/m4/stat-time.m4: Update.
360         * gnulib/import/m4/stat.m4: Update.
361         * gnulib/import/m4/std-gnu11.m4: Update.
362         * gnulib/import/m4/stdbool.m4: Update.
363         * gnulib/import/m4/stddef_h.m4: Update.
364         * gnulib/import/m4/stdint.m4: Update.
365         * gnulib/import/m4/stdio_h.m4: Update.
366         * gnulib/import/m4/stdlib_h.m4: Update.
367         * gnulib/import/m4/strchrnul.m4: Update.
368         * gnulib/import/m4/strdup.m4: Update.
369         * gnulib/import/m4/strerror.m4: Update.
370         * gnulib/import/m4/string_h.m4: Update.
371         * gnulib/import/m4/strstr.m4: Update.
372         * gnulib/import/m4/strtok_r.m4: Update.
373         * gnulib/import/m4/sys_socket_h.m4: Update.
374         * gnulib/import/m4/sys_stat_h.m4: Update.
375         * gnulib/import/m4/sys_time_h.m4: Update.
376         * gnulib/import/m4/sys_types_h.m4: Update.
377         * gnulib/import/m4/tempname.m4: Update.
378         * gnulib/import/m4/time_h.m4: Update.
379         * gnulib/import/m4/unistd-safer.m4: Update.
380         * gnulib/import/m4/unistd_h.m4: Update.
381         * gnulib/import/m4/warn-on-use.m4: Update.
382         * gnulib/import/m4/wchar_h.m4: Update.
383         * gnulib/import/m4/wchar_t.m4: Update.
384         * gnulib/import/m4/wctype_h.m4: Update.
385         * gnulib/import/m4/wint_t.m4: Update.
386         * gnulib/import/malloc.c: Update.
387         * gnulib/import/malloc/scratch_buffer.h: Update.
388         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
389         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
390         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
391         * gnulib/import/malloca.c: Update.
392         * gnulib/import/malloca.h: Update.
393         * gnulib/import/malloca.valgrind: Update.
394         * gnulib/import/math.in.h: Update.
395         * gnulib/import/mbrtowc.c: Update.
396         * gnulib/import/mbsinit.c: Update.
397         * gnulib/import/mbsrtowcs-impl.h: Update.
398         * gnulib/import/mbsrtowcs-state.c: Update.
399         * gnulib/import/mbsrtowcs.c: Update.
400         * gnulib/import/memchr.c: Update.
401         * gnulib/import/memmem.c: Update.
402         * gnulib/import/mempcpy.c: Update.
403         * gnulib/import/memrchr.c: Update.
404         * gnulib/import/mkdir.c: Update.
405         * gnulib/import/mkstemp.c: Update.
406         * gnulib/import/msvc-inval.c: Update.
407         * gnulib/import/msvc-inval.h: Update.
408         * gnulib/import/msvc-nothrow.c: Update.
409         * gnulib/import/msvc-nothrow.h: Update.
410         * gnulib/import/open.c: Update.
411         * gnulib/import/openat-die.c: Update.
412         * gnulib/import/openat-priv.h: Update.
413         * gnulib/import/openat-proc.c: Update.
414         * gnulib/import/openat.c: Update.
415         * gnulib/import/openat.h: Update.
416         * gnulib/import/opendir.c: Update.
417         * gnulib/import/pathmax.h: Update.
418         * gnulib/import/pipe-safer.c: Update.
419         * gnulib/import/rawmemchr.c: Update.
420         * gnulib/import/readdir.c: Update.
421         * gnulib/import/readlink.c: Update.
422         * gnulib/import/realloc.c: Update.
423         * gnulib/import/ref-add.sin: Update.
424         * gnulib/import/ref-del.sin: Update.
425         * gnulib/import/rename.c: Update.
426         * gnulib/import/rewinddir.c: Update.
427         * gnulib/import/rmdir.c: Update.
428         * gnulib/import/same-inode.h: Update.
429         * gnulib/import/save-cwd.c: Update.
430         * gnulib/import/save-cwd.h: Update.
431         * gnulib/import/scratch_buffer.h: Update.
432         * gnulib/import/secure_getenv.c: Update.
433         * gnulib/import/setenv.c: Update.
434         * gnulib/import/signal.in.h: Update.
435         * gnulib/import/stat-time.c: Update.
436         * gnulib/import/stat-time.h: Update.
437         * gnulib/import/stat-w32.c: Update.
438         * gnulib/import/stat-w32.h: Update.
439         * gnulib/import/stat.c: Update.
440         * gnulib/import/stdbool.in.h: Update.
441         * gnulib/import/stddef.in.h: Update.
442         * gnulib/import/stdint.in.h: Update.
443         * gnulib/import/stdio.in.h: Update.
444         * gnulib/import/stdlib.in.h: Update.
445         * gnulib/import/str-two-way.h: Update.
446         * gnulib/import/strchrnul.c: Update.
447         * gnulib/import/strdup.c: Update.
448         * gnulib/import/streq.h: Update.
449         * gnulib/import/strerror-override.c: Update.
450         * gnulib/import/strerror-override.h: Update.
451         * gnulib/import/strerror.c: Update.
452         * gnulib/import/string.in.h: Update.
453         * gnulib/import/stripslash.c: Update.
454         * gnulib/import/strnlen1.c: Update.
455         * gnulib/import/strnlen1.h: Update.
456         * gnulib/import/strstr.c: Update.
457         * gnulib/import/strtok_r.c: Update.
458         * gnulib/import/sys_stat.in.h: Update.
459         * gnulib/import/sys_time.in.h: Update.
460         * gnulib/import/sys_types.in.h: Update.
461         * gnulib/import/tempname.c: Update.
462         * gnulib/import/tempname.h: Update.
463         * gnulib/import/time.in.h: Update.
464         * gnulib/import/unistd--.h: Update.
465         * gnulib/import/unistd-safer.h: Update.
466         * gnulib/import/unistd.in.h: Update.
467         * gnulib/import/unsetenv.c: Update.
468         * gnulib/import/verify.h: Update.
469         * gnulib/import/extra/snippet/warn-on-use.h: Update.
470         * gnulib/import/wchar.in.h: Update.
471         * gnulib/import/wctype.in.h: Update.
472         * gnulib/import/xalloc-oversized.h: Update.
473         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
474         "53e2c179f26a890fa6685af4b6c1397ee370433b".
475
476 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
477
478         * record-btrace.c (get_thread_current_frame): Remove
479         old_inferior_ptid.
480
481 2018-09-10  Jerome Guitton  <guitton@adacore.com>
482
483         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
484         with check_tag to 1 if and only if the type is tagged and the
485         component being searched cannot been found in the current
486         view. Otherwise, always call ada_to_fixed_type with
487         check_tag to 0.
488
489 2018-09-10  Xavier Roirand  <roirand@adacore.com>
490
491         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
492         declaration.
493         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
494         * ada-varobj.c (ada_varobj_get_number_of_children,
495         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
496
497 2018-09-10  Xavier Roirand  <roirand@adacore.com>
498
499         * ada-valprint.c (ada_value_print): Use type instead of
500         enclosing type.
501
502 2018-09-10  Xavier Roirand  <roirand@adacore.com>
503
504         * ada-lang.c (ada_value_subscript): Handle case when parameter is
505         an array of access to unconstrained array.
506
507 2018-09-10  Xavier Roirand  <roirand@adacore.com>
508
509         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
510         (ada_check_typedef): Use it.
511
512 2018-09-10  Xavier Roirand  <roirand@adacore.com>
513
514         * ada-varobj.c (ada_varobj_describe_struct_child)
515         (ada_varobj_describe_child): Handle union case like struct one.
516
517 2018-09-10  Tom Tromey  <tom@tromey.com>
518
519         PR python/18380:
520         * python/python.c (_initialize_python): Make example in "python"
521         help work in Python 3.
522
523 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
524
525         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
526         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
527         $(EXEEXT) to the script, as it is not a program.
528
529 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
530
531         * python/py-prettyprint.c (pretty_print_one_value): Return
532         gdbpy_ref<>.
533         (print_string_repr): Adjust.
534         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
535         * python/python-internal.h (apply_varobj_pretty_printer): Return
536         gdbpy_ref<>.
537         * varobj.c (varobj_value_get_print_value): Adjust.
538
539 2018-09-08  Tom Tromey  <tom@tromey.com>
540
541         PR python/16047:
542         * python/py-prettyprint.c (pretty_print_one_value): Check for
543         to_string method.
544
545 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
546
547         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
548         replace_operator_with_call.
549
550 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
551
552         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
553
554 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
555
556         * ada-typeprint.c (print_range): Print the bounds using TYPE
557         rather than its TYPE_TARGET_TYPE.
558
559 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
560
561         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
562         call to ada_to_fixed_value_create.
563
564 2018-09-08  Jerome Guitton  <guitton@adacore.com>
565
566         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
567
568 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
569
570         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
571         by calls to error.
572
573 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
574
575         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
576         Move update of loop variable "fi".
577
578 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
579
580         * ada-lang.c (value_assign_to_component): In the case of
581         big-endian targets, extract the bits of the given VAL
582         using an src_offset of zero if container is not a scalar.
583
584 2018-09-06  Simon Ser  <contact@emersion.fr>
585
586         PR gdb/23105
587         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
588         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
589         * fbsd-tdep.c (fbsd_make_note_desc): New.
590         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
591         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
592         * target.h (enum target_object) Add FreeBSD-specific
593         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
594
595 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
596
597         * compile/compile-c.h (generate_c_for_variable_locations):
598         Change reference to pointer.
599         * compile/compile-c-support.c (compile_program) <compute>:
600         Likewise.
601         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
602         (generate_c_for_for_one_variable): Likewise
603         (generate_c_for_variable_locations): Likewise
604         * compile/compile-c-types.c (compile_c_instance::convert_type):
605         Likewise
606         * compile/compile-cplus-symbols.c (convert_one_symbol):
607         std::move the scope passed to enter_scope.
608         * compile/compile-cplus-types.c
609         (compile_cplus_instance::enter_scope): Make parameter
610         rvalue-reference.
611         (compile_cplus_instance::new_scope): Change reference to
612         pointer.
613         (compile_cplus_instance::convert_type): Likewise
614         (compile_cplus_convert_typedef): std::move the scope passed to
615         enter_scope.
616         (compile_cplus_convert_struct_or_union): Likewise.
617         (compile_cplus_convert_enum): Likewise.
618         (compile_cplus_convert_namespace): Likewise.
619         * compile/compile-cplus.h (compile_cplus_instance)
620         <enter_scope>: Make parameter rvalue-reference.
621         * compile/compile-internal.h (compile_instance)
622         <get_cached_type>: Likewise
623         * compile/compile-loc2c.c (push): Likewise
624         (pushf): Likewise
625         (unary): Likewise
626         (binary): Likewise
627         (print_label): Likewise
628         (pushf_register_address): Likewise
629         (pushf_register): Likewise
630         (do_compile_dwarf_expr_to_c): Likewise
631         (compile_dwarf_expr_to_c): Likewise
632         (compile_dwarf_bounds_to_c): Likewise
633         * compile/compile.c (compile_instance::get_cached_type):
634         Likewise
635         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
636         (compile_dwarf_bounds_to_c): Likewise
637         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
638         (dwarf2_compile_property_to_c): Likewise
639         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
640         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
641         Likewise
642
643 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
644
645         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
646         * tui/tui-data.c (init_content_element): Don't initialize it.
647
648 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
649
650         * tui/tui-data.h (struct tui_win_info)
651         <detail::opaque>: Remove.
652         * tui/tui-data.c (init_win_info): Remove assignment.
653
654 2018-09-05  Tom Tromey  <tom@tromey.com>
655
656         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
657         -Wformat-nonliteral.
658         * target-float.c (host_float_ops<T>::to_string)
659         (host_float_ops<T>::from_string): Use
660         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
661         * configure: Rebuild.
662
663 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
664
665         * printcmd.c (printf_c_string): Use
666         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
667         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
668
669 2018-09-05  Tom Tromey  <tom@tromey.com>
670
671         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
672
673 2018-09-05  Tom de Vries  <tdevries@suse.de>
674
675         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
676         with resolve_abstract_p == true.
677         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
678         defaulting to false. Propagate resolve_abstract_p to
679         dwarf2_fetch_die_loc_sect_off.
680         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
681         parameter, defaulting to false.
682         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
683         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
684         parameter.
685         * dwarf2read.h (struct die_info): Forward-declare.
686         (die_info_ptr): New typedef.
687         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
688
689 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
690
691         GDB 8.2 released.
692
693 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
694             Pedro Alves  <palves@redhat.com>
695
696         * gnulib/Makefile.in (aclocal_m4_deps): Move to
697         "aclocal-m4-deps.mk".  Include file here.
698         $(srcdir)/aclocal.m4: Add "configure.ac".
699         * gnulib/aclocal-m4-deps.mk: New file.
700         * gnulib/update-gnulib.sh: Automatically update
701         "aclocal-m4-deps.mk".
702
703 2018-09-04  Tom Tromey  <tom@tromey.com>
704
705         * configure: Rebuild.
706         * configure.ac: Remove multi-ice code.
707
708 2018-09-04  Tom Tromey  <tom@tromey.com>
709
710         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
711         (ada-exp.o): Update.
712
713 2018-09-04  Tom Tromey  <tom@tromey.com>
714
715         * Makefile.in (printcmd.o, target-float.o): Remove.
716         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
717
718 2018-09-04  Tom Tromey  <tom@tromey.com>
719
720         * gnulib/Makefile.in: Remove obsolete comment.
721         * Makefile.in: Remove obsolete comment.
722
723 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
724
725         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
726         line with '+'.
727
728 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
729
730         * riscv-tdep.c: Add 'prologue-value.h' include.
731         (struct riscv_unwind_cache): New struct.
732         (riscv_debug_unwinder): New global.
733         (riscv_scan_prologue): Update arguments, capture register details
734         from prologue scan.
735         (riscv_skip_prologue): Reformat arguments line, move end of
736         prologue calculation into riscv_scan_prologue.
737         (riscv_frame_cache): Update return type, create
738         riscv_unwind_cache, scan the prologue, and fill in remaining cache
739         details.
740         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
741         (riscv_frame_prev_register): Use the trad_frame within the
742         riscv_unwind_cache.
743         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
744         flag.
745
746 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
747
748         * trad-frame.h (trad_frame_set_realreg): Declare.
749         (trad_frame_set_addr): Declare.
750         * trad-frame.c (trad_frame_set_realreg): Define new function.
751         (trad_frame_set_addr): Define new function.
752         (trad_frame_set_reg_realreg): Use new function.
753         (trad_frame_set_reg_addr): Use new function.
754
755 2018-09-01  Keith Seitz  <keiths@redhat.com>
756
757         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
758         pulongest instead of "%lld".
759         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
760         ATTRIBUTE_UNUSED.
761
762 2018-08-31  Tom Tromey  <tom@tromey.com>
763
764         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
765         variant part type.
766
767 2018-08-31  Pedro Alves  <palves@redhat.com>
768
769         * gdbarch.h: Regenerate.
770
771 2018-08-31  Pedro Alves  <palves@redhat.com>
772
773         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
774         * target.h (Hardware watchpoint interfaces): Describe
775         continuable/steppable/non-steppable watchpoints.
776         * gdbarch.h, gdbarch.c: Regenerate.
777
778 2018-08-31  Pedro Alves  <palves@redhat.com>
779
780         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
781         Delete.
782         * s390-linux-nat.c
783         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
784         * target.h (target_ops::have_continuable_watchpoint): Delete.
785         (target_have_continuable_watchpoint): Delete.
786         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
787         * target-delegates.c: Regenerate.
788
789 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
790
791         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
792         the files present in "gnulib/import/m4/".
793
794 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
795
796         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
797         c.sw, c.swsp, and c.sdsp.
798
799 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
800
801         * riscv-tdep.c (struct riscv_inferior_data): Delete.
802         (riscv_read_misa_reg): Don't cache value read into inferior data.
803         (riscv_new_inferior_data): Delete.
804         (riscv_inferior_data_cleanup): Delete.
805         (riscv_inferior_data): Delete.
806         (riscv_invalidate_inferior_data): Delete.
807         (_initialize_riscv_tdep): Remove initialisation of inferior data.
808
809 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
810
811         * compile/compile-cplus-types.c
812         (compile_cplus_instance::leave_scope): Take the address of scope
813         object.
814         (compile_cplus_instance::convert_qualified_base): Compare quals
815         to 0.
816
817 2018-08-30  Keith Seitz  <keiths@redhat.com>
818
819         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
820         Use "%s" and host_address_to_string instead of "%p" in printf.
821
822 2018-08-29  Keith Seitz  <keiths@redhat.com>
823
824         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
825         and compile-cplus-types.c.
826         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
827         * c-lang.c (cplus_language_defn): Set C++ compile functions.
828         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
829         Declare.
830         * compile/compile-c-support.c: Include compile-cplus.h.
831         (load_libcompile): Templatize.
832         (get_compile_context): "New" function.
833         (c_get_compile_context): Use get_compile_context.
834         (cplus_get_compile_context): New function.
835         (cplus_push_user_expression, cplus_pop_user_expression)
836         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
837         (cplus_compute_program): Define new structs/functions.
838         * compile/compile-cplus-symmbols.c: New file.
839         * compile/compile-cplus-types.c: New file.
840         * compile/compile-cplus.h: New file.
841         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
842         Declare.
843         * compile/compile-object-load.c (get_out_value_type): Use
844         strncmp_iw when comparing symbol names.
845         (compile_object_load): Add mst_bss and mst_data.
846         * compile/compile.c (_initialize_compile): Remove
847         -Wno-implicit-function-declaration from `compile_args'.
848         * compile/gcc-cp-plugin.h: New file.
849         * NEWS: Mention C++ compile support and new debug options.
850
851 2018-08-29  Keith Seitz  <keiths@redhat.com>
852
853         * linespec.c (collect_info::add_symbol): Make virtual.
854         (struct symbol_searcher_collect_info): New struct.
855         (symbol_searcher::find_all_symbols): New method.
856         * symtab.h (class symbol_searcher): New class.
857
858 2018-08-29  Keith Seitz  <keiths@redhat.com>
859
860         * linespec.c (struct linespec) <function_symbols, label_symbols>:
861         Change to vector of block_symbol.  Update all users.
862         (struct collect_info) <symbols>: Likewise.
863         (collect_info::add_symbol): Take block_symbol as argument.
864         Update all callers.
865         (decode_compound_collector) <m_symbols>: Change type to vector
866         of block_symbol.  Update all users.
867         (decode_compound_collector::operator ()): Change parameter type
868         to block_symbol.
869         (find_method, find_function_symbols, find_linespec_symbols)
870         (find_label_symbols_in_block, find_label_symbols): Change symbol
871         vectors to block_symbol vectors.
872         * symtab.h (symbol_found_callback_ftype): Change parameter type to
873         block_symbol.
874
875 2018-08-29  Keith Seitz  <keiths@redhat.com>
876
877         * linespec.c (symbolp): Remove typedef and VEC definitions.
878         (bound_minimal_symbol_d): Likewise.
879
880 2018-08-29  Keith Seitz  <keiths@redhat.com>
881
882         * linespec.c (decode_compound_collector::decode_compound_collector):
883         Remove initialization for `m_symtabs'.
884         (decode_compound_collector::release_symbols): Change return type
885         to std::vector.  Update all callers.
886         (class decode_compound_collector) <m_symbols>: Change type to
887         std::vector.
888         (lookup_prefix_sym): Change return type to std::vector.  Update all
889         callers.
890         (compare_symbols): Remove.
891         (std_compare_symbols): Rename to `compare_symbols'.
892         (find_method): Change `sym_classes' parameter to std::vector.
893         Update all callers.  Use std::sort to sort sym_classes.
894         (find_linespec_symbols): Remove cleanup.
895
896 2018-08-29  Keith Seitz  <keiths@redhat.com>
897
898         * linespec.c (struct linespec) <minimal_symbols>: Change type to
899         std::vector.  Update all users.
900         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
901         (struct collect_info) <minimal_symbols>: Likewise.
902         (compare_msymbols): Return bool.  Change parameters to const
903         bound_minimal_symbol references.
904         (find_method, find_function_symbols, find_linespec_symbols): Change
905         `minsyms' parameter to std::vector.  Update all callers.
906
907 2018-08-29  Keith Seitz  <keiths@redhat.com>
908
909         * linespec.c (struct linespec) <label_symbols>: Change type to
910         std::vector.  Update all users.
911         (find_label_symbols_in_block): Change `result' parameter to
912         std::vector.  Update all callers.
913         (find_label_symbols): Return std::vector.  Update all callers.
914
915 2018-08-29  Keith Seitz  <keiths@redhat.com>
916
917         * linespec.c (struct linespec) <function_symbols>: Change type to
918         std::vector.  Update all users.
919         (struct collect_info) <function_symbols>: Likewise.
920         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
921         (std_compare_symbols): New function.
922         (find_method, find_function_symbols, find_linespec_symbols)
923         (find_label_symbols_in_block): Change `symbols' parameter to
924         std::vector.  Update all callers.
925         (find_label_symbols): Likewise for `function_symbols' and
926         `label_funcs_ret'.
927
928 2018-08-29  Keith Seitz  <keiths@redhat.com>
929
930         * linespec.c (symtab_vector_up): Define.
931         (struct linespec) <file_symtabs>: Change type to std::vector *.
932         Update all uses.
933         (struct collect_info) <file_symtabs>: Likewise.
934         (collect_symtabs_from_filename): Return symtab_vector_up.
935         Update all callers.
936         (decode_objc): Remove cleanup.
937         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
938         (symtab_collector::release_symtabs): Return symtab_vector_up.
939         Update all callers.
940         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
941         Update all users.
942         (collect_symtabs_from_filename, symtabs_from_filename): Return
943         symtab_vector_up.  Update all callers.
944
945 2018-08-29  Tom Tromey  <tom@tromey.com>
946
947         * csky-tdep.c (csky_analyze_prologue): Use
948         core_addr_to_string_nz.
949
950 2018-08-29  Tom Tromey  <tom@tromey.com>
951
952         * windows-nat.c (struct xlate_exception) <them>: Change type to
953         DWORD.
954         (xlate): Fix formatting.  Remove last entry.
955         (struct xlate_exception, xlate): Comment out.
956         (windows_nat_target::resume): Use ranged for.
957
958 2018-08-29  Jim Wilson  <jimw@sifive.com>
959
960         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
961         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
962         of NT_PRFPREG.
963         (riscv_linux_nat_target::store_registers): Likewise.
964
965 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
966
967         PR gdb/23555
968         PR gdb/23558
969         * gnulib/aclocal.m4: Regenerate.
970         * gnulib/config.in: Regenerate.
971         * gnulib/configure: Regenerate.
972         * gnulib/import/Makefile.am: Update.
973         * gnulib/import/Makefile.in: Update.
974         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
975         * gnulib/import/_Noreturn.h: ... this.
976         * gnulib/import/alloca.in.h: Update.
977         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
978         * gnulib/import/arg-nonnull.h: ... this.
979         * gnulib/import/assure.h: Update.
980         * gnulib/import/at-func.c: Update.
981         * gnulib/import/basename-lgpl.c: Update.
982         * gnulib/import/extra/snippet/c++defs.h: Rename to...
983         * gnulib/import/c++defs.h: ... this.
984         * gnulib/import/canonicalize-lgpl.c: Update.
985         * gnulib/import/cdefs.h: Update.
986         * gnulib/import/chdir-long.c: Update.
987         * gnulib/import/chdir-long.h: Update.
988         * gnulib/import/cloexec.c: Update.
989         * gnulib/import/cloexec.h: Update.
990         * gnulib/import/close.c: Update.
991         * gnulib/import/closedir.c: Update.
992         * gnulib/import/config.charset: Update.
993         * gnulib/import/dirent-private.h: Update.
994         * gnulib/import/dirent.in.h: Update.
995         * gnulib/import/dirfd.c: Update.
996         * gnulib/import/dirname-lgpl.c: Update.
997         * gnulib/import/dirname.h: Update.
998         * gnulib/import/dosname.h: Update.
999         * gnulib/import/dup-safer-flag.c: Update.
1000         * gnulib/import/dup-safer.c: Update.
1001         * gnulib/import/dup.c: Update.
1002         * gnulib/import/dup2.c: Update.
1003         * gnulib/import/errno.in.h: Update.
1004         * gnulib/import/error.c: Update.
1005         * gnulib/import/error.h: Update.
1006         * gnulib/import/exitfail.c: Update.
1007         * gnulib/import/exitfail.h: Update.
1008         * gnulib/import/extra/update-copyright: Update.
1009         * gnulib/import/fchdir.c: Update.
1010         * gnulib/import/fcntl.c: Update.
1011         * gnulib/import/fcntl.in.h: Update.
1012         * gnulib/import/fd-hook.c: Update.
1013         * gnulib/import/fd-hook.h: Update.
1014         * gnulib/import/fd-safer-flag.c: Update.
1015         * gnulib/import/fd-safer.c: Update.
1016         * gnulib/import/fdopendir.c: Update.
1017         * gnulib/import/filename.h: Update.
1018         * gnulib/import/filenamecat-lgpl.c: Update.
1019         * gnulib/import/filenamecat.h: Update.
1020         * gnulib/import/flexmember.h: Update.
1021         * gnulib/import/float+.h: Update.
1022         * gnulib/import/float.c: Update.
1023         * gnulib/import/float.in.h: Update.
1024         * gnulib/import/fnmatch.c: Update.
1025         * gnulib/import/fnmatch.in.h: Update.
1026         * gnulib/import/fnmatch_loop.c: Update.
1027         * gnulib/import/fpucw.h: Update.
1028         * gnulib/import/frexp.c: Update.
1029         * gnulib/import/frexpl.c: Update.
1030         * gnulib/import/fstat.c: Update.
1031         * gnulib/import/fstatat.c: Update.
1032         * gnulib/import/getcwd-lgpl.c: Update.
1033         * gnulib/import/getcwd.c: Update.
1034         * gnulib/import/getdtablesize.c: Update.
1035         * gnulib/import/getlogin_r.c: Update.
1036         * gnulib/import/getprogname.c: Update.
1037         * gnulib/import/getprogname.h: Update.
1038         * gnulib/import/gettext.h: Update.
1039         * gnulib/import/gettimeofday.c: Update.
1040         * gnulib/import/glob-libc.h: Update.
1041         * gnulib/import/glob.c: Update.
1042         * gnulib/import/glob.in.h: Update.
1043         * gnulib/import/glob_internal.h: Update.
1044         * gnulib/import/glob_pattern_p.c: Update.
1045         * gnulib/import/globfree.c: Update.
1046         * gnulib/import/hard-locale.c: Update.
1047         * gnulib/import/hard-locale.h: Update.
1048         * gnulib/import/intprops.h: Update.
1049         * gnulib/import/inttypes.in.h: Update.
1050         * gnulib/import/isnan.c: Update.
1051         * gnulib/import/isnand-nolibm.h: Update.
1052         * gnulib/import/isnand.c: Update.
1053         * gnulib/import/isnanl-nolibm.h: Update.
1054         * gnulib/import/isnanl.c: Update.
1055         * gnulib/import/itold.c: Update.
1056         * gnulib/import/libc-config.h: Update.
1057         * gnulib/import/limits.in.h: Update.
1058         * gnulib/import/localcharset.c: Update.
1059         * gnulib/import/localcharset.h: Update.
1060         * gnulib/import/localtime-buffer.c: Update.
1061         * gnulib/import/localtime-buffer.h: Update.
1062         * gnulib/import/lstat.c: Update.
1063         * gnulib/import/m4/00gnulib.m4: Update.
1064         * gnulib/import/m4/__inline.m4: Update.
1065         * gnulib/import/m4/absolute-header.m4: Update.
1066         * gnulib/import/m4/alloca.m4: Update.
1067         * gnulib/import/m4/builtin-expect.m4: Update.
1068         * gnulib/import/m4/canonicalize.m4: Update.
1069         * gnulib/import/m4/chdir-long.m4: Update.
1070         * gnulib/import/m4/close.m4: Update.
1071         * gnulib/import/m4/closedir.m4: Update.
1072         * gnulib/import/m4/configmake.m4: Update.
1073         * gnulib/import/m4/d-ino.m4: Update.
1074         * gnulib/import/m4/d-type.m4: Update.
1075         * gnulib/import/m4/dirent_h.m4: Update.
1076         * gnulib/import/m4/dirfd.m4: Update.
1077         * gnulib/import/m4/dirname.m4: Update.
1078         * gnulib/import/m4/double-slash-root.m4: Update.
1079         * gnulib/import/m4/dup.m4: Update.
1080         * gnulib/import/m4/dup2.m4: Update.
1081         * gnulib/import/m4/eealloc.m4: Update.
1082         * gnulib/import/m4/environ.m4: Update.
1083         * gnulib/import/m4/errno_h.m4: Update.
1084         * gnulib/import/m4/error.m4: Update.
1085         * gnulib/import/m4/exponentd.m4: Update.
1086         * gnulib/import/m4/exponentl.m4: Update.
1087         * gnulib/import/m4/extensions.m4: Update.
1088         * gnulib/import/m4/extern-inline.m4: Update.
1089         * gnulib/import/m4/fchdir.m4: Update.
1090         * gnulib/import/m4/fcntl-o.m4: Update.
1091         * gnulib/import/m4/fcntl.m4: Update.
1092         * gnulib/import/m4/fcntl_h.m4: Update.
1093         * gnulib/import/m4/fdopendir.m4: Update.
1094         * gnulib/import/m4/filenamecat.m4: Update.
1095         * gnulib/import/m4/flexmember.m4: Update.
1096         * gnulib/import/m4/float_h.m4: Update.
1097         * gnulib/import/m4/fnmatch.m4: Update.
1098         * gnulib/import/m4/fnmatch_h.m4: Update.
1099         * gnulib/import/m4/fpieee.m4: Update.
1100         * gnulib/import/m4/frexp.m4: Update.
1101         * gnulib/import/m4/frexpl.m4: Update.
1102         * gnulib/import/m4/fstat.m4: Update.
1103         * gnulib/import/m4/fstatat.m4: Update.
1104         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1105         * gnulib/import/m4/getcwd-path-max.m4: Update.
1106         * gnulib/import/m4/getcwd.m4: Update.
1107         * gnulib/import/m4/getdtablesize.m4: Update.
1108         * gnulib/import/m4/getlogin.m4: Update.
1109         * gnulib/import/m4/getlogin_r.m4: Update.
1110         * gnulib/import/m4/getpagesize.m4: Update.
1111         * gnulib/import/m4/getprogname.m4: Update.
1112         * gnulib/import/m4/gettimeofday.m4: Update.
1113         * gnulib/import/m4/glibc21.m4: Update.
1114         * gnulib/import/m4/glob.m4: Update.
1115         * gnulib/import/m4/glob_h.m4: Update.
1116         * gnulib/import/m4/gnulib-cache.m4: Update.
1117         * gnulib/import/m4/gnulib-common.m4: Update.
1118         * gnulib/import/m4/gnulib-comp.m4: Update.
1119         * gnulib/import/m4/gnulib-tool.m4: Update.
1120         * gnulib/import/m4/hard-locale.m4: Update.
1121         * gnulib/import/m4/include_next.m4: Update.
1122         * gnulib/import/m4/inttypes-pri.m4: Update.
1123         * gnulib/import/m4/inttypes.m4: Update.
1124         * gnulib/import/m4/isnand.m4: Update.
1125         * gnulib/import/m4/isnanl.m4: Update.
1126         * gnulib/import/m4/largefile.m4: Update.
1127         * gnulib/import/m4/limits-h.m4: Update.
1128         * gnulib/import/m4/localcharset.m4: Update.
1129         * gnulib/import/m4/locale-fr.m4: Update.
1130         * gnulib/import/m4/locale-ja.m4: Update.
1131         * gnulib/import/m4/locale-zh.m4: Update.
1132         * gnulib/import/m4/localtime-buffer.m4: Update.
1133         * gnulib/import/m4/longlong.m4: Update.
1134         * gnulib/import/m4/lstat.m4: Update.
1135         * gnulib/import/m4/malloc.m4: Update.
1136         * gnulib/import/m4/malloca.m4: Update.
1137         * gnulib/import/m4/math_h.m4: Update.
1138         * gnulib/import/m4/mbrtowc.m4: Update.
1139         * gnulib/import/m4/mbsinit.m4: Update.
1140         * gnulib/import/m4/mbsrtowcs.m4: Update.
1141         * gnulib/import/m4/mbstate_t.m4: Update.
1142         * gnulib/import/m4/memchr.m4: Update.
1143         * gnulib/import/m4/memmem.m4: Update.
1144         * gnulib/import/m4/mempcpy.m4: Update.
1145         * gnulib/import/m4/memrchr.m4: Update.
1146         * gnulib/import/m4/mkdir.m4: Update.
1147         * gnulib/import/m4/mkstemp.m4: Update.
1148         * gnulib/import/m4/mmap-anon.m4: Update.
1149         * gnulib/import/m4/mode_t.m4: Update.
1150         * gnulib/import/m4/msvc-inval.m4: Update.
1151         * gnulib/import/m4/msvc-nothrow.m4: Update.
1152         * gnulib/import/m4/multiarch.m4: Update.
1153         * gnulib/import/m4/nocrash.m4: Update.
1154         * gnulib/import/m4/off_t.m4: Update.
1155         * gnulib/import/m4/onceonly.m4: Update.
1156         * gnulib/import/m4/open-cloexec.m4: Update.
1157         * gnulib/import/m4/open.m4: Update.
1158         * gnulib/import/m4/openat.m4: Update.
1159         * gnulib/import/m4/opendir.m4: Update.
1160         * gnulib/import/m4/pathmax.m4: Update.
1161         * gnulib/import/m4/rawmemchr.m4: Update.
1162         * gnulib/import/m4/readdir.m4: Update.
1163         * gnulib/import/m4/readlink.m4: Update.
1164         * gnulib/import/m4/realloc.m4: Update.
1165         * gnulib/import/m4/rename.m4: Update.
1166         * gnulib/import/m4/rewinddir.m4: Update.
1167         * gnulib/import/m4/rmdir.m4: Update.
1168         * gnulib/import/m4/save-cwd.m4: Update.
1169         * gnulib/import/m4/secure_getenv.m4: Update.
1170         * gnulib/import/m4/setenv.m4: Update.
1171         * gnulib/import/m4/signal_h.m4: Update.
1172         * gnulib/import/m4/ssize_t.m4: Update.
1173         * gnulib/import/m4/stat-time.m4: Update.
1174         * gnulib/import/m4/stat.m4: Update.
1175         * gnulib/import/m4/std-gnu11.m4: Update.
1176         * gnulib/import/m4/stdbool.m4: Update.
1177         * gnulib/import/m4/stddef_h.m4: Update.
1178         * gnulib/import/m4/stdint.m4: Update.
1179         * gnulib/import/m4/stdio_h.m4: Update.
1180         * gnulib/import/m4/stdlib_h.m4: Update.
1181         * gnulib/import/m4/strchrnul.m4: Update.
1182         * gnulib/import/m4/strdup.m4: Update.
1183         * gnulib/import/m4/strerror.m4: Update.
1184         * gnulib/import/m4/string_h.m4: Update.
1185         * gnulib/import/m4/strstr.m4: Update.
1186         * gnulib/import/m4/strtok_r.m4: Update.
1187         * gnulib/import/m4/sys_socket_h.m4: Update.
1188         * gnulib/import/m4/sys_stat_h.m4: Update.
1189         * gnulib/import/m4/sys_time_h.m4: Update.
1190         * gnulib/import/m4/sys_types_h.m4: Update.
1191         * gnulib/import/m4/tempname.m4: Update.
1192         * gnulib/import/m4/time_h.m4: Update.
1193         * gnulib/import/m4/unistd-safer.m4: Update.
1194         * gnulib/import/m4/unistd_h.m4: Update.
1195         * gnulib/import/m4/warn-on-use.m4: Update.
1196         * gnulib/import/m4/wchar_h.m4: Update.
1197         * gnulib/import/m4/wchar_t.m4: Update.
1198         * gnulib/import/m4/wctype_h.m4: Update.
1199         * gnulib/import/m4/wint_t.m4: Update.
1200         * gnulib/import/malloc.c: Update.
1201         * gnulib/import/malloc/scratch_buffer.h: Update.
1202         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1203         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1204         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1205         * gnulib/import/malloca.c: Update.
1206         * gnulib/import/malloca.h: Update.
1207         * gnulib/import/malloca.valgrind: Update.
1208         * gnulib/import/math.in.h: Update.
1209         * gnulib/import/mbrtowc.c: Update.
1210         * gnulib/import/mbsinit.c: Update.
1211         * gnulib/import/mbsrtowcs-impl.h: Update.
1212         * gnulib/import/mbsrtowcs-state.c: Update.
1213         * gnulib/import/mbsrtowcs.c: Update.
1214         * gnulib/import/memchr.c: Update.
1215         * gnulib/import/memmem.c: Update.
1216         * gnulib/import/mempcpy.c: Update.
1217         * gnulib/import/memrchr.c: Update.
1218         * gnulib/import/mkdir.c: Update.
1219         * gnulib/import/mkstemp.c: Update.
1220         * gnulib/import/msvc-inval.c: Update.
1221         * gnulib/import/msvc-inval.h: Update.
1222         * gnulib/import/msvc-nothrow.c: Update.
1223         * gnulib/import/msvc-nothrow.h: Update.
1224         * gnulib/import/open.c: Update.
1225         * gnulib/import/openat-die.c: Update.
1226         * gnulib/import/openat-priv.h: Update.
1227         * gnulib/import/openat-proc.c: Update.
1228         * gnulib/import/openat.c: Update.
1229         * gnulib/import/openat.h: Update.
1230         * gnulib/import/opendir.c: Update.
1231         * gnulib/import/pathmax.h: Update.
1232         * gnulib/import/pipe-safer.c: Update.
1233         * gnulib/import/rawmemchr.c: Update.
1234         * gnulib/import/readdir.c: Update.
1235         * gnulib/import/readlink.c: Update.
1236         * gnulib/import/realloc.c: Update.
1237         * gnulib/import/ref-add.sin: Update.
1238         * gnulib/import/ref-del.sin: Update.
1239         * gnulib/import/rename.c: Update.
1240         * gnulib/import/rewinddir.c: Update.
1241         * gnulib/import/rmdir.c: Update.
1242         * gnulib/import/same-inode.h: Update.
1243         * gnulib/import/save-cwd.c: Update.
1244         * gnulib/import/save-cwd.h: Update.
1245         * gnulib/import/scratch_buffer.h: Update.
1246         * gnulib/import/secure_getenv.c: Update.
1247         * gnulib/import/setenv.c: Update.
1248         * gnulib/import/signal.in.h: Update.
1249         * gnulib/import/stat-time.c: Update.
1250         * gnulib/import/stat-time.h: Update.
1251         * gnulib/import/stat-w32.c: Update.
1252         * gnulib/import/stat-w32.h: Update.
1253         * gnulib/import/stat.c: Update.
1254         * gnulib/import/stdbool.in.h: Update.
1255         * gnulib/import/stddef.in.h: Update.
1256         * gnulib/import/stdint.in.h: Update.
1257         * gnulib/import/stdio.in.h: Update.
1258         * gnulib/import/stdlib.in.h: Update.
1259         * gnulib/import/str-two-way.h: Update.
1260         * gnulib/import/strchrnul.c: Update.
1261         * gnulib/import/strdup.c: Update.
1262         * gnulib/import/streq.h: Update.
1263         * gnulib/import/strerror-override.c: Update.
1264         * gnulib/import/strerror-override.h: Update.
1265         * gnulib/import/strerror.c: Update.
1266         * gnulib/import/string.in.h: Update.
1267         * gnulib/import/stripslash.c: Update.
1268         * gnulib/import/strnlen1.c: Update.
1269         * gnulib/import/strnlen1.h: Update.
1270         * gnulib/import/strstr.c: Update.
1271         * gnulib/import/strtok_r.c: Update.
1272         * gnulib/import/sys_stat.in.h: Update.
1273         * gnulib/import/sys_time.in.h: Update.
1274         * gnulib/import/sys_types.in.h: Update.
1275         * gnulib/import/tempname.c: Update.
1276         * gnulib/import/tempname.h: Update.
1277         * gnulib/import/time.in.h: Update.
1278         * gnulib/import/unistd--.h: Update.
1279         * gnulib/import/unistd-safer.h: Update.
1280         * gnulib/import/unistd.in.h: Update.
1281         * gnulib/import/unsetenv.c: Update.
1282         * gnulib/import/verify.h: Update.
1283         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1284         * gnulib/import/wchar.in.h: Update.
1285         * gnulib/import/wctype.in.h: Update.
1286         * gnulib/import/xalloc-oversized.h: Update.
1287         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1288         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1289
1290 2018-08-16  Gary Benson <gbenson@redhat.com>
1291
1292         PR gdb/13000:
1293         * gdb/main.c (captured_main_1): Exit with nonzero status
1294         in batch mode if the last command to be executed failed.
1295         * NEWS: Mention the above.
1296
1297 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
1298
1299         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
1300         end of warning message.
1301
1302 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
1303
1304         PR gdb/22943:
1305         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
1306         (aarch64_extract_return_value): Use
1307         aapcs_is_vfp_call_or_return_candidate.
1308         (aarch64_return_in_memory): Likewise.
1309         (aarch64_store_return_value): Likewise.
1310
1311 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
1312
1313         * aarch64-tdep.c
1314         (aapcs_is_vfp_call_or_return_candidate): Make static
1315         (pass_in_v_or_stack): Remove function.
1316         (pass_in_v_vfp_candidate): New function.
1317         (aarch64_push_dummy_call): Check for float register candidates.
1318
1319 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
1320
1321         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
1322         (aapcs_is_vfp_call_or_return_candidate_1): New function.
1323         (aapcs_is_vfp_call_or_return_candidate): Likewise.
1324
1325 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
1326
1327         PR build/23399
1328         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
1329         (struct ipa_sym_addresses): Rename to...
1330         (struct ipa_sym_addresses_common): ... this.
1331         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
1332
1333 2018-08-28  Tom Tromey  <tom@tromey.com>
1334
1335         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
1336         (token_fifo): Now a std::vector.
1337         (yylex, c_parse): Update.
1338         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
1339         (token_fifo): Now a std::vector.
1340         (yylex, d_parse): Update.
1341         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
1342         (token_fifo): Now a std::vector.
1343         (yylex, go_parse): Update.
1344
1345 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
1346
1347         * parser-defs.h (struct type_stack) <elements>: Change type to
1348         std::vector<union type_stack_elt>.
1349         <depth, size>: Remove.
1350         * parse.c (parse_exp_in_context_1): Adjust.
1351         (type_stack_reserve): Remove.
1352         (check_type_stack_depth): Remove.
1353         (insert_into_type_stack): Adjust to std::vector.
1354         (insert_type): Likewise.
1355         (push_type): Likewise.
1356         (push_type_int): Likewise.
1357         (insert_type_address_space): Likewise.
1358         (pop_type): Likewise.
1359         (pop_type_int): Likewise.
1360         (pop_typelist): Likewise.
1361         (pop_type_stack): Likewise.
1362         (append_type_stack): Likewise.
1363         (push_type_stack): Likewise.
1364         (get_type_stack): Likewise.
1365         (type_stack_cleanup): Likewise.
1366         (push_typelist): Likewise.
1367         (follow_types): Likewise.
1368         (_initialize_parse): Likewise.
1369
1370 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1371
1372         * NEWS: Mention csky target.
1373
1374 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
1375             Hafiz Abid Qadeer  <abidh@codesourcery.com>
1376             Don Breazeal  <donb@codesourcery.com>
1377
1378         * csky-linux-tdep.c: New file.
1379         * csky-tdep.c: Likewise.
1380         * csky-tdep.h: Likewise.
1381         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
1382         csky-tdep.o.
1383         (HFILES_NO_SRCDIR): Add csky-tdep.h.
1384         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
1385         * configure.tgt: Add csky support.
1386
1387 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
1388
1389         * python/py-framefilter.c (py_print_frame): Print frame architecture
1390         when printing on an MI output.
1391
1392 2018-08-27  Tom Tromey  <tom@tromey.com>
1393
1394         PR build/23087:
1395         * configure: Rebuild.
1396         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
1397
1398 2018-08-27  Tom Tromey  <tom@tromey.com>
1399
1400         * aarch64-linux-tdep.c
1401         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
1402         casts to int.
1403
1404 2018-08-27  Tom Tromey  <tom@tromey.com>
1405
1406         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
1407         unsigned.
1408         (ppc64_standard_linkage1, ppc64_standard_linkage2)
1409         (ppc64_standard_linkage3, ppc64_standard_linkage4)
1410         (ppc64_standard_linkage5, ppc64_standard_linkage6)
1411         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
1412         unsigned.
1413
1414 2018-08-27  Tom Tromey  <tom@tromey.com>
1415
1416         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
1417         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
1418
1419 2018-08-27  Tom Tromey  <tom@tromey.com>
1420
1421         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
1422         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
1423         ULONGEST_MAX.
1424         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
1425         ULONGEST_MAX.
1426         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
1427         ULONGEST_MAX.
1428         * sparc-linux-tdep.c (sparc32_linux_sigframe)
1429         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
1430         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
1431         ULONGEST_MAX.
1432         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
1433         (ppc64_linux_sigaction_tramp_frame)
1434         (ppc32_linux_sighandler_tramp_frame)
1435         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
1436         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
1437         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
1438         * mn10300-linux-tdep.c (am33_linux_sigframe)
1439         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
1440         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
1441         * mips-linux-tdep.c (mips_linux_o32_sigframe)
1442         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
1443         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
1444         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
1445         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
1446         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
1447         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
1448         * microblaze-linux-tdep.c
1449         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
1450         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
1451         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
1452         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
1453         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
1454         * common/common-types.h (ULONGEST_MAX): New define.
1455         (CORE_ADDR_MAX): Fix formatting.
1456         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
1457         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
1458         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
1459         (arm_linux_rt_sigreturn_tramp_frame)
1460         (arm_eabi_linux_sigreturn_tramp_frame)
1461         (arm_eabi_linux_rt_sigreturn_tramp_frame)
1462         (thumb2_eabi_linux_sigreturn_tramp_frame)
1463         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
1464         (arm_linux_restart_syscall_tramp_frame)
1465         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
1466         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
1467         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
1468         ULONGEST_MAX.
1469         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
1470
1471 2018-08-27  Tom Tromey  <tom@tromey.com>
1472
1473         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
1474         CORE_ADDR_MAX.
1475         * mips-tdep.c (mips_deal_with_atomic_sequence)
1476         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
1477         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
1478         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
1479         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
1480         CORE_ADDR_MAX.
1481         * aarch64-tdep.c (aarch64_software_single_step): Use
1482         CORE_ADDR_MAX.
1483
1484 2018-08-27  Tom Tromey  <tom@tromey.com>
1485
1486         * linespec.c (complete_linespec_component): Add cast to "char".
1487         * completer.c (completion_tracker::build_completion_result): Add
1488         cast to "char".
1489
1490 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
1491
1492         * solist.h (struct solist, struct target_so_ops): Fix
1493         indentation.
1494
1495 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
1496
1497         * ada-tasks.c (ada_task_info_s): Remove typedef.
1498         (DEF_VEC_O(ada_task_info_s)): Remove.
1499         (struct ada_tasks_inferior_data): Initialize fields.
1500         <task_list>: Make an std::vector.
1501         (get_ada_tasks_inferior_data): Allocate with new.
1502         (ada_get_task_number): Adjust.
1503         (get_task_number_from_id): Likewise.
1504         (valid_task_id): Likewise.
1505         (ada_get_task_info_from_ptid): Likewise.
1506         (iterate_over_live_ada_tasks): Likewise.
1507         (add_ada_task): Likewise.
1508         (read_known_tasks): Likewise.
1509         (ada_build_task_list): Likewise.
1510         (print_ada_task_info): Likewise.
1511         (info_task): Likewise.
1512         (task_command_1): Likewise.
1513
1514 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
1515
1516         * ada-lang.c (add_angle_brackets): Return std::string.
1517
1518 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
1519
1520         * python/py-threadevent.c (py_get_event_thread): Initialize
1521         pythread.
1522
1523 2018-08-24  Pedro Alves  <palves@redhat.com>
1524
1525         * python/py-bpevent.c (create_breakpoint_event_object): Use
1526         copy-initialization.
1527         * python/py-continueevent.c (emit_continue_event): Use
1528         copy-initialization.
1529         * python/py-exitedevent.c (create_exited_event_object): Return a
1530         gdbpy_ref<>.
1531         (emit_exited_event): Use copy-initialization.
1532         * python/py-inferior.c (python_new_inferior)
1533         (python_inferior_deleted, add_thread_object): Use
1534         copy-initialization.
1535         * python/py-infevents.c (create_inferior_call_event_object)
1536         (create_register_changed_event_object)
1537         (create_memory_changed_event_object): Return a gdbpy_ref<>.
1538         (emit_inferior_call_event, emit_memory_changed_event)
1539         (emit_register_changed_event): Use copy-initialization.
1540         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1541         Return a gdbpy_ref<>.
1542         (emit_new_objfile_event): Use copy-initialization.
1543         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
1544         (emit_clear_objfiles_event): Use copy-initialization.
1545         * python/py-signalevent.c (create_signal_event_object): Use
1546         copy-initialization.
1547         * python/py-threadevent.c (create_thread_event_object): Use
1548         copy-initialization.
1549
1550 2018-08-24  Pedro Alves  <palves@redhat.com>
1551             Simon Marchi  <simon.marchi@ericsson.com>
1552
1553         PR gdb/23379
1554         * python/py-continueevent.c: Include "gdbthread.h".
1555         (create_continue_event_object): Add intro comment.  Add 'ptid'
1556         parameter.  Use it to find thread to pass to
1557         create_thread_event_object.
1558         (emit_continue_event): Pass PTID down to
1559         create_continue_event_object.
1560         * python/py-event.h (py_get_event_thread): Declare.
1561         (create_thread_event_object): Remove default from 'thread'
1562         parameter.
1563         * python/py-stopevent.c (create_stop_event_object): Use
1564         py_get_event_thread.
1565         * python/py-threadevent.c (get_event_thread): Rename to ...
1566         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
1567         and use it to find the thread.
1568         (create_thread_event_object): Assert that THREAD isn't null.
1569         Don't find the event thread here.
1570
1571 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
1572
1573         * block.h (blockrange, blockranges): New struct declarations.
1574         (struct block): Add new field named `ranges'.
1575         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
1576         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
1577         macros for accessing ranges in struct block.
1578         (make_blockranges): New declaration.
1579         block.c (make_blockranges): New function.
1580         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
1581         for block.
1582         * symtab.h (find_pc_partial_function): Add new parameter `block'.
1583         * blockframe.c (cache_pc_function_block): New static global.
1584         (clear_pc_function_cache): Clear cache_pc_function_block.
1585         (find_pc_partial_function): Move comment to symtab.h.  Add
1586         support for non-contiguous blocks.
1587         * cli/cli-cmds.c (block.h): Include.
1588         (print_disassembly): Handle printing of non-contiguous blocks.
1589         (disassemble_current_function): Likewise.
1590         (disassemble_command): Likewise.
1591
1592         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
1593         BLOCK_START.
1594         * blockframe.c (get_pc_function_start): Likewise.
1595         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
1596         (gcc_symbol_address): Likewise.
1597         * compile/compile-object-run.c (compile_object_run): Likewise.
1598         * compile/compile.c (get_expr_block_and_pc): Likewise.
1599         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
1600         (func_addr_to_tail_call_list): Likewise.
1601         * findvar.c (default_read_var_value): Likewise.
1602         * inline-frame.c (inline_frame_this_id): Likewise.
1603         (skip-inline_frames): Likewise.
1604         * infcmd.c (until_next_command): Likewise.
1605         * linespec.c (convert_linespec_to_sals): Likewise.
1606         * parse.c (parse_exp_in_context_1): Likewise.
1607         * printcmd.c (build_address_symbolic): likewise.
1608         (info_address_command): Likewise.
1609         symtab.c (find_function_start_sal): Likewise.
1610         (skip_prologue_sal): Likewise.
1611         (find_function_alias_target): Likewise.
1612         (find_gnu_ifunc): Likewise.
1613         * stack.c (find_frame_funname): Likewise.
1614         * symtab.c (fixup_symbol_section): Likewise.
1615         (find_function_start_sal): Likewise.
1616         (skip_prologue_sal): Likewsie.
1617         (find_function_alias_target): Likewise.
1618         (find_gnu_ifunc): Likewise.
1619         * tracepoint.c (info_scope_command): Likewise.
1620         * value.c (value_fn_field): Likewise.
1621
1622         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
1623         in place of find_pc_partial_function.
1624         * blockframe.c (find_function_entry_range_from_pc): New function.
1625         * symtab.h (find_function_entry_range_from_pc): Declare and document.
1626         * objfiles.c (objfile_relocate1): Relocate start and end addresses
1627         for each range in a block.
1628
1629
1630 2018-08-23  Xavier Roirand  <roirand@adacore.com>
1631
1632         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
1633         incrementation.
1634
1635 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1636
1637         * solib-svr4.c (read_program_headers_from_bfd): Return
1638         gdb::optional<gdb::byte_vector>.
1639         (svr4_exec_displacement): Adjust.
1640
1641 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1642
1643         * solib-svr4.c (read_program_header): Return
1644         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
1645         (find_program_interpreter): Return
1646         gdb::optional<gdb::byte_vector>.
1647         (scan_dyntag_auxv): Adjust.
1648         (enable_break): Adjust.
1649         (svr4_exec_displacement): Adjust.
1650
1651 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1652
1653         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
1654         * inf-child.c (inf_child_target::terminal_save_inferior): New.
1655
1656 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1657
1658         * guile/scm-string.c (gdbscm_scm_from_printf): Use
1659         string_vprintf.
1660         * guile/scm-utils.c (gdbscm_printf): Likewise.
1661         * serial.c (serial_printf): Likewise.
1662         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
1663
1664 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
1665
1666         * stack.c (print_frame): Print frame architecture when printing on
1667         an MI output.
1668         * NEWS: Mention new "arch" attribute in frame output.
1669
1670 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
1671
1672         * arch/aarch64.h (aarch64_regnum): Update comment.
1673
1674 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
1675
1676         * NEWS: Add SVE to 8.2 section.
1677
1678 2018-08-21  Pedro Alves  <palves@redhat.com>
1679
1680         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
1681         out from gdbscm_parse_function_args.
1682         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
1683         gdbscm_parse_function_args_1.
1684
1685 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
1686
1687         PR gdb/17816
1688         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
1689         operator.
1690
1691 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
1692
1693         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
1694
1695 2018-08-19  Michael Spang  <spang@google.com>
1696
1697         PR gdb/11786
1698         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
1699         for PT_TLS segments.
1700
1701 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
1702
1703         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
1704         dwarf_variable_value.
1705         * dwarf2-frame.c (class dwarf_expr_executor):
1706         Add override for dwarf_variable_value.
1707         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
1708         (class symbol_needs_eval_context): Likewise.
1709         (indirect_synthetic_pointer): Add forward declaration.
1710         (sect_variable_value): New function.
1711         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
1712         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
1713         for DW_OP_GNU_variable_value.
1714
1715 2018-08-16  Tom Tromey  <tom@tromey.com>
1716
1717         * top.c (read_command_file): Update.
1718         (command_line_input): Remove "repeat" argument.
1719         * ada-lang.c (get_selections): Update.
1720         * linespec.c (decode_line_2): Update.
1721         * defs.h (command_line_input): Remove argument.
1722         * cli/cli-script.c (read_next_line): Update.
1723         * python/py-gdb-readline.c: Update.
1724
1725 2018-08-17  Tom Tromey  <tom@tromey.com>
1726
1727         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
1728         command_line_input.
1729
1730 2018-08-15  Tom Tromey  <tom@tromey.com>
1731
1732         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
1733
1734 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
1735
1736         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
1737         If used, use find_pc_partial_function to find address range
1738         to disassemble.
1739         * mi/mi-main.c (mi_cmd_list_features): Report
1740         "data-disassemble-a-option" feature.
1741         * NEWS: Mention new -data-disassemble option -a.
1742
1743 2018-08-13  Tom Tromey  <tom@tromey.com>
1744
1745         * common/common-defs.h (_FORTIFY_SOURCE): Define.
1746
1747 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1748
1749         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
1750         (aarch64_linux_collect_sve_regset): Likewise.
1751         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
1752         * regcache.h (regcache_map_entry_size): New function.
1753
1754 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1755
1756         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
1757         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
1758         (SVE_HEADER_VL_LENGTH): Likewise.
1759         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
1760         (SVE_HEADER_FLAGS_LENGTH): Likewise.
1761         (SVE_HEADER_RESERVED_LENGTH): Likewise.
1762         (SVE_HEADER_SIZE_OFFSET): Likewise.
1763         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
1764         (SVE_HEADER_VL_OFFSET): Likewise.
1765         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
1766         (SVE_HEADER_FLAGS_OFFSET): Likewise.
1767         (SVE_HEADER_RESERVED_OFFSET): Likewise.
1768         (SVE_HEADER_SIZE): Likewise.
1769         (aarch64_linux_core_read_vq): Add function.
1770         (aarch64_linux_core_read_description): Check for SVE section.
1771
1772 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1773
1774         * aarch64-fbsd-tdep.c
1775         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
1776         collect_size.
1777         * aarch64-linux-tdep.c
1778         (aarch64_linux_iterate_over_regset_sections): Likewise.
1779         * alpha-linux-tdep.c
1780         (alpha_linux_iterate_over_regset_sections):
1781         * alpha-nbsd-tdep.c
1782         (alphanbsd_iterate_over_regset_sections): Likewise.
1783         * amd64-fbsd-tdep.c
1784         (amd64fbsd_iterate_over_regset_sections): Likewise.
1785         * amd64-linux-tdep.c
1786         (amd64_linux_iterate_over_regset_sections): Likewise.
1787         * arm-bsd-tdep.c
1788         (armbsd_iterate_over_regset_sections): Likewise.
1789         * arm-fbsd-tdep.c
1790         (arm_fbsd_iterate_over_regset_sections): Likewise.
1791         * arm-linux-tdep.c
1792         (arm_linux_iterate_over_regset_sections): Likewise.
1793         * corelow.c (get_core_registers_cb): Likewise.
1794         (core_target::fetch_registers): Likewise.
1795         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
1796         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
1797         * gdbarch.h (void): Regenerate.
1798         * gdbarch.sh: Add supply_size and collect_size.
1799         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
1800         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
1801         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
1802         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
1803         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
1804         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
1805         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
1806         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
1807         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
1808         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
1809         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
1810         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
1811         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
1812         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
1813         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
1814         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
1815         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
1816         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
1817         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
1818         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
1819         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
1820         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
1821         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
1822         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
1823         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
1824         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
1825         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
1826         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
1827         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
1828         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
1829
1830 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
1831
1832         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
1833         with string_printf.
1834
1835 2018-08-10  Keith Seitz  <keiths@redhat.com>
1836
1837         * compile/compile-c-support.c (add_code_header, add_code_footer):
1838         Move into policy class.
1839         (c_push_user_expression, pop_user_expression_nop)
1840         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
1841         (compile_program): New host class.
1842         (c_compile_program): New typedef.
1843         (c_compute_porgram): Use c_compile_program.
1844
1845 2018-08-10  Keith Seitz  <keiths@redhat.com>
1846
1847         * compile/compile-internal.h (compile_instance::~compile_instance):
1848         Remove calls to htab_delete.
1849         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
1850         * compile.c (compile_instance::compile_instance): Initialize
1851         htab unique pointers.
1852         (compile_instance::get_cached_type, compile_instance::insert_type)
1853         (compile_instance::error_symbol_once): Update for unique_ptr.
1854
1855 2018-08-10  Keith Seitz  <keiths@redhat.com>
1856
1857         * compile/compile-c-symbols.c (struct symbol_error)
1858         (hash_symbol_error, eq_symbol_error, del_symbol_error)
1859         (compile_instance::insert_symbol_error)
1860         (compile_instance::error_symbol_once): Move to ...
1861         * compile/compile.c: ... here.
1862
1863 2018-08-10  Keith Seitz  <keiths@redhat.com>
1864
1865         * compile/compile-c-support.c (c_get_compile_context): Use `new'
1866         instead of `new_compile_instance'.
1867         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
1868         Update description.
1869         If the symbol error map is not initialized, create it.
1870         (generate_c_for_for_one_symbol): Do not check/initialize
1871         the symbol error map.
1872         * compile/compile-c-types.c (compile_c_instance): Make a class.
1873         Update all callers.
1874         (compile_instance::compile_instance): Initialize the type cache.
1875         (get_cached_type): New function.
1876         (insert_type): Update description.
1877         (compile_c_instance::m_default_cflags): Define.
1878         (convert_type): Update description.  Use get_cached_type.
1879         (delete_instance): Moved to destructor.
1880         (new_compile_instance): Moved to constructor.
1881         * compile/compile-c.h (compile_c_instance): Make class inheriting
1882         from compile_instance.
1883         <base>: Remove field.
1884         <type_map, symbol_err_map>: Move to base class.
1885         <c_plugin>: Rename to `m_plugin' and remove pointer type.
1886         * compile/compile-internal.h (compile_instance): Make class.
1887         <type_map_t, symbol_err_map_t>: Define.
1888         <fe>: Rename to `m_gcc_fe'.
1889         <scope, block, gcc_target_options>: Add `m_' prefix.
1890         <m_type_map, m_symbol_err_map>: New fields, moved from
1891         compile_c_instance.
1892         <destroy>: Remove.
1893         (convert_type, new_compile_instance): Remove.
1894         * compile/compile.c (cleanup_compile_instance): Remove.
1895         (compile_to_object): Use unique_ptr to eliminate cleanups.
1896         (compile_instance::set_print_callback, compile_instance::version)
1897         (compile_instance::set_verbose)
1898         (compile_instance::set_driver_filename)
1899         (compile_instance::set_triplet_regexp)
1900         (compile_instance::set_arguments)
1901         (compile_instance::set_source_file)
1902         (compile_instance::compile): Define.
1903
1904 2018-08-10  Keith Seitz  <keiths@redhat.com>
1905
1906         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
1907         * compile/compile-c-types.c: Define GCC_METHODN macros and include
1908         gcc-c-fe.def to define C plugin.
1909         (delete_instance): Delete `c_plugin'.
1910         (new_compile_instance): Initialize `c_plugin'.
1911         * compile/compile-c.h: Include gcc_c_plugin.h.
1912         (struct compile_c_instance) <c_plugin>: New member.
1913         * gcc-c-plugin.h: New file.
1914         Update all callers with API change.
1915
1916 2018-08-10  Keith Seitz  <keiths@redhat.com>
1917
1918         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
1919         (HFILES_NO_SRCDIR): ... to here.
1920         Add compile-internal.h and compile-c.h.
1921         * compile/compile-c-support.c: Include compile-c.h.
1922         * compile/compile-c-symbols.c: Include compile-c.h.
1923         (generate_c_for_variable_locations): Update comment.
1924         * compile/compile-c-types.c: Include compile-c.h.
1925         * compile/compile-c.h: New file -- moved C language declarations
1926         from other files here.
1927         * compile/compile-internal.h: Do not include hashtab.h or
1928         common/enum-flags.h.
1929         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
1930         (gcc_convert_symbol, gcc_symbol_address)
1931         (generate_c_for_variable_locations, c_get_mode_for_size)
1932         (c_get_range_decl_name): Definitions moved to compile-c.h.
1933         * compile/compile-loc2c.c: Include compile-c.h.
1934
1935 2018-08-10  Keith Seitz  <keiths@redhat.com>
1936
1937         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
1938         (c_symbol_substitution_name): ... this.
1939         Update all callers.
1940
1941 2018-08-10  Keith Seitz  <keiths@redhat.com>
1942
1943         * compile/compile-c-support.c (c_compute_program): Use
1944         unique_xmalloc_ptr to eliminate cleanup.
1945         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
1946         Return a unique_xmalloc_ptr and eliminate cleanup.
1947         * compile/compile-internal.h (generate_c_for_variable_locations):
1948         Return unique_xmalloc_ptr and update description.
1949
1950 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
1951
1952         * corelow.c (core_target::get_core_register_section): Rename
1953         min_size to section_min_size.
1954
1955 2018-08-09  Jim Wilson  <jimw@sifive.com>
1956
1957         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
1958         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
1959         * NEWS: Mention new GNU/Linux RISC-V target.
1960         * configure.host: Add riscv*-*-linux*.
1961         * configure.nat: Add riscv*.
1962         * configure.tgt: Add riscv*-*-linux*.
1963         * riscv-linux-nat.c: New file.
1964         * riscv-linux-tdep.c: New file.
1965
1966 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
1967
1968         * infrun.c (resume): Make static, add forward declaration.
1969         (proceed): Update header comment.
1970         * infrun.h (resume): Delete declaration.
1971
1972 2018-08-09  Tom Tromey  <tom@tromey.com>
1973
1974         * riscv-tdep.h: Minor formatting fixes.
1975
1976 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
1977
1978         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
1979         * dwarf-index-cache.c (create_dir_and_check): Likewise.
1980         (test_mkdir_recursive): Likewise.
1981         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
1982
1983 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
1984
1985         * valarith.c (value_subscripted_rvalue): If an array is not in
1986         memory, and we don't know the upper bound, then we can't know that
1987         the requested element exists or not.
1988
1989 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
1990
1991         * target.c (str_comma_list_concat_elem): Fix typo in comment.
1992         (target_options_to_string): Add comment.
1993
1994 2018-08-08  Tom Tromey  <tom@tromey.com>
1995
1996         * unittests/scoped_mmap-selftests.c: Check result of "write".
1997
1998 2018-08-08  Jim Wilson  <jimw@sifive.com>
1999
2000         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
2001         (decode_register_index_short): New.
2002         (decode_j_type_insn, decode_cj_type_insn): New.
2003         (decode_b_type_insn, decode_cb_type_insn): New.
2004         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
2005         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
2006         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
2007         is_c_sw_insn instead of is_sw_insn.
2008         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
2009         (riscv_software_single_step): New.
2010         * riscv-tdep.h (riscv_software_single_step): Declare.
2011
2012         * riscv-tdep.c (riscv_isa_xlen): Drop static.
2013         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
2014
2015 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
2016
2017         PR gdb/18050:
2018         * target.c (dispose_inferior): Don't dispose of inferiors that are
2019         already killed.
2020
2021 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
2022
2023         * remote.c (remote_target::download_tracepoint): Change char* to
2024         const char*.
2025
2026 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
2027
2028         * target.h (target_options_to_string): Return an std::string.
2029         * target.c (str_comma_list_concat_elem): Return void, use
2030         std::string.
2031         (do_option): Likewise.
2032         (target_options_to_string): Return an std::string.
2033         * linux-nat.c (linux_nat_target::wait): Adjust.
2034         * target-debug.h (target_debug_print_options): Adjust.
2035
2036 2018-08-07  Tom Tromey  <tom@tromey.com>
2037
2038         * Makefile.in (CPPFLAGS): New variable.
2039         (INTERNAL_CPPFLAGS): Use it.
2040
2041 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2042
2043         * NEWS: Mention the index cache.
2044
2045 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2046
2047         * common/pathstuff.h (get_standard_cache_dir): New.
2048         * common/pathstuff.c (get_standard_cache_dir): New.
2049         * build-id.h (build_id_to_string): New.
2050         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
2051         DEBUG_STR_SUFFIX): Move to here.
2052         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
2053         DEBUG_STR_SUFFIX): Move from there.
2054         (write_psymtabs_to_index): Make non-static, add basename
2055         parameter.  Write to temporary files, rename when done.
2056         (save_gdb_index_command): Adjust call to
2057         write_psymtabs_to_index.
2058         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
2059         field.
2060         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
2061         (get_gdb_index_contents_from_cache): New.
2062         (get_gdb_index_contents_from_cache_dwz): New.
2063         (dwarf2_initialize_objfile): Read index from cache.
2064         (dwarf2_build_psymtabs): Save to index.
2065         * dwarf-index-cache.h: New file.
2066         * dwarf-index-cache.c: New file.
2067         * dwarf-index-write.h: New file.
2068
2069 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2070
2071         * gnulib/aclocal.m4: Re-generate.
2072         * gnulib/config.in: Re-generate.
2073         * gnulib/configure: Re-generate.
2074         * gnulib/import/Makefile.am: Re-generate.
2075         * gnulib/import/Makefile.in: Re-generate.
2076         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2077         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2078         * gnulib/import/m4/mkdir.m4: New file.
2079         * gnulib/import/mkdir.c: New file.
2080         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
2081         module.
2082
2083 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2084
2085         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
2086         * common/scoped_mmap.c: New file.
2087         * common/scoped_mmap.h (destroy): New method.
2088         (~scoped_mmap, reset): Use destroy.
2089         (scoped_mmap): New move constructor.
2090         (mmap_file): New declaration.
2091         * unittests/scoped_mmap-selftests.c (test_normal,
2092         test_invalid_filename, run_tests): New functions.
2093         (_initialize_scoped_mmap_selftests): Register selftest.
2094
2095 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2096
2097         * dwarf2read.c (read_gdb_index_from_section): Rename to...
2098         (read_gdb_index_from_buffer): ... this.  Remove section
2099         parameter, add buffer parameter.
2100         (get_gdb_index_contents_ftype,
2101         get_gdb_index_contents_dwz_ftype): New typedefs.
2102         (dwarf2_read_gdb_index): Add callback parameters to get the
2103         index contents.
2104         (get_gdb_index_contents_from_section): New.
2105         (dwarf2_initialize_objfile): Update call to
2106         dwarf2_read_gdb_index.
2107
2108 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2109
2110         * common/filestuff.h (gdb_fopen_cloexec): New overload.
2111         (gdb_open_cloexec): Likewise.
2112         * nat/linux-osdata.c (command_from_pid): Use string_printf.
2113         (commandline_from_pid): Likewise.
2114         (linux_xfer_osdata_threads): Likewise.
2115         (linux_xfer_osdata_fds): Likewise.
2116         * ada-lang.c (is_package_name): Likewise.
2117         * auxv.c (procfs_xfer_auxv): Likewise.
2118         * breakpoint.c (print_one_breakpoint_location): Use
2119         uiout::field_fmt.
2120         (print_one_catch_solib): Use string_printf.
2121         * coff-pe-read.c (add_pe_exported_sym): Likewise.
2122         (add_pe_forwarded_sym): Likewise.
2123         * dwarf2read.c (create_type_unit_group): Likewise.
2124         (build_error_marker_type): Likewise.
2125         * infcall.c (get_function_name): Likewise.
2126         * valprint.c (print_converted_chars_to_obstack): Likewise.
2127         * xtensa-tdep.c (xtensa_register_type): Likewise.
2128
2129 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
2130
2131         * remote.c (remote_target::download_tracepoint): Fix format
2132         string errors.
2133
2134 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2135
2136         * tracefile.c: Include common/byte-vector.h.
2137         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
2138         with trace_regblock_size if needed.  Update uses of buf.
2139
2140 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2141
2142         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
2143         std::vector<unsigned char>.
2144         * tracepoint.c (collection_list::collection_list): Remove
2145         m_regs_mask initializer from initializer list.  Resize
2146         m_regs_mask using the largest remote register number.
2147         (collection_list::add_remote_register): Remove size check on
2148         m_regs_mask.  Use at to access element.
2149         (collection_list::stringify): Change type of temp_buf to
2150         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
2151         stringify the register mask.  Use pack_hex_byte for the register
2152         mask.
2153
2154 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2155
2156         * tracepoint.h (class collection_list) <add_register>: Remove.
2157         <add_remote_register, add_ax_registers, add_local_register>:
2158         Declare.
2159         <add_memrange>: Add scope parameter.
2160         * tracepoint.c (encode_actions_1): Likewise.
2161         (collection_list::add_register): Rename to ...
2162         (collection_list::add_remote_register): ... this.  Update
2163         comment.
2164         (collection_list::add_ax_registers, add_local_register): New
2165         methods.
2166         (collection_list::add_memrange): Add scope parameter.  Call
2167         add_local_register instead of add_register.
2168         (finalize_tracepoint_aexpr): New function.
2169         (collection_list::collect_symbol): Update calls to add_memrange.
2170         Call add_local_register instead of add_register.  Call
2171         add_ax_registers.  Call finalize_tracepoint_aexpr.
2172         (encode_actions_1): Get remote regnos for $reg action.  Call
2173         add_remote_register, add_ax_registers, and add_local_register.
2174         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
2175         (validate_actionline): Call finalize_tracepoint_aexpr.
2176
2177 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2178
2179         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
2180         Replace array buf with gdb::char_vector buf, of size
2181         get_remote_packet_size ().  Replace references to buf and
2182         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
2183         and xsnprintf with snprintf.  Raise errors if the buffer is too
2184         small.
2185
2186 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2187
2188         * remote.c (remote_target::download_tracepoint): Fix the has_more
2189         predicate in the QTDP action list iteration.
2190
2191 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2192
2193         * remote.c (remote_target::download_tracepoint): Fix indentation
2194         in for block.
2195
2196 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2197
2198         * proc-api.c (_initialize_proc_api): Remove c, unused.
2199         * procfs.c (procfs_init_inferior): Remove signals, unused.
2200         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
2201         unused.
2202
2203 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
2204             Andrew Burgess  <andrew.burgess@embecosm.com>
2205
2206         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
2207         'W_STOPCODE (0)' as this could be ambiguous.
2208
2209 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
2210
2211         * ser-tcp.c (net_open): Fix thinko when deciding whether to
2212         disable TCP's Nagle algorithm (use "ai_protocol" instead of
2213         "ai_socktype").
2214
2215 2018-08-02  Tom Tromey  <tom@tromey.com>
2216
2217         PR symtab/16842.
2218         * dwarf2read.c (read_func_scope): Set symtab on template parameter
2219         symbols.
2220         (process_structure_scope): Likewise.
2221
2222 2018-08-02  Xavier Roirand  <roirand@adacore.com>
2223
2224         PR gdb/22629:
2225         * darwin-nat.c (darwin_kill_inferior): Fix handling of
2226         kill inferior.
2227
2228 2018-08-02  Tom Tromey  <tom@tromey.com>
2229
2230         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
2231         (darwin_suspend_inferior, darwin_resume_inferior)
2232         (darwin_decode_notify_message, darwin_resume_inferior_threads)
2233         (darwin_check_new_threads): Check result of get_darwin_inferior.
2234
2235 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
2236
2237         GDB 8.1.1 released.
2238
2239 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
2240
2241         * varobj.c (varobj_get_path_expr_parent): Report an error if
2242         parent is a dynamic varobj.
2243
2244 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
2245
2246         * gnulib/aclocal.m4: Re-generate.
2247         * gnulib/config.in: Re-generate.
2248         * gnulib/configure: Re-generate.
2249         * gnulib/import/Makefile.in: Re-generate.
2250         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2251         * gnulib/import/m4/onceonly.m4: Re-generate.
2252
2253 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
2254
2255         * target-descriptions.c (struct xml_test_tdesc): New.
2256         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
2257         (record_xml_tdesc): Update.
2258         (maintenance_check_xml_descriptions): Update.
2259         * target-descriptions.h (record_xml_tdesc): Update comment.
2260
2261 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2262
2263         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
2264         checking array bounds are defined.
2265
2266 2018-07-30  Tom Tromey  <tom@tromey.com>
2267
2268         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
2269         irreflexivity violation.
2270
2271 2018-07-30  Tom Tromey  <tom@tromey.com>
2272
2273         * cli/cli-decode.c (lookup_cmd): Remove lint code.
2274         * value.c (unpack_long): Remove lint code.
2275         * valops.c (value_ind): Remove lint code.
2276         * valarith.c (value_x_binop, value_x_unop, value_equal)
2277         (value_pos): Remove lint code.
2278
2279 2018-07-28  Tom de Vries  <tdevries@suse.de>
2280
2281         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
2282         with undefined upper bound as <optimized out>.
2283
2284 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
2285
2286         * gcore.in: Rename variable "name" to "prefix".  Expand
2287         "usage" text.
2288
2289 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
2290
2291         * windows-nat.c (windows_nat_target::create_inferior): Update to
2292         call close() in global namespace.
2293
2294 2018-07-26  Tom Tromey  <tom@tromey.com>
2295
2296         * dwarf-index-write.c (add_address_entry): Don't add objfile
2297         offsets.
2298         * dbxread.c (find_stab_function): Rename from
2299         find_stab_function_addr.  Return a bound_minimal_symbol.
2300         (read_dbx_symtab): Use raw_text_low, raw_text_high.
2301         Don't add objfile offsets.
2302         (end_psymtab): Use raw_text_low, raw_text_high,
2303         MSYMBOL_VALUE_RAW_ADDRESS.
2304         (read_ofile_symtab): Update.
2305         (process_one_symbol): Update.
2306         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
2307         offsets.
2308         (dw2_relocate): Remove.
2309         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
2310         searching addrmap.
2311         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
2312         Update.
2313         (process_psymtab_comp_unit_reader, add_partial_symbol)
2314         (add_partial_subprogram, dwarf2_ranges_read): Update.
2315         (load_partial_dies): Update.
2316         (add_address_entry): Don't add objfile offsets.
2317         (dwarf2_build_include_psymtabs): Update.
2318         (create_addrmap_from_aranges): Don't add objfile offsets.
2319         (dw2_find_pc_sect_compunit_symtab): Update.
2320         * mdebugread.c (parse_symbol): Don't add objfile offsets.
2321         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
2322         Update.
2323         (parse_partial_symbols): Don't add objfile offsets.  Use
2324         raw_text_low, raw_text_high.  Update.
2325         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
2326         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
2327         or call 'relocate' quick function.  Clear psymbol_map.
2328         * psympriv.h (struct partial_symbol) <address>: Add section
2329         offset.
2330         <set_unrelocated_address>: Rename from set_address.
2331         <raw_text_low, raw_text_high>: New methods.
2332         <text_low, text_high>: Add objfile parameter.
2333         (add_psymbol_to_bcache): Add 'section' parameter.  Call
2334         set_unrelocated_address.
2335         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
2336         (find_pc_psymbol): Update.
2337         (fixup_psymbol_section, relocate_psymtabs): Remove.
2338         (dump_psymtab, psym_functions): Update.
2339         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
2340         parameter.
2341         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
2342         (start_psymtab_common): Update.
2343         * symfile-debug.c (debug_qf_relocate): Remove.
2344         (debug_sym_quick_functions): Update.
2345         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
2346         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
2347         Update.
2348
2349 2018-07-26  Tom Tromey  <tromey@redhat.com>
2350
2351         * dbxread.c (end_psymtab): Use text_high_valid and
2352         text_low_valid.
2353         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
2354         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
2355         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
2356         Update comment.
2357         <text_low_valid, text_high_valid>: New fields.
2358         <set_text_low, set_text_high>: Update.
2359         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
2360
2361 2018-07-26  Tom Tromey  <tom@tromey.com>
2362
2363         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
2364         Update.
2365         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
2366         textlow and texthigh fields.
2367         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
2368         Update.
2369         * mdebugread.c (parse_lines, parse_partial_symbols)
2370         (psymtab_to_symtab_1): Update.
2371         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
2372         Rename fields.  Update comment.  Now private.
2373         <text_low, text_high, set_text_low, set_text_high>: New methods.
2374         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
2375         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
2376         (start_psymtab_common, maintenance_info_psymtabs)
2377         (maintenance_check_psymtabs): Update.
2378         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
2379         texthigh fields.
2380         (scan_xcoff_symtab): Update.
2381
2382 2018-07-26  Tom Tromey  <tromey@redhat.com>
2383
2384         * psympriv.h (struct partial_symbol) <unrelocated_address,
2385         address, set_address>: New methods.
2386         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
2387         (fixup_psymbol_section, relocate_psymtabs): Update.
2388         (print_partial_symbols): Add 'objfile' parameter.  Update.
2389         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
2390         Update.
2391
2392 2018-07-26  Tom Tromey  <tom@tromey.com>
2393
2394         * dwarf-index-write.c (write_psymbols, debug_names::insert)
2395         (debug_names::write_psymbols): Update.
2396         * psympriv.h (struct partial_symbol): Derive from
2397         general_symbol_info.
2398         <obj_section>: New method.
2399         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
2400         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
2401         (find_pc_sect_psymbol, fixup_psymbol_section)
2402         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
2403         (print_partial_symbols, recursively_search_psymtabs)
2404         (compare_psymbols, psymbol_hash, psymbol_compare)
2405         (add_psymbol_to_bcache, maintenance_check_psymtabs)
2406         (psymbol_name_matches, psym_fill_psymbol_map): Update.
2407
2408 2018-07-26  Tom Tromey  <tromey@redhat.com>
2409
2410         * dbxread.c (end_psymtab): Remove dead code.
2411
2412 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2413
2414         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
2415         DWARF unwinders are disabled.
2416         * dwarf2-frame.c: Add dwarf2read.h include.
2417         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
2418         disabled.
2419         (dwarf2_frame_unwinders_enabled_p): Define.
2420         (show_dwarf_unwinders_enabled_p): New function.
2421         (_initialize_dwarf2_frame): Register switch to control DWARF
2422         unwinder use.
2423         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
2424         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
2425         (show_dwarf_cmdlist): Remove static keyword.
2426         * dwarf2read.h (set_dwarf_cmdlist): Declare.
2427         (show_dwarf_cmdlist): Declare.
2428         * NEWS: Document new feature.
2429
2430 2018-07-26  Tom de Vries  <tdevries@suse.de>
2431
2432         PR breakpoints/23366
2433         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
2434
2435 2018-07-26  Tom de Vries  <tdevries@suse.de>
2436
2437         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
2438         DW_AT_count can't be translated to a dynamic prop.
2439
2440 2018-07-25  Tom de Vries  <tdevries@suse.de>
2441
2442         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
2443         try/catch.
2444
2445 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
2446
2447         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
2448
2449 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
2450
2451         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
2452
2453 2018-07-24  Keith Seitz  <keiths@redhat.comt
2454
2455         PR symtab/23010
2456         * dwarf2read.c (dw2_add_symbol_to_list): New function.
2457         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
2458         instead of add_symbol_to_list.
2459         (read_file_scope): Call prepare_one_comp_unit before reading
2460         any other DIEs.
2461
2462 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
2463
2464         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
2465
2466 2018-07-24  Tom Tromey  <tom@tromey.com>
2467
2468         * utils.c (malloc, realloc, free): Don't declare.
2469         * configure, config.in: Rebuild.
2470         * configure.ac: Don't check for declarations of free, malloc, or
2471         realloc.
2472
2473 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
2474
2475         * aarch64-linux-nat.c
2476         (aarch64_linux_nat_target::stopped_data_address): Remove unused
2477         variable.
2478         * arm-linux-nat.c (fetch_regs): Likewise.
2479         (store_regs): Likewise.
2480         (fetch_vfp_regs): Likewise.
2481         (store_vfp_regs): Likewise.
2482         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
2483         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
2484         (arm_linux_nat_target::insert_watchpoint): Likewise.
2485         (arm_linux_nat_target::remove_watchpoint): Likewise.
2486         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
2487         Likewise.
2488         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
2489         Likewise.
2490         * ppc-linux-nat.c (fetch_register): Likewise.
2491         (fetch_all_gp_regs): Likewise.
2492         (fetch_ppc_registers): Likewise.
2493         (store_all_gp_regs): Likewise.
2494         (store_ppc_registers): Likewise.
2495         (hwdebug_insert_point): Likewise.
2496         (can_use_watchpoint_cond_accel): Likewise.
2497         * remote-sim.c (gdb_os_write_stdout): Likewise.
2498
2499 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
2500             Tom Tromey  <tom@tromey.com>
2501
2502         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
2503         test for it.
2504         * configure: Rebuild.
2505
2506 2018-07-22  Tom Tromey  <tom@tromey.com>
2507
2508         * regformats/regdat.sh: Define xmltarget_${name} inside
2509         #ifndef IN_PROCESS_AGENT.
2510
2511 2018-07-22  Tom Tromey  <tom@tromey.com>
2512
2513         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
2514
2515 2018-07-22  Tom Tromey  <tom@tromey.com>
2516
2517         * symfile.c (reread_symbols): Notify iter, not objfile.
2518
2519 2018-07-22  Tom Tromey  <tom@tromey.com>
2520
2521         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
2522         Use arch_ops.
2523         (ravenscar_thread_target::prepare_to_store): Likewise.
2524
2525 2018-07-22  Tom Tromey  <tom@tromey.com>
2526
2527         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
2528         unused variable.  Call value_fetch_lazy when needed.
2529         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
2530         Remove unused variable.  Call value_fetch_lazy when needed.
2531
2532 2018-07-22  Tom Tromey  <tom@tromey.com>
2533
2534         * m32c-tdep.c (mark_dma): Return void.
2535         (make_regs): Remove unused declarations.
2536
2537 2018-07-22  Tom Tromey  <tom@tromey.com>
2538
2539         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
2540         cmdscm_get_valid_command_smob_arg_unsafe for effect.
2541         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
2542         bkscm_get_valid_block_smob_arg_unsafe for effect.
2543
2544 2018-07-22  Tom Tromey  <tom@tromey.com>
2545
2546         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
2547         value_type.
2548
2549 2018-07-22  Tom Tromey  <tom@tromey.com>
2550
2551         * windows-nat.c (saved_context): Conditionally define.
2552         * remote.c (remote_target::remote_btrace_maybe_reopen):
2553         Conditionally declare "warned".
2554         * inflow.c (sigquit_ours): Conditionally define.
2555         (new_tty): Move "tty" declaration inside #if.
2556         * guile/guile.c (guile_datadir): Conditionally define.
2557         * charset.c (set_be_le_names): Move some declarations inside #if.
2558         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
2559         #if.
2560         (parse_xml_btrace_conf): Likewise.
2561
2562 2018-07-22  Tom Tromey  <tom@tromey.com>
2563
2564         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
2565
2566 2018-07-22  Tom Tromey  <tom@tromey.com>
2567
2568         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
2569         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
2570         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
2571         * buildsym-legacy.c (get_macro_table): Remove unused variable.
2572         * stack.c (frame_apply_level_command): Remove unused variable.
2573         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
2574         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
2575         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
2576         unused variable.
2577         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
2578         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
2579         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
2580         variable.
2581         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
2582         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
2583         variable.
2584         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
2585         Remove unused variable.
2586         * cli/cli-script.c (recurse_read_control_structure): Remove unused
2587         variable.
2588         * common/tdesc.c (print_xml_feature::visit): Remove unused
2589         variable.
2590         * compile/compile-object-load.c (store_regs): Remove unused
2591         variables.
2592         * complaints.c (clear_complaints): Remove unused variable.
2593         * corelow.c (core_target_open): Remove unused variable.
2594         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
2595         variable.
2596         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
2597         variable.
2598         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
2599         variable.
2600         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
2601         variable.
2602         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
2603         variable.
2604         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
2605         variable.
2606         * ia64-tdep.c (examine_prologue): Remove unused variable.
2607         * infcall.c (run_inferior_call): Remove unused variable.
2608         * inferior.c (exit_inferior): Remove unused variable.
2609         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
2610         * linespec.c (decode_line_2): Remove unused variable.
2611         * linux-nat.c (super_close): Remove.
2612         * linux-tdep.c (linux_info_proc): Remove unused variable.
2613         * mi/mi-main.c (mi_execute_command): Remove unused variable.
2614         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
2615         Remove unused variable.
2616         * parse.c (find_minsym_type_and_address): Remove unused variable.
2617         * printcmd.c (info_symbol_command, printf_floating): Remove unused
2618         variable.
2619         * python/py-breakpoint.c (bppy_set_commands): Remove unused
2620         variable.
2621         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
2622         variables.
2623         * record-btrace.c (record_btrace_target::store_registers): Remove
2624         unused variable.
2625         (cmd_show_record_btrace_cpu): Remove unused variable.
2626         * riscv-tdep.c (riscv_register_reggroup_p)
2627         (riscv_push_dummy_call, riscv_return_value): Remove unused
2628         variable.
2629         * rust-exp.y (literal): Remove unused variable.
2630         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
2631         unused variable.
2632         <STRUCTOP_ANONYMOUS>: Likewise.
2633         * s390-linux-tdep.c (s390_linux_init_abi_31)
2634         (s390_linux_init_abi_64): Remove unused variable.
2635         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
2636         (file_select_thread, net_windows_open, _initialize_ser_windows):
2637         Remove unused variables.
2638         * symtab.c (find_pc_sect_line): Remove unused variable.
2639         * target-memory.c (compute_garbled_blocks): Remove unused
2640         variable.
2641         (target_write_memory_blocks): Remove unused variable.
2642         * target.c (target_stack::unpush): Remove unused variables.
2643         * tracepoint.c (start_tracing, all_tracepoint_actions)
2644         (merge_uploaded_trace_state_variables)
2645         (print_one_static_tracepoint_marker): Remove unused variable.
2646         * unittests/basic_string_view/element_access/char/1.cc (test01):
2647         Remove unused variable.
2648         * windows-nat.c (windows_continue, windows_add_all_dlls)
2649         (do_initial_windows_stuff, windows_nat_target::create_inferior):
2650         Remove unused variables.
2651
2652 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
2653
2654         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
2655         attr_profile in HAVE_ELF.
2656         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
2657         HAVE_ELF.
2658
2659 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
2660
2661         * frame.c (frame_register_unwind): Change parameter name.
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.h (frame_register_unwind): Likewise.
2667         (frame_unwind_register): Likewise.
2668         (frame_unwind_register_value): Likewise.
2669         (frame_unwind_register_signed): Likewise.
2670         (frame_unwind_register_unsigned): Likewise.
2671         (frame_unwind_arch): Likewise.
2672
2673 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
2674
2675         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
2676         ISA maintenance.
2677
2678 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
2679
2680         * mips-linux-nat.c (mips_linux_nat_target::read_description):
2681         Call `get_ptrace_pid' rather than extracting the ptrace PID by
2682         hand.
2683
2684 2018-07-20  Keith Seitz  <keiths@redhat.com>
2685
2686         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
2687         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
2688         m_compunit_symtab, m_language>: Add "m_" prefix.
2689         Update all uses.
2690         * buildsym.c: Update all uses.
2691
2692 2018-07-20  Tom Tromey  <tom@tromey.com>
2693
2694         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
2695         * buildsym.h (record_line_ftype): Remove typedef.
2696
2697 2018-07-20  Tom Tromey  <tom@tromey.com>
2698
2699         * buildsym-legacy.h (augment_type_symtab): Don't declare.
2700         (end_expandable_symtab): Likewise.
2701         (end_symtab_get_static_block): Likewise.
2702         (end_symtab_from_static_block): Likewise.
2703         * buildsym-legacy.c (augment_type_symtab): Remove.
2704         (end_expandable_symtab): Remove.
2705         (end_symtab_get_static_block): Remove.
2706         (end_symtab_from_static_block): Remove.
2707
2708 2018-07-20  Tom Tromey  <tom@tromey.com>
2709
2710         * dwarf2read.c: Include buildsym.h.
2711         (struct dwarf2_cu) <builder>: New method.
2712         (fixup_go_packaging): Update.
2713         (process_full_comp_unit, process_full_type_unit): Update.  Don't
2714         use scoped_free_pendings.
2715         (using_directives): Add "cu" parameter, remove "language".
2716         (read_import_statement, setup_type_unit_groups, )
2717         (read_func_scope, read_lexical_block_scope)
2718         (dwarf2_record_block_ranges, read_namespace): Update.
2719         (lnp_state_machine::lnp_state_machine): Add cu parameter.
2720         (lnp_state_machine::handle_end_sequence): Update.
2721         (class lnp_state_machine) <m_cu>: New member.
2722         <m_record_line_callback>: Remove.
2723         <m_currently_recording_lines>: New member.
2724         (lnp_state_machine::handle_set_file): Update.
2725         (noop_record_line): Remove.
2726         (dwarf_record_line_p): Add cu parameter.
2727         (dwarf_record_line_1, dwarf_finish_line): Likewise.
2728         (lnp_state_machine::record_line)
2729         (lnp_state_machine::lnp_state_machine)
2730         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
2731         (dwarf_decode_lines): Update.
2732         (dwarf2_start_subfile): Add cu parameter.
2733         (dwarf2_start_symtab, new_symbol): Update.
2734         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
2735         Remove dwarf2_per_objfile parameter.
2736         (dwarf_decode_macros): Update.
2737
2738 2018-07-20  Tom Tromey  <tom@tromey.com>
2739
2740         * stabsread.c (define_symbol): Update.
2741         * buildsym-legacy.h (get_buildsym_compunit): Declare.
2742         * dwarf2read.c (new_symbol): Update.
2743         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
2744         * cp-namespace.c: Include buildsym.h.
2745         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
2746         * buildsym-legacy.c (get_buildsym_compunit): New function.
2747
2748 2018-07-20  Tom Tromey  <tom@tromey.com>
2749
2750         * xcoffread.c: Include buildsym-legacy.h.
2751         * windows-nat.c: Include buildsym-legacy.h.
2752         * stabsread.c: Include buildsym-legacy.h.
2753         * mdebugread.c: Include buildsym-legacy.h.
2754         * buildsym-legacy.h: New file.
2755         * buildsym-legacy.c: New file, from buildsym.c.
2756         * go32-nat.c: Include buildsym-legacy.h.
2757         * dwarf2read.c: Include buildsym-legacy.h.
2758         * dbxread.c: Include buildsym-legacy.h.
2759         * cp-namespace.c: Include buildsym-legacy.h.
2760         * coffread.c: Include buildsym-legacy.h.
2761         * buildsym.h: Move some contents to buildsym-legacy.h.
2762         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
2763         buildsym-legacy.c.
2764         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
2765
2766 2018-07-20  Tom Tromey  <tom@tromey.com>
2767
2768         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
2769         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
2770         (buildsym_compunit::buildsym_compunit)
2771         (buildsym_compunit::~buildsym_compunit)
2772         (buildsym_compunit::get_macro_table): Define.
2773
2774 2018-07-20  Tom Tromey  <tom@tromey.com>
2775
2776         * buildsym.c (reset_symtab_globals): Remove.
2777         (buildsym_compunit::end_symtab_from_static_block): Update.
2778         (buildsym_compunit::augment_type_symtab): Update.
2779         (end_symtab_from_static_block): Call free_buildsym_compunit.
2780         (augment_type_symtab, end_symtab, end_expandable_symtab):
2781         Likewise.
2782
2783 2018-07-20  Tom Tromey  <tom@tromey.com>
2784
2785         * arch-utils.c: Do not include buildsym.h.
2786         * mipsread.c: Do not include buildsym.h.
2787         * machoread.c: Do not include buildsym.h.
2788         * elfread.c: Do not include buildsym.h.
2789
2790 2018-07-20  Tom Tromey  <tom@tromey.com>
2791
2792         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
2793         initialization.
2794         (buildsym_compunit): Add new constructor.
2795         (struct buildsym_compunit) <get_last_source_file, finish_block,
2796         record_block_range, start_subfile, patch_subfile_names,
2797         push_subfile, pop_subfile, record_line, get_compunit_symtab,
2798         set_last_source_start_addr, get_last_source_start_addr,
2799         get_local_using_directives, set_local_using_directives,
2800         get_global_using_directives, outermost_context_p,
2801         get_current_context_stack, get_context_stack_depth,
2802         get_current_subfile, get_local_symbols, get_file_symbols,
2803         get_global_symbols, record_debugformat, record_producer,
2804         push_context, pop_context, end_symtab_get_static_block,
2805         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
2806         New public methods.
2807         <record_pending_block, finish_block_internal, make_blockvector,
2808         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
2809         private methods.
2810         Update all users.
2811
2812 2018-05-22  Tom Tromey  <tom@tromey.com>
2813
2814         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
2815         parameter.
2816         (finish_block_internal): Update.
2817
2818 2018-07-20  Tom Tromey  <tom@tromey.com>
2819
2820         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
2821         parameter.
2822         (finish_block_internal): Update.
2823
2824 2018-07-20  Tom Tromey  <tom@tromey.com>
2825
2826         * buildsym.h (EXTERN): Don't define or undef.
2827         * buildsym.c (EXTERN): Don't define.
2828
2829 2018-07-20  Tom Tromey  <tom@tromey.com>
2830
2831         * buildsym.c: Remove TODO comment.
2832
2833 2018-07-20  Tom Tromey  <tom@tromey.com>
2834
2835         * coffread.c (coff_symtab_read): Update.
2836         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
2837         (xcoff_new_init): Update.
2838         * mipsread.c (mipscoff_new_init): Update.
2839         * mdebugread.c (mdebug_build_psymtabs): Update.
2840         * elfread.c (elf_new_init): Update.
2841         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
2842         Update.
2843         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
2844         (coffstab_build_psymtabs, elfstab_build_psymtabs)
2845         (stabsect_build_psymtabs): Update.
2846         * buildsym.h (buildsym_init): Don't declare.
2847         * buildsym.c: Update comment.
2848         (prepare_for_building): Remove.
2849         (start_symtab, restart_symtab): Update.
2850         (reset_symtab_globals): Update comment.
2851         (buildsym_init): Remove.
2852
2853 2018-07-20  Tom Tromey  <tom@tromey.com>
2854
2855         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
2856         * stabsread.c (patch_block_stabs, define_symbol, read_type)
2857         (read_enum_type, common_block_start, common_block_end)
2858         (cleanup_undefined_types_1, finish_global_stabs): Update.
2859         * mdebugread.c (psymtab_to_symtab_1): Update.
2860         * dwarf2read.c (fixup_go_packaging, read_func_scope)
2861         (read_lexical_block_scope, new_symbol): Update.
2862         * dbxread.c (process_one_symbol): Update.
2863         * coffread.c (coff_symtab_read, process_coff_symbol)
2864         (coff_read_enum_type): Update.
2865         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
2866         declare.
2867         (get_local_symbols, get_file_symbols, get_global_symbols): New
2868         functions.
2869         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
2870         m_global_symbols.
2871         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
2872         (~scoped_free_pendings): Update.
2873         (finish_block, prepare_for_building, reset_symtab_globals)
2874         (end_symtab_get_static_block, end_symtab_with_blockvector)
2875         (augment_type_symtab, push_context): Update.
2876         (get_local_symbols, get_file_symbols, get_global_symbols): New
2877         functions.
2878         (buildsym_init): Update.
2879
2880 2018-07-20  Tom Tromey  <tom@tromey.com>
2881
2882         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
2883         (process_full_type_unit): Likewise.
2884         (dwarf2_start_symtab): Set list_in_scope.
2885
2886 2018-07-20  Tom Tromey  <tom@tromey.com>
2887
2888         * dwarf2read.c (process_psymtab_comp_unit_reader)
2889         (build_type_psymtabs_reader): Do not set list_in_scope.
2890
2891 2018-07-20  Tom Tromey  <tom@tromey.com>
2892
2893         * buildsym.c (free_pendings): Remove.
2894         (add_symbol_to_list, scoped_free_pendings)
2895         (finish_block_internal, buildsym_init): Update.
2896
2897 2018-07-20  Tom Tromey  <tom@tromey.com>
2898
2899         * xcoffread.c (read_xcoff_symtab): Update.
2900         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
2901         Update.
2902         * dbxread.c (process_one_symbol): Update.
2903         * coffread.c (coff_symtab_read): Update.
2904         * buildsym.h (finish_block): Update.
2905         * buildsym.c (finish_block): Remove "listhead" argument.
2906         (end_symtab_get_static_block): Update.
2907
2908 2018-07-20  Tom Tromey  <tom@tromey.com>
2909
2910         * buildsym.h (class scoped_free_pendings): Remove constructor.
2911         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
2912         method.
2913         <m_pending_block_obstack, m_pending_blocks>: New members.
2914         (pending_block_obstack, pending_blocks): Remove.
2915         (scoped_free_pendings::scoped_free_pendings): Default.
2916         (~scoped_free_pendings): Update.
2917         (free_pending_blocks): Remove.
2918         (finish_block_internal, record_pending_block, make_blockvector)
2919         (end_symtab_get_static_block, augment_type_symtab, push_context)
2920         (buildsym_init): Update.
2921
2922 2018-07-20  Tom Tromey  <tom@tromey.com>
2923
2924         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
2925         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
2926         members.
2927         (pending_addrmap, pending_addrmap_obstack)
2928         (pending_addrmap_interesting): Remove.
2929         (scoped_free_pendings, record_block_range, make_blockvector)
2930         (prepare_for_building, reset_symtab_globals, buildsym_init):
2931         Update.
2932
2933 2018-07-20  Tom Tromey  <tom@tromey.com>
2934
2935         * xcoffread.c (process_linenos): Update.
2936         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
2937         * mdebugread.c (psymtab_to_symtab_1): Update.
2938         * dwarf2read.c (setup_type_unit_groups)
2939         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
2940         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
2941         * dbxread.c (process_one_symbol): Update.
2942         * coffread.c (coff_symtab_read, enter_linenos)
2943         (process_coff_symbol): Update.
2944         * buildsym.h (current_subfile): Don't declare.
2945         (get_current_subfile): Declare.
2946         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
2947         member.
2948         (start_subfile, free_buildsym_compunit, push_subfile)
2949         (prepare_for_building, start_symtab): Update.
2950         (get_current_subfile): New function.
2951
2952 2018-07-20  Tom Tromey  <tom@tromey.com>
2953
2954         * coffread.c (coff_symtab_read): Update.
2955         * xcoffread.c (read_xcoff_symtab): Update.
2956         * dwarf2read.c (new_symbol): Update.
2957         (read_func_scope, read_lexical_block_scope): Update.
2958         * dbxread.c (process_one_symbol): Update.
2959         * buildsym.h (context_stack, context_stack_depth): Don't declare.
2960         (outermost_context_p): Remove macro.
2961         (outermost_context_p, get_current_context_stack)
2962         (get_context_stack_depth): Declare.
2963         (pop_context): Return struct context_stack.
2964         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
2965         member.
2966         (context_stack_size): Remove.
2967         (INITIAL_CONTEXT_STACK_SIZE): Remove.
2968         (prepare_for_building, end_symtab_get_static_block)
2969         (augment_type_symtab, push_context): Update.
2970         (pop_context): Return struct context_stack.
2971         (outermost_context_p, get_current_context_stack)
2972         (get_context_stack_depth): New functions.
2973         (buildsym_init): Update.
2974
2975 2018-07-20  Tom Tromey  <tom@tromey.com>
2976
2977         * rust-exp.y: Now a pure parser.  Update all rules.
2978         (%union): Move earlier.
2979         (current_parser, work_obstack): Remove globals.
2980         (rust_parser, ~rust_parser): Update.
2981         (class rust_parser) <copy_name, concat3, crate_name, super_name,
2982         lex_character, lex_number, lex_string, lex_identifier,
2983         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
2984         convert_name, convert_params_to_expression,
2985         convert_ast_to_expression, ast_basic_type, ast_operation,
2986         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
2987         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
2988         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
2989         ast_array_type, ast_slice_type, ast_reference_type,
2990         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
2991         (rust_parse): Update.
2992         (rustyyerror, rustyylex): Add parser parameter.
2993         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
2994         (rust_lex_stringish_test, rust_lex_test_sequence)
2995         (rust_lex_test_trailing_dot, rust_lex_test_completion)
2996         (rust_lex_test_push_back, rust_lex_tests): Update.
2997
2998 2018-07-19  Pedro Alves  <palves@redhat.com>
2999
3000         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
3001         gdb::unique_xmalloc_ptr.
3002         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
3003         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
3004         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
3005         copy-initialization.
3006         * guile/scm-pretty-print.c (ppscm_print_children): Use
3007         gdb::unique_xmalloc_ptr instead of cleanups.
3008         (gdbscm_apply_val_pretty_printer): Remove cleanups.
3009         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
3010         gdb::unique_xmalloc_ptr.
3011         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
3012         Adjust to use gdb::unique_xmalloc_ptr.
3013         * guile/scm-utils.c (extract_arg): Adjust.
3014         * guile/scm-value.c (gdbscm_value_field): Adjust to use
3015         gdb::unique_xmalloc_ptr instead of a cleanup.
3016
3017 2018-07-19  Tom Tromey  <tom@tromey.com>
3018
3019         * utils.c (do_value_free_to_mark)
3020         (make_cleanup_value_free_to_mark): Remove.
3021         * utils.h (make_cleanup_value_free_to_mark): Remove.
3022
3023 2018-07-19  Pedro Alves  <palves@redhat.com>
3024
3025         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
3026         forwarding reference.
3027
3028 2018-07-18  Pedro Alves  <palves@redhat.com>
3029
3030         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
3031         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
3032         cleanup.
3033
3034 2018-07-18  Pedro Alves  <palves@redhat.com>
3035
3036         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
3037         exceptions.
3038         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
3039         (gdbscm_wrap): New.
3040         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
3041         directly instead of a cleanup.
3042         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
3043         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
3044         (vlscm_binop_gdbthrow): New, factored out from ...
3045         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
3046         (vlscm_rich_compare): Use gdbscm_wrap.
3047         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
3048         instead of a cleanup.
3049         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
3050         cleanup.
3051         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
3052         Use xfree directly instead of a cleanup.
3053         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
3054         Adjust to use gdbscm_wrap and scoped_value_mark.
3055         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
3056         (gdbscm_value_address, gdbscm_value_dereference)
3057         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
3058         scoped_value_mark.
3059         (gdbscm_value_dynamic_type): Use scoped_value_mark.
3060         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
3061         scoped_value_mark.
3062         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
3063         gdbscm_wrap and scoped_value_mark.
3064         (gdbscm_value_to_string): Use xfree directly instead of a
3065         cleanup.  Move 'buffer' unique_ptr to TRY scope.
3066         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
3067         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
3068         scoped_value_mark.
3069         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
3070         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
3071         scoped_value_mark.
3072         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
3073         gdbscm_wrap.
3074
3075 2018-07-18  Tom de Vries  <tdevries@suse.de>
3076
3077         * findvar.c (default_read_var_value): Also resolve dynamic type for
3078         LOC_OPTIMIZED_OUT vars.
3079
3080 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
3081
3082         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
3083         decoding.
3084
3085 2018-07-17  Tom Tromey  <tom@tromey.com>
3086
3087         * guile/scm-param.c (pascm_set_func, pascm_show_func)
3088         (compute_enum_list, pascm_set_param_value_x)
3089         (gdbscm_parameter_value): Update.
3090         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
3091         (gdbscm_scm_to_host_string): Update.
3092         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
3093         Update.
3094         * guile/scm-cmd.c (cmdscm_add_completion): Update.
3095         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
3096         * guile/scm-string.c (gdbscm_scm_to_string): Return
3097         unique_xmalloc_ptr.
3098         (gdbscm_scm_to_host_string): Likewise.
3099
3100 2018-07-17  Tom Tromey  <tom@tromey.com>
3101
3102         * guile/guile.c (gdbscm_eval_from_control_command): Update.
3103         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
3104         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
3105         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
3106         unique_xmalloc_ptr.
3107
3108 2018-07-17  Tom Tromey  <tom@tromey.com>
3109
3110         * guile/scm-param.c (pascm_signal_setshow_error): Update.
3111         * guile/guile-internal.h (gdbscm_exception_message_to_string):
3112         Update.
3113         * guile/scm-cmd.c (cmdscm_function): Update.
3114         * guile/scm-pretty-print.c
3115         (ppscm_print_exception_unless_memory_error): Update.
3116         * guile/scm-exception.c (gdbscm_exception_message_to_string):
3117         Return unique_xmalloc_ptr.
3118
3119 2018-07-17  Tom Tromey  <tom@tromey.com>
3120
3121         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
3122         Use string_printf.
3123
3124 2018-07-17  Jim Wilson  <jimw@sifive.com>
3125
3126         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
3127         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
3128         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
3129         unecessary braces after EF_RISCV_RVC test.  Delete call to
3130         set_gdbarch_decr_pc_after_break.
3131
3132         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
3133         RISCV_LAST_FP_REGNUM + 1.
3134         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
3135
3136 2018-07-17  Tom Tromey  <tom@tromey.com>
3137
3138         * configure.ac: Remove --disable-gdbcli.
3139         * configure: Rebuild.
3140         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
3141         (SUBDIR_CLI_CFLAGS): Remove.
3142         (SFILES): Use SUBDIR_CLI_SRCS.
3143         (COMMON_OBS): Use SUBDIR_CLI_OBS.
3144
3145 2018-07-17  Tom Tromey  <tom@tromey.com>
3146
3147         PR gdb/18624:
3148         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
3149
3150 2018-07-16  Jim Wilson  <jimw@sifive.com>
3151
3152         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
3153
3154 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3155
3156         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
3157         variable.
3158         (libunwind_frame_sniffer): Likewise.
3159         (libunwind_frame_prev_register): Likewise.
3160         (libunwind_sigtramp_frame_sniffer): Likewise.
3161         * ia64-tdep.c (ia64_access_reg): Likewise.
3162         (ia64_access_rse_reg): Likewise.
3163         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
3164         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
3165
3166 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3167
3168         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
3169
3170 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3171
3172         * remote-sim.c (gdbsim_target::close,
3173         gdbsim_target::mourn_inferior): Remove unused variables.
3174
3175 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
3176
3177         * ia64-tdep.c (ktab_buf): New global.
3178         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
3179         (get_kernel_table): Adjust.
3180
3181 2018-07-16  Tom Tromey  <tom@tromey.com>
3182
3183         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
3184         * dwarf2read.c (using_directives, new_symbol): Use
3185         outermost_context_p.
3186         * dbxread.c (process_one_symbol): Use outermost_context_p.
3187         * coffread.c (coff_symtab_read): Use outermost_context_p.
3188
3189 2018-07-16  Tom Tromey  <tom@tromey.com>
3190
3191         * dwarf2read.c (using_directives, read_func_scope)
3192         (read_lexical_block_scope): Update.
3193         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
3194         * buildsym.h (local_using_directives, global_using_directives):
3195         Don't declare.
3196         (get_local_using_directives, set_local_using_directives)
3197         (get_global_using_directives): Declare.
3198         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
3199         m_global_using_directives>: New members.
3200         (finish_block_internal, prepare_for_building)
3201         (reset_symtab_globals, end_symtab_get_static_block)
3202         (push_context): Update.
3203         (get_local_using_directives, set_local_using_directives)
3204         (get_global_using_directives): New functions.
3205         (buildsym_init): Update.
3206
3207 2018-07-16  Tom Tromey  <tom@tromey.com>
3208
3209         * xcoffread.c (xcoff_initial_scan): Don't call
3210         free_pending_blocks.
3211         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
3212         * buildsym.h (class scoped_free_pendings): Add constructor.
3213         (free_pending_blocks): Don't declare.
3214         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
3215         (free_pending_blocks): Now static.
3216
3217 2018-07-16  Tom Tromey  <tom@tromey.com>
3218
3219         * buildsym.h (push_subfile, pop_subfile): Update declarations.
3220         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
3221         member.
3222         (struct subfile_stack): Remove.
3223         (subfile_stack): Remove.
3224         (push_subfile, pop_subfile, buildsym_init): Update.
3225
3226 2018-07-16  Tom Tromey  <tom@tromey.com>
3227
3228         * buildsym.c (push_subfile): Use gdb_assert.
3229         (pop_subfile): Use gdb_assert.
3230
3231 2018-07-16  Tom Tromey  <tom@tromey.com>
3232
3233         * buildsym.h (merge_symbol_lists): Remove.
3234         * buildsym.c (merge_symbol_lists): Remove.
3235
3236 2018-07-16  Tom Tromey  <tom@tromey.com>
3237
3238         * stabsread.c (scan_file_globals): Update comment.
3239         * stabsread.h (scan_file_globals): Move from buildsym.h.
3240         * buildsym.h (scan_file_globals): Move to stabsread.h.
3241
3242 2018-07-16  Tom Tromey  <tom@tromey.com>
3243
3244         * xcoffread.c (xcoff_new_init): Update.
3245         * mipsread.c (mipscoff_new_init): Update.
3246         * mdebugread.c (mdebug_build_psymtabs): Update.
3247         * elfread.c (elf_new_init): Update.
3248         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
3249         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
3250         * buildsym.h (buildsym_new_init): Don't declare.
3251         * buildsym.c (buildsym_new_init): Remove.
3252
3253 2018-07-16  Tom Tromey  <tom@tromey.com>
3254
3255         * stabsread.h (within_function): Move from buildsym.h.
3256         * stabsread.c (start_stabs): Clear within_function.
3257         * coffread.c (coff_start_symtab): Clear within_function.
3258         * buildsym.h (within_function): Move to stabsread.h.
3259         * buildsym.c (prepare_for_building): Update.
3260
3261 2018-07-16  Tom Tromey  <tom@tromey.com>
3262
3263         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
3264         * dwarf2read.c (dwarf2_start_symtab): Don't set
3265         processing_gcc_compilation.
3266         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
3267
3268 2018-07-16  Tom Tromey  <tom@tromey.com>
3269
3270         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
3271         (next_symbol_text_func): Move from buildsym.h.
3272         * stabsread.c (hashname): Move from buildsym.c.
3273         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
3274         (next_symbol_text_func, hashname): Move to stabsread.h.
3275         * buildsym.c: Don't include bcache.h
3276         (hashname): Move to stasbread.c.
3277
3278 2018-07-16  Tom Tromey  <tom@tromey.com>
3279
3280         * buildsym.h (context_stack_size): Don't declare.
3281         * buildsym.c (context_stack_size): New global.
3282
3283 2018-07-16  Tom Tromey  <tom@tromey.com>
3284
3285         * dbxread.c (processing_acc_compilation): New global.
3286         * buildsym.h (processing_acc_compilation): Don't declare.
3287
3288 2018-07-16  Tom Tromey  <tom@tromey.com>
3289
3290         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
3291         * dbxread.c (read_ofile_symtab): Update.
3292         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
3293         * buildsym.h (last_source_start_addr): Remove.
3294         (set_last_source_start_addr, get_last_source_start_addr):
3295         Declare.
3296         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
3297         parameter.
3298         (struct buildsym_compunit) <m_last_source_start_addr>: New
3299         member.
3300         (prepare_for_building): Remove start_addr parameter.
3301         (start_symtab, restart_symtab, end_symtab_get_static_block)
3302         (end_symtab_with_blockvector): Update.
3303         (set_last_source_start_addr, get_last_source_start_addr): New
3304         functions.
3305
3306 2018-07-16  Tom Tromey  <tom@tromey.com>
3307
3308         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
3309         member.
3310         (have_line_numbers): Remove.
3311         (record_line, prepare_for_building, end_symtab_get_static_block)
3312         (augment_type_symtab): Update.
3313
3314 2018-07-16  Tom Tromey  <tom@tromey.com>
3315
3316         * buildsym.c (~buildsym_compunit): Free the macro table.
3317         (struct buildsym_compunit) <get_macro_table, release_macros>: New
3318         methods.
3319         <m_pending_macros>: New member.
3320         (pending_macros): Remove.
3321         (~scoped_free_pendings, get_macro_table, prepare_for_building)
3322         (reset_symtab_globals, end_symtab_get_static_block)
3323         (end_symtab_with_blockvector, augment_type_symtab)
3324         (buildsym_init): Update.
3325
3326 2018-07-16  Tom Tromey  <tom@tromey.com>
3327
3328         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
3329         parameter.
3330         (buildsym_compunit::set_last_source_file): New method.
3331         <m_last_source_file>: New member.
3332         (prepare_for_building): Remove "name" parameter.
3333         (start_symtab, restart_symtab, reset_symtab_globals): Update.
3334         (last_source_file): Remove.
3335         (set_last_source_file, get_last_source_file): Update.
3336
3337 2018-07-16  Tom Tromey  <tom@tromey.com>
3338
3339         * buildsym.c (prepare_for_building): Add assert.
3340
3341 2018-07-16  Tom Tromey  <tom@tromey.com>
3342
3343         * buildsym.c (~buildsym_compunit): Update.
3344         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
3345         (start_subfile, patch_subfile_names)
3346         (end_symtab_with_blockvector): Update.
3347
3348 2018-07-16  Tom Tromey  <tom@tromey.com>
3349
3350         * buildsym.c (struct buildsym_compunit): Add constructor,
3351         destructor, initializers.
3352         (start_buildsym_compunit): Remove.
3353         (free_buildsym_compunit): Use "delete".
3354         (start_symtab, restart_symtab): Use "new".
3355
3356 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
3357
3358         * symfile.c (set_objfile_default_section_offset): Remove struct
3359         keyword.
3360
3361 2018-07-14  Stafford Horne  <shorne@gmail.com>
3362
3363         * (Responsible Maintainers): Add myself as or1k maintainer.
3364
3365 2018-07-13  Tom Tromey  <tom@tromey.com>
3366
3367         * symfile.c (set_objfile_default_section_offset): Use extra braces
3368         around initializer.
3369
3370 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
3371
3372         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
3373         non-branching basr.
3374
3375 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3376
3377         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
3378         unittests/cli-utils-selftests.c
3379         * unittests/cli-utils-selftests.c: New file.
3380
3381 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3382
3383         * NEWS: Mention new commands. Mention change to 'thread apply'.
3384
3385 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3386
3387         * thread.c (thr_try_catch_cmd): New function.
3388         (thread_apply_all_command): Handle qcs flags.
3389         (thread_apply_command): Handle qcs flags.
3390         (taas_command): New function.
3391         (tfaas_command): New function.
3392         (_initialize_thread): Update to setup the new commands 'taas
3393         and 'tfaas'. Change doc string for 'thread apply'.
3394
3395 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3396
3397         * stack.c: (trailing_outermost_frame): New function, mostly
3398         extracted from backtrace_command_1.
3399         (leading_innermost_frame): New function.
3400         (backtrace_command_1): Update to call trailing_outermost_frame.
3401         (frame_apply_command_count): New function.
3402         (frame_apply_level_command): New function.
3403         (frame_apply_all_command): New function.
3404         (frame_apply_command): New function.
3405         (faas_command): New function.
3406         (frame_cmd_list): New variable.
3407         (_initialize_stack): Update to setup the new commands 'frame apply'
3408         and 'faas'.
3409
3410 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3411
3412         * cli-utils.c (number_or_range_parser::get_number): Only handle
3413         numbers or convenience var as numbers.
3414         (parse_flags): New function.
3415         (parse_flags_qcs): New function.
3416         (number_or_range_parser::finished): Ensure parsing end is detected
3417         before end of string.
3418         * cli-utils.h (parse_flags): New function.
3419         (parse_flags_qcs): New function.
3420         (number_or_range_parser): Remove m_finished bool.
3421         (number_or_range_parser::skip_range): Set m_in_range to false.
3422
3423 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3424
3425         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
3426         on Windows.
3427
3428 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
3429             Jan Kratochvil  <jan.kratochvil@redhat.com>
3430             Paul Fertser  <fercerpav@gmail.com>
3431             Tsutomu Seki  <sekiriki@gmail.com>
3432             Pedro Alves  <palves@redhat.com>
3433
3434         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
3435         'unittests/parse-connection-spec-selftests.c'.
3436         (COMMON_SFILES): Add 'common/netstuff.c'.
3437         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
3438         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
3439         * common/netstuff.c: New file.
3440         * common/netstuff.h: New file.
3441         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
3442         (wait_for_connect): Update comment.  New parameter
3443         'gdb::optional<int> sock' instead of 'struct serial *scb'.
3444         Use 'sock' directly instead of 'scb->fd'.
3445         (try_connect): New function, with code from 'net_open'.
3446         (net_open): Rewrite main loop to deal with multiple
3447         sockets/addresses.  Handle IPv6-style hostnames; implement
3448         support for IPv6 connections.
3449         * unittests/parse-connection-spec-selftests.c: New file.
3450
3451 2018-07-11  Pedro Alves  <palves@redhat.com>
3452
3453         PR gdb/23377
3454         * remote.c (remote_target::remote_detach_pid): Call
3455         set_current_process.
3456
3457 2018-07-11  Pedro Alves  <palves@redhat.com>
3458
3459         * h8300-tdep.c (h8300_gdbarch_init): Remove
3460         set_gdbarch_ecoff_reg_to_regnum calls.
3461
3462 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
3463
3464         PR c++/23373
3465         * c-typeprint.c (c_type_print_base_struct_union): Don't print
3466         offsets/sizes for static members of a class/struct.
3467
3468 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
3469
3470         * target-descriptions.c (tdesc_register_bitsize): Rename.
3471         * target-descriptions.h (tdesc_register_bitsize): Likewise.
3472         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
3473         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
3474
3475 2018-07-10  Tom Tromey  <tom@tromey.com>
3476
3477         * breakpoint.c (moribund_locations): Now static and a
3478         std::vector.
3479         (breakpoint_init_inferior, moribund_breakpoint_here_p)
3480         (build_bpstat_chain, update_global_location_list)
3481         (breakpoint_retire_moribund): Update.
3482         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
3483         VEC.
3484
3485 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3486
3487         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
3488         (riscv_register_reggroup_p): Use new function, remove unneeded
3489         parenthesis.
3490         (riscv_push_dummy_call): Extend assert to compare against xlen or
3491         flen based on register type.
3492
3493 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3494
3495         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
3496
3497 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3498
3499         * remote.c (show_hardware_watchpoint_limit): New function.
3500         (show_hardware_watchpoint_length_limit): New function.
3501         (show_hardware_breakpoint_limit): New function.
3502         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
3503         where appropriate, update help text.
3504
3505 2018-07-09  Tom Tromey  <tom@tromey.com>
3506
3507         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
3508         (CLIBS): Don't mention NAT_CLIBS.
3509
3510 2018-07-09  Tom Tromey  <tom@tromey.com>
3511
3512         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
3513         (LIBGDB_OBS, clean mostlyclean): Update.
3514         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
3515
3516 2018-07-09  Tom Tromey  <tom@tromey.com>
3517
3518         * Makefile.in (%.c: %.y): Use ECHO_YACC.
3519         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
3520         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
3521
3522 2018-07-09  Tom Tromey  <tom@tromey.com>
3523
3524         * Makefile.in (ALLDEPFILES): Remove exec.c.
3525         (COMMON_OBS): Remove exec.o.
3526         (COMMON_SFILES): Add exec.c.
3527
3528 2018-07-09  Tom Tromey  <tom@tromey.com>
3529
3530         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
3531
3532 2018-07-09  Tom Tromey  <tom@tromey.com>
3533
3534         * Makefile.in (clean mostlyclean): Remove stamp-version.
3535         (version.c): Depend on stamp-version.
3536         (stamp-version): New rule, from version.c rule.
3537
3538 2018-07-09  Tom Tromey  <tom@tromey.com>
3539
3540         * Makefile.in (init.c): Depend on stamp-init.
3541         (stamp-init): New rule, from init.c rule.
3542         (clean mostlyclean): Remove stamp-init.
3543
3544 2018-07-09  Tom Tromey  <tom@tromey.com>
3545
3546         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
3547         SUBDIR_GCC_COMPILE_SRCS.
3548
3549 2018-07-09  Tom Tromey  <tom@tromey.com>
3550
3551         * Makefile.in (init.c): Remove some unused sed rules.
3552
3553 2018-07-09  Tom Tromey  <tom@tromey.com>
3554
3555         * Makefile.in (TSOBS): Remove.
3556         (INIT_FILES): Update.
3557         (LIBGDB_OBS): Update.
3558         (COMMON_SFILES): Add inflow.c.
3559         (SFILES): Remove inflow.c.
3560
3561 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
3562
3563         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
3564
3565 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
3566
3567         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
3568         get_saveloc_name, is_signal_frame_name, step_name,
3569         init_remote_name, create_addr_space_name,
3570         destroy_addr_space_name, search_unwind_table_name,
3571         find_dyn_list_name): Constify.
3572
3573 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
3574
3575         * darwin-nat.c (darwin_pthread_kill): New function.
3576         (darwin_resume_thread): Use darwin_pthread_kill.
3577
3578 2018-07-05  Tom de Vries  <tdevries@suse.de>
3579
3580         * macroexp.c (macro_buffer) <operator=>: New member function.
3581
3582 2018-07-04  Tom Tromey  <tom@tromey.com>
3583
3584         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
3585
3586 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
3587
3588         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
3589         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
3590         * maint.c: Likewise.
3591         * top.c: Likewise.
3592
3593 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
3594
3595         * NEWS: Create a new section for the next release branch.
3596         Rename the section of the current branch, now that it has
3597         been cut.
3598
3599 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
3600
3601         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
3602         * version.in: Bump version to 8.2.50.DATE-git.
3603
3604 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
3605             Pedro Alves  <palves@redhat.com>
3606
3607         * linux-nat.c (linux_init_ptrace): Rename to ...
3608         (linux_init_ptrace_procfs): ... this.  Call
3609         linux_proc_init_warnings.
3610         (linux_nat_target::post_attach)
3611         (linux_nat_target::post_startup_inferior): Adjust.
3612         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
3613         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
3614
3615 2018-07-04  Tom de Vries  <tdevries@suse.de>
3616
3617         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
3618         check ...
3619         (read_comp_unit_head): ... here.
3620
3621 2018-07-03  Tom Tromey  <tom@tromey.com>
3622
3623         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
3624         (stop_tracing, tstatus_command)
3625         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
3626         (print_one_static_tracepoint_marker): Update.
3627         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
3628         std::vector.
3629         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
3630         VEC.
3631         (all_tracepoints, static_tracepoints_here): Return std::vector.
3632
3633 2018-07-03  Tom Tromey  <tom@tromey.com>
3634
3635         * common/ptid.c (ptid_equal): Remove.
3636         * common/ptid.h (ptid_equal): Don't declare.
3637         * ada-tasks.c: Update.
3638         * breakpoint.c: Update.
3639         * common/agent.c: Update.
3640         * corelow.c: Update.
3641         * darwin-nat-info.c: Update.
3642         * darwin-nat.c: Update.
3643         * dcache.c: Update.
3644         * dtrace-probe.c: Update.
3645         * dummy-frame.c: Update.
3646         * fbsd-nat.c: Update.
3647         * frame.c: Update.
3648         * gdbthread.h: Update.
3649         * gnu-nat.c: Update.
3650         * go32-nat.c: Update.
3651         * inf-loop.c: Update.
3652         * inf-ptrace.c: Update.
3653         * infcall.c: Update.
3654         * infcmd.c: Update.
3655         * inflow.c: Update.
3656         * infrun.c: Update.
3657         * linux-fork.c: Update.
3658         * linux-nat.c: Update.
3659         * linux-thread-db.c: Update.
3660         * mi/mi-cmd-var.c: Update.
3661         * mi/mi-interp.c: Update.
3662         * mi/mi-main.c: Update.
3663         * nto-procfs.c: Update.
3664         * ppc-linux-tdep.c: Update.
3665         * procfs.c: Update.
3666         * python/py-inferior.c: Update.
3667         * python/py-record-btrace.c: Update.
3668         * python/py-record.c: Update.
3669         * ravenscar-thread.c: Update.
3670         * regcache.c: Update.
3671         * remote-sim.c: Update.
3672         * remote.c: Update.
3673         * sol-thread.c: Update.
3674         * solib.c: Update.
3675         * target.c: Update.
3676         * tui/tui-stack.c: Update.
3677         * varobj.c: Update.
3678         * windows-nat.c: Update.
3679         * windows-tdep.c: Update.
3680
3681 2018-07-03  Tom Tromey  <tom@tromey.com>
3682
3683         * common/ptid.c (ptid_match): Remove.
3684         * common/ptid.h (ptid_match): Don't declare.
3685         * fbsd-nat.c: Update.
3686         * infcmd.c: Update.
3687         * infrun.c: Update.
3688         * linux-nat.c: Update.
3689         * record-btrace.c: Update.
3690         * regcache.c: Update.
3691         * remote.c: Update.
3692
3693 2018-07-03  Tom Tromey  <tom@tromey.com>
3694
3695         * common/ptid.c (ptid_tid_p): Remove.
3696         * common/ptid.h (ptid_tid_p): Don't declare.
3697         * sol-thread.c: Update.
3698
3699 2018-07-03  Tom Tromey  <tom@tromey.com>
3700
3701         * common/ptid.c (ptid_lwp_p): Remove.
3702         * common/ptid.h (ptid_lwp_p): Don't declare.
3703         * fbsd-nat.c: Update.
3704         * linux-nat.c: Update.
3705         * nat/linux-procfs.c: Update.
3706         * nat/x86-linux-dregs.c: Update.
3707         * sol-thread.c: Update.
3708
3709 2018-07-03  Tom Tromey  <tom@tromey.com>
3710
3711         * common/ptid.c (ptid_is_pid): Remove.
3712         * common/ptid.h (ptid_is_pid): Don't declare.
3713         * infrun.c: Update.
3714         * linux-nat.c: Update.
3715         * mi/mi-interp.c: Update.
3716         * remote.c: Update.
3717         * thread.c: Update.
3718
3719 2018-07-03  Tom Tromey  <tom@tromey.com>
3720
3721         * common/ptid.c (ptid_get_tid): Remove.
3722         * common/ptid.h (ptid_get_tid): Don't declare.
3723         * ada-tasks.c: Update.
3724         * aix-thread.c: Update.
3725         * bsd-uthread.c: Update.
3726         * darwin-nat.c: Update.
3727         * fbsd-nat.c: Update.
3728         * i386-darwin-nat.c: Update.
3729         * infrun.c: Update.
3730         * linux-tdep.c: Update.
3731         * nto-procfs.c: Update.
3732         * ppc-ravenscar-thread.c: Update.
3733         * python/py-infthread.c: Update.
3734         * ravenscar-thread.c: Update.
3735         * sol-thread.c: Update.
3736         * sparc-ravenscar-thread.c: Update.
3737         * windows-nat.c: Update.
3738
3739 2018-07-03  Tom Tromey  <tom@tromey.com>
3740
3741         * common/ptid.c (ptid_get_lwp): Remove.
3742         * common/ptid.h (ptid_get_lwp): Don't declare.
3743         * aarch64-linux-nat.c: Update.
3744         * ada-tasks.c: Update.
3745         * aix-thread.c: Update.
3746         * amd64-linux-nat.c: Update.
3747         * arm-linux-nat.c: Update.
3748         * corelow.c: Update.
3749         * fbsd-nat.c: Update.
3750         * fbsd-tdep.c: Update.
3751         * gnu-nat.c: Update.
3752         * i386-cygwin-tdep.c: Update.
3753         * i386-gnu-nat.c: Update.
3754         * i386-linux-nat.c: Update.
3755         * ia64-linux-nat.c: Update.
3756         * inf-ptrace.c: Update.
3757         * infrun.c: Update.
3758         * linux-fork.c: Update.
3759         * linux-nat.c: Update.
3760         * linux-tdep.c: Update.
3761         * linux-thread-db.c: Update.
3762         * mips-linux-nat.c: Update.
3763         * nat/aarch64-linux-hw-point.c: Update.
3764         * nat/aarch64-linux.c: Update.
3765         * nat/linux-btrace.c: Update.
3766         * nat/linux-osdata.c: Update.
3767         * nat/linux-procfs.c: Update.
3768         * nat/x86-linux-dregs.c: Update.
3769         * obsd-nat.c: Update.
3770         * ppc-fbsd-nat.c: Update.
3771         * ppc-linux-nat.c: Update.
3772         * procfs.c: Update.
3773         * python/py-infthread.c: Update.
3774         * ravenscar-thread.c: Update.
3775         * remote.c: Update.
3776         * s390-linux-nat.c: Update.
3777         * sol-thread.c: Update.
3778         * sol2-tdep.c: Update.
3779         * spu-linux-nat.c: Update.
3780         * x86-linux-nat.c: Update.
3781         * xtensa-linux-nat.c: Update.
3782
3783 2018-07-03  Tom Tromey  <tom@tromey.com>
3784
3785         * common/ptid.c (ptid_get_pid): Remove.
3786         * common/ptid.h (ptid_get_pid): Don't declare.
3787         * aarch64-linux-nat.c: Update.
3788         * ada-lang.c: Update.
3789         * aix-thread.c: Update.
3790         * alpha-bsd-nat.c: Update.
3791         * amd64-fbsd-nat.c: Update.
3792         * amd64-linux-nat.c: Update.
3793         * arm-linux-nat.c: Update.
3794         * arm-nbsd-nat.c: Update.
3795         * auxv.c: Update.
3796         * break-catch-syscall.c: Update.
3797         * breakpoint.c: Update.
3798         * bsd-uthread.c: Update.
3799         * corelow.c: Update.
3800         * ctf.c: Update.
3801         * darwin-nat.c: Update.
3802         * fbsd-nat.c: Update.
3803         * fbsd-tdep.c: Update.
3804         * gcore.c: Update.
3805         * gnu-nat.c: Update.
3806         * hppa-nbsd-nat.c: Update.
3807         * hppa-obsd-nat.c: Update.
3808         * i386-fbsd-nat.c: Update.
3809         * ia64-linux-nat.c: Update.
3810         * inf-ptrace.c: Update.
3811         * infcmd.c: Update.
3812         * inferior.c: Update.
3813         * inferior.h: Update.
3814         * inflow.c: Update.
3815         * infrun.c: Update.
3816         * linux-fork.c: Update.
3817         * linux-nat.c: Update.
3818         * linux-tdep.c: Update.
3819         * linux-thread-db.c: Update.
3820         * m68k-bsd-nat.c: Update.
3821         * mi/mi-interp.c: Update.
3822         * mi/mi-main.c: Update.
3823         * mips-linux-nat.c: Update.
3824         * mips-nbsd-nat.c: Update.
3825         * mips64-obsd-nat.c: Update.
3826         * nat/aarch64-linux-hw-point.c: Update.
3827         * nat/aarch64-linux.c: Update.
3828         * nat/linux-btrace.c: Update.
3829         * nat/linux-osdata.c: Update.
3830         * nat/linux-procfs.c: Update.
3831         * nat/x86-linux-dregs.c: Update.
3832         * nto-procfs.c: Update.
3833         * obsd-nat.c: Update.
3834         * ppc-linux-nat.c: Update.
3835         * ppc-nbsd-nat.c: Update.
3836         * ppc-obsd-nat.c: Update.
3837         * proc-service.c: Update.
3838         * procfs.c: Update.
3839         * python/py-inferior.c: Update.
3840         * python/py-infthread.c: Update.
3841         * ravenscar-thread.c: Update.
3842         * record.c: Update.
3843         * remote-sim.c: Update.
3844         * remote.c: Update.
3845         * rs6000-nat.c: Update.
3846         * s390-linux-nat.c: Update.
3847         * sh-nbsd-nat.c: Update.
3848         * sol-thread.c: Update.
3849         * sparc-nat.c: Update.
3850         * sparc64-tdep.c: Update.
3851         * spu-linux-nat.c: Update.
3852         * spu-tdep.c: Update.
3853         * target-debug.h: Update.
3854         * target.c: Update.
3855         * thread.c: Update.
3856         * tid-parse.c: Update.
3857         * tracefile-tfile.c: Update.
3858         * vax-bsd-nat.c: Update.
3859         * windows-nat.c: Update.
3860         * x86-linux-nat.c: Update.
3861         * x86-nat.c: Update.
3862
3863 2018-07-03  Tom Tromey  <tom@tromey.com>
3864
3865         * common/ptid.c (pid_to_ptid): Remove.
3866         * common/ptid.h (pid_to_ptid): Don't declare.
3867         * aix-thread.c: Update.
3868         * arm-linux-nat.c: Update.
3869         * common/ptid.c: Update.
3870         * common/ptid.h: Update.
3871         * corelow.c: Update.
3872         * ctf.c: Update.
3873         * darwin-nat.c: Update.
3874         * fbsd-nat.c: Update.
3875         * fork-child.c: Update.
3876         * gnu-nat.c: Update.
3877         * go32-nat.c: Update.
3878         * inf-ptrace.c: Update.
3879         * infcmd.c: Update.
3880         * inferior.c: Update.
3881         * infrun.c: Update.
3882         * linux-fork.c: Update.
3883         * linux-nat.c: Update.
3884         * nat/aarch64-linux-hw-point.c: Update.
3885         * nat/fork-inferior.c: Update.
3886         * nat/x86-linux-dregs.c: Update.
3887         * nto-procfs.c: Update.
3888         * obsd-nat.c: Update.
3889         * procfs.c: Update.
3890         * progspace.c: Update.
3891         * remote.c: Update.
3892         * rs6000-nat.c: Update.
3893         * s390-linux-nat.c: Update.
3894         * sol-thread.c: Update.
3895         * spu-linux-nat.c: Update.
3896         * target.c: Update.
3897         * top.c: Update.
3898         * tracefile-tfile.c: Update.
3899         * windows-nat.c: Update.
3900
3901 2018-07-03  Tom Tromey  <tom@tromey.com>
3902
3903         * common/ptid.h (ptid_build): Don't declare.
3904         * common/ptid.c (ptid_build): Remove.
3905         * aix-thread.c: Update.
3906         * bsd-kvm.c: Update.
3907         * bsd-uthread.c: Update.
3908         * common/agent.c: Update.
3909         * common/ptid.c: Update.
3910         * common/ptid.h: Update.
3911         * corelow.c: Update.
3912         * darwin-nat.c: Update.
3913         * fbsd-nat.c: Update.
3914         * gnu-nat.c: Update.
3915         * linux-fork.c: Update.
3916         * linux-nat.c: Update.
3917         * linux-thread-db.c: Update.
3918         * nat/linux-osdata.c: Update.
3919         * nat/linux-procfs.c: Update.
3920         * nto-procfs.c: Update.
3921         * obsd-nat.c: Update.
3922         * proc-service.c: Update.
3923         * procfs.c: Update.
3924         * ravenscar-thread.c: Update.
3925         * remote-sim.c: Update.
3926         * remote.c: Update.
3927         * sol-thread.c: Update.
3928         * target.c: Update.
3929         * windows-nat.c: Update.
3930
3931 2018-07-03  Tom Tromey  <tom@tromey.com>
3932
3933         * infrun.c (follow_exec): Use exit_inferior_silent.
3934         * inferior.c (exit_inferior_num_silent): Remove.
3935         * inferior.h (exit_inferior_num_silent): Don't declare.
3936
3937 2018-07-03  Tom Tromey  <tom@tromey.com>
3938
3939         PR cli/23340:
3940         * darwin-nat.c (darwin_attach_pid): Reset inferior and
3941         inferior_ptid on error.
3942
3943 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
3944             Simon Marchi  <simon.marchi@polymtl.ca>
3945
3946         PR tdep/8282
3947         * disasm.h (gdb_disassembler): Add
3948         `m_disassembler_options_holder'. member
3949         * disasm.c (get_all_disassembler_options): New function.
3950         (gdb_disassembler::gdb_disassembler): Use it.
3951         (gdb_buffered_insn_length_init_dis): Likewise.
3952         (gdb_buffered_insn_length): Adjust accordingly.
3953         (set_disassembler_options): Handle options with arguments.
3954         (show_disassembler_options_sfunc): Likewise.  Add a leading new
3955         line if showing options with descriptions.
3956         (disassembler_options_completer): Adapt to using the
3957         `disasm_options_and_args_t' structure.
3958         * mips-tdep.c (mips_disassembler_options): New variable.
3959         (mips_disassembler_options_o32): Likewise.
3960         (mips_disassembler_options_n32): Likewise.
3961         (mips_disassembler_options_n64): Likewise.
3962         (gdb_print_insn_mips): Don't set `disassembler_options'.
3963         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
3964         functions.
3965         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
3966         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
3967         `gdbarch_disassembler_options_implicit' and
3968         `gdbarch_valid_disassembler_options'.
3969         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
3970         `disasm_options_and_args_t' structure.
3971         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
3972         method.
3973         (valid_disassembler_options): Switch from `disasm_options_t' to
3974         the `disasm_options_and_args_t' structure.
3975         * NEWS: Document `set disassembler-options' support for the MIPS
3976         target.
3977         * gdbarch.h: Regenerate.
3978         * gdbarch.c: Regenerate.
3979
3980 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
3981
3982         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
3983
3984 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
3985
3986         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
3987         parameter in call to amd64_target_description.
3988         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
3989         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
3990         (amd64fbsd_init_abi): Likewise.
3991         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
3992         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
3993         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
3994         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
3995
3996 2018-06-29  Pedro Alves  <palves@redhat.com>
3997
3998         * gdb/amd64-tdep.h (amd64_create_target_description): Add
3999         "segments" parameter.
4000         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
4001         (_initialize_amd64_tdep): Update call to
4002         amd64_create_target_description.
4003         (amd64_target_description): Add "segments" parameter.  Adjust
4004         the implementation to use it.
4005         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
4006         call to amd64_create_target_description.
4007         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
4008         * gdb/arch/amd64.h (amd64_create_target_description): Add
4009         "segments" register.
4010         * gdb/arch/amd64.c (amd64_create_target_description): Add
4011         "segments" parameter.  Call create_feature_i386_64bit_segments
4012         only if SEGMENTS is true.
4013         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
4014         call to amd64_create_target_description.
4015
4016 2018-06-29  Pedro Alves  <palves@redhat.com>
4017
4018         * thread.c (thread_target_id_str): New, factored out from ...
4019         (print_thread_info_1): ... here.  Use it to compute the max
4020         "Target Id" column width.
4021
4022 2018-06-29  Pedro Alves  <palves@redhat.com>
4023
4024         * remote.c (remote_target::extra_thread_info): Delete
4025         'display_buf' and 'n' locals.  from the cache, regardless of
4026         packet mechanims is in use.  Use cache for qThreadExtra and qP
4027         methods too.
4028
4029 2018-06-29  Pedro Alves  <palves@redhat.com>
4030
4031         * blockframe.c (find_pc_sect_containing_function): New function.
4032         * breakpoint.c (print_breakpoint_location): Don't call
4033         find_pc_sect_function.
4034         * linespec.c (create_sals_line_offset): Record the location's
4035         symbol in the sal.
4036         * linespec.c (convert_address_location_to_sals): Fill in sal's
4037         symbol with find_pc_sect_containing_function.
4038         * symtab.c (find_function_start_sal): Rename to ...
4039         (find_function_start_sal_1): ... this.
4040         (find_function_start_sal): Reimplement as wrapper around
4041         find_function_start_sal_1, and use
4042         find_pc_sect_containing_function to fill in the sal's symbol.
4043         (find_function_start_sal(symbol*, bool)): Adjust.
4044         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
4045         comments.
4046         (find_pc_sect_containing_function): Declare.
4047
4048 2018-06-29  Pedro Alves  <palves@redhat.com>
4049
4050         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
4051         true if the the location has no symbol.
4052
4053 2018-06-28  Tom Tromey  <tom@tromey.com>
4054
4055         * NEWS: Mention --enable-codesign.
4056         * silent-rules.mk (ECHO_SIGN): New variable.
4057         * configure.ac: Add --enable-codesign.
4058         * configure: Rebuild.
4059         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
4060         (gdb$(EXEEXT)): Optionally invoke codesign.
4061
4062 2018-06-28  Pedro Alves  <palves@redhat.com>
4063
4064         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
4065         comments.
4066         (switch_to_thread_no_regs): Adjust comment.
4067         * infcmd.c (stop_pc): Delete.
4068         (post_create_inferior, info_program_command): Replace references
4069         to stop_pc with references to thread_info->suspend.stop_pc.
4070         * inferior.h (stop_pc): Delete declaration.
4071         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
4072         (handle_inferior_event_1, handle_signal_stop)
4073         (process_event_stop_test, keep_going_stepped_thread)
4074         (handle_step_into_function, handle_step_into_function_backward)
4075         (print_stop_location): Replace references to stop_pc with
4076         references to thread_info->suspend.stop_pc.
4077         (struct infcall_suspend_state) <stop_pc>: Delete field.
4078         (save_infcall_suspend_state, restore_infcall_suspend_state):
4079         Remove references to inf_stat->stop_pc.
4080         * linux-fork.c (fork_load_infrun_state): Likewise.
4081         * record-btrace.c (record_btrace_set_replay): Likewise.
4082         * record-full.c (record_full_goto_entry): Likewise.
4083         * remote.c (print_one_stopped_thread): Likewise.
4084         * target.c (target_resume): Extend comment.
4085         * thread.c (set_executing_thread): New.
4086         (set_executing): Use it.
4087         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
4088         Remove references to stop_pc.
4089
4090 2018-06-28  Pedro Alves  <palves@redhat.com>
4091
4092         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
4093         Moving fetching stop_pc until after ecs->event_thread is refreshed.
4094
4095 2018-06-28  Tom Tromey  <tom@tromey.com>
4096
4097         * coffread.c (coff_symfile_finish): Update.
4098         * xcoffread.c (xcoff_symfile_finish): Update.
4099         * elfread.c (elf_symfile_finish): Update.
4100         * symfile.h (dwarf2_free_objfile): Don't declare.
4101         * dwarf2read.c (_initialize_dwarf2_read): Use
4102         register_objfile_data_with_cleanup.
4103         (dwarf2_free_objfile): Now static.  Change signature.
4104
4105 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4106
4107         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
4108         option "-o" to add-symbol-file-load to add an offset to each
4109         section's load address.
4110         * symfile.c (set_objfile_default_section_offset): New function.
4111
4112 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4113
4114         * symfile.c (add_symbol_file_command): Make sure that sections
4115         with the same name are sorted in the same order.
4116
4117 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4118
4119         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
4120         require the second argument.  If omitted, load sections at the
4121         addresses specified in the file.
4122
4123 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4124
4125         * symfile.c (symbol_file_command, symbol_file_add_main_1)
4126         (_initialize_symfile): Add option "-o" to symbol-file to add an
4127         offset to each section of the symbol file.
4128
4129 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4130
4131         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
4132
4133 2018-06-27  Tom Tromey  <tom@tromey.com>
4134
4135         * stack.c (_initialize_stack): Update "func" help text.
4136
4137 2018-06-27  Tom Tromey  <tom@tromey.com>
4138
4139         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
4140         std::vector.
4141         (unwind_infopy_str, pyuw_create_unwind_info)
4142         (unwind_infopy_add_saved_register, pyuw_sniffer)
4143         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
4144         Update.
4145         (struct saved_reg): Add constructor.
4146         <value>: Now a gdbpy_ref<>.
4147
4148 2018-06-27  Tom Tromey  <tom@tromey.com>
4149
4150         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
4151
4152 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4153
4154         * gdb-gdb.py.in: Format using autopep8.
4155
4156 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4157
4158         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
4159         (type_lookup_function): Recognize CORE_ADDR values.
4160
4161 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4162
4163         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
4164         print tag_name.
4165
4166 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4167
4168         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
4169         <__lt__>: Add.
4170
4171 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4172
4173         * gdb-gdb.py: Move to...
4174         * gdb-gdb.py.in: ... here.
4175         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
4176         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
4177         dependencies.
4178         (distclean): Remove gdb-gdb.py when cleaning.
4179         (gdb-gdb.py, gdb-gdb.gdb): New rules.
4180         * configure: Re-generate.
4181
4182 2018-06-27  Pedro Alves  <palves@redhat.com>
4183
4184         * proc-service.c (get_ps_regcache): New.
4185         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
4186         (ps_lsetfpregs): Use it.
4187
4188 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
4189
4190         PR gdb/21695
4191         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
4192         (dwarf_decode_lines_1): Adjust.
4193
4194 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4195
4196         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
4197         override.
4198         <info_proc>: Likewise.
4199
4200 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
4201
4202         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
4203         to windows_fetch_one_register, and only handle the case of
4204         fetching one register.  Move the code that reloads the context
4205         and iterates over all registers if R is negative to...
4206         (windows_nat_target::fetch_registers): ... here.
4207         (do_windows_store_inferior_registers): Rename to
4208         windows_store_one_register, and only handle the case of storing
4209         one register.  Move the code that handles the case where r is
4210         negative to...
4211         (windows_nat_target::store_registers) ... here.
4212
4213 2018-06-26  Tom Tromey  <tom@tromey.com>
4214
4215         PR rust/22574:
4216         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
4217         * rust-lang.c (rust_print_struct_def): Add podata parameter.
4218         Update.
4219         (rust_internal_print_type): Add podata parameter.
4220         (rust_print_type): Update.
4221
4222 2018-06-26  Tom Tromey  <tom@tromey.com>
4223
4224         * typeprint.h (struct print_offset_data) <update, finish,
4225         maybe_print_hole>: New methods.
4226         <indentation>: New constant.
4227         * typeprint.c (print_offset_data::indentation): Define.
4228         (print_offset_data::maybe_print_hole, print_offset_data::update)
4229         (print_offset_data::finish): Move from c-typeprint.c and rename.
4230         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
4231         (print_spaces_filtered_with_print_options): Update.
4232         (c_print_type_union_field_offset, maybe_print_hole)
4233         (c_print_type_struct_field_offset): Move to typeprint.c and
4234         rename.
4235         (c_type_print_base_struct_union): Update.
4236
4237 2018-06-25  Pedro Alves  <palves@redhat.com>
4238
4239         * gdbthread.h (thread_info_ref, delete_thread)
4240         (delete_thread_silent, first_thread_of_inferior)
4241         (any_thread_of_inferior, switch_to_thread)
4242         (enable_thread_stack_temporaries)
4243         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
4244         (get_last_thread_stack_temporary)
4245         (value_in_thread_stack_temporaries, can_access_registers_thread):
4246         Spell out "struct thread_info" instead of just "thread_info".
4247         * inferior.h (notice_new_inferior): Likewise.
4248
4249 2018-06-25  Pedro Alves  <palves@redhat.com>
4250
4251         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
4252         pass thread_info pointer to delete_thread.
4253         (windows_nat_target::detach): Pass inferior pointer to
4254         detach_inferior.
4255         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
4256         delete_thread.
4257         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
4258         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
4259         and pass a thread_info pointer to delete_thread.
4260         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
4261         pass thread_info pointer to delete_thread.
4262         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
4263         delete_thread_silent call.
4264         * procfs.c (procfs_target::detach): Pass inferior pointer to
4265         detach_inferior.
4266         (procfs_target::wait): Pass thread_info pointer to delete_thread.
4267         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
4268         delete_thread_silent call.
4269         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
4270         pass thread_info pointer to delete_thread.
4271         (windows_nat_target::detach): Pass inferior pointer to
4272         delete_inferior.
4273
4274 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
4275
4276         * regcache.c (readable_regcache::read_part): Fix asserts.
4277         (reg_buffer::raw_collect_part): New function.
4278         (regcache::write_part): Fix asserts.
4279         (reg_buffer::raw_supply_part): New function.
4280         (regcache::transfer_regset_register): New helper function.
4281         (regcache::transfer_regset): Call new functions.
4282         (regcache_supply_regset): Use gdb_byte*.
4283         (regcache::supply_regset): Likewise.
4284         (regcache_collect_regset): Likewise.
4285         (regcache::collect_regset): Likewise.
4286         * regcache.h (reg_buffer::raw_collect_part): New declaration.
4287         (reg_buffer::raw_supply_part): Likewise.
4288         (regcache::transfer_regset_register): Likewise.
4289         (regcache::transfer_regset): Use gdb_byte*.
4290
4291 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
4292
4293         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
4294
4295 2018-06-21  Pedro Alves  <palves@redhat.com>
4296
4297         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
4298         instead of a ptid_t.  All callers adjusted.
4299         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
4300         adjusted.
4301         (print_ada_task_info, display_current_task_id, task_command_1):
4302         Adjust.
4303         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
4304         inferior_thread.
4305         (breakpoint_kind): Adjust.
4306         (remove_breakpoints_pid): Rename to ...
4307         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
4308         pointer.  All callers adjusted.
4309         (bpstat_clear_actions): Use inferior_thread.
4310         (get_bpstat_thread): New.
4311         (bpstat_do_actions): Use it.
4312         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
4313         to take a thread_info pointer.  All callers adjusted.
4314         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
4315         (breakpoint_re_set_thread): Use inferior_thread.
4316         * breakpoint.h (struct inferior): Forward declare.
4317         (bpstat_stop_status): Update.
4318         (remove_breakpoints_pid): Delete.
4319         (remove_breakpoints_inf): New.
4320         * bsd-uthread.c (bsd_uthread_target::wait)
4321         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
4322         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
4323         (maint_btrace_packet_history_cmd)
4324         (maint_btrace_clear_packet_history_cmd): Adjust.
4325         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
4326         inferior_thread.
4327         * cli/cli-interp.c: Include "inferior.h".
4328         * common/refcounted-object.h (struct
4329         refcounted_object_ref_policy): New.
4330         * compile/compile-object-load.c: Include gdbthread.h.
4331         (store_regs): Use inferior_thread.
4332         * corelow.c (core_target::close): Use current_inferior.
4333         (core_target_open): Adjust to use first_thread_of_inferior and use
4334         the current inferior.
4335         * ctf.c (ctf_target::close): Adjust to use current_inferior.
4336         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
4337         <thread>: ... this new field.  All references adjusted.
4338         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
4339         Take a thread_info pointer instead of a ptid_t.
4340         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
4341         (dummy_frame_discard, register_dummy_frame_dtor): Take a
4342         thread_info pointer instead of a ptid_t.
4343         * elfread.c: Include "inferior.h".
4344         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
4345         Use inferior_thread.
4346         * eval.c (evaluate_subexp): Likewise.
4347         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
4348         inferior_thread.
4349         * gdb_proc_service.h (struct thread_info): Forward declare.
4350         (struct ps_prochandle) <ptid>: Delete, replaced by ...
4351         <thread>: ... this new field.  All references adjusted.
4352         * gdbarch.h, gdbarch.c: Regenerate.
4353         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
4354         'thread' parameter.  All implementations and callers adjusted.
4355         * gdbthread.h (thread_info) <set_running>: New method.
4356         (delete_thread, delete_thread_silent): Take a thread_info pointer
4357         instead of a ptid.
4358         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
4359         (first_thread_of_process): Delete, replaced by ...
4360         (first_thread_of_inferior): ... this new function.  All callers
4361         adjusted.
4362         (any_live_thread_of_process): Delete, replaced by ...
4363         (any_live_thread_of_inferior): ... this new function.  All callers
4364         adjusted.
4365         (switch_to_thread, switch_to_no_thread): Declare.
4366         (is_executing): Delete.
4367         (enable_thread_stack_temporaries): Update comment.
4368         <enable_thread_stack_temporaries>: Take a thread_info pointer
4369         instead of a ptid_t.  Incref the thread.
4370         <~enable_thread_stack_temporaries>: Decref the thread.
4371         <m_ptid>: Delete
4372         <m_thr>: New.
4373         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
4374         (get_last_thread_stack_temporary)
4375         (value_in_thread_stack_temporaries, can_access_registers_thread):
4376         Take a thread_info pointer instead of a ptid_t.  All callers
4377         adjusted.
4378         * infcall.c (get_call_return_value): Use inferior_thread.
4379         (run_inferior_call): Work with thread pointers instead of ptid_t.
4380         (call_function_by_hand_dummy): Work with thread pointers instead
4381         of ptid_t.  Use thread_info_ref.
4382         * infcmd.c (proceed_thread_callback): Access thread's state
4383         directly.
4384         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
4385         access thread's state directly.
4386         (continue_command): Use inferior_thread.
4387         (info_program_command): Use find_thread_ptid and access thread
4388         state directly.
4389         (proceed_after_attach_callback): Use thread state directly.
4390         (notice_new_inferior): Take a thread_info pointer instead of a
4391         ptid_t.  All callers adjusted.
4392         (exit_inferior): Take an inferior pointer instead of a pid.  All
4393         callers adjusted.
4394         (exit_inferior_silent): New.
4395         (detach_inferior): Delete.
4396         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
4397         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
4398         (detach_inferior_command, kill_inferior_command): Use
4399         find_inferior_id instead of valid_gdb_inferior_id and
4400         gdb_inferior_id_to_pid.
4401         (inferior_command): Use inferior and thread pointers.
4402         * inferior.h (struct thread_info): Forward declare.
4403         (notice_new_inferior): Take a thread_info pointer instead of a
4404         ptid_t.  All callers adjusted.
4405         (detach_inferior): Delete declaration.
4406         (exit_inferior, exit_inferior_silent): Take an inferior pointer
4407         instead of a pid.  All callers adjusted.
4408         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
4409         (valid_gdb_inferior_id): Delete.
4410         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
4411         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
4412         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
4413         ...
4414         <inf>: ... this new field.
4415         <step_ptid>: Delete, replaced by ...
4416         <step_thread>: ... this new field.
4417         (get_displaced_stepping_state): Take an inferior pointer instead
4418         of a pid.  All callers adjusted.
4419         (displaced_step_in_progress_any_inferior): Adjust.
4420         (displaced_step_in_progress_thread): Take a thread pointer instead
4421         of a ptid_t.  All callers adjusted.
4422         (displaced_step_in_progress, add_displaced_stepping_state): Take
4423         an inferior pointer instead of a pid.  All callers adjusted.
4424         (get_displaced_step_closure_by_addr): Adjust.
4425         (remove_displaced_stepping_state): Take an inferior pointer
4426         instead of a pid.  All callers adjusted.
4427         (displaced_step_prepare_throw, displaced_step_prepare)
4428         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
4429         All callers adjusted.
4430         (start_step_over): Adjust.
4431         (infrun_thread_ptid_changed): Remove bit updating ptids in the
4432         displaced step queue.
4433         (do_target_resume): Adjust.
4434         (fetch_inferior_event): Use inferior_thread.
4435         (context_switch, get_inferior_stop_soon): Take an
4436         execution_control_state pointer instead of a ptid_t.  All callers
4437         adjusted.
4438         (switch_to_thread_cleanup): Delete.
4439         (stop_all_threads): Use scoped_restore_current_thread.
4440         * inline-frame.c: Include "gdbthread.h".
4441         (inline_state) <inline_state>: Take a thread pointer instead of a
4442         ptid_t.  All callers adjusted.
4443         <ptid>: Delete, replaced by ...
4444         <thread>: ... this new field.
4445         (find_inline_frame_state): Take a thread pointer instead of a
4446         ptid_t.  All callers adjusted.
4447         (skip_inline_frames, step_into_inline_frame)
4448         (inline_skipped_frames, inline_skipped_symbol): Take a thread
4449         pointer instead of a ptid_t.  All callers adjusted.
4450         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
4451         (inline_skipped_frames, inline_skipped_symbol): Likewise.
4452         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
4453         pointers directly.
4454         * linux-nat.c (get_detach_signal): Likewise.
4455         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
4456         (thread_db_notice_clone): Adjust.
4457         (thread_db_find_new_threads_silently)
4458         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
4459         a thread pointer instead of a ptid_t.  All callers adjusted.
4460         * mi/mi-cmd-var.c: Include "inferior.h".
4461         (mi_cmd_var_update_iter): Update to use thread pointers.
4462         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
4463         inferior directly.
4464         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
4465         out to ...
4466         (mi_output_running): ... this new function.
4467         (mi_on_resume_1): Adjust to use it.
4468         (mi_user_selected_context_changed): Adjust to use inferior_thread.
4469         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
4470         directly.
4471         (interrupt_thread_callback): : Adjust to use thread and inferior
4472         pointers.
4473         * proc-service.c: Include "gdbthread.h".
4474         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
4475         * progspace-and-thread.c: Include "inferior.h".
4476         * progspace.c: Include "inferior.h".
4477         * python/py-exitedevent.c (create_exited_event_object): Adjust to
4478         hold a reference to an inferior_object.
4479         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
4480         inferior_thread.
4481         * python/py-inferior.c (struct inferior_object): Give the type a
4482         tag name instead of a typedef.
4483         (python_on_normal_stop): No need to check if the current thread is
4484         listed.
4485         (inferior_to_inferior_object): Change return type to
4486         inferior_object.  All callers adjusted.
4487         (find_thread_object): Delete, bits factored out to ...
4488         (thread_to_thread_object): ... this new function.
4489         * python/py-infthread.c (create_thread_object): Use
4490         inferior_to_inferior_object.
4491         (thpy_is_stopped): Use thread pointer directly.
4492         (gdbpy_selected_thread): Use inferior_thread.
4493         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
4494         field, replaced with ...
4495         <thread>: ... this new field.  All users adjusted.
4496         (btpy_insn_or_gap_new): Drop const.
4497         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
4498         callers adjusted.
4499         * python/py-record.c: Include "gdbthread.h".
4500         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
4501         a ptid_t.  All callers adjusted.
4502         (gdbpy_current_recording): Use inferior_thread.
4503         * python/py-record.h (recpy_record_object) <ptid>: Delete
4504         field, replaced with ...
4505         <thread>: ... this new field.  All users adjusted.
4506         (recpy_element_object) <ptid>: Delete
4507         field, replaced with ...
4508         <thread>: ... this new field.  All users adjusted.
4509         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
4510         a ptid_t.  All callers adjusted.
4511         * python/py-threadevent.c: Include "gdbthread.h".
4512         (get_event_thread): Use thread_to_thread_object.
4513         * python/python-internal.h (struct inferior_object): Forward
4514         declare.
4515         (find_thread_object, find_inferior_object): Delete declarations.
4516         (thread_to_thread_object, inferior_to_inferior_object): New
4517         declarations.
4518         * record-btrace.c: Include "inferior.h".
4519         (require_btrace_thread): Use inferior_thread.
4520         (record_btrace_frame_sniffer)
4521         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
4522         (get_thread_current_frame): Use scoped_restore_current_thread and
4523         switch_to_thread.
4524         (get_thread_current_frame): Use thread pointer directly.
4525         (record_btrace_replay_at_breakpoint): Use thread's inferior
4526         pointer directly.
4527         * record-full.c: Include "inferior.h".
4528         * regcache.c: Include "gdbthread.h".
4529         (get_thread_arch_regcache): Use the inferior's address space
4530         directly.
4531         (get_thread_regcache, registers_changed_thread): New.
4532         * regcache.h (get_thread_regcache(thread_info *thread)): New
4533         overload.
4534         (registers_changed_thread): New.
4535         (remote_target) <remote_detach_1>: Swap order of parameters.
4536         (remote_add_thread): <remote_add_thread>: Return the new thread.
4537         (get_remote_thread_info(ptid_t)): New overload.
4538         (remote_target::remote_notice_new_inferior): Use thread pointers
4539         directly.
4540         (remote_target::process_initial_stop_replies): Use
4541         thread_info::set_running.
4542         (remote_target::remote_detach_1, remote_target::detach)
4543         (extended_remote_target::detach): Adjust.
4544         * stack.c (frame_show_address): Use inferior_thread.
4545         * target-debug.h (target_debug_print_thread_info_pp): New.
4546         * target-delegates.c: Regenerate.
4547         * target.c (default_thread_address_space): Delete.
4548         (memory_xfer_partial_1): Use current_inferior.
4549         (target_detach): Use current_inferior.
4550         (target_thread_address_space): Delete.
4551         (generic_mourn_inferior): Use current_inferior.
4552         * target.h (struct target_ops) <thread_address_space>: Delete.
4553         (target_thread_address_space): Delete.
4554         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
4555         pointers directly.
4556         (delete_thread_1, delete_thread, delete_thread_silent): Take a
4557         thread pointer instead of a ptid_t.  Adjust all callers.
4558         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
4559         (first_thread_of_process): Delete, replaced by ...
4560         (first_thread_of_inferior): ... this new function.  All callers
4561         adjusted.
4562         (any_thread_of_process): Rename to ...
4563         (any_thread_of_inferior): ... this, and take an inferior pointer.
4564         (any_live_thread_of_process): Rename to ...
4565         (any_live_thread_of_inferior): ... this, and take an inferior
4566         pointer.
4567         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
4568         (value_in_thread_stack_temporaries)
4569         (get_last_thread_stack_temporary): Take a thread pointer instead
4570         of a ptid_t.  Adjust all callers.
4571         (thread_info::set_running): New.
4572         (validate_registers_access): Use inferior_thread.
4573         (can_access_registers_ptid): Rename to ...
4574         (can_access_registers_thread): ... this, and take a thread
4575         pointer.
4576         (print_thread_info_1): Adjust to compare thread pointers instead
4577         of ptids.
4578         (switch_to_no_thread, switch_to_thread): Make extern.
4579         (scoped_restore_current_thread::~scoped_restore_current_thread):
4580         Use m_thread pointer directly.
4581         (scoped_restore_current_thread::scoped_restore_current_thread):
4582         Use inferior_thread.
4583         (thread_command): Use thread pointer directly.
4584         (thread_num_make_value_helper): Use inferior_thread.
4585         * top.c (execute_command): Use inferior_thread.
4586         * tui/tui-interp.c: Include "inferior.h".
4587         * varobj.c (varobj_create): Use inferior_thread.
4588         (value_of_root_1): Use find_thread_global_id instead of
4589         global_thread_id_to_ptid.
4590
4591 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
4592
4593         * regcache.c (readable_regcache::read_part): Avoid memcpy when
4594         possible.
4595         (regcache::write_part): Likewise.
4596         (readable_regcache::cooked_read_part): Update comment.
4597         (readable_regcache::cooked_write_part): Likewise.
4598         * regcache.h: (readable_regcache::read_part): Likewise.
4599         (regcache::write_part): Likewise.
4600
4601 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
4602             Dirk Schubert  <dirk.schubert@arm.com>
4603
4604         * aarch64-linux-nat.c (post_attach): New.
4605         (aarch64_linux_nat_target::post_attach): Override post_attach to
4606         record the number of hardware debug registers.
4607
4608 2018-06-20  Tom Tromey  <tom@tromey.com>
4609
4610         * python/py-param.c (add_setshow_generic): Make parameters const.
4611         (parmpy_init): Update.
4612
4613 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
4614
4615         * regcache.h (regcache_cooked_read_ftype): Rename to...
4616         (register_read_ftype): ...this, change type to function_view.
4617         (class reg_buffer) <save>: Remove src parameter.
4618         (readonly_detached_regcache) <readonly_detached_regcache>: Make
4619         parameter non-const in first overload.  Remove src parameter in
4620         second overload.
4621         * regcache.c (do_cooked_read): Remove.
4622         (readonly_detached_regcache::readonly_detached_regcache): Make
4623         parameter non-const, adjust call to other constructor.
4624         (reg_buffer::save): Remove src parameter.
4625         * frame.c (do_frame_register_read): Remove.
4626         (frame_save_as_regcache): Use lambda function.
4627         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
4628         parameter to ppu2spu_data *.
4629         (ppu2spu_sniffer): Use lambda function.
4630
4631 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
4632
4633         * record-full.c (record_full_target::insert_breakpoint): Remove
4634         "struct" keyword, add const.
4635
4636 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
4637
4638         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
4639         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
4640         * configure.ac: Remove AC_PREREQ, add missing quoting.
4641         * gnulib/configure.ac: Modernize usage of
4642         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
4643         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
4644         (AUTOMAKE_VERSION): Bump to 1.15.1.
4645         * configure: Re-generate.
4646         * config.in: Re-generate.
4647         * aclocal.m4: Re-generate.
4648         * gnulib/aclocal.m4: Re-generate.
4649         * gnulib/config.in: Re-generate.
4650         * gnulib/configure: Re-generate.
4651         * gnulib/import/Makefile.in: Re-generate.
4652
4653 2018-06-19  Pedro Alves  <palves@redhat.com>
4654
4655         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
4656         (lookup_minimal_symbol_by_pc_section): ... here with
4657         gdb_assert_not_reached added.
4658
4659 2018-06-19  Pedro Alves  <palves@redhat.com>
4660
4661         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
4662         parameter with a block parameter.  Compare location's block symbol
4663         with the frame's block instead of addresses.
4664         (skip_inline_frames): Pass the current block instead of the
4665         frame's address.  Break out as soon as we determine the frame
4666         should not be skipped.
4667
4668 2018-06-18  Tom Tromey  <tom@tromey.com>
4669
4670         * solib-aix.c (solib_aix_get_section_offsets): Return
4671         unique_xmalloc_ptr.
4672         (solib_aix_solib_create_inferior_hook): Update.
4673
4674 2018-06-18  Tom Tromey  <tom@tromey.com>
4675
4676         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
4677
4678 2018-06-18  Tom Tromey  <tom@tromey.com>
4679
4680         * solib-frv.c (frv_relocate_main_executable): Use
4681         unique_xmalloc_ptr.
4682         * solib-dsbt.c (dsbt_relocate_main_executable): Use
4683         unique_xmalloc_ptr.
4684
4685 2018-06-18  Tom Tromey  <tom@tromey.com>
4686
4687         * objfiles.h (inhibit_section_map_updates): Update.
4688         (resume_section_map_updates, resume_section_map_updates_cleanup):
4689         Remove.
4690         * solib-svr4.c (svr4_handle_solib_event): Update.
4691         * objfiles.c (inhibit_section_map_updates): Return
4692         scoped_restore_tmpl<int>.
4693         (resume_section_map_updates, resume_section_map_updates_cleanup):
4694         Remove.
4695
4696 2018-06-18  Tom Tromey  <tom@tromey.com>
4697
4698         * valprint.h (read_string): Update.
4699         * valprint.c (read_string): Change type of "buffer".
4700         (val_print_string): Update.
4701         * python/py-value.c (valpy_string): Update.
4702         * language.h (struct language_defn) <la_get_string>: Change
4703         type of "buffer".
4704         (default_get_string, c_get_string): Update.
4705         * language.c (default_get_string): Change type of "buffer".
4706         * guile/scm-value.c (gdbscm_value_to_string): Update.
4707         * c-lang.c (c_get_string): Change type of "buffer".
4708
4709 2018-06-18  Tom Tromey  <tom@tromey.com>
4710
4711         * ser-mingw.c (struct pipe_state_destroyer): New.
4712         (pipe_state_up): New typedef.
4713         (cleanup_pipe_state): Remove.
4714         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
4715
4716 2018-06-18  Tom Tromey  <tom@tromey.com>
4717
4718         * rust-lang.h (rust_yyerror): Don't declare.
4719         * rust-lang.c (rust_language_defn): Update.
4720         * rust-exp.y (yyerror): Now static.
4721         * parse.c (parse_exp_in_context_1): Update.
4722         * p-lang.h (p_yyerror): Don't declare.
4723         * p-lang.c (p_language_defn): Update.
4724         * p-exp.y (yyerror): Now static.
4725         * opencl-lang.c (opencl_language_defn): Update.
4726         * objc-lang.c (objc_language_defn): Update.
4727         * m2-lang.h (m2_yyerror): Don't declare.
4728         * m2-lang.c (m2_language_defn): Update.
4729         * m2-exp.y (yyerror): Now static.
4730         * language.h (struct language_defn) <la_error>: Remove.
4731         * language.c (unk_lang_error): Remove.
4732         (unknown_language_defn, auto_language_defn): Remove.
4733         * go-lang.h (go_yyerror): Don't declare.
4734         * go-lang.c (go_language_defn): Update.
4735         * go-exp.y (yyerror): Now static.
4736         * f-lang.h (f_yyerror): Don't declare.
4737         * f-lang.c (f_language_defn): Update.
4738         * f-exp.y (yyerror): Now static.
4739         * d-lang.h (d_yyerror): Don't declare.
4740         * d-lang.c (d_language_defn): Update.
4741         * d-exp.y (yyerror): Now static.
4742         * c-lang.h (c_yyerror): Don't declare.
4743         * c-lang.c (c_language_defn, cplus_language_defn)
4744         (asm_language_defn, minimal_language_defn): Update.
4745         * c-exp.y (yyerror): Now static.
4746         * ada-lang.h (ada_yyerror): Don't declare.
4747         * ada-lang.c (ada_language_defn): Update.
4748         * ada-exp.y (yyerror): Now static.
4749
4750 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
4751
4752         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
4753         (store_sveregs_to_thread): Likewise.
4754         (aarch64_linux_fetch_inferior_registers): Check for SVE.
4755         (aarch64_linux_store_inferior_registers): Likewise.
4756         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
4757         function.
4758         (aarch64_sve_regs_copy_to_regcache): Likewise.
4759         (aarch64_sve_regs_copy_from_regcache): Likewise.
4760         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
4761         declaration.
4762         (aarch64_sve_regs_copy_to_regcache): Likewise.
4763         (aarch64_sve_regs_copy_from_regcache): Likewise.
4764         (sve_context): Structure from Linux headers.
4765         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
4766         (SVE_SIG_ZREG_SIZE): Likewise.
4767         (SVE_SIG_PREG_SIZE): Likewise.
4768         (SVE_SIG_FFR_SIZE): Likewise.
4769         (SVE_SIG_REGS_OFFSET): Likewise.
4770         (SVE_SIG_ZREGS_OFFSET): Likewise.
4771         (SVE_SIG_ZREG_OFFSET): Likewise.
4772         (SVE_SIG_ZREGS_SIZE): Likewise.
4773         (SVE_SIG_PREGS_OFFSET): Likewise.
4774         (SVE_SIG_PREG_OFFSET): Likewise.
4775         (SVE_SIG_PREGS_SIZE): Likewise.
4776         (SVE_SIG_FFR_OFFSET): Likewise.
4777         (SVE_SIG_REGS_SIZE): Likewise.
4778         (SVE_SIG_CONTEXT_SIZE): Likewise.
4779         (SVE_PT_REGS_MASK): Likewise.
4780         (SVE_PT_REGS_FPSIMD): Likewise.
4781         (SVE_PT_REGS_SVE): Likewise.
4782         (SVE_PT_VL_INHERIT): Likewise.
4783         (SVE_PT_VL_ONEXEC): Likewise.
4784         (SVE_PT_REGS_OFFSET): Likewise.
4785         (SVE_PT_FPSIMD_OFFSET): Likewise.
4786         (SVE_PT_FPSIMD_SIZE): Likewise.
4787         (SVE_PT_SVE_ZREG_SIZE): Likewise.
4788         (SVE_PT_SVE_PREG_SIZE): Likewise.
4789         (SVE_PT_SVE_FFR_SIZE): Likewise.
4790         (SVE_PT_SVE_FPSR_SIZE): Likewise.
4791         (SVE_PT_SVE_FPCR_SIZE): Likewise.
4792         (__SVE_SIG_TO_PT): Likewise.
4793         (SVE_PT_SVE_OFFSET): Likewise.
4794         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
4795         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
4796         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
4797         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
4798         (SVE_PT_SVE_PREG_OFFSET): Likewise.
4799         (SVE_PT_SVE_PREGS_SIZE): Likewise.
4800         (SVE_PT_SVE_FFR_OFFSET): Likewise.
4801         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
4802         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
4803         (SVE_PT_SVE_SIZE): Likewise.
4804         (SVE_PT_SIZE): Likewise.
4805         (HAS_SVE_STATE): New define.
4806
4807 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
4808
4809         * nat/aarch64-sve-linux-sigcontext.h: New file.
4810         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
4811         new files.
4812         (SVE_VQ_MIN): Likewise.
4813         (SVE_VQ_MAX): Likewise.
4814         (SVE_VL_MIN): Likewise.
4815         (SVE_VL_MAX): Likewise.
4816         (SVE_NUM_ZREGS): Likewise.
4817         (SVE_NUM_PREGS): Likewise.
4818         (sve_vl_valid): Likewise.
4819         (struct user_sve_header): Likewise.
4820
4821 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
4822             Richard Bunt <Richard.Bunt@arm.com>
4823
4824         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
4825         was requested by GDB.
4826
4827 2018-06-15  Tom de Vries  <tdevries@suse.de>
4828
4829         * MAINTAINERS (Write After Approval): Add Tom de Vries.
4830
4831 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
4832
4833         * gnulib/update-gnulib.sh: Print expected versions of
4834         autoconf/aclocal.
4835
4836 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
4837
4838         * arch-utils.c (default_type_align): Use type_length_units.
4839         * gdbtypes.c (type_align): Use type_length_units.
4840
4841 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4842
4843         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
4844         of 'define' command.
4845
4846 2018-06-14  Tom de Vries  <tdevries@suse.de>
4847
4848         PR cli/22573
4849         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
4850         get_no_prettyformat_print_options.
4851
4852 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
4853
4854         * sparc-nat.h: Include target.h.
4855         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
4856         <fetch_registers>: Remove this argument in function call.
4857         <store_registers>: Remove this argument in function call, remove
4858         extra semicolon.
4859         <low_forget_process>: Call sparc64_forget_process instead of
4860         sparc_forget_process.
4861
4862 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4863
4864         * procfs.c (_initialize_procfs): Use add_inf_child_target.
4865         (procfs_target::make_corefile_notes): Adjust to new
4866         target_read_alloc return type.
4867
4868 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4869             Stephen Roberts  <stephen.roberts@arm.com>
4870
4871         PR gdb/22882
4872         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
4873         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
4874         Move should_notify_stop local into more inner scope.
4875
4876 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4877             Stephen Roberts  <stephen.roberts@arm.com>
4878
4879         PR gdb/22882
4880         * infrun.c (resume_1): Add call to mark_async_event_handler.
4881
4882 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4883
4884         * infrun.c (do_target_wait): Change old version of $pc printed.
4885
4886 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
4887
4888         * dwarf2read.c (read_index_from_section): Rename to...
4889         (read_gdb_index_from_section): ... this, update all callers.
4890         (dwarf2_read_index): Rename to...
4891         (dwarf2_read_gdb_index): ... this, update all callers.
4892
4893 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
4894
4895         * gdb/hppa-linux-nat.c
4896         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
4897         hppa_linux_nat_target::fetch_registers.
4898
4899 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4900
4901         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
4902         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
4903         (AARCH64_DWARF_SVE_FFR): Likewise.
4904         (AARCH64_DWARF_SVE_P0): Likewise.
4905         (AARCH64_DWARF_SVE_Z0): Likewise.
4906
4907 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4908
4909         * common/common-regcache.h (raw_compare): New function.
4910         * regcache.c (regcache::raw_compare): Likewise.
4911         * regcache.h (regcache::raw_compare): New declaration.
4912
4913 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4914
4915         * common/common-regcache.h (reg_buffer_common): New structure.
4916         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
4917         (reg_buffer::raw_supply): Likewise.
4918         (reg_buffer::raw_supply_integer): Likewise.
4919         (reg_buffer::raw_supply_zeroed): Likewise.
4920         (reg_buffer::raw_collect): Likewise.
4921         (reg_buffer::raw_collect_integer): Likewise.
4922         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
4923         (reg_buffer::raw_supply): Likewise.
4924         (reg_buffer::raw_supply_integer): Likewise.
4925         (reg_buffer::raw_supply_zeroed): Likewise.
4926         (reg_buffer::raw_collect): Likewise.
4927         (reg_buffer::raw_collect_integer): Likewise.
4928
4929 2018-06-10  Tom Tromey  <tom@tromey.com>
4930
4931         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
4932         (class remote_state) <stop_reply_queue>: Now std::vector.
4933         (remote_state::~remote_state)
4934         (remote_target::stop_reply_queue_length): Update.
4935         (struct queue_iter_param, remove_child_of_pending_fork)
4936         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
4937         (check_pending_event_prevents_wildcard_vcont_callback)
4938         (remove_stop_reply_for_inferior)
4939         (remove_stop_reply_of_remote_state)
4940         (remote_notif_remove_once_on_match)
4941         (stop_reply_match_ptid_and_ws)
4942         (remote_kill_child_of_pending_fork): Remove.
4943         (remote_target::remove_new_fork_children)
4944         (remote_target::check_pending_events_prevent_wildcard_vcont)
4945         (remote_target::discard_pending_stop_replies)
4946         (remote_target::discard_pending_stop_replies_in_queue)
4947         (remote_target::remote_notif_remove_queued_reply)
4948         (remote_target::queued_stop_reply)
4949         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
4950         (remote_target::wait, remote_target::kill_new_fork_children)
4951         (remote_target::async): Update.
4952
4953 2018-06-10  Tom Tromey  <tom@tromey.com>
4954
4955         * record-full.c (record_full_arch_list_cleanups): Remove.
4956         (record_full_message): Use try/catch.
4957         (record_full_wait_cleanups): Remove.
4958         (record_full_wait_1): Use try/catch.
4959         (record_full_restore): Likewise.
4960
4961 2018-06-10  Tom Tromey  <tom@tromey.com>
4962
4963         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
4964         declare VEC.  Add constructor.
4965         <in_target_beneath>: Now bool.
4966         (record_full_breakpoints): Now a std::vector, static.
4967         (record_full_sync_record_breakpoints)
4968         (record_full_init_record_breakpoints)
4969         (record_full_target::insert_breakpoint)
4970         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
4971
4972 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
4973
4974         * dwarf2read.c (process_cu_includes): Remove struct keyword.
4975         * serial.c (serial_interface_lookup): Remove struct keyword.
4976
4977 2018-06-10  Tom Tromey  <tom@tromey.com>
4978
4979         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
4980         method.
4981         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
4982         a method.
4983         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
4984         method.
4985         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
4986         "beneath" as a method.
4987         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
4988         Use "beneath" as a method.
4989
4990 2018-06-10  Tom Tromey  <tom@tromey.com>
4991
4992         * tracefile.c (struct trace_file_writer_deleter): New.
4993         <operator()>: Rename from trace_file_writer_xfree.
4994         (trace_file_writer_up): New typedef.
4995         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
4996
4997 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
4998
4999         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
5000         <m_registers, m_register_status>: Change type to
5001         std::unique_ptr.
5002         * regcache.c (reg_buffer::reg_buffer): Use new instead of
5003         XCNEWVEC.
5004
5005 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
5006
5007         * common/common-regcache.h (enum register_status): Add
5008         underlying type "signed char".
5009         * regcache.h (reg_buffer) <m_register_status>: Change type to
5010         register_status *.
5011         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
5012         register_status instead of signed char.
5013         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
5014         (reg_buffer::get_register_status): Remove cast.
5015         (readable_regcache::raw_read): Remove cast.
5016         (readable_regcache::cooked_read): Remove cast.
5017
5018 2018-06-09  Tom Tromey  <tom@tromey.com>
5019
5020         * source.c (reverse_search_command, forward_search_command): Use
5021         scoped_fd.
5022
5023 2018-06-09  Tom Tromey  <tom@tromey.com>
5024
5025         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
5026         (serial_ops_list): Now static, std::vector.
5027         (serial_interface_lookup, serial_add_interface): Update.
5028
5029 2018-06-09  Tom Tromey  <tom@tromey.com>
5030
5031         * dwarf2read.c (process_cu_includes): Update.
5032         (process_full_comp_unit): Update.
5033         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
5034         std::vector.
5035
5036 2018-06-08  Paul Koning  <paul_koning@dell.com>
5037
5038         PR gdb/23252
5039
5040         * python/python.c (do_start_initialization):
5041         Avoid call to internal Python API.
5042         (init__gdb_module): New function.
5043
5044 2018-06-08  Gary Benson <gbenson@redhat.com>
5045
5046         * linux-thread-db.c (valprint.h): New include.
5047         (struct check_thread_db_info): New structure.
5048         (check_thread_db_on_load, tdb_testinfo): New static globals.
5049         (check_thread_db, check_thread_db_callback): New functions.
5050         (try_thread_db_load_1): Run integrity checks if requested.
5051         (maintenance_check_libthread_db): New function.
5052         (_initialize_thread_db): Register "maint check libthread-db"
5053         and "maint set/show check-libthread-db".
5054         * NEWS: Mention the above new commands.
5055
5056 2018-06-08  Tom Tromey  <tom@tromey.com>
5057
5058         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
5059         now a method.
5060
5061 2018-06-08  Tom Tromey  <tom@tromey.com>
5062
5063         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
5064
5065 2018-06-08  Tom Tromey  <tom@tromey.com>
5066
5067         * common/btrace-common.h (struct btrace_data): Add constructor,
5068         destructor, move assignment operator.
5069         <empty, clear, fini>: New methods.
5070         <format>: Initialize.
5071         (btrace_data_init, btrace_data_fini, btrace_data_clear)
5072         (btrace_data_empty): Don't declare.
5073         * common/btrace-common.c (btrace_data_init): Remove.
5074         (btrace_data::fini): Rename from btrace_data_fini.
5075         (btrace_data::empty): Rename from btrace_data_empty.
5076         (btrace_data::clear): Rename from btrace_data_clear.  Return
5077         bool.
5078         * btrace.h (make_cleanup_btrace_data): Don't declare.
5079         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
5080         (parse_xml_btrace): Update.
5081         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
5082         (maint_btrace_clear_packet_history_cmd): Update.
5083
5084 2018-06-07  Pedro Alves  <palves@redhat.com>
5085
5086         * target.h (target_ops) <beneath>: Now a method.  All references
5087         updated.
5088         (class target_stack): New.
5089         * target.c (g_target_stack): New.
5090         (g_current_top_target): Delete.
5091         (current_top_target): Get the top target out of g_target_stack.
5092         (target_stack::push, target_stack::unpush): New.
5093         (push_target, unpush_target): Reimplement.
5094         (target_is_pushed): Reimplement in terms of g_target_stack.
5095         (target_ops::beneath, target_stack::find_beneath): New.
5096
5097 2018-06-07  Pedro Alves  <palves@redhat.com>
5098
5099         * target.h (find_target_beneath): Delete declaration.
5100         * target.c (find_target_beneath): Delete definition.
5101         * aix-thread.c: All callers of find_target_beneath adjusted to
5102         call target_ops::beneath instead.
5103         * bsd-uthread.c: Likewise.
5104         * linux-thread-db.c: Likewise.
5105         * ravenscar-thread.c: Likewise.
5106         * sol-thread.c: Likewise.
5107         * spu-multiarch.c: Likewise.
5108
5109 2018-06-07  Pedro Alves  <palves@redhat.com>
5110
5111         * target.h (target_ops) <beneath>: Now a method.  All references
5112         updated.
5113         (target_ops) <m_beneath>: New.
5114         * target.c (target_ops::beneath): New.
5115         * corelow.c: Adjust all references to target_ops::beneath.
5116         * linux-thread-db.c: Likewise.
5117         * make-target-delegates: Likewise.
5118         * record-btrace.c: Likewise.
5119         * record-full.c: Likewise.
5120         * remote.c: Likewise.
5121         * target.c: Likewise.
5122         * target-delegates.c: Regenerate.
5123
5124 2018-06-07  Pedro Alves  <palves@redhat.com>
5125
5126         * target.h (target_stack): Delete.
5127         (current_top_target): Declare function.
5128         * target.c (target_stack): Delete.
5129         (g_current_top_target): New.
5130         (current_top_target): New function.
5131         * auxv.c: Use current_top_target instead of target_stack
5132         throughout.
5133         * avr-tdep.c: Likewise.
5134         * breakpoint.c: Likewise.
5135         * corefile.c: Likewise.
5136         * elfread.c: Likewise.
5137         * eval.c: Likewise.
5138         * exceptions.c: Likewise.
5139         * frame.c: Likewise.
5140         * gdbarch-selftests.c: Likewise.
5141         * gnu-v3-abi.c: Likewise.
5142         * ia64-tdep.c: Likewise.
5143         * ia64-vms-tdep.c: Likewise.
5144         * infcall.c: Likewise.
5145         * infcmd.c: Likewise.
5146         * infrun.c: Likewise.
5147         * linespec.c: Likewise.
5148         * linux-tdep.c: Likewise.
5149         * minsyms.c: Likewise.
5150         * ppc-linux-nat.c: Likewise.
5151         * ppc-linux-tdep.c: Likewise.
5152         * procfs.c: Likewise.
5153         * regcache.c: Likewise.
5154         * remote.c: Likewise.
5155         * rs6000-tdep.c: Likewise.
5156         * s390-linux-nat.c: Likewise.
5157         * s390-tdep.c: Likewise.
5158         * solib-aix.c: Likewise.
5159         * solib-darwin.c: Likewise.
5160         * solib-dsbt.c: Likewise.
5161         * solib-spu.c: Likewise.
5162         * solib-svr4.c: Likewise.
5163         * solib-target.c: Likewise.
5164         * sparc-tdep.c: Likewise.
5165         * sparc64-tdep.c: Likewise.
5166         * spu-tdep.c: Likewise.
5167         * symfile.c: Likewise.
5168         * symtab.c: Likewise.
5169         * target-descriptions.c: Likewise.
5170         * target-memory.c: Likewise.
5171         * target.c: Likewise.
5172         * target.h: Likewise.
5173         * tracefile-tfile.c: Likewise.
5174         * tracepoint.c: Likewise.
5175         * valops.c: Likewise.
5176         * valprint.c: Likewise.
5177         * value.c: Likewise.
5178         * windows-tdep.c: Likewise.
5179         * mi/mi-main.c: Likewise.
5180
5181 2018-06-07  Tom Tromey  <tom@tromey.com>
5182
5183         * valprint.h (build_address_symbolic): Declare.
5184         * printcmd.c (print_address_symbolic): Update.
5185         (build_address_symbolic): Change "name" and "filename" to
5186         std::string.
5187         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
5188         Update.
5189         * defs.h (build_address_symbolic): Remove declaration.
5190
5191 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
5192
5193         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
5194         (aarch64_vnv_type): Add function.
5195         (aarch64_pseudo_register_name): Add V regs for SVE.
5196         (aarch64_pseudo_register_type): Likewise.
5197         (aarch64_pseudo_register_reggroup_p): Likewise.
5198         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
5199         (aarch64_pseudo_read_value): Add V regs for SVE.
5200         (aarch64_pseudo_write_2): Use V0 offset for SVE
5201         (aarch64_pseudo_write): Add V regs for SVE.
5202         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
5203
5204 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
5205
5206         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
5207         (sve_vl_from_vq): Likewise.
5208
5209 2018-06-05  Tom Tromey  <tom@tromey.com>
5210
5211         * cli/cli-cmds.c (show_version): Update.
5212         * top.c (print_gdb_version): Add "interactive" parameter.
5213         Update.
5214         * main.c (captured_main_1): Update.
5215         * top.h (print_gdb_version): Add "interactive" parameter and a
5216         comment.
5217
5218 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
5219
5220         * common/enum-flags.h: Add trailing semicolon to example in
5221         comment.
5222
5223 2018-06-05  Tom Tromey  <tom@tromey.com>
5224
5225         PR cli/12326:
5226         * NEWS: Add entry about pager.
5227         * utils.c (pagination_disabled_for_command): New global.
5228         (prompt_for_continue): Allow "c" response to prompt.
5229         (reinitialize_more_filter): Clear
5230         pagination_disabled_for_command.
5231         (fputs_maybe_filtered): Check pagination_disabled_for_command.
5232
5233 2018-06-04  Tom Tromey  <tom@tromey.com>
5234
5235         * ada-lang.h (ada_lookup_symbol_list): Update.
5236         * ada-lang.c (resolve_subexp): Update.
5237         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
5238         parameter.
5239         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
5240         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
5241         results parameter to std::vector.
5242         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
5243         Update.
5244         * ada-exp.y (block_lookup): Update.
5245         (select_possible_type_sym): Change type of syms.  Remove nsyms
5246         parameter.
5247         (write_var_or_type, write_name_assoc): Update.
5248
5249 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
5250
5251         * windows-nat.c (windows_nat_target::xfer_partial): Return
5252         TARGET_XFER_E_IO if we need to delegate to the target beneath
5253         but BENEATH is NULL.
5254
5255 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
5256
5257         * Makefile.in (config.status): Add configure.nat as a
5258         dependency.
5259
5260 2018-06-04  Tom Tromey  <tom@tromey.com>
5261
5262         * cp-name-parser.y (cpname_state): Add method declarations.
5263         (HANDLE_QUAL): Update.
5264         (cpname_state::d_grab, cpname_state::fill_comp)
5265         (cpname_state::make_operator, cpname_state::make_dtor)
5266         (cpname_state::make_builtin_type, cpname_state::make_name)
5267         (cpname_state::d_qualify, cpname_state::d_int_type)
5268         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
5269         (%union): Move earlier.
5270
5271 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5272
5273         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
5274
5275 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5276
5277         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
5278         (aarch64_pseudo_write_1): Likewise.
5279         (aarch64_pseudo_read_value): Use helper.
5280         (aarch64_pseudo_write): Likewise.
5281
5282 2018-06-04  Pedro Alves  <palves@redhat.com>
5283
5284         * darwin-nat.c (darwin_ops): Delete.
5285         (darwin_attach_pid): Use get_native_target.
5286
5287 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5288
5289         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
5290         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
5291
5292 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5293
5294         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
5295         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
5296         (aarch64_gdbarch_init): Check for SVE.
5297         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
5298
5299 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5300
5301         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
5302         * aarch64-tdep.h (aarch64_read_description): Likewise.
5303         * arch/aarch64.c (aarch64_create_target_description): Likewise.
5304         * arch/aarch64.h (aarch64_create_target_description): Likewise.
5305         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
5306         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
5307         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
5308
5309 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
5310
5311         * value.c (value_fetch_lazy_bitfield): New.
5312         (value_fetch_lazy_memory): New.
5313         (value_fetch_lazy_register): New.
5314         (value_fetch_lazy): Factor out to smaller functions.
5315
5316 2018-06-01  Tom Tromey  <tom@tromey.com>
5317
5318         * cp-name-parser.y (backslashable, represented): Now const.
5319
5320 2018-06-01  Tom Tromey  <tom@tromey.com>
5321
5322         * cp-name-parser.y: Include parser-defs.h.
5323         (parser_fprintf): Remove declaration.
5324
5325 2018-06-01  Tom Tromey  <tom@tromey.com>
5326
5327         * cp-name-parser.y: Use %pure-parser, %lex-param, and
5328         %parse-param.
5329         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
5330         (global_result): Remove globals.
5331         (struct cpname_state): New.
5332         (yyparse): Don't declare.
5333         (yylex, yyerror): Move declarations after %union.
5334         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
5335         (make_name): Add state parameter.
5336         Update all callers.
5337         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
5338         parameter.
5339         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
5340         Update.
5341         (yylex): Add lvalp, state parameters.
5342         (yyerror): Add state parameter.
5343         (cp_demangled_name_to_comp): Update.
5344
5345 2018-06-01  Tom Tromey  <tom@tromey.com>
5346
5347         * cp-name-parser.y (parser_fprintf): Declare.
5348         (GDB_YY_REMAP_PREFIX): Define.
5349         Include yy-remap.h.  Don't redefine yy* identifiers.
5350
5351 2018-06-01  Tom Tromey  <tom@tromey.com>
5352
5353         * python/py-type.c (typy_legacy_template_argument): Update.
5354         * cp-support.h (cp_demangled_name_to_comp): Update.
5355         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
5356         parameter to be a "std::string *".
5357         (main): Update.
5358
5359 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
5360
5361         * ada-lex.l: Include "diagnostics.h" instead of
5362         "common/diagnostics.h".
5363         * unittests/environ-selftests.c: Likewise.
5364         * common/diagnostics.h: Moved to ../include.
5365
5366 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
5367
5368         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
5369         to language_mode_manual while calling breakpoint_re_set_one.
5370
5371 2018-06-01  Tom Tromey  <tom@tromey.com>
5372
5373         * valops.c (value_cast_structs, destructor_name_p): Update.
5374         * symtab.c (gdb_mangle_name): Update.
5375         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
5376         Update.
5377         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
5378         (pascal_object_print_value_fields, pascal_object_print_value):
5379         Update.
5380         * p-typeprint.c (pascal_type_print_derivation_info): Update.
5381         * linespec.c (find_methods): Update.
5382         * gdbtypes.h (type_name_no_tag): Remove.
5383         (type_name_or_error): Rename from type_name_no_tag_or_error.
5384         * gdbtypes.c (type_name_no_tag): Remove.
5385         (type_name_or_error): Rename from type_name_no_tag_or_error.
5386         (lookup_struct_elt_type, check_typedef): Update.
5387         * expprint.c (print_subexp_standard): Update.
5388         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
5389         * d-namespace.c (d_lookup_nested_symbol): Update.
5390         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
5391         (cp_print_class_member): Update.
5392         * cp-namespace.c (cp_lookup_nested_symbol): Update.
5393         * completer.c (add_struct_fields): Update.
5394         * c-typeprint.c (cp_type_print_derivation_info)
5395         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
5396         Update.
5397         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
5398         (ada_prefer_type, ada_is_exception_sym): Update.
5399
5400 2018-06-01  Tom Tromey  <tom@tromey.com>
5401
5402         * valops.c (enum_constant_from_type, value_namespace_elt)
5403         (value_maybe_namespace_elt): Update.
5404         * valarith.c (find_size_for_pointer_math): Update.
5405         * target-descriptions.c (make_gdb_type): Update.
5406         * symmisc.c (print_symbol): Update.
5407         * stabsread.c (define_symbol, read_type)
5408         (complain_about_struct_wipeout, add_undefined_type)
5409         (cleanup_undefined_types_1): Update.
5410         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
5411         (rust_range_type_p, val_print_struct, rust_print_struct_def)
5412         (rust_internal_print_type, rust_composite_type)
5413         (rust_evaluate_funcall, rust_evaluate_subexp)
5414         (rust_inclusive_range_type_p): Update.
5415         * python/py-type.c (typy_get_tag): Update.
5416         * p-typeprint.c (pascal_type_print_base): Update.
5417         * mdebugread.c (parse_symbol, parse_type): Update.
5418         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
5419         Update.
5420         * guile/scm-type.c (gdbscm_type_tag): Update.
5421         * go-lang.c (sixg_string_p): Update.
5422         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
5423         Update.
5424         * gdbtypes.h (struct main_type) <tag_name>: Remove.
5425         (TYPE_TAG_NAME): Remove.
5426         * gdbtypes.c (type_name_no_tag): Simplify.
5427         (check_typedef, check_types_equal, recursive_dump_type)
5428         (copy_type_recursive, arch_composite_type): Update.
5429         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
5430         in summary mode when needed.
5431         * eval.c (evaluate_funcall): Update.
5432         * dwarf2read.c (fixup_go_packaging, read_structure_type)
5433         (process_structure_scope, read_enumeration_type)
5434         (read_namespace_type, read_module_type, determine_prefix): Update.
5435         * cp-support.c (inspect_type): Update.
5436         * coffread.c (process_coff_symbol, decode_base_type): Update.
5437         * c-varobj.c (c_is_path_expr_parent): Update.
5438         * c-typeprint.c (c_type_print_base_struct_union): Update.
5439         (c_type_print_base_1): Update.  Print struct/class/union/enum in
5440         summary when using C language.
5441         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
5442         (gen_maybe_namespace_elt): Update.
5443         * ada-lang.c (ada_type_name): Simplify.
5444         (empty_record, ada_template_to_fixed_record_type_1)
5445         (template_to_static_fixed_type)
5446         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
5447
5448 2018-06-01  Tom Tromey  <tom@tromey.com>
5449
5450         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
5451         c_print_type.
5452         * c-typeprint.c (c_print_type_1): Add "language" parameter.
5453         (c_print_type): Update.
5454         (c_print_type): New overload.
5455         (c_type_print_varspec_prefix, c_type_print_args)
5456         (c_type_print_varspec_suffix, c_print_type_no_offsets)
5457         (c_type_print_base_struct_union, c_type_print_base_1)
5458         (cp_type_print_method_args): Add "language" parameter.
5459         (c_type_print_base): Update.
5460         * c-lang.h (c_print_type): Add new overload.
5461
5462 2018-06-01  Tom Tromey  <tom@tromey.com>
5463
5464         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
5465         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
5466
5467 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
5468
5469         * aarch64-tdep.c (aarch64_sve_register_names): New const
5470         var.
5471         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
5472         (AARCH64_SVE_Z_REGS_NUM): New define.
5473         (AARCH64_SVE_P_REGS_NUM): Likewise.
5474         (AARCH64_SVE_NUM_REGS): Likewise.
5475
5476 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
5477
5478         * nat/linux-ptrace.h [__alpha__]
5479         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
5480         definitions.
5481
5482 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
5483
5484         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
5485         the endianness selected.
5486         * NEWS: Document `set endian auto' mode operation update.
5487
5488 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
5489
5490         * Makefile.in: Add new header.
5491         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
5492         (sve_vl_from_vg): Likewise.
5493         (sve_vq_from_vl): Likewise.
5494         (sve_vl_from_vq): Likewise.
5495         (sve_vq_from_vg): Likewise.
5496         (sve_vg_from_vq): Likewise.
5497         * configure.nat: Add new c file.
5498         * nat/aarch64-sve-linux-ptrace.c: New file.
5499         * nat/aarch64-sve-linux-ptrace.h: New file.
5500
5501 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
5502
5503         * aarch64-linux-nat.c (aarch64_linux_read_description):
5504         Add parmeter zero.
5505         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
5506         Likewise.
5507         * aarch64-tdep.c (tdesc_aarch64_list): Add.
5508         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
5509         (aarch64_gdbarch_init): Add parmeter zero.
5510         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
5511         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
5512         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
5513         parmeter.
5514         * doc/gdb.texinfo: Describe SVE feature
5515         * features/aarch64-sve.c: New file.
5516
5517 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
5518
5519         PR gdb/23210
5520         * gdbarch.sh (significant_addr_bit): Default to zero when
5521         not set by target architecture.
5522         * gdbarch.c: Re-generated.
5523         * utils.c (address_significant): Update.
5524
5525 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
5526
5527         * stack.c (func_command): Remove trailing newline in call to error.
5528
5529 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5530
5531         * regcache.h (regcache_raw_collect): Remove, update callers to
5532         use regcache::raw_collect.
5533         * regcache.c (regcache_raw_collect): Remove.
5534
5535 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5536
5537         * regcache.h (regcache_raw_supply): Remove, update callers to
5538         use detached_regcache::raw_supply.
5539         * regcache.c (regcache_raw_supply): Remove.
5540
5541 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5542
5543         * regcache.h (regcache_cooked_write_part): Remove, update
5544         callers to use regcache::cooked_write_part.
5545         * regcache.c (regcache_cooked_write_part): Remove.
5546
5547 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5548
5549         * regcache.h (regcache_cooked_read_part): Remove, update callers
5550         to use readable_regcache::cooked_read_part.
5551         * regcache.c (regcache_cooked_read_part): Remove.
5552
5553 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5554
5555         * regcache.h (regcache_cooked_read_value): Remove, update
5556         callers to use readable_regcache::cooked_read_value.
5557         * regcache.c (regcache_cooked_read_value): Remove.
5558
5559 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5560
5561         * regcache.h (regcache_cooked_write): Remove, update callers to
5562         use regcache::cooked_write.
5563         * regcache.c (regcache_cooked_write): Remove.
5564
5565 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5566
5567         * regcache.h (regcache_invalidate): Remove, update callers to
5568         use detached_regcache::invalidate instead.
5569         * regcache.c (regcache_invalidate): Remove.
5570
5571 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5572
5573         * regcache.h (regcache_raw_write_part): Remove, update callers
5574         to use regcache::raw_write_part instead.
5575         * regcache.c (regcache_raw_write_part): Remove.
5576
5577 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5578
5579         * regcache.h (regcache_raw_read_part): Remove, update callers to
5580         use readable_regcache::raw_read_part instead.
5581         * regcache.c (regcache_raw_read_part): Remove.
5582
5583 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5584
5585         * regcache.h (regcache_cooked_read): Remove, update callers to
5586         use readable_regcache::cooked_read instead.
5587         * regcache.c (regcache_cooked_read): Remove.
5588
5589 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5590
5591         * regcache.h (regcache_raw_write): Remove, update callers to use
5592         regcache::raw_write instead.
5593         * regcache.c (regcache_raw_write): Remove.
5594
5595 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5596
5597         * regcache.h (regcache_raw_read): Remove, update callers to use
5598         readable_regcache::raw_read instead.
5599         * regcache.c (regcache_raw_read): Remove.
5600
5601 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5602
5603         * regcache.h (regcache_raw_update): Remove, update callers to
5604         use readable_regcache::raw_update instead.
5605         * regcache.c (regcache_raw_update): Remove.
5606
5607 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5608
5609         * regcache.h (regcache_register_status): Remove, update callers
5610         to use reg_buffer::get_register_status directly instead.
5611         * regcache.c (regcache_register_status): Remove.
5612
5613 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5614
5615         * regcache.h (regcache_get_ptid): Remove, update all callers to
5616         call regcache::ptid instead.
5617         * regcache.c (regcache_get_ptid): Remove.
5618
5619 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5620
5621         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
5622
5623 2018-05-30  Pedro Alves  <palves@redhat.com>
5624
5625         * common/common-exceptions.h (exception_rethrow): Use
5626         ATTRIBUTE_NORETURN.
5627
5628 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
5629
5630         * breakpoint.c (print_solib_event, check_status_catch_solib):
5631         Remove struct keyword in range-based for loops.
5632         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
5633         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
5634         Likewise.
5635         * linespec.c (find_superclass_methods, search_minsyms_for_name):
5636         Likewise.
5637         * symfile.c (addr_info_make_relative): Likewise.
5638         * thread.c (value_in_thread_stack_temporaries): Likewise.
5639
5640 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
5641
5642         PR gdb/16841
5643         * valops.c (value_struct_elt_for_reference): Call check_typedef on
5644         aggregate type to get its real type before accessing it.
5645
5646 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
5647
5648         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
5649         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
5650         * coff-pe-read.c (add_pe_forwarded_sym): Replace
5651         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
5652         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
5653         * jit.c (jit_breakpoint_re_set_internal): Likewise.
5654         * printcmd.c (info_address_command): Likewise.
5655
5656 2018-05-29  Tom Tromey  <tom@tromey.com>
5657
5658         * windows-nat.c (handle_exception): Update fall-through comment.
5659
5660 2018-05-29  Tom Tromey  <tom@tromey.com>
5661
5662         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
5663         (struct program_space) <added_solibs>: Now a std::vector.
5664         * breakpoint.c (print_solib_event): Update.
5665         (check_status_catch_solib): Update.
5666         * progspace.c (clear_program_space_solib_cache): Update.
5667         * solib.c (update_solib_list): Update.
5668
5669 2018-05-29  Tom Tromey  <tom@tromey.com>
5670
5671         * python/py-type.c (typy_richcompare): Update.
5672         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
5673         * gdbtypes.h (types_deeply_equal): Return bool.
5674         (types_equal): Likewise.
5675         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
5676         declare VEC.
5677         (check_types_equal): Change worklist to std::vector.  Return
5678         bool.
5679         (struct type_equality_entry): Add constructor.
5680         (compare_maybe_null_strings): Return bool.
5681         (check_types_worklist): Return bool.  Change worklist to
5682         std::vector.
5683         (types_deeply_equal): Use std::vector.
5684         (types_equal): Return bool.
5685         (compare_maybe_null_strings): Simplify.
5686
5687 2018-05-29  Tom Tromey  <tom@tromey.com>
5688
5689         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
5690
5691 2018-05-29  Tom Tromey  <tom@tromey.com>
5692
5693         * objc-lang.h: Don't include cp-support.h.
5694         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
5695         declare VEC.
5696
5697 2018-05-27  Tom Tromey  <tom@tromey.com>
5698
5699         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
5700
5701 2018-05-25  Tom Tromey  <tom@tromey.com>
5702
5703         * value.c (value::location): Initialize.
5704
5705 2018-05-25  Tom Tromey  <tom@tromey.com>
5706
5707         * dbxread.c (init_bincl_list): Remove.
5708         (bincl_list): Now a std::vector.
5709         (bincls_allocated, next_bincl): Remove.
5710         (free_bincl_list, do_free_bincl_list_cleanup)
5711         (make_cleanup_free_bincl_list): Remove.
5712         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
5713         unique_xmalloc_ptr.
5714         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
5715         (struct header_file_location): Add constructor.
5716         (add_bincl_to_list): Remove.
5717
5718 2018-05-25  Tom Tromey  <tom@tromey.com>
5719
5720         * tui/tui.c (tui_enable): Update.
5721         * mi/mi-interp.c (mi_interp::init): Update.
5722         * interps.h (class interp) <name>: New method.
5723         <m_name>: Rename from name.
5724         (~scoped_restore_interp): Update.
5725         * interps.c (interp::interp): Update.
5726         (interp_add, interp_set, interp_lookup_existing)
5727         (current_interp_named_p): Update.
5728
5729 2018-05-25  Tom Tromey  <tom@tromey.com>
5730
5731         * interps.c (interp_name): Remove.
5732         * mi/mi-interp.c (mi_interp::init): Update.
5733         * interps.h (interp_name): Remove.
5734         (~scoped_restore_interp): Update.
5735         * tui/tui.c (tui_enable): Update.
5736
5737 2018-05-25  Tom Tromey  <tom@tromey.com>
5738
5739         * utils.c (fputs_maybe_filtered): Update.
5740         * linespec.c (decode_line_full): Update.
5741         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
5742         (mi_print_breakpoint_for_event, mi_solib_loaded)
5743         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
5744         (mi_user_selected_context_changed): Update.
5745         * mi/mi-main.c (mi_execute_command): Update.
5746         * cli/cli-script.c (execute_control_command): Update.
5747         * python/python.c (execute_gdb_command): Update.
5748         * solib.c (info_sharedlibrary_command): Update.
5749         * interps.c (interp_ui_out): Remove.
5750         * interps.h (interp_ui_out): Remove.
5751
5752 2018-05-25  Tom Tromey  <tom@tromey.com>
5753
5754         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
5755         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
5756         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
5757
5758 2018-05-25  Tom Tromey  <tom@tromey.com>
5759
5760         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
5761         * interps.c (interp_exec): Use scoped_restore.
5762
5763 2018-05-25  Tom Tromey  <tom@tromey.com>
5764
5765         * remote.c (remote_target::remote_file_get): Use
5766         gdb::byte_vector.
5767         (remote_target::remote_file_put): Likewise.
5768
5769 2018-05-25  Tom Tromey  <tom@tromey.com>
5770
5771         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
5772         a std::string.
5773         (get_pe_section_index, add_pe_exported_sym): Update.
5774         (read_pe_exported_syms): Use gdb::def_vector.
5775
5776 2018-05-25  Tom Tromey  <tom@tromey.com>
5777
5778         * frame.c (remove_prev_frame): Remove.
5779         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
5780
5781 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
5782
5783         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
5784         Remove prototypes.
5785         * mips-linux-nat.c (supply_fpregset): Always call
5786         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
5787         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
5788         `mips_fill_fpregset'.
5789         * mips-linux-tdep.c (mips_supply_fpregset)
5790         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
5791         (mips_fill_fpregset_wrapper): Remove functions.
5792         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
5793         (mips_linux_fpregset): Remove variable.
5794         (mips_linux_iterate_over_regset_sections): Use
5795         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
5796         (mips_linux_o32_sigframe_init): Remove comment.
5797
5798 2018-05-25  Pedro Alves  <palves@redhat.com>
5799
5800         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
5801         (struct readahead_cache, struct packet_reg, struct
5802         remote_arch_state, class remote_state): Move higher up in the
5803         file.
5804         (remote_target::m_remote_state): Now an object instead of a pointer.
5805         (remote_target::get_remote_state): Adjust.
5806
5807 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
5808
5809         * stack.c (select_and_print_frame): Delete.
5810         (struct function_bounds): Move struct within function.
5811         (func_command): Most content moved into new function
5812         find_frame_for_function, use new function, print result, add
5813         function comment.
5814         (find_frame_for_function): New function, now returns a result.
5815
5816 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5817
5818         * stack.c (iterate_over_block_arg_vars): Fix comment.
5819         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
5820
5821 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
5822
5823         PR gdb/23203
5824         * frame.c
5825         (scoped_restore_selected_frame::scoped_restore_selected_frame):
5826         Define.
5827         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
5828         Define.
5829         * frame.h (class scoped_restore_selected_frame): New class.
5830         * stack.c (print_frame_local_vars): Remove catching and rethrowing
5831         of any exception, use scoped_restore_selected_frame to restore the
5832         frame instead.
5833
5834 2018-05-24  Pedro Alves  <palves@redhat.com>
5835
5836         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
5837         override.
5838
5839 2018-05-23  Tom Tromey  <tom@tromey.com>
5840
5841         * complaints.c (struct complaints): Remove.
5842         (symfile_complaint_book): Remove.
5843         (series): New global.
5844         (complaint_internal): Update.
5845         (clear_complaints): Update.
5846
5847 2018-05-23  Tom Tromey  <tom@tromey.com>
5848
5849         * complaints.c (counters): New global.
5850         (struct complain): Remove.
5851         (struct complaints) <root>: Remove.
5852         (complaint_sentinel): Remove.
5853         (symfile_complaint_book): Update.
5854         (find_complaint) Remove.
5855         (complaint_internal, clear_complaints): Update.
5856
5857 2018-05-23  Tom Tromey  <tom@tromey.com>
5858
5859         * complaints.c (struct complain) <file, line>: Remove.
5860         (find_complaint): Remove file, line parameters.
5861         (complaint_internal): Update.
5862
5863 2018-05-23  Tom Tromey  <tom@tromey.com>
5864
5865         * complaints.c (vcomplaint): Remove.
5866         (complaint_internal) Merge in contents of vcomplaint.
5867
5868 2018-05-23  Tom Tromey  <tom@tromey.com>
5869
5870         * complaints.c (struct complaints) <explanation>: Remove.
5871         (symfile_explanations): Remove.
5872         (symfile_complaint_book): Update.
5873         (vcomplaint): Update.
5874         (struct explanation): Remove.
5875
5876 2018-05-23  Tom Tromey  <tom@tromey.com>
5877
5878         * complaints.c (symfile_complaints): Remove.
5879         (complaint_internal): Remove "complaints" parameter.
5880         (clear_complaints, vcomplaint): Remove "c" parameter.
5881         (get_complaints): Remove.
5882         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
5883         (dwarf2_debug_line_missing_file_complaint)
5884         (dwarf2_debug_line_missing_end_sequence_complaint)
5885         (dwarf2_complex_location_expr_complaint)
5886         (dwarf2_const_value_length_mismatch_complaint)
5887         (dwarf2_section_buffer_overflow_complaint)
5888         (dwarf2_macro_malformed_definition_complaint)
5889         (dwarf2_invalid_attrib_class_complaint)
5890         (create_addrmap_from_index, dw2_symtab_iter_next)
5891         (dw2_expand_marked_cus)
5892         (dw2_debug_names_iterator::find_vec_in_debug_names)
5893         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
5894         (create_debug_type_hash_table, init_cutu_and_read_dies)
5895         (partial_die_parent_scope, add_partial_enumeration)
5896         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
5897         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
5898         (read_import_statement, read_file_scope, create_dwo_cu_reader)
5899         (create_cus_hash_table, create_dwp_hash_table)
5900         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
5901         (dwarf2_rnglists_process, dwarf2_ranges_process)
5902         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
5903         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
5904         (handle_struct_member_die, process_structure_scope)
5905         (read_array_type, read_common_block, read_module_type)
5906         (read_tag_pointer_type, read_typedef, read_base_type)
5907         (read_subrange_type, load_partial_dies, partial_die_info::read)
5908         (partial_die_info::read, partial_die_info::read)
5909         (partial_die_info::read, read_checked_initial_length_and_offset)
5910         (dwarf2_string_attr, read_formatted_entries)
5911         (dwarf_decode_line_header)
5912         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5913         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
5914         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
5915         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
5916         (get_signatured_type, get_DW_AT_signature_type)
5917         (decode_locdesc, file_file_name, consume_improper_spaces)
5918         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
5919         (dwarf_decode_macro_bytes, dwarf_decode_macros)
5920         (dwarf2_symbol_mark_computed, set_die_type)
5921         (read_attribute_value): Update.
5922         * stap-probe.c (handle_stap_probe, get_stap_base_address):
5923         Update.
5924         * dbxread.c (unknown_symtype_complaint)
5925         (lbrac_mismatch_complaint, repeated_header_complaint)
5926         (set_namestring, function_outside_compilation_unit_complaint)
5927         (read_dbx_symtab, process_one_symbol): Update.
5928         * gdbtypes.c (stub_noname_complaint): Update.
5929         * windows-nat.c (handle_unload_dll): Update.
5930         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
5931         (decode_base_type): Update.
5932         * xcoffread.c (bf_notfound_complaint, ef_complaint)
5933         (eb_complaint, record_include_begin, record_include_end)
5934         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
5935         (process_xcoff_symbol, read_symbol)
5936         (function_outside_compilation_unit_complaint)
5937         (scan_xcoff_symtab): Update.
5938         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
5939         * buildsym.c (finish_block_internal, make_blockvector)
5940         (end_symtab_get_static_block, augment_type_symtab): Update.
5941         * dtrace-probe.c (dtrace_process_dof)
5942         (dtrace_static_probe_ops::get_probes): Update.
5943         * complaints.h (struct complaint): Don't declare.
5944         (symfile_complaints): Remove.
5945         (complaint_internal): Remove "complaints" parameter.
5946         (complaint): Likewise.
5947         (clear_complaints): Likewise.
5948         * symfile.c (syms_from_objfile_1, finish_new_objfile)
5949         (reread_symbols): Update.
5950         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
5951         (dwarf2_frame_cache, decode_frame_entry): Update.
5952         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
5953         * objc-lang.c (lookup_objc_class, lookup_child_selector)
5954         (info_selectors_command): Update.
5955         * macrotab.c (macro_include, check_for_redefinition)
5956         (macro_undef): Update.
5957         * objfiles.c (filter_overlapping_sections): Update.
5958         * stabsread.c (invalid_cpp_abbrev_complaint)
5959         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
5960         (define_symbol, error_type, read_type, rs6000_builtin_type)
5961         (stabs_method_name_from_physname, read_member_functions)
5962         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
5963         (attach_fields_to_type, complain_about_struct_wipeout)
5964         (read_range_type, read_args, common_block_start)
5965         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
5966         Update.
5967         * mdebugread.c (index_complaint, unknown_ext_complaint)
5968         (basic_type_complaint, bad_tag_guess_complaint)
5969         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
5970         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
5971         (parse_procedure, parse_lines)
5972         (function_outside_compilation_unit_complaint)
5973         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
5974         (bad_tag_guess_complaint, reg_value_complaint): Update.
5975         * cp-support.c (demangled_name_complaint): Update.
5976         * macroscope.c (sal_macro_scope): Update.
5977         * dwarf-index-write.c (class debug_names): Update.
5978
5979 2018-05-23  Tom Tromey  <tom@tromey.com>
5980
5981         * complaints.c (clear_complaints): Remove "noisy" parameter.
5982         * complaints.h (clear_complaints): Update.
5983         * symfile.c (syms_from_objfile_1, finish_new_objfile)
5984         (reread_symbols): Update.
5985
5986 2018-05-23  Tom Tromey  <tom@tromey.com>
5987
5988         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
5989         SUBSEQUENT_MESSAGE.
5990         (vcomplaint, clear_complaints): Update.
5991         (symfile_explanations): Remove some messages.
5992
5993 2018-05-23  Tom Tromey  <tom@tromey.com>
5994
5995         * complaints.c (internal_complaint): Remove.
5996         * complaints.h (internal_complaint): Remove.
5997
5998 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
5999
6000         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
6001
6002 2018-05-22  Pedro Alves  <palves@redhat.com>
6003
6004         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
6005         (remote_fileio_badfd, remote_fileio_return_errno)
6006         (remote_fileio_return_success, remote_fileio_func_open)
6007         (remote_fileio_func_open, remote_fileio_func_close)
6008         (remote_fileio_func_read, remote_fileio_func_write)
6009         (remote_fileio_func_lseek, remote_fileio_func_rename)
6010         (remote_fileio_func_unlink, remote_fileio_func_stat)
6011         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
6012         (remote_fileio_func_isatty, remote_fileio_func_system): Add
6013         remote_target parameter.
6014         (remote_fio_func_map) <func>: Add remote_target parameter.
6015         (do_remote_fileio_request, remote_fileio_request):
6016         * remote-fileio.h (remote_fileio_request):
6017         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
6018         remote_target parameter.
6019         (remote_notif_process, handle_notification): Adjust to pass down
6020         the remote.
6021         (remote_notif_state_allocate): Add remote_target parameter.  Save
6022         it.
6023         * remote-notif.h (struct remote_target): Forward declare.
6024         (struct notif_client) <parse, ack, can_get_pending_events>: Add
6025         remote_target parameter.
6026         (struct remote_notif_state) <remote>: New field.
6027         (remote_notif_ack, remote_notif_parse): Add remote_target
6028         parameter.
6029         (remote_notif_state_allocate, remote_notif_state_allocate): Add
6030         remote_target parameter.
6031         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
6032         (threads_listing_context, rmt_thread_action, protocol_feature)
6033         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
6034         (packet_result, struct threads_listing_context, remote_state):
6035         Move definitions and declarations higher up.
6036         (remote_target) <~remote_target>: Declare.
6037         (remote_download_command_source, remote_file_put, remote_file_get)
6038         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
6039         (remote_hostio_pread_vFile, remote_hostio_send_command)
6040         (remote_hostio_set_filesystem, remote_hostio_open)
6041         (remote_hostio_close, remote_hostio_unlink, remote_state)
6042         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
6043         (get_memory_write_packet_size, get_memory_read_packet_size)
6044         (append_pending_thread_resumptions, remote_detach_1)
6045         (append_resumption, remote_resume_with_vcont)
6046         (add_current_inferior_and_thread, wait_ns, wait_as)
6047         (process_stop_reply, remote_notice_new_inferior)
6048         (process_initial_stop_replies, remote_add_thread)
6049         (btrace_sync_conf, remote_btrace_maybe_reopen)
6050         (remove_new_fork_children, kill_new_fork_children)
6051         (discard_pending_stop_replies, stop_reply_queue_length)
6052         (check_pending_events_prevent_wildcard_vcont)
6053         (discard_pending_stop_replies_in_queue, stop_reply)
6054         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
6055         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
6056         (remote_interrupt_as, remote_interrupt_ns)
6057         (remote_get_noisy_reply, remote_query_attached)
6058         (remote_add_inferior, remote_current_thread, get_current_thread)
6059         (set_thread, set_general_thread, set_continue_thread)
6060         (set_general_process, write_ptid)
6061         (remote_unpack_thread_info_response, remote_get_threadinfo)
6062         (parse_threadlist_response, remote_get_threadlist)
6063         (remote_threadlist_iterator, remote_get_threads_with_ql)
6064         (remote_get_threads_with_qxfer)
6065         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
6066         (get_offsets, remote_check_symbols, remote_supported_packet)
6067         (remote_query_supported, remote_packet_size)
6068         (remote_serial_quit_handler, remote_detach_pid)
6069         (remote_vcont_probe, remote_resume_with_hc)
6070         (send_interrupt_sequence, interrupt_query)
6071         (remote_notif_get_pending_events, fetch_register_using_p)
6072         (send_g_packet, process_g_packet, fetch_registers_using_g)
6073         (store_register_using_P, store_registers_using_G)
6074         (set_remote_traceframe, check_binary_download)
6075         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
6076         (remote_xfer_live_readonly_partial, remote_read_bytes)
6077         (remote_send_printf, remote_flash_write, readchar)
6078         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
6079         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
6080         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
6081         (extended_remote_disable_randomization, extended_remote_run)
6082         (send_environment_packet, extended_remote_environment_support)
6083         (extended_remote_set_inferior_cwd, remote_write_qxfer)
6084         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
6085         (packet_command): Now methods of ...
6086         (remote_target): ... this class.
6087         (m_remote_state) <remote_target>: New field.
6088         (struct remote_state) <stop_reply_queue,
6089         remote_async_inferior_event_token, wait_forever_enabled_p>: New
6090         fields.
6091         (remote_state::remote_state): Allocate stop_reply_queue.
6092         (remote_state): Delete global.
6093         (get_remote_state_raw): Delete.
6094         (remote_target::get_remote_state): Allocate m_remote_state on
6095         demand.
6096         (get_current_remote_target): New.
6097         (remote_ops, extended_remote_ops): Delete.
6098         (wait_forever_enabled_p, remote_async_inferior_event_token):
6099         Delete, moved to struct remote_state.
6100         (remote_target::close): Delete self.  Destruction bits split to
6101         ...
6102         (remote_target::~remote_target): ... this.
6103         (show_memory_packet_size): Adjust to use
6104         get_current_remote_target.
6105         (struct protocol_feature) <func>: Add remote_target parameter.
6106         All callers adjusted.
6107         (curr_quit_handler_target): New.
6108         (remote_serial_quit_handler): Reimplement.
6109         (remote_target::open_1): Adjust to use get_current_remote_target.
6110         Heap-allocate remote_target/extended_remote_target instances.
6111         (vcont_builder::vcont_builder): Add remote_target parameter, and
6112         save it in m_remote.  All callers adjusted.
6113         (vcont_builder::m_remote): New field.
6114         (vcont_builder::restart, vcont_builder::flush)
6115         (vcont_builder::push_action): Use it.
6116         (remote_target::commit_resume): Use it.
6117         (struct queue_iter_param) <remote>: New field.
6118         (remote_target::remove_new_fork_children): Fill in 'remote' field.
6119         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
6120         (check_pending_event_prevents_wildcard_vcont_callback)
6121         (remote_target::check_pending_events_prevent_wildcard_vcont)
6122         (remote_target::discard_pending_stop_replies)
6123         (remote_target::discard_pending_stop_replies_in_queue)
6124         (remote_target::remote_notif_remove_queued_reply): Fill in
6125         'remote' field.
6126         (remote_notif_get_pending_events): New.
6127         (remote_target::readchar, remote_target::remote_serial_write):
6128         Save/restore curr_quit_handler_target.
6129         (putpkt): New.
6130         (kill_new_fork_children): Fill in 'remote' field.
6131         (packet_command): Use get_current_remote_target, defer to
6132         remote_target method of same name.
6133         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
6134         parameter, and save it in m_remote.  All callers adjusted.
6135         (scoped_remote_fd::release): Use m_remote.
6136         (scoped_remote_fd::m_remote): New field.
6137         (remote_file_put, remote_file_get, remote_file_delete): Use
6138         get_current_remote_target, defer to remote_target method of same
6139         name.
6140         (remote_btrace_reset): Add remote_state paremeter.  Update all
6141         callers.
6142         (remote_async_inferior_event_handler). Pass down 'data'.
6143         (remote_new_objfile): Use get_current_remote_target.
6144         (remote_target::vcont_r_supported): New.
6145         (set_range_stepping): Use get_current_remote_target and
6146         remote_target::vcont_r_supported.
6147         (_initialize_remote): Don't allocate 'remote_state' and
6148         'stop_reply_queue' globals.
6149         * remote.h (struct remote_target): Forward declare.
6150         (getpkt, putpkt, remote_notif_get_pending_events): Add
6151         'remote_target' parameter.
6152
6153 2018-05-22  Pedro Alves  <palves@redhat.com>
6154
6155         * remote.c (vcont_builder): Now a class.  Make all data members
6156         private.
6157         (vcont_builder) <vcont_builder, restart, flush, push_action>:
6158         Declare methods.
6159         (vcont_builder_restart): Rename to ...
6160         (vcont_builder::restart): ... this.
6161         (vcont_builder_flush): Rename to ...
6162         (vcont_builder::flush): ... this.
6163         (vcont_builder_push_action): Rename to ...
6164         (vcont_builder::push_action): ... this.
6165         (remote_target::commit_resume): Adjust.
6166
6167 2018-05-22  Pedro Alves  <palves@redhat.com>
6168
6169         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
6170         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
6171         (get_fixed_memory_packet_size): New.
6172         (get_memory_packet_size): Use it.
6173         (set_memory_packet_size): Don't override the config size with
6174         DEFAULT_MAX_MEMORY_PACKET_SIZE.
6175         (show_memory_packet_size): Use get_fixed_memory_packet_size.
6176         Don't refer to get_memory_packet_size if not connected to a remote
6177         target.  Show "(default)" if configured size is 0.
6178
6179 2018-05-22  Pedro Alves  <palves@redhat.com>
6180
6181         * remote.c (remote_target::mourn_inferior): Move
6182         discard_pending_stop_replies call here from ...
6183         (_initialize_remote): ... here.
6184
6185 2018-05-22  Pedro Alves  <palves@redhat.com>
6186
6187         * remote.c (compare_section_command): Remove set_general_process
6188         call.
6189
6190 2018-05-22  Pedro Alves  <palves@redhat.com>
6191
6192         * remote.c (struct packet_reg, struct remote_arch_state):
6193         Move higher up in the file.
6194         (remote_state) <m_arch_states>: Store remote_arch_state values
6195         instead of remote_arch_state pointers.
6196         (remote_state::get_remote_arch_state): Adjust.
6197
6198 2018-05-22  Pedro Alves  <palves@redhat.com>
6199
6200         * remote.c: Include <unordered_map>.
6201         (remote_state): Now a class.
6202         (remote_state) <get_remote_arch_state>: Declare method.
6203         <get_remote_arch_state>: New field.
6204         (remote_arch_state) <remote_arch_state>: Declare ctor.
6205         <regs>: Now a unique_ptr.
6206         (remote_gdbarch_data_handle): Delete.
6207         (get_remote_arch_state): Delete.
6208         (remote_state::get_remote_arch_state): New.
6209         (get_remote_state): Adjust to call remote_state's
6210         get_remote_arch_state method.
6211         (init_remote_state): Delete, bits factored out to ...
6212         (remote_arch_state::remote_arch_state): ... this new method.
6213         (get_remote_packet_size, get_memory_packet_size)
6214         (process_g_packet, remote_target::fetch_registers)
6215         (remote_target::prepare_to_store, store_registers_using_G)
6216         (remote_target::store_registers, remote_target::get_trace_status):
6217         Adjust to call remote_state's method.
6218         (_initialize_remote): Remove reference to
6219         remote_gdbarch_data_handle.
6220
6221 2018-05-22  Pedro Alves  <palves@redhat.com>
6222
6223         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
6224         pread>: New method declarations.
6225         (remote_target::open_1): Adjust.
6226         (readahead_cache_invalidate): Rename to ...
6227         (readahead_cache::invalidate): ... this, and adjust to be a class
6228         method.
6229         (readahead_cache_invalidate_fd): Rename to ...
6230         (readahead_cache::invalidate_fd): ... this, and adjust to be a
6231         class method.
6232         (remote_hostio_pwrite): Adjust.
6233         (remote_hostio_pread_from_cache): Rename to ...
6234         (readahead_cache::pread): ... this, and adjust to be a class
6235         method.
6236         (remote_hostio_close): Adjust.
6237
6238 2018-05-22  Pedro Alves  <palves@redhat.com>
6239
6240         * remote.c (remote_hostio_close_cleanup): Delete.
6241         (class scoped_remote_fd): New.
6242         (remote_file_put, remote_file_get): Use it.
6243
6244 2018-05-22  Pedro Alves  <palves@redhat.com>
6245
6246         (struct vCont_action_support): Use bool and initialize all fields.
6247         (struct readahead_cache): Initialize all fields.
6248         (remote_state): Use bool and initialize all fields.
6249         (remote_state::remote_state, remote_state::~remote_state): New.
6250         (new_remote_state): Delete.
6251         (_initialize_remote): Use new to allocate remote_state.
6252
6253 2018-05-22  Pedro Alves  <palves@redhat.com>
6254             張俊芝  <zjz@zjz.name>
6255
6256         PR gdb/22973
6257         * c-exp.y: Include "c-support.h".
6258         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
6259         of tolower.  Use c_ident_is_alpha to scan names.
6260         * c-lang.c: Include "c-support.h".
6261         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
6262         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
6263         * c-support.h: New file, with bits factored out from ...
6264         * cp-name-parser.y: ... this file.
6265         Include "c-support.h".
6266         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
6267         c-support.h and renamed.
6268         (symbol_end, yylex): Adjust.
6269
6270 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6271
6272         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
6273         parameter type to CORE_ADDR.
6274         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
6275         parameter type in declaration to CORE_ADDR.
6276         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
6277         target_auxv_search to get AT_HWCAP and use the result to get the
6278         target description.
6279         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
6280         to CORE_ADDR. Remove the cast of the return value to unsigned
6281         long. Fix error predicate of target_auxv_search.
6282         (ppc_linux_nat_target::read_description): Change the type of the
6283         hwcap variable to CORE_ADDR.
6284
6285 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6286
6287         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
6288         if the size of fpscr is larger than 32 bits.
6289
6290 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6291
6292         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
6293         (ppc32_linux_vsxregmap): New global.
6294         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
6295         regcache_supply_regset, and regcache_collect_regset.
6296         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
6297         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
6298         (fetch_vsx_register, store_vsx_register): Remove.
6299         (fetch_vsx_registers): Add regno parameter. Get regset using
6300         ppc_linux_vsxregset. Use regset to supply registers.
6301         (store_vsx_registers): Add regno parameter. Get regset using
6302         ppc_linux_vsxregset. Use regset to collect registers.
6303         (fetch_register): Call fetch_vsx_registers instead of
6304         fetch_vsx_register.
6305         (store_register): Call store_vsx_registers instead of
6306         store_vsx_register.
6307         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
6308         new regno parameter.
6309         (store_ppc_registers): Call store_vsx_registers with -1 for the
6310         new regno parameter.
6311         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
6312         (ppc_collect_vsxregset): Remove.
6313
6314 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6315
6316         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
6317         offset fields.
6318         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
6319         for vector register offset fields.
6320         (ppc64_fbsd_reg_offsets): Likewise.
6321         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
6322         to vector register offset fields.
6323         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
6324         to vector register offset fields.
6325         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
6326         vector register offset fields.
6327         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
6328         initializers for vector register offset fields.
6329         (rs6000_aix64_reg_offsets): Likewise.
6330         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
6331         (ppc_supply_vrregset): Remove.
6332         (ppc_collect_vrregset): Remove.
6333         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
6334         (ppc_linux_vrregset) : New function.
6335         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
6336         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
6337         (ppc32_linux_vrregset): Remove.
6338         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
6339         and use result instead of ppc32_linux_vrregset.
6340         (ppc32_linux_reg_offsets): Remove initializers for vector register
6341         offset fields.
6342         (ppc64_linux_reg_offsets): Likewise.
6343         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
6344         * ppc-linux-nat.c: Include regset.h.
6345         (gdb_vrregset_t): Adjust comment to account for little-endian
6346         mode.
6347         (supply_vrregset, fill_vrregset): Remove.
6348         (fetch_altivec_register, store_altivec_register): Remove.
6349         (fetch_altivec_registers): Add regno parameter. Get regset using
6350         ppc_linux_vrregset. Use regset to supply registers.
6351         (store_altivec_registers): Add regno parameter. Get regset using
6352         ppc_linux_vrregset. Use regset to collect registers.
6353         (fetch_register): Call fetch_altivec_registers instead of
6354         fetch_altivec_register.
6355         (store_register): Call store_altivec_registers instead of
6356         store_altivec_register.
6357         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
6358         the new regno parameter.
6359         (store_ppc_registers): Call store_altivec_registers with -1 for
6360         the new regno parameter.
6361
6362 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6363
6364         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
6365         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
6366         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
6367         (gdb_vrregset_t): Change array type size to
6368         PPC_LINUX_SIZEOF_VRREGSET.
6369         (gdb_vsxregset_t): Change array type size to
6370         PPC_LINUX_SIZEOF_VSXREGSET.
6371         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
6372         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
6373         PPC_LINUX_SIZEOF_VSXREGSET.
6374
6375 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6376
6377         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
6378         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
6379         nat/ppc-linux.c.
6380         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
6381         ppc_linux_target_wordsize with tid.
6382         (ppc_linux_nat_target::read_description): Call ppc_linux_target
6383         wordsize with tid.
6384         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
6385         (ppc64_64bit_inferior_p): Add static and inline specifiers.
6386         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
6387         tid parameter. Remove static specifier.
6388         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
6389         (ppc_linux_target_wordsize): New declaration.
6390
6391 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6392
6393         * arch/ppc-linux-common.c: New file.
6394         * arch/ppc-linux-common.h: New file.
6395         * arch/ppc-linux-tdesc.h: New file.
6396         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
6397         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
6398         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
6399         arch/ppc-linux-tdesc.h.
6400         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
6401         arch/ppc-linux-tdesc.h.
6402         (ppc_linux_nat_target::read_description): Remove target
6403         description matching code. Fill a ppc_linux_features struct and
6404         call ppc_linux_match_description with it. Move comment about ISA
6405         2.05 to ppc-linux-common.c.
6406         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
6407         arch/ppc-linux-tdesc.h.
6408         (ppc_linux_core_read_description): Remove target description
6409         matching code. Fill a ppc_linux_features struct and call
6410         ppc_linux_match_description with it.
6411         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
6412         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
6413         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
6414         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
6415         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
6416         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
6417         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
6418         (tdesc_powerpc_e500l): Remove.
6419
6420 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
6421
6422         * ada-lang.c (catch_assert_command): Pass empty string instead
6423         of NULL for excep_string argument.
6424
6425 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
6426
6427         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
6428         the width of the requested register exceeds the width of the
6429         `ptrace' data type.
6430
6431 2018-05-21  Tom Tromey  <tom@tromey.com>
6432
6433         * printcmd.c (output_command): Remove.
6434         (output_command_const): Rename to output_command.
6435         * valprint.h (output_command): Rename from output_command_const.
6436         * tracepoint.c (trace_dump_actions): Call output_command.
6437
6438 2018-05-21  Tom Tromey  <tom@tromey.com>
6439
6440         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
6441         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
6442         * ada-lang.h (create_ada_exception_catchpoint): Update.
6443         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
6444         std::string.
6445         (create_excep_cond_exprs, ~ada_catchpoint)
6446         (should_stop_exception, print_one_exception)
6447         (print_mention_exception, print_recreate_exception): Update.
6448         (ada_get_next_arg): Remove.
6449         (catch_ada_exception_command_split): Use std::string.  Change type
6450         of "excep_string", "cond_string".
6451         (catch_ada_exception_command): Update.
6452         (create_ada_exception_catchpoint): Change type of excep_string.
6453         (ada_exception_sal): Remove excep_string parameter.
6454         (~ada_catchpoint): Remove.
6455
6456 2018-05-21  Tom Tromey  <tom@tromey.com>
6457
6458         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
6459         cleanup.
6460
6461 2018-05-21  Tom Tromey  <tom@tromey.com>
6462
6463         * ada-lang.c (ada_exception_message_1, ada_exception_message):
6464         Return unique_xmalloc_ptr.
6465         (print_it_exception): Update.
6466
6467 2018-05-21  Tom Tromey  <tom@tromey.com>
6468
6469         * tracepoint.c (trace_dump_actions): Use std::string.
6470
6471 2018-05-21  Tom Tromey  <tom@tromey.com>
6472
6473         * symfile.c (reread_symbols): Use std::string for original_name.
6474
6475 2018-05-21  Tom Tromey  <tom@tromey.com>
6476
6477         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
6478         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
6479         constructor.
6480
6481 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
6482
6483         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
6484         instance to...
6485         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
6486         * objfiles.c (get_objfile_bfd_data): Allocate
6487         objfile_per_bfd_storage with obstack_new when allocating on
6488         obstack.
6489
6490 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
6491
6492         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
6493         OBSTACK_ZALLOC.
6494         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
6495         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
6496         * mdebugread.c (mdebug_build_psymtabs): Likewise.
6497         (add_pending): Likewise.
6498         (parse_symbol): Likewise.
6499         (parse_partial_symbols): Likewise.
6500         (psymtab_to_symtab_1): Likewise.
6501         (new_psymtab): Likewise.
6502         (elfmdebug_build_psymtabs): Likewise.
6503         * minsyms.c (terminate_minimal_symbol_table): Likewise.
6504         * objfiles.c (get_objfile_bfd_data): Likewise.
6505         (objfile_register_static_link): Likewise.
6506         * psymtab.c (allocate_psymtab): Likewise.
6507         * stabsread.c (read_member_functions): Likewise.
6508         * xcoffread.c (xcoff_end_psymtab): Likewise.
6509
6510 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
6511
6512         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
6513         compiler supports std::is_trivially_constructible.
6514         * common/poison.h: Include obstack.h.
6515         (IsMallocable): Define to is_trivially_constructible if the
6516         compiler supports it, define to true_type otherwise.
6517         (xobnew): New.
6518         (XOBNEW): Redefine.
6519         (xobnewvec): New.
6520         (XOBNEWVEC): Redefine.
6521         * gdb_obstack.h (obstack_zalloc): New.
6522         (OBSTACK_ZALLOC): Redefine.
6523         (obstack_calloc): New.
6524         (OBSTACK_CALLOC): Redefine.
6525         (obstack_new): New.
6526         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
6527         (gdbarch_obstack): New declaration in gdbarch.h, definition in
6528         gdbarch.c.
6529         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
6530         obstack_calloc/obstack_zalloc.
6531         (gdbarch_obstack_zalloc): Remove.
6532         * target-descriptions.c (tdesc_data_init): Use obstack_new.
6533
6534 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6535
6536         * stack.c (backtrace_command_1): Remove useless variable int i.
6537
6538 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6539
6540         * stack.c (print_frame_info): Fix comment.
6541
6542 2018-05-18  Tom Tromey  <tom@tromey.com>
6543
6544         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
6545         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
6546         (~dwarf2_per_objfile): Update
6547         (dwarf2_get_dwz_file): Use new.
6548         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
6549         unique_ptr.
6550
6551 2018-05-18  Tom Tromey  <tom@tromey.com>
6552
6553         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
6554         unique_ptr.
6555         * dwarf2read.c (struct dwp_file): Add constructor and
6556         initializers.
6557         (open_and_init_dwp_file): Return a unique_ptr.
6558         (dwarf2_per_objfile, create_dwp_hash_table)
6559         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
6560         (lookup_dwo_unit_in_dwp): Update.
6561         (open_and_init_dwp_file, get_dwp_file): Update.
6562
6563 2018-05-18  Tom Tromey  <tom@tromey.com>
6564
6565         * dwarf2read.c (dwarf2_per_objfile): Update.
6566         (struct mapped_index): Add initializers.
6567         (dwarf2_read_index): Use new.
6568         (dw2_symtab_iter_init): Update.
6569         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
6570         unique_ptr.
6571
6572 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
6573
6574         * dwarf2read.c (mapped_index) <total_size>: Remove.
6575
6576 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
6577
6578         * unittests/format_pieces-selftests.c (test_format_specifier):
6579         Add ARI comments.
6580
6581 2018-05-18  Tom Tromey  <tom@tromey.com>
6582
6583         * c-typeprint.c (maybe_print_hole): New function.
6584         (c_print_type_struct_field_offset): Update.
6585         (c_type_print_base_struct_union): Call maybe_print_hole.
6586
6587 2018-05-17  Keith Seitz  <keiths@redhat.com>
6588
6589         * breakpoint.c (build_bpstat_chain): New function, moved from
6590         bpstat_stop_status.
6591         (bpstat_stop_status): Add optional parameter, `stop_chain'.
6592         If no stop chain is passed, call build_bpstat_chain to build it.
6593         * breakpoint.h (build_bpstat_chain): Declare.
6594         (bpstat_stop_status): Move documentation here from breakpoint.c.
6595         * infrun.c (handle_signal_stop): Before eliding inlined frames,
6596         build the stop chain and pass it to skip_inline_frames.
6597         Pass this stop chain to bpstat_stop_status.
6598         * inline-frame.c: Include breakpoint.h.
6599         (stopped_by_user_bp_inline_frame): New function.
6600         (skip_inline_frames): Add parameter `stop_chain'.
6601         Move documention to inline-frame.h.
6602         If non-NULL, use stopped_by_user_bp_inline_frame to determine
6603         whether the frame should be elided.
6604         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
6605         Add moved documentation and update for new parameter.
6606
6607 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
6608
6609         PR cli/14975
6610         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6611         unittests/format_pieces-selftests.c.
6612         * common/format.h (format_piece) <operator==>: New.
6613         (format_pieces) <operator[]>: Remove.
6614         * common/format.c (format_pieces::format_pieces): Handle \e.
6615         * unittests/format_pieces-selftests.c: New.
6616
6617 2018-05-17  Tom Tromey  <tom@tromey.com>
6618
6619         PR symtab/23010:
6620         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
6621         (dw2_instantiate_symtab): Add skip_partial parameter.
6622         (dw2_find_last_source_symtab, dw2_map_expand_apply)
6623         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
6624         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
6625         (dw2_expand_symtabs_matching_one)
6626         (dw2_find_pc_sect_compunit_symtab)
6627         (dw2_debug_names_lookup_symbol)
6628         (dw2_debug_names_expand_symtabs_for_function): Update.
6629         (init_cutu_and_read_dies): Add skip_partial parameter.
6630         (process_psymtab_comp_unit, build_type_psymtabs_1)
6631         (process_skeletonless_type_unit, load_partial_comp_unit)
6632         (psymtab_to_symtab_1): Update.
6633         (load_full_comp_unit): Add skip_partial parameter.
6634         (process_imported_unit_die, dwarf2_read_addr_index)
6635         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
6636         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
6637         (read_signatured_type): Update.
6638
6639 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
6640
6641         * value.c (release_value): Remove unused variable.
6642         (record_latest_value): Likewise.
6643         (access_value_history): Likewise.
6644         (preserve_values): Likewise.
6645
6646 2018-05-17  Tom Tromey  <tom@tromey.com>
6647
6648         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
6649         Initialize.
6650
6651 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
6652
6653         PR gdb/22286
6654         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
6655         Also handle registers whose width is not a multiple of
6656         PTRACE_TYPE_RET.
6657         (linux_nat_trad_target::store_register): Likewise.
6658
6659 2018-05-16  Tom Tromey  <tom@tromey.com>
6660
6661         * gdbcore.h (core_bfd): Redefine.
6662         * corelow.c (core_target::close): Update.
6663         (core_target_open): Update.
6664         * progspace.h (struct program_space) <cbfd>: Now a
6665         gdb_bfd_ref_ptr.
6666
6667 2018-05-16  Tom Tromey  <tom@tromey.com>
6668
6669         PR cli/19551:
6670         * symfile-add-flags.h (enum symfile_add_flags)
6671         <SYMFILE_NOT_FILENAME>: New constant.
6672         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
6673         objfile name from BFD.
6674         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
6675         * minidebug.c (find_separate_debug_file_in_section): Put
6676         ".gnu_debugdata" into BFD's file name.
6677
6678 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
6679
6680         * regcache.c (regcache_read_ftype, regcache_write_ftype):
6681         Remove.
6682
6683 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
6684
6685         PR binutils/21446
6686         * aarch64-tdep.c (aarch64_analyze_prologue,
6687         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
6688         Indicate not interested in errors.
6689
6690 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
6691
6692         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
6693         Supply the MIPS_ZERO_REGNUM register.
6694
6695 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
6696
6697         * mips-tdep.c (mask_address_var): Make variable static.
6698
6699 2018-05-14  Tom Tromey  <tom@tromey.com>
6700
6701         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
6702
6703 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
6704
6705         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
6706         FXSAVE_ADDR for the mxcsr register.
6707
6708 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
6709
6710         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
6711
6712 2018-05-11  Pedro Alves  <palves@redhat.com>
6713
6714         * corelow.c (core_target) <core_target>: No longer inline.
6715         Initialize m_core_gdbarch, m_core_vec and build the section table
6716         here.
6717         <~core_target>: New.
6718         <core_gdbarch, get_core_register_section>: New methods.
6719         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
6720         factored out from ...
6721         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
6722         (core_ops): Delete.
6723         (sniff_core_bfd): Add gdbarch parameter.
6724         (core_close): Delete, merged into ...
6725         (core_target::close): ... here.  Delete self.
6726         (core_close_cleanup): Delete.
6727         (core_target_open): Allocate a core_target on the heap.  Use a
6728         unique_ptr instead of a cleanup.  Bits moved into the core_target
6729         ctor.  Adjust to use core_target methods instead of globals.
6730         (get_core_register_section): Rename to ...
6731         (core_target::get_core_register_section): ... this and adjust.
6732         (struct get_core_registers_cb_data): New.
6733         (get_core_registers_cb): Use it.  Use bool.
6734         (core_target::fetch_registers, core_target::files_info)
6735         (core_target::xfer_partial, core_target::read_description)
6736         (core_target::pid_to, core_target::thread_name): Adjust to
6737         reference class fields instead of globals.
6738         * target.h (struct target_ops_deleter, target_ops_up): New.
6739
6740 2018-05-11  Pedro Alves  <palves@redhat.com>
6741
6742         * corefile.c (core_file_command): Move to corelow.c.
6743         * corelow.c (the_core_target): Delete.
6744         (core_file_command): Moved from corefile.c.  Check exec_bfd
6745         instead of the_core_target.  Use target_detach instead of calling
6746         into the_core_target directly.
6747         (maybe_say_no_core_file_now): New.
6748         (core_target::detach): Use it.
6749         (_initialize_corelow): Remove references to the_core_target.
6750         * gdbcore.h (the_core_target): Delete.
6751
6752 2018-05-11  Tom Tromey  <tromey@redhat.com>
6753             Pedro Alves  <palves@redhat.com>
6754
6755         * corefile.c (core_bfd): Remove.
6756         * gdbcore.h (core_bfd): Now a macro.
6757         * progspace.h (struct program_space) <cbfd>: New field.
6758
6759 2018-05-11  Tom Tromey  <tom@tromey.com>
6760
6761         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
6762         gdb::def_vector.
6763
6764 2018-05-10  Tom Tromey  <tom@tromey.com>
6765
6766         * configure: Rebuild.
6767         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
6768
6769 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
6770
6771         PR server/23158:
6772         * regformats/regdat.sh: Adjust script, following the addition
6773         of the new expedite_regs parameter to init_target_desc.
6774
6775 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
6776     
6777         PR gdb/23127
6778         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
6779         set_gdbarch_significant_addr_bit.
6780         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
6781         set_gdbarch_significant_addr_bit.
6782         * utils.c (address_significant): Update to sign extend addr.
6783
6784 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
6785
6786         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
6787         (xtensa_linux_init_abi): Limit tdep->num_regs by
6788         tdep->num_nopriv_regs.
6789         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
6790         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
6791         not initialized.
6792
6793 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
6794
6795         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
6796
6797 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
6798
6799         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
6800         (I387_MXCSR_INIT_VAL): New constant.
6801         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
6802         buffer if it was supplied by the inferior.
6803         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
6804         (i387_xsave_get_clear_bv): New function.
6805         (i387_supply_xsave): Only read x87 control registers from the
6806         xsave buffer if the feature is enabled, and the state will have
6807         been written, otherwise, provide a suitable default.
6808         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
6809         including x87 control registers.  Update control registers if they
6810         have changed from the default value, and mark features as enabled
6811         as required.
6812         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
6813
6814 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
6815
6816         * spu-tdep.c (info_spu_event_command): Fix output formatting.
6817
6818 2018-05-07  Tom Tromey  <tom@tromey.com>
6819
6820         * configure: Rebuild.
6821         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
6822
6823 2018-05-07  Tom Tromey  <tom@tromey.com>
6824
6825         PR tdep/20362:
6826         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
6827         bit.  Use correct value for VDIV.
6828
6829 2018-05-04  Tom Tromey  <tom@tromey.com>
6830
6831         * configure: Rebuild.
6832         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
6833
6834 2018-05-04  Tom Tromey  <tom@tromey.com>
6835
6836         * linux-record.c (record_linux_system_call) <case
6837         RECORD_SYS_RECVFROM>: Add "break".
6838
6839 2018-05-04  Tom Tromey  <tom@tromey.com>
6840
6841         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
6842         Add missing "break".
6843         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
6844         Add missing "break".
6845
6846 2018-05-04  Tom Tromey  <tom@tromey.com>
6847
6848         * rs6000-tdep.c (ppc_process_record_op4)
6849         (ppc_process_record_op63): Add fall-through comment.
6850
6851 2018-05-04  Tom Tromey  <tom@tromey.com>
6852
6853         * i386-tdep.c (i386_process_record): Add fall-through comment.
6854
6855 2018-05-04  Tom Tromey  <tom@tromey.com>
6856
6857         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
6858         comment.
6859
6860 2018-05-04  Tom Tromey  <tom@tromey.com>
6861
6862         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
6863         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
6864         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
6865         comment.
6866         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
6867         comment.
6868         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
6869         comment.
6870
6871 2018-05-04  Tom Tromey  <tom@tromey.com>
6872
6873         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
6874
6875 2018-05-04  Tom Tromey  <tom@tromey.com>
6876
6877         * s390-tdep.c (s390_process_record): Fix fall-through comments.
6878         * xcoffread.c (scan_xcoff_symtab): Move comment later.
6879         * symfile.c (section_is_mapped): Fix fall-through comment.
6880         * stabsread.c (define_symbol, read_member_functions): Fix
6881         fall-through comment.
6882         * s390-linux-tdep.c (s390_process_record): Fix fall-through
6883         comment.
6884         * remote.c (remote_wait_as): Fix fall-through comment.
6885         * p-exp.y (yylex): Fix fall-through comment.
6886         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
6887         comment.
6888         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
6889         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
6890         * jv-exp.y (yylex): Fix fall-through comment.
6891         * go-exp.y (lex_one_token): Fix fall-through comment.
6892         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
6893         fall-through comment.
6894         * f-exp.y (yylex): Fix fall-through comment.
6895         * dwarf2read.c (process_die): Fix fall-through comments.
6896         * dbxread.c (process_one_symbol): Fix fall-through comment.
6897         * d-exp.y (lex_one_token): Fix fall-through comment.
6898         * cp-name-parser.y (yylex): Fix fall-through comment.
6899         * coffread.c (coff_symtab_read): Fix fall-through comment.
6900         * c-exp.y (lex_one_token): Fix fall-through comment.
6901         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
6902         comment.
6903         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
6904         comment.
6905
6906 2018-05-04  Tom Tromey  <tom@tromey.com>
6907
6908         PR python/22730:
6909         * NEWS: Mention gdb.execute change.
6910         * gdbcmd.h (execute_control_command): Don't declare.
6911         * python/python.c (execute_gdb_command): Use read_command_lines_1,
6912         execute_control_commands, execute_control_commands_to_string.
6913         * cli/cli-script.h (execute_control_commands)
6914         (execute_control_commands_to_string): Declare.
6915         (execute_control_command): Add from_tty parameter.
6916         * cli/cli-script.c (execute_control_commands)
6917         (execute_control_commands_to_string): New functions.
6918         (execute_user_command): Use execute_control_commands.
6919         (execute_control_command_1): Add "from_tty" parameter.  Update.
6920         (execute_control_command): Likewise.
6921
6922 2018-05-04  Tom Tromey  <tom@tromey.com>
6923
6924         PR python/22731:
6925         * NEWS: Mention that breakpoint commands are writable.
6926         * python/py-breakpoint.c (bppy_set_commands): New function.
6927         (breakpoint_object_getset) <"commands">: Use it.
6928
6929 2018-05-04  Tom Tromey  <tom@tromey.com>
6930
6931         * tracepoint.c (actions_command): Update.
6932         * mi/mi-cmd-break.c (mi_command_line_array)
6933         (mi_command_line_array_cnt, mi_command_line_array_ptr)
6934         (mi_read_next_line): Remove.
6935         (mi_cmd_break_commands): Update.
6936         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
6937         function_view.
6938         * cli/cli-script.c (get_command_line): Update.
6939         (process_next_line): Use function_view.  Constify.
6940         (recurse_read_control_structure, read_command_lines)
6941         (read_command_lines_1): Change argument types to function_view.
6942         (do_define_command, document_command): Update.
6943         * breakpoint.h (check_tracepoint_command): Don't declare.
6944         * breakpoint.c (check_tracepoint_command): Remove.
6945         (commands_command_1, create_tracepoint_from_upload): Update.
6946
6947 2018-05-04  Tom Tromey  <tom@tromey.com>
6948
6949         PR gdb/11750:
6950         * cli/cli-script.h (enum command_control_type) <define_control>:
6951         New constant.
6952         * cli/cli-script.c (multi_line_command_p): Handle define_control.
6953         (build_command_line, execute_control_command_1)
6954         (process_next_line): Likewise.
6955         (do_define_command): New function, extracted from define_command.
6956         (define_command): Use it.
6957
6958 2018-05-04  Tom Tromey  <tom@tromey.com>
6959
6960         * tracepoint.c (actions_command): Update.
6961         * cli/cli-script.h (read_command_lines): Update.
6962         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
6963         (MAX_TMPBUF): Remove define.
6964         (define_command): Use string_printf.
6965         (document_command): Likewise.
6966         * breakpoint.c (commands_command_1): Update.
6967
6968 2018-05-04  Tom Tromey  <tom@tromey.com>
6969
6970         * top.c (execute_command): Update.
6971         * cli/cli-script.h (print_command_lines): Now varargs.
6972         * cli/cli-script.c (print_command_lines): Now varargs.
6973         (execute_control_command_1) <case while_control, case if_control>:
6974         Update.
6975
6976 2018-05-04  Tom Tromey  <tom@tromey.com>
6977
6978         * tracepoint.c (all_tracepoint_actions): Rename from
6979         all_tracepoint_actions_and_cleanup.  Change return type.
6980         (actions_command, encode_actions_1, encode_actions)
6981         (trace_dump_actions, tdump_command): Update.
6982         * remote.c (remote_download_command_source): Update.
6983         * python/python.c (gdbpy_eval_from_control_command)
6984         (python_command, python_interactive_command): Update.
6985         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
6986         * guile/guile.c (guile_command)
6987         (gdbscm_eval_from_control_command, guile_command): Update.
6988         * compile/compile.c (compile_code_command)
6989         (compile_print_command, compile_to_object): Update.
6990         * cli/cli-script.h (struct command_lines_deleter): New.
6991         (counted_command_line): New typedef.
6992         (struct command_line): Add constructor, destructor.
6993         <body_list>: Remove.
6994         <body_list_0, body_list_1>: New members.
6995         (command_line_up): Remove typedef.
6996         (read_command_lines, read_command_lines_1, get_command_line):
6997         Update.
6998         (copy_command_lines): Don't declare.
6999         * cli/cli-script.c (build_command_line): Use "new".
7000         (get_command_line): Return counted_command_line.
7001         (print_command_lines, execute_user_command)
7002         (execute_control_command_1, while_command, if_command): Update.
7003         (realloc_body_list): Remove.
7004         (process_next_line, recurse_read_control_structure): Update.
7005         (read_command_lines, read_command_lines_1): Return counted_command_line.
7006         (free_command_lines): Use "delete".
7007         (copy_command_lines): Remove.
7008         (define_command, document_command, show_user_1): Update.
7009         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
7010         a counted_command_line.
7011         * breakpoint.h (counted_command_line): Remove typedef.
7012         (breakpoint_set_commands): Update.
7013         * breakpoint.c (check_no_tracepoint_commands)
7014         (validate_commands_for_breakpoint): Update.
7015         (breakpoint_set_commands): Change commands to be a
7016         counted_command_line.
7017         (commands_command_1, update_dprintf_command_list)
7018         (create_tracepoint_from_upload): Update.
7019
7020 2018-05-04  Tom Tromey  <tom@tromey.com>
7021
7022         * cli/cli-decode.h (cmd_list_element): New constructor.
7023         (~cmd_list_element): New destructor.
7024         (struct cmd_list_element): Add initializers.
7025         * cli/cli-decode.c (do_add_cmd): Use "new".
7026         (delete_cmd): Use "delete".
7027
7028 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
7029             Pedro Alves <palves@redhat.com>
7030
7031         PR breakpoints/19806 and support for PR external/20207.
7032         * NEWS: Mention Aarch64 watchpoint improvements.
7033         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
7034         watchpoints and PR external/20207 watchpoints.
7035         * nat/aarch64-linux-hw-point.c
7036         (kernel_supports_any_contiguous_range): New.
7037         (aarch64_watchpoint_offset): New.
7038         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
7039         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
7040         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
7041         (aarch64_align_watchpoint): New parameters aligned_offset_p and
7042         next_addr_orig_p.  Support PR external/20207 watchpoints.
7043         (aarch64_downgrade_regs): New.
7044         (aarch64_dr_state_insert_one_point): New parameters offset and
7045         addr_orig.
7046         (aarch64_dr_state_remove_one_point): Likewise.
7047         (aarch64_handle_breakpoint): Update caller.
7048         (aarch64_handle_aligned_watchpoint): Likewise.
7049         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
7050         aligned_offset.
7051         (aarch64_linux_set_debug_regs): Remove const from state.  Call
7052         aarch64_downgrade_regs.
7053         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
7054         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
7055         (DR_CONTROL_MASK): ... this.
7056         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
7057         (unsigned int aarch64_watchpoint_offset): New prototype.
7058         (aarch64_linux_set_debug_regs): Remove const from state.
7059         * utils.c (align_up, align_down): Move to ...
7060         * common/common-utils.c (align_up, align_down): ... here.
7061         * utils.h (align_up, align_down): Move to ...
7062         * common/common-utils.h (align_up, align_down): ... here.
7063
7064 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
7065
7066         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
7067         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
7068         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
7069         Re-implement to match the ABI as summarized in GCC's
7070         gcc/config/sparc/sparc.c.  All callers updated.
7071         (sparc32_store_arguments): Remove assertion.
7072
7073 2018-05-04  Tom Tromey  <tom@tromey.com>
7074
7075         * printcmd.c: Don't include tui.h.
7076         (decode_format): Use skip_spaces.
7077
7078 2018-05-04  Tom Tromey  <tom@tromey.com>
7079
7080         PR gdb/22619:
7081         * printcmd.c (last_count): New global.
7082         (x_command): Use saved count when repeating.
7083
7084 2018-05-04  Tom Tromey  <tom@tromey.com>
7085
7086         * nto-procfs.c (do_closedir_cleanup): Remove.
7087         (procfs_pidlist): Use gdb_dir_up.
7088         * procfs.c (do_closedir_cleanup): Remove.
7089         (proc_update_threads): Use gdb_dir_up.
7090         * common/filestuff.h (struct gdb_dir_deleter): New.
7091         (gdb_dir_up): New typedef.
7092
7093 2018-05-04  Tom Tromey  <tom@tromey.com>
7094
7095         * ada-lang.c (print_mention_exception): Use std::string.
7096
7097 2018-05-04  Tom Tromey  <tom@tromey.com>
7098
7099         * ada-lang.c (create_excep_cond_exprs): Update.
7100         (ada_exception_catchpoint_cond_string): Use std::string.
7101
7102 2018-05-04  Tom Tromey  <tom@tromey.com>
7103
7104         * ada-lang.c (xget_renaming_scope): Return std::string.
7105         (old_renaming_is_invisible): Update.
7106
7107 2018-05-04  Tom Tromey  <tom@tromey.com>
7108
7109         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
7110         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
7111
7112 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
7113
7114         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
7115
7116 2018-05-04  Tom Tromey  <tom@tromey.com>
7117
7118         * remote.c (remote_query_supported_append): Change type.
7119         (remote_check_symbols): Update.
7120
7121 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
7122
7123         PR gdb/11420
7124         * configure.ac: Prepend libpython.
7125         * python/python-config.py: Likewise.
7126         * configure: Regenerate.
7127
7128 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
7129
7130         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
7131
7132 2018-05-03  Pedro Alves  <palves@redhat.com>
7133
7134         * s390-linux-nat.c
7135         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
7136         override.  Write 'true' instead of '1'.
7137         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
7138         declaration.
7139
7140 2018-05-02  Pedro Alves  <palves@redhat.com>
7141
7142         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
7143         add_inf_child_target.
7144         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
7145         add_inf_child_target.
7146         * aix-thread.c (aix_thread_target_info): New.
7147         (aix_thread_target) <shortname, longname, doc>: Delete.
7148         <info>: New.
7149         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
7150         add_inf_child_target.
7151         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
7152         add_inf_child_target.
7153         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
7154         add_inf_child_target.
7155         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
7156         add_inf_child_target.
7157         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
7158         add_inf_child_target.
7159         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
7160         add_inf_child_target.
7161         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
7162         add_inf_child_target.
7163         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
7164         add_inf_child_target.
7165         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
7166         add_inf_child_target.
7167         * bfd-target.c (target_bfd_target_info): New.
7168         (target_bfd) <shortname, longname, doc>: Delete.
7169         <info>: New.
7170         * bsd-kvm.c (bsd_kvm_target_info): New.
7171         (bsd_kvm_target) <shortname, longname, doc>: Delete.
7172         <info>: New.
7173         (bsd_kvm_target::open): Rename to ...
7174         (bsd_kvm_target_open): ... this.  Adjust.
7175         * bsd-uthread.c (bsd_uthread_target_info): New.
7176         (bsd_uthread_target) <shortname, longname, doc>: Delete.
7177         <info>: New.
7178         * corefile.c (core_file_command): Adjust.
7179         * corelow.c (core_target_info): New.
7180         (core_target) <shortname, longname, doc>: Delete.
7181         <info>: New.
7182         (core_target::open): Rename to ...
7183         (core_target_open): ... this.  Adjust.
7184         * ctf.c (ctf_target_info): New.
7185         (ctf_target) <shortname, longname, doc>: Delete.
7186         <info>: New.
7187         (ctf_target::open): Rename to ...
7188         (ctf_target_open): ... this.
7189         (_initialize_ctf): Adjust.
7190         * exec.c (exec_target_info): New.
7191         (exec_target) <shortname, longname, doc>: Delete.
7192         <info>: New.
7193         (exec_target::open): Rename to ...
7194         (exec_target_open): ... this.
7195         * gdbcore.h (core_target_open): Declare.
7196         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
7197         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
7198         add_inf_child_target.
7199         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
7200         add_inf_child_target.
7201         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
7202         add_inf_child_target.
7203         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
7204         add_inf_child_target.
7205         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
7206         add_inf_child_target.
7207         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
7208         add_inf_child_target.
7209         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
7210         add_inf_child_target.
7211         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
7212         add_inf_child_target.
7213         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
7214         add_inf_child_target.
7215         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
7216         add_inf_child_target.
7217         * inf-child.c (inf_child_target_info): New.
7218         (inf_child_target::info): New.
7219         (inf_child_open_target): Remove 'target' parameter.  Use
7220         get_native_target instead.
7221         (inf_child_target::open): Delete.
7222         (add_inf_child_target): New.
7223         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
7224         Delete.
7225         <info>: New.
7226         (add_inf_child_target): Declare.
7227         (inf_child_open_target): Declare.
7228         * linux-thread-db.c (thread_db_target_info): New.
7229         (thread_db_target) <shortname, longname, doc>: Delete.
7230         <info>: New.
7231         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
7232         add_inf_child_target.
7233         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
7234         add_inf_child_target.
7235         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
7236         add_inf_child_target.
7237         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
7238         add_inf_child_target.
7239         * make-target-delegates (print_class): Adjust.
7240         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
7241         add_inf_child_target.
7242         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
7243         add_inf_child_target.
7244         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
7245         add_inf_child_target.
7246         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
7247         add_inf_child_target.
7248         * nto-procfs.c (nto_native_target_info): New.
7249         (nto_procfs_target_native) <shortname, longname, doc>:
7250         Delete.
7251         <info>: New.
7252         (nto_procfs_target_info): New.
7253         (nto_procfs_target_procfs) <shortname, longname, doc>:
7254         Delete.
7255         <info>: New.
7256         (init_procfs_targets): Adjust.
7257         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
7258         add_inf_child_target.
7259         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
7260         add_inf_child_target.
7261         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
7262         add_inf_child_target.
7263         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
7264         add_inf_child_target.
7265         * ravenscar-thread.c (ravenscar_target_info): New.
7266         (ravenscar_thread_target) <shortname, longname, doc>:
7267         Delete.
7268         <info>: New.
7269         * record-btrace.c (record_btrace_target_info):
7270         (record_btrace_target) <shortname, longname, doc>: Delete.
7271         <info>: New.
7272         (record_btrace_target::open): Rename to ...
7273         (record_btrace_target_open): ... this.  Adjust.
7274         * record-full.c (record_longname, record_doc): New.
7275         (record_full_base_target) <shortname, longname, doc>: Delete.
7276         <info>: New.
7277         (record_full_target_info): New.
7278         (record_full_target): <shortname>: Delete.
7279         <info>: New.
7280         (record_full_core_open_1, record_full_open_1): Update comments.
7281         (record_full_base_target::open): Rename to ...
7282         (record_full_open): ... this.
7283         (cmd_record_full_restore): Update.
7284         (_initialize_record_full): Update.
7285         * remote-sim.c (remote_sim_target_info): New.
7286         (gdbsim_target) <shortname, longname, doc>: Delete.
7287         <info>: New.
7288         (gdbsim_target::open): Rename to ...
7289         (gdbsim_target_open): ... this.
7290         (_initialize_remote_sim): Adjust.
7291         * remote.c (remote_doc): New.
7292         (remote_target_info): New.
7293         (remote_target) <shortname, longname, doc>: Delete.
7294         <info>: New.
7295         (extended_remote_target_info): New.
7296         (extended_remote_target) <shortname, longname, doc>: Delete.
7297         <info>: New.
7298         (remote_target::open_1): Make static.  Adjust.
7299         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
7300         * s390-linux-nat.c (_initialize_s390_nat): Use
7301         add_inf_child_target.
7302         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
7303         add_inf_child_target.
7304         * sol-thread.c (thread_db_target_info): New.
7305         (sol_thread_target) <shortname, longname, doc>: Delete.
7306         <info>: New.
7307         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
7308         add_inf_child_target.
7309         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
7310         add_inf_child_target.
7311         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
7312         add_inf_child_target.
7313         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
7314         add_inf_child_target.
7315         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
7316         add_inf_child_target.
7317         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
7318         add_inf_child_target.
7319         * spu-linux-nat.c (_initialize_spu_nat): Use
7320         add_inf_child_target.
7321         * spu-multiarch.c (spu_multiarch_target_info): New.
7322         (spu_multiarch_target) <shortname, longname, doc>: Delete.
7323         <info>: New.
7324         * target-delegates.c: Regenerate.
7325         * target.c: Include <unordered_map>.
7326         (target_ops_p): Delete.
7327         (DEF_VEC_P(target_ops_p)): Delete.
7328         (target_factories): New.
7329         (test_target_info): New.
7330         (test_target_ops::info): New.
7331         (open_target): Adjust to use target_factories.
7332         (add_target_with_completer): Rename to ...
7333         (add_target): ... this.  Change prototype.  Register target_info
7334         and open callback in target_factories.  Register target_info in
7335         command context instead of target_ops.
7336         (add_target): Delete old implementation.
7337         (add_deprecated_target_alias): Change prototype.  Adjust.
7338         (the_native_target): New.
7339         (set_native_target, get_native_target): New.
7340         (find_default_run_target): Use the_native_target.
7341         (find_attach_target, find_run_target): Simplify.
7342         (target_ops::open): Delete.
7343         (dummy_target_info): New.
7344         (dummy_target::shortname, dummy_target::longname)
7345         (dummy_target::doc): Delete.
7346         (dummy_target::info): New.
7347         (debug_target::shortname, debug_target::longname)
7348         (debug_target::doc): Delete.
7349         (debug_target::info): New.
7350         * target.h (struct target_info): New.
7351         (target_ops::~target_ops): Add comment.
7352         (target_ops::info): New.
7353         (target_ops::shortname, target_ops::longname, target_ops::doc): No
7354         longer virtual.  Implement in terms of target_info.
7355         (set_native_target, get_native_target): Declare.
7356         (target_open_ftype): New.
7357         (add_target, add_target_with_completer)
7358         (add_deprecated_target_alias): Change prototype.
7359         (test_target) <shortname, longname, doc>: Delete.
7360         <info>: New.
7361         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
7362         add_inf_child_target.
7363         * tracefile-tfile.c (tfile_target_info): New.
7364         (tfile_target) <shortname, longname, doc>: Delete.
7365         <info>: New.
7366         (tfile_target::open): Rename to ...
7367         (tfile_target_open): ... this.
7368         (_initialize_tracefile_tfile): Adjust.
7369         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
7370         add_inf_child_target.
7371         * windows-nat.c (_initialize_windows_nat): Use
7372         add_inf_child_target.
7373         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
7374         add_inf_child_target.
7375
7376 2018-05-02  Pedro Alves  <palves@redhat.com>
7377
7378         * linux-nat.h (linux_nat_target) <low_new_thread,
7379         low_delete_thread, low_new_fork, low_forget_process,
7380         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
7381         New virtual methods.
7382         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
7383         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
7384         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
7385         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
7386         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
7387         Delete.
7388         * linux-fork.c (delete_fork): Adjust to call low method.
7389         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
7390         (linux_nat_new_fork, linux_nat_forget_process_hook)
7391         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
7392         (linux_nat_status_is_event):
7393         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
7394         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
7395         to call low method.
7396         (sigtrap_is_event): Rename to ...
7397         (linux_nat_target::low_status_is_event): ... this.
7398         (linux_nat_set_status_is_event): Delete.
7399         (save_stop_reason, linux_nat_wait_1)
7400         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
7401         low methods.
7402         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
7403         (linux_nat_set_new_fork, linux_nat_set_forget_process)
7404         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
7405         (linux_nat_set_prepare_to_resume): Delete.
7406         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
7407         low virtual methods.
7408         * amd64-linux-nat.c: Likewise.
7409         * arm-linux-nat.c: Likewise.
7410         * i386-linux-nat.c: Likewise.
7411         * ia64-linux-nat.c: Likewise.
7412         * mips-linux-nat.c: Likewise.
7413         * ppc-linux-nat.c: Likewise.
7414         * s390-linux-nat.c: Likewise.
7415         * sparc64-linux-nat.c: Likewise.
7416         * x86-linux-nat.c: Likewise.
7417         * x86-linux-nat.h: Include "nat/x86-linux.h".
7418         (x86_linux_nat_target) <low_new_fork, low_forget_process,
7419         low_prepare_to_resume, low_new_thread, low_delete_thread>:
7420         Override methods.
7421
7422 2018-05-02  Pedro Alves  <palves@redhat.com>
7423
7424         * target.h (target_ops)
7425         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
7426         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
7427         stopped_by_watchpoint, have_continuable_watchpoint,
7428         stopped_data_address, watchpoint_addr_within_range,
7429         can_accel_watchpoint_condition, can_run, thread_alive,
7430         has_all_memory, has_memory, has_stack, has_registers,
7431         has_execution, can_async_p, is_async_p, supports_non_stop,
7432         always_non_stop_p, can_execute_reverse, supports_multi_process,
7433         supports_enable_disable_tracepoint,
7434         supports_disable_randomization, supports_string_tracing,
7435         supports_evaluation_of_breakpoint_conditions,
7436         can_run_breakpoint_commands, filesystem_is_local,
7437         can_download_tracepoint, get_trace_state_variable_value,
7438         set_trace_notes, get_tib_address, use_agent, can_use_agent,
7439         record_is_replaying, record_will_replay,
7440         augmented_libraries_svr4_read>: Adjust to return bool.
7441         * aarch64-linux-nat.c: All implementations adjusted.
7442         * aix-thread.c: All implementations adjusted.
7443         * arm-linux-nat.c: All implementations adjusted.
7444         * breakpoint.c: All implementations adjusted.
7445         * bsd-kvm.c: All implementations adjusted.
7446         * bsd-uthread.c: All implementations adjusted.
7447         * corelow.c: All implementations adjusted.
7448         * ctf.c: All implementations adjusted.
7449         * darwin-nat.c: All implementations adjusted.
7450         * darwin-nat.h: All implementations adjusted.
7451         * exec.c: All implementations adjusted.
7452         * fbsd-nat.c: All implementations adjusted.
7453         * fbsd-nat.h: All implementations adjusted.
7454         * gnu-nat.c: All implementations adjusted.
7455         * gnu-nat.h: All implementations adjusted.
7456         * go32-nat.c: All implementations adjusted.
7457         * ia64-linux-nat.c: All implementations adjusted.
7458         * inf-child.c: All implementations adjusted.
7459         * inf-child.h: All implementations adjusted.
7460         * inf-ptrace.c: All implementations adjusted.
7461         * inf-ptrace.h: All implementations adjusted.
7462         * linux-nat.c: All implementations adjusted.
7463         * linux-nat.h: All implementations adjusted.
7464         * mips-linux-nat.c: All implementations adjusted.
7465         * nto-procfs.c: All implementations adjusted.
7466         * ppc-linux-nat.c: All implementations adjusted.
7467         * procfs.c: All implementations adjusted.
7468         * ravenscar-thread.c: All implementations adjusted.
7469         * record-btrace.c: All implementations adjusted.
7470         * record-full.c: All implementations adjusted.
7471         * remote-sim.c: All implementations adjusted.
7472         * remote.c: All implementations adjusted.
7473         * s390-linux-nat.c: All implementations adjusted.
7474         * sol-thread.c: All implementations adjusted.
7475         * spu-multiarch.c: All implementations adjusted.
7476         * target-delegates.c: All implementations adjusted.
7477         * target.c: All implementations adjusted.
7478         * target.h: All implementations adjusted.
7479         * tracefile-tfile.c: All implementations adjusted.
7480         * tracefile.c: All implementations adjusted.
7481         * tracefile.h: All implementations adjusted.
7482         * windows-nat.c: All implementations adjusted.
7483         * x86-linux-nat.h: All implementations adjusted.
7484         * x86-nat.h: All implementations adjusted.
7485
7486 2018-05-02  Pedro Alves  <palves@redhat.com>
7487
7488         * make-target-delegates (scan_target_h): Don't trim lines here.
7489         Replace sequences of tabs and/or whitespace with a single
7490         whitespace.
7491         (top level, parsing methods): Trim each line before processing it
7492         here.
7493
7494 2018-05-02  Pedro Alves  <palves@redhat.com>
7495             John Baldwin  <jhb@freebsd.org>
7496
7497         * target.h (enum strata) <debug_stratum>: New.
7498         (struct target_ops) <all delegation methods>: Replace by C++
7499         virtual methods, and drop "to_" prefix.  All references updated
7500         throughout.
7501         <to_shortname, to_longname, to_doc, to_data,
7502         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
7503         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
7504         virtual methods.  All references updated throughout.
7505         <can_attach, supports_terminal_ours, can_create_inferior,
7506         get_thread_control_capabilities, attach_no_wait>: New
7507         virtual methods.
7508         <insert_breakpoint, remove_breakpoint>: Now
7509         TARGET_DEFAULT_NORETURN methods.
7510         <info_proc>: Now returns bool.
7511         <to_magic>: Delete.
7512         (OPS_MAGIC): Delete.
7513         (current_target): Delete.  All references replaced by references
7514         to ...
7515         (target_stack): ... this.  New.
7516         (target_shortname, target_longname): Adjust.
7517         (target_can_run): Now a function declaration.
7518         (default_child_has_all_memory, default_child_has_memory)
7519         (default_child_has_stack, default_child_has_registers)
7520         (default_child_has_execution): Remove target_ops parameter.
7521         (complete_target_initialization): Delete.
7522         (memory_breakpoint_target): New template class.
7523         (test_target_ops): Refactor as a C++ class with virtual methods.
7524         * make-target-delegates (NAME_PART): Tighten.
7525         (POINTER_PART, CP_SYMBOL): New.
7526         (SIMPLE_RETURN_PART): Reimplement.
7527         (VEC_RETURN_PART): Expect less.
7528         (RETURN_PART, VIRTUAL_PART): New.
7529         (METHOD): Adjust to C++ virtual methods.
7530         (scan_target_h): Remove reference to C99.
7531         (dname): Output "target_ops::" prefix.
7532         (write_function_header): Adjust to output a C++ class method.
7533         (write_declaration): New.
7534         (write_delegator): Adjust to output a C++ class method.
7535         (tdname): Output "dummy_target::" prefix.
7536         (write_tdefault, write_debugmethod): Adjust to output a C++ class
7537         method.
7538         (tdefault_names, debug_names): Delete.
7539         (return_types, tdefaults, styles, argtypes_array): New.
7540         (top level): All methods are delegators.
7541         (print_class): New.
7542         (top level): Print dummy_target and debug_target classes.
7543         * target-delegates.c: Regenerate.
7544         * target-debug.h (target_debug_print_enum_info_proc_what)
7545         (target_debug_print_thread_control_capabilities)
7546         (target_debug_print_thread_info_p): New.
7547         * target.c (dummy_target): Delete.
7548         (the_dummy_target, the_debug_target): New.
7549         (target_stack): Now extern.
7550         (set_targetdebug): Push/unpush debug target.
7551         (default_child_has_all_memory, default_child_has_memory)
7552         (default_child_has_stack, default_child_has_registers)
7553         (default_child_has_execution): Remove target_ops parameter.
7554         (complete_target_initialization): Delete.
7555         (add_target_with_completer): No longer call
7556         complete_target_initialization.
7557         (target_supports_terminal_ours): Use regular delegation.
7558         (update_current_target): Delete.
7559         (push_target): No longer check magic number.  Don't call
7560         update_current_target.
7561         (unpush_target): Don't call update_current_target.
7562         (target_is_pushed): No longer check magic number.
7563         (target_require_runnable): Skip for all stratums over
7564         process_stratum.
7565         (target_ops::info_proc): New.
7566         (target_info_proc): Use find_target_at and
7567         find_default_run_target.
7568         (target_supports_disable_randomization): Use regular delegation.
7569         (target_get_osdata): Use find_target_at.
7570         (target_ops::open, target_ops::close, target_ops::can_attach)
7571         (target_ops::attach, target_ops::can_create_inferior)
7572         (target_ops::create_inferior, target_ops::can_run)
7573         (target_can_run): New.
7574         (default_fileio_target): Use regular delegation.
7575         (target_ops::fileio_open, target_ops::fileio_pwrite)
7576         (target_ops::fileio_pread, target_ops::fileio_fstat)
7577         (target_ops::fileio_close, target_ops::fileio_unlink)
7578         (target_ops::fileio_readlink): New.
7579         (target_fileio_open_1, target_fileio_unlink)
7580         (target_fileio_readlink): Always call the target method.  Handle
7581         FILEIO_ENOSYS.
7582         (return_zero, return_zero_has_execution): Delete.
7583         (init_dummy_target): Delete.
7584         (dummy_target::dummy_target, dummy_target::shortname)
7585         (dummy_target::longname, dummy_target::doc)
7586         (debug_target::debug_target, debug_target::shortname)
7587         (debug_target::longname, debug_target::doc): New.
7588         (target_supports_delete_record): Use regular delegation.
7589         (setup_target_debug): Delete.
7590         (maintenance_print_target_stack): Skip debug_stratum.
7591         (initialize_targets): Instantiate the_dummy_target and
7592         the_debug_target.
7593         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
7594         use target_stack.
7595         (target_auxv_search, fprint_target_auxv): Adjust.
7596         (info_auxv_command): Adjust to use target_stack.
7597         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
7598         * exceptions.c (print_flush): Handle a NULL target_stack.
7599         * regcache.c (target_ops_no_register): Refactor as class with
7600         virtual methods.
7601
7602         * exec.c (exec_target): New class.
7603         (exec_ops): Now an exec_target.
7604         (exec_open, exec_close_1, exec_get_section_table)
7605         (exec_xfer_partial, exec_files_info, exec_has_memory)
7606         (exec_make_note_section): Refactor as exec_target methods.
7607         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
7608         Delete.
7609         (exec_target::find_memory_regions): New.
7610         (_initialize_exec): Don't call init_exec_ops.
7611         * gdbcore.h (exec_file_clear): Delete.
7612
7613         * corefile.c (core_target): Delete.
7614         (core_file_command): Adjust.
7615         * corelow.c (core_target): New class.
7616         (the_core_target): New.
7617         (core_close): Remove target_ops parameter.
7618         (core_close_cleanup): Adjust.
7619         (core_target::close): New.
7620         (core_open, core_detach, get_core_registers, core_files_info)
7621         (core_xfer_partial, core_thread_alive, core_read_description)
7622         (core_pid_to_str, core_thread_name, core_has_memory)
7623         (core_has_stack, core_has_registers, core_info_proc): Rework as
7624         core_target methods.
7625         (ignore, core_remove_breakpoint, init_core_ops): Delete.
7626         (_initialize_corelow): Initialize the_core_target.
7627         * gdbcore.h (core_target): Delete.
7628         (the_core_target): New.
7629
7630         * ctf.c: (ctf_target): New class.
7631         (ctf_ops): Now a ctf_target.
7632         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
7633         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
7634         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
7635         methods.
7636         (init_ctf_ops): Delete.
7637         (_initialize_ctf): Don't call it.
7638         * tracefile-tfile.c (tfile_target): New class.
7639         (tfile_ops): Now a tfile_target.
7640         (tfile_open, tfile_close, tfile_files_info)
7641         (tfile_get_tracepoint_status, tfile_trace_find)
7642         (tfile_fetch_registers, tfile_xfer_partial)
7643         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
7644         Refactor as tfile_target methods.
7645         (tfile_xfer_partial_features): Remove target_ops parameter.
7646         (init_tfile_ops): Delete.
7647         (_initialize_tracefile_tfile): Don't call it.
7648         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
7649         (tracefile_has_stack, tracefile_has_registers)
7650         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
7651         tracefile_target methods.
7652         (init_tracefile_ops): Delete.
7653         (tracefile_target::tracefile_target): New.
7654         * tracefile.h: Include "target.h".
7655         (tracefile_target): New class.
7656         (init_tracefile_ops): Delete.
7657
7658         * spu-multiarch.c (spu_multiarch_target): New class.
7659         (spu_ops): Now a spu_multiarch_target.
7660         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
7661         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
7662         (spu_search_memory, spu_mourn_inferior): Refactor as
7663         spu_multiarch_target methods.
7664         (init_spu_ops): Delete.
7665         (_initialize_spu_multiarch): Remove references to init_spu_ops,
7666         complete_target_initialization.
7667
7668         * ravenscar-thread.c (ravenscar_thread_target): New class.
7669         (ravenscar_ops): Now a ravenscar_thread_target.
7670         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
7671         (ravenscar_thread_alive, ravenscar_pid_to_str)
7672         (ravenscar_fetch_registers, ravenscar_store_registers)
7673         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
7674         (ravenscar_stopped_by_hw_breakpoint)
7675         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
7676         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
7677         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
7678         methods.
7679         (init_ravenscar_thread_ops): Delete.
7680         (_initialize_ravenscar): Remove references to
7681         init_ravenscar_thread_ops and complete_target_initialization.
7682
7683         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
7684         (bsd_uthread_target): New class.
7685         (bsd_uthread_ops): Now a bsd_uthread_target.
7686         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
7687         (bsd_uthread_close, bsd_uthread_mourn_inferior)
7688         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
7689         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
7690         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
7691         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
7692         (bsd_uthread_target): Delete function.
7693         (_initialize_bsd_uthread): Remove reference to
7694         complete_target_initialization.
7695
7696         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
7697         (target_bfd): ... this new class.
7698         (target_bfd_xfer_partial, target_bfd_get_section_table)
7699         (target_bfd_close): Refactor as target_bfd methods.
7700         (target_bfd::~target_bfd): New.
7701         (target_bfd_reopen): Adjust.
7702         (target_bfd::close): New.
7703
7704         * record-btrace.c (record_btrace_target): New class.
7705         (record_btrace_ops): Now a record_btrace_target.
7706         (record_btrace_open, record_btrace_stop_recording)
7707         (record_btrace_disconnect, record_btrace_close)
7708         (record_btrace_async, record_btrace_info)
7709         (record_btrace_insn_history, record_btrace_insn_history_range)
7710         (record_btrace_insn_history_from, record_btrace_call_history)
7711         (record_btrace_call_history_range)
7712         (record_btrace_call_history_from, record_btrace_record_method)
7713         (record_btrace_is_replaying, record_btrace_will_replay)
7714         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
7715         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
7716         (record_btrace_store_registers, record_btrace_prepare_to_store)
7717         (record_btrace_to_get_unwinder)
7718         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
7719         (record_btrace_commit_resume, record_btrace_wait)
7720         (record_btrace_stop, record_btrace_can_execute_reverse)
7721         (record_btrace_stopped_by_sw_breakpoint)
7722         (record_btrace_supports_stopped_by_sw_breakpoint)
7723         (record_btrace_stopped_by_hw_breakpoint)
7724         (record_btrace_supports_stopped_by_hw_breakpoint)
7725         (record_btrace_update_thread_list, record_btrace_thread_alive)
7726         (record_btrace_goto_begin, record_btrace_goto_end)
7727         (record_btrace_goto, record_btrace_stop_replaying_all)
7728         (record_btrace_execution_direction)
7729         (record_btrace_prepare_to_generate_core)
7730         (record_btrace_done_generating_core): Refactor as
7731         record_btrace_target methods.
7732         (init_record_btrace_ops): Delete.
7733         (_initialize_record_btrace): Remove reference to
7734         init_record_btrace_ops.
7735         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
7736         the execution_direction global.
7737         (record_full_base_target, record_full_target)
7738         (record_full_core_target): New classes.
7739         (record_full_ops): Now a record_full_target.
7740         (record_full_core_ops): Now a record_full_core_target.
7741         (record_full_target::detach, record_full_target::disconnect)
7742         (record_full_core_target::disconnect)
7743         (record_full_target::mourn_inferior, record_full_target::kill):
7744         New.
7745         (record_full_open, record_full_close, record_full_async): Refactor
7746         as methods of the record_full_base_target class.
7747         (record_full_resume, record_full_commit_resume): Refactor
7748         as methods of the record_full_target class.
7749         (record_full_wait, record_full_stopped_by_watchpoint)
7750         (record_full_stopped_data_address)
7751         (record_full_stopped_by_sw_breakpoint)
7752         (record_full_supports_stopped_by_sw_breakpoint)
7753         (record_full_stopped_by_hw_breakpoint)
7754         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
7755         methods of the record_full_base_target class.
7756         (record_full_store_registers, record_full_xfer_partial)
7757         (record_full_insert_breakpoint, record_full_remove_breakpoint):
7758         Refactor as methods of the record_full_target class.
7759         (record_full_can_execute_reverse, record_full_get_bookmark)
7760         (record_full_goto_bookmark, record_full_execution_direction)
7761         (record_full_record_method, record_full_info, record_full_delete)
7762         (record_full_is_replaying, record_full_will_replay)
7763         (record_full_goto_begin, record_full_goto_end, record_full_goto)
7764         (record_full_stop_replaying): Refactor as methods of the
7765         record_full_base_target class.
7766         (record_full_core_resume, record_full_core_kill)
7767         (record_full_core_fetch_registers)
7768         (record_full_core_prepare_to_store)
7769         (record_full_core_store_registers, record_full_core_xfer_partial)
7770         (record_full_core_insert_breakpoint)
7771         (record_full_core_remove_breakpoint)
7772         (record_full_core_has_execution): Refactor
7773         as methods of the record_full_core_target class.
7774         (record_full_base_target::supports_delete_record): New.
7775         (init_record_full_ops): Delete.
7776         (init_record_full_core_ops): Delete.
7777         (record_full_save): Refactor as method of the
7778         record_full_base_target class.
7779         (_initialize_record_full): Remove references to
7780         init_record_full_ops and init_record_full_core_ops.
7781
7782         * remote.c (remote_target, extended_remote_target): New classes.
7783         (remote_ops): Now a remote_target.
7784         (extended_remote_ops): Now an extended_remote_target.
7785         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
7786         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
7787         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
7788         (remote_pass_signals, remote_set_syscall_catchpoint)
7789         (remote_program_signals, )
7790         (remote_thread_always_alive): Remove target_ops parameter.
7791         (remote_thread_alive, remote_thread_name)
7792         (remote_update_thread_list, remote_threads_extra_info)
7793         (remote_static_tracepoint_marker_at)
7794         (remote_static_tracepoint_markers_by_strid)
7795         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
7796         (remote_open): Refactor as methods of remote_target.
7797         (extended_remote_open, extended_remote_detach)
7798         (extended_remote_attach, extended_remote_post_attach):
7799         (extended_remote_supports_disable_randomization)
7800         (extended_remote_create_inferior): : Refactor as method of
7801         extended_remote_target.
7802         (remote_set_permissions, remote_open_1, remote_detach)
7803         (remote_follow_fork, remote_follow_exec, remote_disconnect)
7804         (remote_resume, remote_commit_resume, remote_stop)
7805         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
7806         (remote_terminal_ours, remote_wait, remote_fetch_registers)
7807         (remote_prepare_to_store, remote_store_registers)
7808         (remote_flash_erase, remote_flash_done, remote_files_info)
7809         (remote_kill, remote_mourn, remote_insert_breakpoint)
7810         (remote_remove_breakpoint, remote_insert_watchpoint)
7811         (remote_watchpoint_addr_within_range)
7812         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
7813         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
7814         (remote_supports_stopped_by_sw_breakpoint)
7815         (remote_stopped_by_hw_breakpoint)
7816         (remote_supports_stopped_by_hw_breakpoint)
7817         (remote_stopped_by_watchpoint, remote_stopped_data_address)
7818         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
7819         (remote_verify_memory): Refactor as methods of remote_target.
7820         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
7821         parameter.
7822         (remote_xfer_partial, remote_get_memory_xfer_limit)
7823         (remote_search_memory, remote_rcmd, remote_memory_map)
7824         (remote_pid_to_str, remote_get_thread_local_address)
7825         (remote_get_tib_address, remote_read_description): Refactor as
7826         methods of remote_target.
7827         (remote_target::fileio_open, remote_target::fileio_pwrite)
7828         (remote_target::fileio_pread, remote_target::fileio_close): New.
7829         (remote_hostio_readlink, remote_hostio_fstat)
7830         (remote_filesystem_is_local, remote_can_execute_reverse)
7831         (remote_supports_non_stop, remote_supports_disable_randomization)
7832         (remote_supports_multi_process, remote_supports_cond_breakpoints)
7833         (remote_supports_enable_disable_tracepoint)
7834         (remote_supports_string_tracing)
7835         (remote_can_run_breakpoint_commands, remote_trace_init)
7836         (remote_download_tracepoint, remote_can_download_tracepoint)
7837         (remote_download_trace_state_variable, remote_enable_tracepoint)
7838         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
7839         (remote_trace_start, remote_get_trace_status)
7840         (remote_get_tracepoint_status, remote_trace_stop)
7841         (remote_trace_find, remote_get_trace_state_variable_value)
7842         (remote_save_trace_data, remote_get_raw_trace_data)
7843         (remote_set_disconnected_tracing, remote_core_of_thread)
7844         (remote_set_circular_trace_buffer, remote_traceframe_info)
7845         (remote_get_min_fast_tracepoint_insn_len)
7846         (remote_set_trace_buffer_size, remote_set_trace_notes)
7847         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
7848         (remote_disable_btrace, remote_teardown_btrace)
7849         (remote_read_btrace, remote_btrace_conf)
7850         (remote_augmented_libraries_svr4_read, remote_load)
7851         (remote_pid_to_exec_file, remote_can_do_single_step)
7852         (remote_execution_direction, remote_thread_handle_to_thread_info):
7853         Refactor as methods of remote_target.
7854         (init_remote_ops, init_extended_remote_ops): Delete.
7855         (remote_can_async_p, remote_is_async_p, remote_async)
7856         (remote_thread_events, remote_upload_tracepoints)
7857         (remote_upload_trace_state_variables): Refactor as methods of
7858         remote_target.
7859         (_initialize_remote): Remove references to init_remote_ops and
7860         init_extended_remote_ops.
7861
7862         * remote-sim.c (gdbsim_target): New class.
7863         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
7864         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
7865         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
7866         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
7867         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
7868         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
7869         Refactor as methods of gdbsim_target.
7870         (gdbsim_ops): Now a gdbsim_target.
7871         (init_gdbsim_ops): Delete.
7872         (gdbsim_cntrl_c): Adjust.
7873         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
7874
7875         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
7876         (the_amd64_linux_nat_target): New.
7877         (amd64_linux_fetch_inferior_registers)
7878         (amd64_linux_store_inferior_registers): Refactor as methods of
7879         amd64_linux_nat_target.
7880         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
7881         * i386-linux-nat.c: Don't include "linux-nat.h".
7882         (i386_linux_nat_target): New class.
7883         (the_i386_linux_nat_target): New.
7884         (i386_linux_fetch_inferior_registers)
7885         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
7886         as methods of i386_linux_nat_target.
7887         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
7888         * inf-child.c (inf_child_ops): Delete.
7889         (inf_child_fetch_inferior_registers)
7890         (inf_child_store_inferior_registers): Delete.
7891         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
7892         methods of inf_child_target.
7893         (inf_child_target::supports_terminal_ours)
7894         (inf_child_target::terminal_init)
7895         (inf_child_target::terminal_inferior)
7896         (inf_child_target::terminal_ours_for_output)
7897         (inf_child_target::terminal_ours, inf_child_target::interrupt)
7898         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
7899         New.
7900         (inf_child_open, inf_child_disconnect, inf_child_close)
7901         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
7902         (inf_child_post_startup_inferior, inf_child_can_run)
7903         (inf_child_pid_to_exec_file): Refactor as methods of
7904         inf_child_target.
7905         (inf_child_follow_fork): Delete.
7906         (inf_child_target::can_create_inferior)
7907         (inf_child_target::can_attach): New.
7908         (inf_child_target::has_all_memory, inf_child_target::has_memory)
7909         (inf_child_target::has_stack, inf_child_target::has_registers)
7910         (inf_child_target::has_execution): New.
7911         (inf_child_fileio_open, inf_child_fileio_pwrite)
7912         (inf_child_fileio_pread, inf_child_fileio_fstat)
7913         (inf_child_fileio_close, inf_child_fileio_unlink)
7914         (inf_child_fileio_readlink, inf_child_use_agent)
7915         (inf_child_can_use_agent): Refactor as methods of
7916         inf_child_target.
7917         (return_zero, inf_child_target): Delete.
7918         (inf_child_target::inf_child_target): New.
7919         * inf-child.h: Include "target.h".
7920         (inf_child_target): Delete function prototype.
7921         (inf_child_target): New class.
7922         (inf_child_open_target, inf_child_mourn_inferior)
7923         (inf_child_maybe_unpush_target): Delete.
7924         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
7925         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
7926         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
7927         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
7928         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
7929         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
7930         (inf_ptrace_wait, inf_ptrace_xfer_partial)
7931         (inf_ptrace_thread_alive, inf_ptrace_files_info)
7932         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
7933         methods of inf_ptrace_target.
7934         (inf_ptrace_target): Delete function.
7935         * inf-ptrace.h: Include "inf-child.h".
7936         (inf_ptrace_target): Delete function declaration.
7937         (inf_ptrace_target): New class.
7938         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
7939         * linux-nat.c (linux_target): New.
7940         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
7941         (linux_nat_target::~linux_nat_target): New.
7942         (linux_child_post_attach, linux_child_post_startup_inferior)
7943         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
7944         (linux_child_remove_fork_catchpoint)
7945         (linux_child_insert_vfork_catchpoint)
7946         (linux_child_remove_vfork_catchpoint)
7947         (linux_child_insert_exec_catchpoint)
7948         (linux_child_remove_exec_catchpoint)
7949         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
7950         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
7951         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
7952         (linux_nat_stopped_data_address)
7953         (linux_nat_stopped_by_sw_breakpoint)
7954         (linux_nat_supports_stopped_by_sw_breakpoint)
7955         (linux_nat_stopped_by_hw_breakpoint)
7956         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
7957         (linux_nat_kill, linux_nat_mourn_inferior)
7958         (linux_nat_xfer_partial, linux_nat_thread_alive)
7959         (linux_nat_update_thread_list, linux_nat_pid_to_str)
7960         (linux_nat_thread_name, linux_child_pid_to_exec_file)
7961         (linux_child_static_tracepoint_markers_by_strid)
7962         (linux_nat_is_async_p, linux_nat_can_async_p)
7963         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
7964         (linux_nat_supports_multi_process)
7965         (linux_nat_supports_disable_randomization, linux_nat_async)
7966         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
7967         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
7968         (linux_nat_fileio_open, linux_nat_fileio_readlink)
7969         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
7970         methods of linux_nat_target.
7971         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
7972         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
7973         parameter.
7974         (check_stopped_by_watchpoint): Adjust.
7975         (linux_xfer_partial): Delete.
7976         (linux_target_install_ops, linux_target, linux_nat_add_target):
7977         Delete.
7978         (linux_nat_target::linux_nat_target): New.
7979         * linux-nat.h: Include "inf-ptrace.h".
7980         (linux_nat_target): New.
7981         (linux_target, linux_target_install_ops, linux_nat_add_target):
7982         Delete function declarations.
7983         (linux_target): Declare global.
7984         * linux-thread-db.c (thread_db_target): New.
7985         (thread_db_target::thread_db_target): New.
7986         (thread_db_ops): Delete.
7987         (the_thread_db_target): New.
7988         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
7989         (thread_db_update_thread_list, thread_db_pid_to_str)
7990         (thread_db_extra_thread_info)
7991         (thread_db_thread_handle_to_thread_info)
7992         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
7993         (thread_db_resume): Refactor as methods of thread_db_target.
7994         (init_thread_db_ops): Delete.
7995         (_initialize_thread_db): Remove reference to init_thread_db_ops.
7996         * x86-linux-nat.c: Don't include "linux-nat.h".
7997         (super_post_startup_inferior): Delete.
7998         (x86_linux_nat_target::~x86_linux_nat_target): New.
7999         (x86_linux_child_post_startup_inferior)
8000         (x86_linux_read_description, x86_linux_enable_btrace)
8001         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
8002         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
8003         methods of x86_linux_nat_target.
8004         (x86_linux_create_target): Delete.  Bits folded ...
8005         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
8006         pointer.
8007         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
8008         (x86_linux_nat_target): New class.
8009         (x86_linux_create_target): Delete.
8010         (x86_linux_add_target): Now takes a linux_nat_target pointer.
8011         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
8012         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
8013         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
8014         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
8015         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
8016         make extern.
8017         (x86_use_watchpoints): Delete.
8018         * x86-nat.h: Include "breakpoint.h" and "target.h".
8019         (x86_use_watchpoints): Delete.
8020         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
8021         (x86_stopped_by_watchpoint, x86_stopped_data_address)
8022         (x86_insert_watchpoint, x86_remove_watchpoint)
8023         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
8024         (x86_stopped_by_hw_breakpoint): New declarations.
8025         (x86_nat_target): New template class.
8026
8027         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
8028         (the_ppc_linux_nat_target): New.
8029         (ppc_linux_fetch_inferior_registers)
8030         (ppc_linux_can_use_hw_breakpoint)
8031         (ppc_linux_region_ok_for_hw_watchpoint)
8032         (ppc_linux_ranged_break_num_registers)
8033         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
8034         (ppc_linux_insert_mask_watchpoint)
8035         (ppc_linux_remove_mask_watchpoint)
8036         (ppc_linux_can_accel_watchpoint_condition)
8037         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
8038         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
8039         (ppc_linux_watchpoint_addr_within_range)
8040         (ppc_linux_masked_watch_num_registers)
8041         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
8042         (ppc_linux_read_description): Refactor as methods of
8043         ppc_linux_nat_target.
8044         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
8045
8046         * procfs.c (procfs_xfer_partial): Delete forward declaration.
8047         (procfs_target): New class.
8048         (the_procfs_target): New.
8049         (procfs_target): Delete function.
8050         (procfs_auxv_parse, procfs_attach, procfs_detach)
8051         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
8052         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
8053         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
8054         (procfs_create_inferior, procfs_update_thread_list)
8055         (procfs_thread_alive, procfs_pid_to_str)
8056         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
8057         (procfs_stopped_data_address, procfs_insert_watchpoint)
8058         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
8059         (proc_find_memory_regions, procfs_info_proc)
8060         (procfs_make_note_section): Refactor as methods of procfs_target.
8061         (_initialize_procfs): Adjust.
8062         * sol-thread.c (sol_thread_target): New class.
8063         (sol_thread_ops): Now a sol_thread_target.
8064         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
8065         (sol_thread_fetch_registers, sol_thread_store_registers)
8066         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
8067         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
8068         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
8069         (init_sol_thread_ops): Delete.
8070         (_initialize_sol_thread): Adjust.  Remove references to
8071         init_sol_thread_ops and complete_target_initialization.
8072
8073         * windows-nat.c (windows_nat_target): New class.
8074         (windows_fetch_inferior_registers)
8075         (windows_store_inferior_registers, windows_resume, windows_wait)
8076         (windows_attach, windows_detach, windows_pid_to_exec_file)
8077         (windows_files_info, windows_create_inferior)
8078         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
8079         (windows_close, windows_pid_to_str, windows_xfer_partial)
8080         (windows_get_tib_address, windows_get_ada_task_ptid)
8081         (windows_thread_name, windows_thread_alive): Refactor as
8082         windows_nat_target methods.
8083         (do_initial_windows_stuff): Adjust.
8084         (windows_target): Delete function.
8085         (_initialize_windows_nat): Adjust.
8086
8087         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
8088         (darwin_mourn_inferior, darwin_kill_inferior)
8089         (darwin_create_inferior, darwin_attach, darwin_detach)
8090         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
8091         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
8092         (darwin_supports_multi_process): Refactor as darwin_nat_target
8093         methods.
8094         (darwin_resume_to, darwin_files_info): Delete.
8095         (_initialize_darwin_inferior): Rename to ...
8096         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
8097         * darwin-nat.h: Include "inf-child.h".
8098         (darwin_nat_target): New class.
8099         (darwin_complete_target): Delete.
8100         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
8101         (darwin_target): New.
8102         (i386_darwin_fetch_inferior_registers)
8103         (i386_darwin_store_inferior_registers): Refactor as methods of
8104         darwin_nat_target.
8105         (darwin_complete_target): Delete, with ...
8106         (_initialize_i386_darwin_nat): ... bits factored out here.
8107
8108         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
8109         (the_alpha_linux_nat_target): New.
8110         (alpha_linux_register_u_offset): Refactor as
8111         alpha_linux_nat_target method.
8112         (_initialize_alpha_linux_nat): Adjust.
8113         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
8114         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
8115         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
8116         methods of linux_nat_trad_target.
8117         (linux_trad_target): Delete.
8118         * linux-nat-trad.h (linux_trad_target): Delete function.
8119         (linux_nat_trad_target): New class.
8120         * mips-linux-nat.c (mips_linux_nat_target): New class.
8121         (super_fetch_registers, super_store_registers, super_close):
8122         Delete.
8123         (the_mips_linux_nat_target): New.
8124         (mips64_linux_regsets_fetch_registers)
8125         (mips64_linux_regsets_store_registers)
8126         (mips64_linux_fetch_registers, mips64_linux_store_registers)
8127         (mips_linux_register_u_offset, mips_linux_read_description)
8128         (mips_linux_can_use_hw_breakpoint)
8129         (mips_linux_stopped_by_watchpoint)
8130         (mips_linux_stopped_data_address)
8131         (mips_linux_region_ok_for_hw_watchpoint)
8132         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
8133         (mips_linux_close): Refactor as methods of mips_linux_nat.
8134         (_initialize_mips_linux_nat): Adjust to C++ification.
8135
8136         * aix-thread.c (aix_thread_target): New class.
8137         (aix_thread_ops): Now an aix_thread_target.
8138         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
8139         (aix_thread_fetch_registers, aix_thread_store_registers)
8140         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
8141         (aix_thread_thread_alive, aix_thread_pid_to_str)
8142         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
8143         Refactor as methods of aix_thread_target.
8144         (init_aix_thread_ops): Delete.
8145         (_initialize_aix_thread): Remove references to init_aix_thread_ops
8146         and complete_target_initialization.
8147         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
8148         (rs6000_nat_target): New class.
8149         (the_rs6000_nat_target): New.
8150         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
8151         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
8152         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
8153         (super_create_inferior): Delete.
8154         (_initialize_rs6000_nat): Adjust to C++ification.
8155
8156         * arm-linux-nat.c (arm_linux_nat_target): New class.
8157         (the_arm_linux_nat_target): New.
8158         (arm_linux_fetch_inferior_registers)
8159         (arm_linux_store_inferior_registers, arm_linux_read_description)
8160         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
8161         (arm_linux_remove_hw_breakpoint)
8162         (arm_linux_region_ok_for_hw_watchpoint)
8163         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
8164         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
8165         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
8166         arm_linux_nat_target.
8167         (_initialize_arm_linux_nat): Adjust to C++ification.
8168
8169         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
8170         (the_aarch64_linux_nat_target): New.
8171         (aarch64_linux_fetch_inferior_registers)
8172         (aarch64_linux_store_inferior_registers)
8173         (aarch64_linux_child_post_startup_inferior)
8174         (aarch64_linux_read_description)
8175         (aarch64_linux_can_use_hw_breakpoint)
8176         (aarch64_linux_insert_hw_breakpoint)
8177         (aarch64_linux_remove_hw_breakpoint)
8178         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
8179         (aarch64_linux_region_ok_for_hw_watchpoint)
8180         (aarch64_linux_stopped_data_address)
8181         (aarch64_linux_stopped_by_watchpoint)
8182         (aarch64_linux_watchpoint_addr_within_range)
8183         (aarch64_linux_can_do_single_step): Refactor as methods of
8184         aarch64_linux_nat_target.
8185         (super_post_startup_inferior): Delete.
8186         (_initialize_aarch64_linux_nat): Adjust to C++ification.
8187
8188         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
8189         (the_hppa_linux_nat_target): New.
8190         (hppa_linux_fetch_inferior_registers)
8191         (hppa_linux_store_inferior_registers): Refactor as methods of
8192         hppa_linux_nat_target.
8193         (_initialize_hppa_linux_nat): Adjust to C++ification.
8194
8195         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
8196         (the_ia64_linux_nat_target): New.
8197         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
8198         (ia64_linux_stopped_data_address)
8199         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
8200         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
8201         ia64_linux_nat_target methods.
8202         (super_xfer_partial): Delete.
8203         (_initialize_ia64_linux_nat): Adjust to C++ification.
8204
8205         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
8206         (the_m32r_linux_nat_target): New.
8207         (m32r_linux_fetch_inferior_registers)
8208         (m32r_linux_store_inferior_registers): Refactor as
8209         m32r_linux_nat_target methods.
8210         (_initialize_m32r_linux_nat): Adjust to C++ification.
8211
8212         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
8213         (the_m68k_linux_nat_target): New.
8214         (m68k_linux_fetch_inferior_registers)
8215         (m68k_linux_store_inferior_registers): Refactor as
8216         m68k_linux_nat_target methods.
8217         (_initialize_m68k_linux_nat): Adjust to C++ification.
8218
8219         * s390-linux-nat.c (s390_linux_nat_target): New class.
8220         (the_s390_linux_nat_target): New.
8221         (s390_linux_fetch_inferior_registers)
8222         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
8223         (s390_insert_watchpoint, s390_remove_watchpoint)
8224         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
8225         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
8226         (s390_auxv_parse, s390_read_description): Refactor as methods of
8227         s390_linux_nat_target.
8228         (_initialize_s390_nat): Adjust to C++ification.
8229
8230         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
8231         (the_sparc_linux_nat_target): New.
8232         (_initialize_sparc_linux_nat): Adjust to C++ification.
8233         * sparc-nat.c (sparc_fetch_inferior_registers)
8234         (sparc_store_inferior_registers): Remove target_ops parameter.
8235         * sparc-nat.h (sparc_fetch_inferior_registers)
8236         (sparc_store_inferior_registers): Remove target_ops parameter.
8237         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
8238         (the_sparc64_linux_nat_target): New.
8239         (_initialize_sparc64_linux_nat): Adjust to C++ification.
8240
8241         * spu-linux-nat.c (spu_linux_nat_target): New class.
8242         (the_spu_linux_nat_target): New.
8243         (spu_child_post_startup_inferior, spu_child_post_attach)
8244         (spu_child_wait, spu_fetch_inferior_registers)
8245         (spu_store_inferior_registers, spu_xfer_partial)
8246         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
8247         methods.
8248         (_initialize_spu_nat): Adjust to C++ification.
8249
8250         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
8251         (the_tilegx_linux_nat_target): New.
8252         (fetch_inferior_registers, store_inferior_registers):
8253         Refactor as methods.
8254         (_initialize_tile_linux_nat): Adjust to C++ification.
8255
8256         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
8257         (the_xtensa_linux_nat_target): New.
8258         (xtensa_linux_fetch_inferior_registers)
8259         (xtensa_linux_store_inferior_registers): Refactor as
8260         xtensa_linux_nat_target methods.
8261         (_initialize_xtensa_linux_nat): Adjust to C++ification.
8262
8263         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
8264         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
8265         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
8266         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
8267         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
8268         (fbsd_stopped_by_sw_breakpoint)
8269         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
8270         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
8271         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
8272         (fbsd_post_startup_inferior, fbsd_post_attach)
8273         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
8274         (fbsd_set_syscall_catchpoint)
8275         (super_xfer_partial, super_resume, super_wait)
8276         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
8277         (fbsd_handle_debug_trap): Remove target_ops parameter.
8278         (fbsd_nat_add_target): Delete.
8279         * fbsd-nat.h: Include "inf-ptrace.h".
8280         (fbsd_nat_add_target): Delete.
8281         (USE_SIGTRAP_SIGINFO): Define.
8282         (fbsd_nat_target): New class.
8283
8284         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
8285         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
8286         (amd64bsd_target): Delete.
8287         * amd64-bsd-nat.h: New file.
8288         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
8289         "x86-bsd-nat.h".
8290         (amd64_fbsd_nat_target): New class.
8291         (the_amd64_fbsd_nat_target): New.
8292         (amd64fbsd_read_description): Refactor as method of
8293         amd64_fbsd_nat_target.
8294         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
8295         (_initialize_amd64fbsd_nat): Adjust to C++ification.
8296         * amd64-nat.h (amd64bsd_target): Delete function declaration.
8297         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
8298         (i386bsd_store_inferior_registers): Remove target_ops parameter.
8299         (i386bsd_target): Delete.
8300         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
8301         (i386bsd_fetch_inferior_registers)
8302         (i386bsd_store_inferior_registers): Declare.
8303         (i386_bsd_nat_target): New class.
8304         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
8305         (the_i386_fbsd_nat_target): New.
8306         (i386fbsd_resume, i386fbsd_read_description): Refactor as
8307         i386_fbsd_nat_target methods.
8308         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
8309         (_initialize_i386fbsd_nat): Adjust to C++ification.
8310         * x86-bsd-nat.c (super_mourn_inferior): Delete.
8311         (x86bsd_mourn_inferior, x86bsd_target): Delete.
8312         (_initialize_x86_bsd_nat): Adjust to C++ification.
8313         * x86-bsd-nat.h: Include "x86-nat.h".
8314         (x86bsd_target): Delete declaration.
8315         (x86bsd_nat_target): New class.
8316
8317         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
8318         (the_aarch64_fbsd_nat_target): New.
8319         (aarch64_fbsd_fetch_inferior_registers)
8320         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
8321         aarch64_fbsd_nat_target.
8322         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
8323         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
8324         (the_alpha_bsd_nat_target): New.
8325         (alphabsd_fetch_inferior_registers)
8326         (alphabsd_store_inferior_registers): Refactor as
8327         alpha_bsd_nat_target methods.
8328         (_initialize_alphabsd_nat): Refactor as methods of
8329         alpha_bsd_nat_target.
8330         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
8331         (the_amd64_nbsd_nat_target): New.
8332         (_initialize_amd64nbsd_nat): Adjust to C++ification.
8333         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
8334         (the_amd64_obsd_nat_target): New.
8335         (_initialize_amd64obsd_nat): Adjust to C++ification.
8336         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
8337         (the_arm_fbsd_nat_target): New.
8338         (arm_fbsd_fetch_inferior_registers)
8339         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
8340         (_initialize_arm_fbsd_nat): Refactor as methods of
8341         arm_fbsd_nat_target.
8342         (_initialize_arm_fbsd_nat): Adjust to C++ification.
8343         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
8344         (the_arm_netbsd_nat_target): New.
8345         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
8346         arm_netbsd_nat_target.
8347         (_initialize_arm_netbsd_nat): Adjust to C++ification.
8348         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
8349         (the_hppa_nbsd_nat_target): New.
8350         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
8351         hppa_nbsd_nat_target methods.
8352         (_initialize_hppanbsd_nat): Adjust to C++ification.
8353         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
8354         (the_hppa_obsd_nat_target): New.
8355         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
8356         methods of hppa_obsd_nat_target.
8357         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
8358         add_target.
8359         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
8360         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
8361         add_target.
8362         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
8363         (_initialize_i386obsd_nat): Use add_target.
8364         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
8365         (the_m68k_bsd_nat_target): New.
8366         (m68kbsd_fetch_inferior_registers)
8367         (m68kbsd_store_inferior_registers): Refactor as methods of
8368         m68k_bsd_nat_target.
8369         (_initialize_m68kbsd_nat): Adjust to C++ification.
8370         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
8371         (the_mips_fbsd_nat_target): New.
8372         (mips_fbsd_fetch_inferior_registers)
8373         (mips_fbsd_store_inferior_registers): Refactor as methods of
8374         mips_fbsd_nat_target.
8375         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
8376         add_target.
8377         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
8378         (the_mips_nbsd_nat_target): New.
8379         (mipsnbsd_fetch_inferior_registers)
8380         (mipsnbsd_store_inferior_registers): Refactor as methods of
8381         mips_nbsd_nat_target.
8382         (_initialize_mipsnbsd_nat): Adjust to C++ification.
8383         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
8384         (the_mips64_obsd_nat_target): New.
8385         (mips64obsd_fetch_inferior_registers)
8386         (mips64obsd_store_inferior_registers): Refactor as methods of
8387         mips64_obsd_nat_target.
8388         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
8389         add_target.
8390         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
8391         nbsd_nat_target.
8392         * nbsd-nat.h: Include "inf-ptrace.h".
8393         (nbsd_nat_target): New class.
8394         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
8395         (obsd_wait): Refactor as methods of obsd_nat_target.
8396         (obsd_add_target): Delete.
8397         * obsd-nat.h: Include "inf-ptrace.h".
8398         (obsd_nat_target): New class.
8399         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
8400         (the_ppc_fbsd_nat_target): New.
8401         (ppcfbsd_fetch_inferior_registers)
8402         (ppcfbsd_store_inferior_registers): Refactor as methods of
8403         ppc_fbsd_nat_target.
8404         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
8405         add_target.
8406         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
8407         (the_ppc_nbsd_nat_target): New.
8408         (ppcnbsd_fetch_inferior_registers)
8409         (ppcnbsd_store_inferior_registers): Refactor as methods of
8410         ppc_nbsd_nat_target.
8411         (_initialize_ppcnbsd_nat): Adjust to C++ification.
8412         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
8413         (the_ppc_obsd_nat_target): New.
8414         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
8415         methods of ppc_obsd_nat_target.
8416         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
8417         add_target.
8418         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
8419         (the_sh_nbsd_nat_target): New.
8420         (shnbsd_fetch_inferior_registers)
8421         (shnbsd_store_inferior_registers): Refactor as methods of
8422         sh_nbsd_nat_target.
8423         (_initialize_shnbsd_nat): Adjust to C++ification.
8424         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
8425         (inf_ptrace_xfer_partial): Delete.
8426         (sparc_xfer_partial, sparc_target): Delete.
8427         * sparc-nat.h (sparc_fetch_inferior_registers)
8428         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
8429         (sparc_target): Delete function declaration.
8430         (sparc_target): New template class.
8431         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
8432         (_initialize_sparcnbsd_nat): Adjust to C++ification.
8433         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
8434         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
8435         add_target.
8436         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
8437         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
8438         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
8439         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
8440         add_target.
8441         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
8442         (the_vax_bsd_nat_target): New.
8443         (vaxbsd_fetch_inferior_registers)
8444         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
8445         methods.
8446         (_initialize_vaxbsd_nat): Adjust to C++ification.
8447
8448         * bsd-kvm.c (bsd_kvm_target): New class.
8449         (bsd_kvm_ops): Now a bsd_kvm_target.
8450         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
8451         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
8452         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
8453         bsd_kvm_target.
8454         (bsd_kvm_return_one): Delete.
8455         (bsd_kvm_add_target): Adjust to C++ification.
8456
8457         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
8458         (nto_procfs_target_procfs): New classes.
8459         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
8460         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
8461         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
8462         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
8463         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
8464         (procfs_remove_hw_breakpoint, procfs_resume)
8465         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
8466         (procfs_kill_inferior, procfs_store_registers)
8467         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
8468         as methods of nto_procfs_target.
8469         (nto_procfs_ops): Now an nto_procfs_target_procfs.
8470         (nto_native_ops): Delete.
8471         (procfs_open, procfs_native_open): Delete.
8472         (nto_native_ops): Now an nto_procfs_target_native.
8473         (init_procfs_targets): Adjust to C++ification.
8474         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
8475         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
8476         Refactor as methods of nto_procfs_target.
8477
8478         * go32-nat.c (go32_nat_target): New class.
8479         (the_go32_nat_target): New.
8480         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
8481         (go32_store_registers, go32_xfer_partial, go32_files_info)
8482         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
8483         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
8484         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
8485         (go32_pid_to_str): Refactor as methods of go32_nat_target.
8486         (go32_target): Delete.
8487         (_initialize_go32_nat): Adjust to C++ification.
8488
8489         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
8490         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
8491         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
8492         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
8493         gnu_nat_target.
8494         (gnu_target): Delete.
8495         * gnu-nat.h (gnu_target): Delete.
8496         (gnu_nat_target): New class.
8497         * i386-gnu-nat.c (gnu_base_target): New.
8498         (i386_gnu_nat_target): New class.
8499         (the_i386_gnu_nat_target): New.
8500         (_initialize_i386gnu_nat): Adjust to C++ification.
8501
8502 2018-05-02  Pedro Alves  <palves@redhat.com>
8503
8504         * bfd-target.c (target_bfd_xclose): Rename to ...
8505         (target_bfd_close): ... this.
8506         (target_bfd_reopen): Adjust.
8507         * target.c (target_close): Remove references to to_xclose.
8508         * target.h (target_ops::to_xclose): Delete.
8509         (target_ops::to_close): Update comments.
8510
8511 2018-05-02  Pedro Alves  <palves@redhat.com>
8512
8513         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
8514         "linux-nat.h".
8515         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
8516         * inf-ptrace.c (inf_ptrace_register_u_offset)
8517         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
8518         (inf_ptrace_store_register, inf_ptrace_store_registers)
8519         (inf_ptrace_trad_target): Move to ...
8520         * linux-nat-trad.c: ... this new file.
8521         * linux-nat-trad.h: New file.
8522         * linux-nat.c (linux_target_install_ops): Make extern.
8523         (linux_trad_target): Delete.
8524         * linux-nat.h (linux_trad_target): Delete declaration.
8525         (linux_target_install_ops): Declare.
8526         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
8527         "linux-nat.h".
8528
8529 2018-05-02  Pedro Alves  <palves@redhat.com>
8530
8531         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
8532         procfs_target/add_target here.
8533         * procfs.c (procfs_target): Make static.
8534         (_initialize_procfs): Call add_target here.
8535         * procfs.h (struct target_ops): Remove forward declaration.
8536         (procfs_target): Remove declaration.
8537         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
8538
8539 2018-05-02  Pedro Alves  <palves@redhat.com>
8540
8541         * procfs.c (procfs_stopped_by_watchpoint)
8542         (procfs_insert_watchpoint, procfs_remove_watchpoint)
8543         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
8544         Forward declare.
8545         (procfs_use_watchpoints): Delete, move contents...
8546         (procfs_target): ... here.
8547         * procfs.h (procfs_use_watchpoints): Delete declaration.
8548         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
8549         procfs_use_watchpoints.
8550         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
8551         procfs_use_watchpoints.
8552
8553 2018-05-02  Tom Tromey  <tom@tromey.com>
8554
8555         PR python/20084:
8556         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
8557         and var_zuinteger_unlimited.
8558         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
8559         and PARAM_ZUINTEGER_UNLIMITED.
8560         (set_parameter_value): Handle var_zuinteger and
8561         var_zuinteger_unlimited.
8562         (add_setshow_generic): Likewise.
8563         (parmpy_init): Likewise.
8564
8565 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
8566
8567         PR rust/23124
8568         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
8569         pointer is not null before dereferencing it.
8570
8571 2018-04-30  Tom Tromey  <tom@tromey.com>
8572
8573         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
8574         is_mi_like_p.
8575
8576 2018-04-30  Tom Tromey  <tom@tromey.com>
8577
8578         * breakpoint.c (mention): Remove use of is_mi_like_p.
8579         (print_mention_ranged_breakpoint): Likewise.
8580         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
8581         of is_mi_like_p.
8582
8583 2018-04-30  Tom Tromey  <tom@tromey.com>
8584
8585         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
8586
8587 2018-04-30  Tom Tromey  <tom@tromey.com>
8588
8589         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
8590         (info_spu_event_command): Remove some uses of is_mi_like_p.
8591
8592 2018-04-30  Tom Tromey  <tom@tromey.com>
8593
8594         * python/py-framefilter.c (py_print_single_arg)
8595         (enumerate_locals, py_print_args, py_print_frame): Remove some
8596         uses of is_mi_like_p.
8597
8598 2018-04-30  Tom Tromey  <tom@tromey.com>
8599
8600         * ui-out.c: Update.
8601         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
8602         * ui-out.h (ui_out::is_mi_like_p): Now const.
8603         (ui_out::do_is_mi_like_p): Now const.
8604         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
8605
8606 2018-04-30  Tom Tromey  <tom@tromey.com>
8607
8608         * varobj.c (varobj_set_visualizer): Use new_reference.
8609         * python/python.c (gdbpy_decode_line): Use new_reference.
8610         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
8611         new_reference.
8612
8613 2018-04-30  Tom Tromey  <tom@tromey.com>
8614
8615         * varobj.c (install_new_value): Use new_reference.
8616         * value.h (value_incref): Return void.  Swap intro comment with
8617         value_decref.
8618         * value.c (set_value_parent): Use new_reference.
8619         (value_incref): Return void.  Update intro comment.
8620         (release_value): Use new_reference.
8621         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
8622
8623 2018-04-30  Tom Tromey  <tom@tromey.com>
8624
8625         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
8626         * gdb_bfd.h (new_bfd_ref): Remove.
8627         (gdb_bfd_open): Update comment.
8628         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
8629         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
8630         (gdb_bfd_fdopenr): Use new_reference.
8631         * exec.c (exec_file_attach): Use new_reference.
8632
8633 2018-04-30  Tom Tromey  <tom@tromey.com>
8634
8635         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
8636         method.
8637
8638 2018-04-30  Tom Tromey  <tom@tromey.com>
8639
8640         * jit.c (jit_read_code_entry): Use type_align.
8641         * i386-tdep.c (i386_gdbarch_init): Don't call
8642         set_gdbarch_long_long_align_bit.
8643         * gdbarch.sh: Remove long_long_align_bit.
8644         * gdbarch.c, gdbarch.h: Rebuild.
8645         * arc-tdep.c (arc_type_align): New function.
8646         (arc_gdbarch_init): Use arc_type_align.  Don't call
8647         set_gdbarch_long_long_align_bit.
8648
8649 2018-04-30  Tom Tromey  <tom@tromey.com>
8650
8651         * rust-lang.c (rust_type_alignment): Remove.
8652         (rust_composite_type): Use type_align.
8653
8654 2018-04-30  Tom Tromey  <tom@tromey.com>
8655
8656         * NEWS: Mention Type.align.
8657         * python/py-type.c (typy_get_alignof): New function.
8658         (type_object_getset): Add "alignof".
8659
8660 2018-04-30  Tom Tromey  <tom@tromey.com>
8661
8662         PR exp/17095:
8663         * NEWS: Update.
8664         * std-operator.def (UNOP_ALIGNOF): New operator.
8665         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
8666         New.
8667         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
8668         * c-lang.c (c_op_print_tab): Add alignof.
8669         * c-exp.y (ALIGNOF): New token.
8670         (exp): Add "ALIGNOF" production.
8671         (ident_tokens): Add _Alignof and alignof.
8672
8673 2018-04-30  Tom Tromey  <tom@tromey.com>
8674
8675         * i386-tdep.c (i386_type_align): New function.
8676         (i386_gdbarch_init): Update.
8677         * gdbarch.sh (type_align): New method.
8678         * gdbarch.c, gdbarch.h: Rebuild.
8679         * arch-utils.h (default_type_align): Declare.
8680         * arch-utils.c (default_type_align): New function.
8681         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
8682         (struct type) <align_log2>: New field.
8683         <instance_flags>: Now a bitfield.
8684         (TYPE_RAW_ALIGN): New macro.
8685         (type_align, type_raw_align, set_type_align): Declare.
8686         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
8687         functions.
8688         * dwarf2read.c (quirk_rust_enum): Set type alignment.
8689         (get_alignment, maybe_set_alignment): New functions.
8690         (read_structure_type, read_enumeration_type, read_array_type)
8691         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
8692         (read_subrange_type, read_base_type): Set type alignment.
8693
8694 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
8695
8696         * dwarf2read.c (read_index_from_section): Use bool.
8697
8698 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
8699
8700         PR gdb/22950
8701         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
8702         with #ifdef.
8703
8704 2018-04-29  John Reiser  <jreiser@BitWagon.com>
8705
8706         PR build/22873
8707         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
8708         last step, and do it atomically.
8709
8710 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
8711
8712         * compile/compile-c-types.c (convert_int, convert_float):
8713         Update for C FE v1.
8714
8715 2018-04-27  Tom Tromey  <tom@tromey.com>
8716
8717         PR rust/22545:
8718         * rust-lang.c (rust_inclusive_range_type_p): New function.
8719         (rust_range): Handle inclusive ranges.
8720         (rust_compute_range): Likewise.
8721         * rust-exp.y (struct rust_op) <inclusive>: New field.
8722         (DOTDOTEQ): New constant.
8723         (range_expr): Add "..=" productions.
8724         (operator_tokens): Add "..=" token.
8725         (ast_range): Add "inclusive" parameter.
8726         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
8727         ranges.
8728         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
8729         bounds values.
8730         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
8731         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
8732         Update comments.
8733         * expprint.c (print_subexp_standard): Handle new bounds values.
8734         (dump_subexp_body_standard): Likewise.
8735
8736 2018-04-27  Tom Tromey  <tom@tromey.com>
8737
8738         * configure: Rebuild.
8739         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
8740         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
8741         "OVERRIDE".
8742         (class symbol_needs_eval_context): Likewise.
8743         * dwarf2read.c (mock_mapped_index::symbol_name_count)
8744         (mock_mapped_index::symbol_name_at): Use "override".  Remove
8745         "virtual".
8746         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
8747         "override".
8748         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
8749         * aarch64-tdep.c (instruction_reader::read): Use "override".
8750         (instruction_reader_test::read): Likewise.
8751         * arm-tdep.c (instruction_reader::read): Use "override".
8752         (instruction_reader_thumb::read): Likewise.
8753
8754 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
8755
8756         PR remote/9665
8757         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
8758         instead of remote_send.
8759         (remote_send): Remove.
8760
8761 2018-04-26  Pedro Alves  <palves@redhat.com>
8762
8763         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
8764         find_function_start_sal instead of find_pc_line.
8765
8766 2018-04-26  Pedro Alves  <palves@redhat.com>
8767
8768         * breakpoint.c (set_breakpoint_location_function): Handle
8769         mst_data_gnu_ifunc.
8770         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
8771         * elfread.c (elf_symtab_read): Give data symbols with
8772         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
8773         (elf_rel_plt_read): Update comment.
8774         * linespec.c (convert_linespec_to_sals): Handle
8775         mst_data_gnu_ifunc.
8776         (minsym_found): Handle mst_data_gnu_ifunc.
8777         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
8778         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
8779         * parse.c (find_minsym_type_and_address): Handle
8780         mst_data_gnu_ifunc.
8781         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
8782         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
8783         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
8784         comment.
8785         <mst_data_gnu_ifunc>: New enumerator.
8786
8787 2018-04-26  Pedro Alves  <palves@redhat.com>
8788
8789         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
8790         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
8791         'want_trampoline' parameter by a lookup_msym_prefer parameter.
8792         Handle it.
8793         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
8794         (lookup_minimal_symbol_by_pc): Adjust.
8795         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
8796         (lookup_solib_trampoline_symbol_by_pc): Adjust.
8797         * minsyms.h (lookup_msym_prefer): New enum.
8798         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
8799         parameter by a lookup_msym_prefer parameter.
8800
8801 2018-04-26  Pedro Alves  <palves@redhat.com>
8802
8803         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
8804         ends in "@plt" instead of looking at the symbol's section.
8805
8806 2018-04-26  Pedro Alves  <palves@redhat.com>
8807
8808         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
8809         all references.
8810         (find_pc_partial_function_gnu_ifunc): Rename to ...
8811         (find_pc_partial_function): ... this, and remove references to
8812         'is_gnu_ifunc_p'.
8813         (find_pc_partial_function): Delete old implementation.
8814         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
8815
8816 2018-04-26  Pedro Alves  <palves@redhat.com>
8817
8818         * linespec.c (struct bound_minimal_symbol_search_key): New.
8819         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
8820         skip first line if we found a GNU ifunc minimal symbol by name.
8821         (compare_msymbols): Change parameters to work with a destructured
8822         lhs minsym.
8823         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
8824         functions.
8825
8826 2018-04-26  Pedro Alves  <palves@redhat.com>
8827
8828         * breakpoint.c (set_breakpoint_location_function): Don't resolve
8829         ifunc targets here.  Instead, if we have an ifunc minsym, use its
8830         address/name.
8831         (add_location_to_breakpoint): Store the minsym and the objfile in
8832         the breakpoint location.
8833         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
8834         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
8835         Record the minsym in the sal.
8836         * symtab.h (symtab_and_line) <msymbol>: New field.
8837
8838 2018-04-26  Pedro Alves  <palves@redhat.com>
8839
8840         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
8841         unless we actually resolved the ifunc.
8842
8843 2018-04-26  Pedro Alves  <palves@redhat.com>
8844
8845         * c-exp.y (variable production): Prefer ifunc minsyms over
8846         regular function symbols.
8847         * symtab.c (find_gnu_ifunc): New function.
8848         * minsyms.h (lookup_msym_prefer): New enum.
8849         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
8850         parameter by a lookup_msym_prefer parameter.
8851         * symtab.h (find_gnu_ifunc): New declaration.
8852
8853 2018-04-26  Pedro Alves  <palves@redhat.com>
8854
8855         * blockframe.c (find_gnu_ifunc_target_type): New function.
8856         (find_function_type): New.
8857         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
8858         return a value with a memory address.
8859         (eval_call): For calls to GNU ifunc functions, try to find the
8860         type of the target function from the type that the resolver
8861         returns.
8862         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
8863         symbols.
8864         * infcall.c (find_function_return_type): Delete.
8865         (find_function_addr): Add 'function_type' parameter.  For calls to
8866         GNU ifunc functions, try to find the type of the target function
8867         from the type that the resolver returns, and return it via
8868         FUNCTION_TYPE.
8869         (call_function_by_hand_dummy): Adjust to use the function type
8870         returned by find_function_addr.
8871         (find_function_addr): Add 'function_type' parameter and move
8872         description here.
8873         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
8874         declarations.
8875
8876 2018-04-26  Pedro Alves  <palves@redhat.com>
8877
8878         * c-exp.y (variable production): Skip finding an alias for ifunc
8879         symbols.
8880
8881 2018-04-26  Pedro Alves  <palves@redhat.com>
8882
8883         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
8884
8885 2018-04-25  Pedro Alves  <palves@redhat.com>
8886
8887         * infcmd.c (kill_command): Print the pid as string, not the whole
8888         thread's ptid.  Add comment.  s/has been killed/killed/ in output
8889         message.
8890         * remote.c (remote_detach_1): Print the pid as string, not the
8891         whole thread's ptid.
8892
8893 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
8894             Sergio Durigan Junior  <sergiodj@redhat.com>
8895             Pedro Alves  <palves@redhat.com>
8896
8897         * infcmd.c (kill_command): Print message when inferior has
8898         been killed.
8899         * inferior.c (print_inferior_events): Remove 'static'.  Set as
8900         '1'.
8901         (add_inferior): Improve message printed when
8902         'print_inferior_events' is on.
8903         (exit_inferior): Remove message printed when
8904         'print_inferior_events' is on.
8905         (detach_inferior): Improve message printed when
8906         'print_inferior_events' is on.
8907         (initialize_inferiors): Use 'add_inferior_silent' to set
8908         'current_inferior_'.
8909         * inferior.h (print_inferior_events): Declare here as
8910         'extern'.
8911         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
8912         '[Detaching...]' messages when 'print_inferior_events' is on.
8913         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
8914         as prefix/suffix for messages.  Remove periods.  Fix erroneous
8915         'Detaching after fork from child...', replace it by '... from
8916         parent...'.
8917         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
8918         prefix/suffix when printing 'Detaching...' messages.  Print
8919         them when 'print_inferior_events' is on.
8920         * remote.c (remote_detach_1): Print message when detaching
8921         from inferior and '!is_fork_parent'.
8922
8923 2018-04-24  Tom Tromey  <tom@tromey.com>
8924
8925         * cli-out.h: Reindent.
8926
8927 2018-04-24  Tom Tromey  <tom@tromey.com>
8928
8929         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
8930         (cli_ui_out::do_field_string): Use fputs_filtered.
8931         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
8932
8933 2018-04-23  Tom Tromey  <tom@tromey.com>
8934
8935         * guile/scm-frame.c (gdbscm_frame_read_var): Use
8936         gdb::unique_xmalloc_ptr.
8937
8938 2018-04-23  Tom Tromey  <tom@tromey.com>
8939
8940         * configure: Rebuild.
8941
8942 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
8943
8944         PR gdb/23095
8945         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
8946         prepare_for_testing.  Set normal_bp to r_debug_state if target
8947         is bsd.
8948
8949 2018-04-21  Pedro Alves  <palves@redhat.com>
8950             Rajendra SY  <rajendra.sy@gmail.com>
8951
8952         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
8953         * remote.c (extended_remote_attach): In all-stop mode, mark the
8954         thread as executing.
8955
8956 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8957
8958         * thread.c (thread_apply_all_command): Fix comment.
8959         (thread_command): Fix comment.
8960
8961 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
8962
8963         * common/tdesc.h (tdesc_create_feature): Remove xml filename
8964         parameter.
8965         * features/aarch64-core.c (create_feature_aarch64_core):
8966         Regenerate.
8967         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
8968         Likewise.
8969         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
8970         Likewise.
8971         * features/i386/32bit-avx512.c
8972         (create_feature_i386_32bit_avx512): Likewise.
8973         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
8974         Likewise.
8975         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
8976         Likewise.
8977         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
8978         Likewise.
8979         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
8980         Likewise.
8981         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
8982         Likewise.
8983         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
8984         Likewise.
8985         * features/i386/64bit-avx512.c
8986         (create_feature_i386_64bit_avx512): Likewise.
8987         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
8988         Likewise.
8989         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
8990         Likewise.
8991         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
8992         Likewise.
8993         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
8994         Likewise.
8995         * features/i386/64bit-segments.c
8996         (create_feature_i386_64bit_segments): Likewise.
8997         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
8998         Likewise.
8999         * features/i386/x32-core.c
9000         (create_feature_i386_x32_core): Likewise.
9001         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
9002         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
9003         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
9004         * target-descriptions.c: In generated code, don't pass xml
9005         filename.
9006
9007 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9008
9009         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
9010         (print_xml_feature::visit_post): Likewise.
9011         (print_xml_feature::visit): Likewise.
9012         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
9013         (print_xml_feature): Add new class.
9014         * regformats/regdat.sh: Null xmltarget on feature targets.
9015         * target-descriptions.c (struct target_desc): Add xmltarget.
9016         (maintenance_check_tdesc_xml_convert): Add unittest function.
9017         (tdesc_get_features_xml): Add function to get xml.
9018         (maintenance_check_xml_descriptions): Test xml generation.
9019         * xml-tdesc.c (string_read_description_xml): Add function.
9020         * xml-tdesc.h (string_read_description_xml): Add declaration.
9021
9022 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9023
9024         * features/Makefile: Add feature marker to targets with new style
9025         target descriptions.
9026         * regformats/aarch64.dat: Regenerate.
9027         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
9028         * regformats/i386/amd64-avx-linux.dat: Likewise.
9029         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
9030         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
9031         * regformats/i386/amd64-linux.dat: Likewise.
9032         * regformats/i386/amd64-mpx-linux.dat: Likewise.
9033         * regformats/i386/amd64.dat: Likewise.
9034         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
9035         * regformats/i386/i386-avx-linux.dat: Likewise.
9036         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
9037         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
9038         * regformats/i386/i386-linux.dat: Likewise.
9039         * regformats/i386/i386-mmx-linux.dat: Likewise.
9040         * regformats/i386/i386-mpx-linux.dat: Likewise.
9041         * regformats/i386/i386.dat: Likewise.
9042         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
9043         * regformats/i386/x32-avx-linux.dat: Likewise.
9044         * regformats/i386/x32-linux.dat: Likewise.
9045         * regformats/tic6x-c62x-linux.dat: Likewise.
9046         * regformats/tic6x-c64x-linux.dat: Likewise.
9047         * regformats/tic6x-c64xp-linux.dat: Likewise.
9048         * regformats/regdat.sh: Parse feature marker.
9049
9050 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9051
9052         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
9053         (tdesc_osabi_name): Likewise.
9054         * target-descriptions.c (tdesc_architecture_name): Add new
9055         function.
9056         (tdesc_osabi_name): Likewise.
9057
9058 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9059
9060         * common/tdesc.c (tdesc_predefined_type): Move to here.
9061         (tdesc_named_type): Likewise.
9062         (tdesc_create_vector): Likewise.
9063         (tdesc_create_struct): Likewise.
9064         (tdesc_set_struct_size): Likewise.
9065         (tdesc_create_union): Likewise.
9066         (tdesc_create_flags): Likewise.
9067         (tdesc_create_enum): Likewise.
9068         (tdesc_add_field): Likewise.
9069         (tdesc_add_typed_bitfield): Likewise.
9070         (tdesc_add_bitfield): Likewise.
9071         (tdesc_add_flag): Likewise.
9072         (tdesc_add_enum_value): Likewise.
9073         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
9074         (struct tdesc_type_vector): Likewise.
9075         (struct tdesc_type_field): Likewise.
9076         (struct tdesc_type_with_fields): Likewise.
9077         (tdesc_create_enum): Add declaration.
9078         (tdesc_add_typed_bitfield): Likewise.
9079         (tdesc_add_enum_value): Likewise.
9080         * target-descriptions.c (tdesc_type_field): Move from here.
9081         (tdesc_type_builtin): Likewise.
9082         (tdesc_type_vector): Likewise.
9083         (tdesc_type_with_fields): Likewise.
9084         (tdesc_predefined_types): Likewise.
9085         (tdesc_named_type): Likewise.
9086         (tdesc_create_vector): Likewise.
9087         (tdesc_create_struct): Likewise.
9088         (tdesc_set_struct_size): Likewise.
9089         (tdesc_create_union): Likewise.
9090         (tdesc_create_flags): Likewise.
9091         (tdesc_create_enum): Likewise.
9092         (tdesc_add_field): Likewise.
9093         (tdesc_add_typed_bitfield): Likewise.
9094         (tdesc_add_bitfield): Likewise.
9095         (tdesc_add_flag): Likewise.
9096         (tdesc_add_enum_value): Likewise.
9097         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
9098         (tdesc_add_typed_bitfield): Likewise.
9099         (tdesc_add_enum_value): Likewise.
9100
9101 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9102
9103         * common/tdesc.c (tdesc_feature::accept): Move to here.
9104         (tdesc_feature::operator==): Likewise.
9105         (tdesc_create_reg): Likewise.
9106         * common/tdesc.h (tdesc_type_kind): Likewise.
9107         (struct tdesc_type): Likewise.
9108         (struct tdesc_feature): Likewise.
9109         * regformats/regdat.sh: Create a feature.
9110         * target-descriptions.c (tdesc_type_kind): Move from here.
9111         (tdesc_type): Likewise.
9112         (tdesc_type_up): Likewise.
9113         (tdesc_feature): Likewise.
9114         (tdesc_create_reg): Likewise.
9115
9116 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9117
9118         * Makefile.in: Add arch/tdesc.c
9119         * common/tdesc.c: New file.
9120         * common/tdesc.h (tdesc_element_visitor): Move to here.
9121         (tdesc_element): Likewise.
9122         (tdesc_reg): Likewise.
9123         (tdesc_reg_up): Likewise.
9124         * regformats/regdef.h (reg): Add offset to constructors.
9125         * target-descriptions.c (tdesc_element_visitor): Move from here.
9126         (tdesc_element): Likewise.
9127         (tdesc_reg): Likewise.
9128         (tdesc_reg_up): Likewise.
9129
9130 2018-04-17  Tom Tromey  <tom@tromey.com>
9131
9132         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
9133         discriminant field.
9134
9135 2018-04-17  Tom Tromey  <tom@tromey.com>
9136
9137         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
9138
9139 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
9140
9141         * symtab.c (print_symbol_info): Skip printing filename and line
9142         number when `last' is NULL.
9143         (symtab_symbol_info): Use empty string instead of NULL for first
9144         invocation of print_symbol_info.
9145         (rbreak_command): Pass NULL to `last' parameter of
9146         print_symbol_info.
9147
9148 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
9149
9150         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
9151         instead of nullptr.
9152
9153 2018-04-16  Pedro Alves  <palves@redhat.com>
9154
9155         * MAINTAINERS (sh): Remove.
9156         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
9157         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
9158         (ALLDEPFILES): Remove sh64-tdep.c.
9159         * NEWS: Mentions that support for SH-5/SH64 is removed.
9160         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
9161         (sh*-*-openbsd*): Ditto.
9162         (sh64-*-elf*): Remove.
9163         (sh*): Remove.
9164         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
9165         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
9166         * sh-tdep.c: No longer include "sh64-tdep.h".
9167         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
9168         * sh64-tdep.c, sh64-tdep.h: Remove files.
9169
9170 2018-04-16  Pedro Alves  <palves@redhat.com>
9171
9172         * MAINTAINERS: Remove m88k.
9173         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
9174         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
9175         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
9176         * NEWS: Mention that support for m88k was removed.
9177         * configure.host (m88*-*-*): Remove support.
9178         * configure.nat (m88k-*-*): Remove support.
9179         * configure.tgt (m88*-*-openbsd*): Remove.
9180         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
9181
9182 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
9183
9184         * configure.tgt (x86_tobjs): New variable.
9185         (amd64_tobjs, i386_tobjs): Use it.
9186
9187 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
9188
9189         * symtab.c (print_symbol_info): Precede the symbol definition by
9190         the line number when available.
9191         * NEWS: Advertise this enhancement.
9192
9193 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9194
9195         * NEWS (New options): announce set/show record btrace cpu.
9196         * btrace.c: Include record-btrace.h.
9197         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
9198         the vendor is unknown.
9199         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
9200         Maybe overwrite the btrace configuration's cpu.
9201         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
9202         (btrace_fetch): Add cpu parameter.  Update callers.
9203         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
9204         Maybe overwrite the btrace configuration's cpu.  Skip enabling
9205         errata workarounds if the vendor is unknown.
9206         * python/py-record-btrace.c: Include record-btrace.h.
9207         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
9208         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
9209         * record-btrace.c (record_btrace_cpu_state_kind): New.
9210         (record_btrace_cpu): New.
9211         (set_record_btrace_cpu_cmdlist): New.
9212         (record_btrace_get_cpu): New.
9213         (require_btrace_thread, record_btrace_info)
9214         (record_btrace_resume_thread): Call record_btrace_get_cpu.
9215         (cmd_set_record_btrace_cpu_none): New.
9216         (cmd_set_record_btrace_cpu_auto): New.
9217         (cmd_set_record_btrace_cpu): New.
9218         (cmd_show_record_btrace_cpu): New.
9219         (_initialize_record_btrace): Initialize set/show record btrace cpu
9220         commands.
9221         * record-btrace.h (record_btrace_get_cpu): New.
9222
9223 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9224
9225         * record.c (set_record_command): Fix typo in message.
9226
9227 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9228
9229         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
9230
9231 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9232
9233         * infrun.c (process_event_stop_test): Call
9234         gdbarch_in_indirect_branch_thunk.
9235         * gdbarch.sh (in_indirect_branch_thunk): New.
9236         * gdbarch.c: Regenerated.
9237         * gdbarch.h: Regenerated.
9238         * x86-tdep.h: New.
9239         * x86-tdep.c: New.
9240         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
9241         (HFILES_NO_SRCDIR): Add x86-tdep.h.
9242         (ALLDEPFILES): Add x86-tdep.c.
9243         * arch-utils.h (default_in_indirect_branch_thunk): New.
9244         * arch-utils.c (default_in_indirect_branch_thunk): New.
9245         * i386-tdep: Include x86-tdep.h.
9246         (i386_in_indirect_branch_thunk): New.
9247         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
9248         function.
9249         * amd64-tdep: Include x86-tdep.h.
9250         (amd64_in_indirect_branch_thunk): New.
9251         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
9252
9253 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
9254
9255         PR gdb/23053
9256         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
9257         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
9258         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
9259         regression.
9260
9261 2018-04-12  Tom Tromey  <tom@tromey.com>
9262
9263         * rust-lang.c (rust_print_struct_def): Remove univariant code.
9264         (rust_evaluate_subexp): Likewise.
9265
9266 2018-04-12  Pedro Alves  <palves@redhat.com>
9267
9268         * procfs.c (procfs_detach): Make forward declaration's prototype
9269         match definition's protototype.
9270         (proc_get_LDT_entry): Remove stale do_cleanups call.
9271
9272 2018-04-12  Pedro Alves  <palves@redhat.com>
9273
9274         * target.h (target_ops::to_has_exited): Delete.
9275         (target_has_exited): Delete.
9276         * target-delegates.c: Regenerate.
9277
9278 2018-04-11  Pedro Alves  <palves@redhat.com>
9279
9280         * target.c (fileio_fh_t::t): Add comment.
9281         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
9282         (target_fileio_close): Handle a NULL target.
9283         (invalidate_fileio_fh): New.
9284         (target_close): Call it.
9285         * remote.c (remote_hostio_send_command): No longer check whether
9286         remote_desc is open.
9287
9288 2018-04-11  Pedro Alves  <palves@redhat.com>
9289
9290         * target.c (fileio_fh_t): Make it a named struct instead of a
9291         typedef.
9292         (fileio_fh_t::is_closed): New method.
9293         (DEF_VEC_O (fileio_fh_t)): Remove.
9294         (fileio_fhandles): Now a std::vector.
9295         (is_closed_fileio_fh): Delete.
9296         (acquire_fileio_fd): Adjust.  Rename parameters.
9297         (release_fileio_fd): Adjust.
9298         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
9299         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
9300         (target_fileio_close): Adjust.
9301
9302 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
9303
9304         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
9305         index.
9306
9307 2018-04-10  Pedro Alves  <palves@redhat.com>
9308
9309         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
9310         (scoped_finish_thread_state): New class.
9311         * infcmd.c (run_command_1): Use it instead of finish_thread_state
9312         cleanup.
9313         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
9314         (fetch_inferior_event, normal_stop): Likewise.
9315         * thread.c (finish_thread_state_cleanup): Delete.
9316
9317 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9318             Pedro Alves  <palves@redhat.com>
9319
9320         * value.c: Include "selftest.h" and "common/array-view.h".
9321         (struct range) <operator ==>: New.
9322         (test_ranges_contain): New.
9323         (check_ranges_vector): New.
9324         (test_insert_into_bit_range_vector): New.
9325         (_initialize_values): Register selftests.
9326         * common/array-view.h (operator==, operator!=): New.
9327
9328 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9329
9330         * common/gdb_vecs.h (unordered_remove): Add overload that takes
9331         an iterator.
9332         * inline-frame.c: Include <algorithm>.
9333         (struct inline_state): Add constructor.
9334         (inline_state_s): Remove.
9335         (DEF_VEC_O(inline_state_s)): Remove.
9336         (inline_states): Change type to std::vector.
9337         (find_inline_frame_state): Adjust to std::vector.
9338         (allocate_inline_frame_state): Remove.
9339         (clear_inline_frame_state): Adjust to std::vector.
9340         (skip_inline_frames): Adjust to std::vector.
9341
9342 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9343
9344         * tracepoint.h (struct trace_state_variable): Add constructor.
9345         <name>: Change type to std::string.
9346         * tracepoint.c (tsv_s): Remove.
9347         (DEF_VEC_O(tsv_s)): Remove.
9348         (tvariables): Change to std::vector.
9349         (create_trace_state_variable): Adjust to std::vector.
9350         (find_trace_state_variable): Likewise.
9351         (find_trace_state_variable_by_number): Likewise.
9352         (delete_trace_state_variable): Likewise.
9353         (trace_variable_command): Adjust to std::string.
9354         (delete_trace_variable_command): Likewise.
9355         (tvariables_info_1): Adjust to std::vector.
9356         (save_trace_state_variables): Likewise.
9357         (start_tracing): Likewise.
9358         (merge_uploaded_trace_state_variables): Adjust to std::vector
9359         and std::string.
9360         * target.h (struct target_ops)
9361         <to_download_trace_state_variable>: Pass reference to
9362         trace_state_variable.
9363         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
9364         * target-delegates.c: Re-generate.
9365         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
9366         (mi_tsv_deleted): Likewise.
9367         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
9368         * remote.c (remote_download_trace_state_variable): Change
9369         pointer to reference and adjust.
9370         * make-target-delegates (parse_argtypes): Handle references.
9371         (write_function_header): Likewise.
9372         (munge_type): Likewise.
9373
9374 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9375
9376         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9377         string_view-selftests.c.
9378         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
9379         testsuite.
9380         * unittests/basic_string_view/cons/char/1.cc: Likewise.
9381         * unittests/basic_string_view/cons/char/2.cc: Likewise.
9382         * unittests/basic_string_view/cons/char/3.cc: Likewise.
9383         * unittests/basic_string_view/element_access/char/1.cc:
9384         Likewise.
9385         * unittests/basic_string_view/element_access/char/empty.cc:
9386         Likewise.
9387         * unittests/basic_string_view/element_access/char/front_back.cc:
9388         Likewise.
9389         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
9390         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
9391         Likewise.
9392         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
9393         Likewise.
9394         * unittests/basic_string_view/modifiers/swap/char/1.cc:
9395         Likewise.
9396         * unittests/basic_string_view/operations/compare/char/1.cc:
9397         Likewise.
9398         * unittests/basic_string_view/operations/compare/char/13650.cc:
9399         Likewise.
9400         * unittests/basic_string_view/operations/copy/char/1.cc:
9401         Likewise.
9402         * unittests/basic_string_view/operations/data/char/1.cc:
9403         Likewise.
9404         * unittests/basic_string_view/operations/find/char/1.cc:
9405         Likewise.
9406         * unittests/basic_string_view/operations/find/char/2.cc:
9407         Likewise.
9408         * unittests/basic_string_view/operations/find/char/3.cc:
9409         Likewise.
9410         * unittests/basic_string_view/operations/find/char/4.cc:
9411         Likewise.
9412         * unittests/basic_string_view/operations/rfind/char/1.cc:
9413         Likewise.
9414         * unittests/basic_string_view/operations/rfind/char/2.cc:
9415         Likewise.
9416         * unittests/basic_string_view/operations/rfind/char/3.cc:
9417         Likewise.
9418         * unittests/basic_string_view/operations/substr/char/1.cc:
9419         Likewise.
9420         * unittests/basic_string_view/operators/char/2.cc: Likewise.
9421         * unittests/string_view-selftests.c: New file.
9422
9423 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9424
9425         * unittests/basic_string_view/capacity/1.cc: New file.
9426         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
9427         * unittests/basic_string_view/cons/char/1.cc: New file.
9428         * unittests/basic_string_view/cons/char/2.cc: New file.
9429         * unittests/basic_string_view/cons/char/3.cc: New file.
9430         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
9431         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
9432         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
9433         * unittests/basic_string_view/element_access/char/1.cc: New file.
9434         * unittests/basic_string_view/element_access/char/2.cc: New file.
9435         * unittests/basic_string_view/element_access/char/empty.cc: New file.
9436         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
9437         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
9438         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
9439         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
9440         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
9441         * unittests/basic_string_view/include.cc: New file.
9442         * unittests/basic_string_view/inserters/char/1.cc: New file.
9443         * unittests/basic_string_view/inserters/char/2.cc: New file.
9444         * unittests/basic_string_view/inserters/char/3.cc: New file.
9445         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
9446         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
9447         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
9448         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
9449         * unittests/basic_string_view/literals/types.cc: New file.
9450         * unittests/basic_string_view/literals/values.cc: New file.
9451         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
9452         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
9453         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
9454         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
9455         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
9456         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
9457         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
9458         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
9459         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
9460         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
9461         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
9462         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
9463         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
9464         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
9465         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
9466         * unittests/basic_string_view/operations/data/char/1.cc: New file.
9467         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
9468         * unittests/basic_string_view/operations/find/char/1.cc: New file.
9469         * unittests/basic_string_view/operations/find/char/2.cc: New file.
9470         * unittests/basic_string_view/operations/find/char/3.cc: New file.
9471         * unittests/basic_string_view/operations/find/char/4.cc: New file.
9472         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
9473         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
9474         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
9475         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
9476         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
9477         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
9478         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
9479         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
9480         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
9481         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
9482         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
9483         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
9484         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
9485         * unittests/basic_string_view/operators/char/2.cc: New file.
9486         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
9487         * unittests/basic_string_view/range_access/char/1.cc: New file.
9488         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
9489         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
9490         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
9491         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
9492         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
9493         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
9494         * unittests/basic_string_view/requirements/typedefs.cc: New file.
9495         * unittests/basic_string_view/typedefs.cc: New file.
9496         * unittests/basic_string_view/types/1.cc: New file.
9497
9498 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9499
9500         * common/gdb_string_view.h: Remove libstdc++ implementation
9501         details, adjust to gdb reality.
9502         * common/gdb_string_view.tcc: Likewise.
9503         * cli/cli-script.c (struct string_view): Remove.
9504         (user_args) <m_args>: Change element type to gdb::string_view.
9505         (user_args::insert_args): Adjust.
9506
9507 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9508
9509         * common/gdb_string_view.h: New file.
9510         * common/gdb_string_view.tcc: New file.
9511
9512 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9513
9514         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
9515         * configure: Re-generate.
9516
9517 2018-04-09  Pedro Alves  <palves@redhat.com>
9518
9519         * gdbarch.sh: Include "observable.h" instead of "observer.h".
9520         (set_target_gdbarch): Call
9521         gdb::observers::architecture_changed.notify instead of
9522         observer_notify_architecture_changed.
9523
9524 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9525
9526         * tracepoint.c (struct current_traceframe_cleanup): Remove.
9527         (do_restore_current_traceframe_cleanup): Remove.
9528         (restore_current_traceframe_cleanup_dtor): Remove.
9529         (make_cleanup_restore_current_traceframe): Remove.
9530         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
9531         New.
9532         * tracepoint.h (struct scoped_restore_current_traceframe): New.
9533         * infrun.c (fetch_inferior_event): Use
9534         scoped_restore_current_traceframe.
9535
9536 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9537
9538         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
9539         Remove.
9540         <n_allocated_type_units>: Remove.
9541         <all_type_units>: Change to std::vector.
9542         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
9543         to std::vector change.
9544         (dwarf2_per_objfile::get_cutu): Likewise.
9545         (dwarf2_per_objfile::get_tu): Likewise.
9546         (create_signatured_type_table_from_index): Likewise.
9547         (create_signatured_type_table_from_debug_names): Likewise.
9548         (dw2_symtab_iter_next): Likewise.
9549         (dw2_print_stats): Likewise.
9550         (dw2_expand_all_symtabs): Likewise.
9551         (dw2_expand_marked_cus): Likewise.
9552         (dw2_debug_names_iterator::next): Likewise.
9553         (dwarf2_initialize_objfile): Likewise.
9554         (add_signatured_type_cu_to_table): Likewise.
9555         (create_all_type_units): Likewise.
9556         (add_type_unit): Likewise.
9557         (struct tu_abbrev_offset): Add constructor.
9558         (build_type_psymtabs_1): Adjust to std::vector change.
9559         (print_tu_stats): Likewise.
9560         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
9561         (write_debug_names): Likewise.
9562
9563 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9564
9565         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
9566         Make an std::vector.
9567         <n_comp_units>: Remove.
9568         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
9569         to std::vector change.
9570         (dwarf2_per_objfile::get_cutu): Likewise.
9571         (dwarf2_per_objfile::get_cu): Likewise.
9572         (create_cus_from_index): Likewise.
9573         (create_addrmap_from_index): Likewise.
9574         (create_addrmap_from_aranges): Likewise.
9575         (dwarf2_read_index): Likewise.
9576         (dw2_find_last_source_symtab): Likewise.
9577         (dw2_map_symtabs_matching_filename): Likewise.
9578         (dw2_symtab_iter_next): Likewise.
9579         (dw2_print_stats): Likewise.
9580         (dw2_expand_all_symtabs): Likewise.
9581         (dw2_expand_symtabs_with_fullname): Likewise.
9582         (dw2_expand_marked_cus): Likewise.
9583         (dw2_map_symbol_filenames): Likewise.
9584         (create_cus_from_debug_names): Likewise.
9585         (dwarf2_read_debug_names): Likewise.
9586         (dw2_debug_names_iterator::next): Likewise.
9587         (dwarf2_initialize_objfile): Likewise.
9588         (set_partial_user): Likewise.
9589         (dwarf2_build_psymtabs_hard): Likewise.
9590         (read_comp_units_from_section): Remove arguments, adjust to
9591         std::vector change.
9592         (create_all_comp_units): Adjust to std::vector and
9593         read_comp_units_from_section changes.
9594         (dwarf2_find_containing_comp_unit): Adjust to std::vector
9595         change.
9596         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
9597         (psyms_seen_size): Likewise.
9598         (write_gdbindex): Likewise.
9599         (write_debug_names): Likewise.
9600
9601 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9602
9603         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
9604         with dwarf2_per_objfile.
9605         (create_cus_from_index): Likewise.
9606         (create_signatured_type_table_from_index): Likewise.
9607         (dwarf2_read_index): Likewise.
9608         (dwarf2_initialize_objfile): Likewise.
9609         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
9610         per_cu rather than get_dwarf2_per_objfile.
9611
9612 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9613
9614         * dwarf2read.h (struct signatured_type): Forward declare.
9615         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
9616         New methods.
9617         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
9618         (dw2_get_cutu): ...this.
9619         (dwarf2_per_objfile::get_cu): Rename from...
9620         (dw2_get_cu): ...this.
9621         (dwarf2_per_objfile::get_tu): New.
9622         (create_addrmap_from_index): Adjust.
9623         (create_addrmap_from_aranges): Adjust.
9624         (dw2_find_last_source_symtab): Adjust.
9625         (dw2_map_symtabs_matching_filename): Adjust.
9626         (dw2_symtab_iter_next): Adjust.
9627         (dw2_print_stats): Adjust.
9628         (dw2_expand_all_symtabs): Adjust.
9629         (dw2_expand_symtabs_with_fullname): Adjust.
9630         (dw2_expand_marked_cus): Adjust.
9631         (dw_expand_symtabs_matching_file_matcher): Adjust.
9632         (dw2_map_symbol_filenames): Adjust.
9633         (dw2_debug_names_iterator::next): Adjust.
9634         (dwarf2_initialize_objfile): Adjust.
9635         (set_partial_user): Adjust.
9636         (dwarf2_build_psymtabs_hard): Adjust.
9637
9638 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9639
9640         * dwarf2read.c (create_signatured_type_table_from_debug_names):
9641         Remove unused variables.
9642         (dw2_map_symtabs_matching_filename): Likewise.
9643         (dwarf2_record_block_ranges): Likewise.
9644         (dwarf2_read_addr_index): Likewise.
9645         (follow_die_offset): Likewise.
9646
9647 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9648
9649         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
9650         to symbol_file_add_main.
9651
9652 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9653
9654         PR mi/22299
9655         * mi/mi-console.c (do_fputc_async_safe): New.
9656         (mi_console_file::write_async_safe): New.
9657         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
9658         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
9659         New.
9660         * ui-file.c (ui_file::putstrn): Adjust call to
9661         fputstrn_unfiltered.
9662         * utils.c (printchar): Replace do_fputs and do_fprintf
9663         parameters by do_fputc.
9664         (fputstr_filtered): Adjust call to printchar.
9665         (fputstr_unfiltered): Likewise.
9666         (fputstrn_filtered): Likewise.
9667         (fputstrn_unfiltered): Add do_fputc parameter, pass to
9668         printchar.
9669         * utils.h (do_fputc_ftype): New typedef.
9670         (fputstrn_unfiltered): Add do_fputc parameter.
9671
9672 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9673
9674         * regformats/i386/i386-avx.dat: Remove.
9675
9676 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
9677
9678         PR gdb/22979
9679         * amd64-tdep.c (amd64_none_init_abi): New function.
9680         (amd64_x32_none_init_abi): New function.
9681         (_initialize_amd64_tdep): Register handlers for x86-64 and
9682         x64_32 with GDB_OSABI_NONE.
9683         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
9684         GDB_OSABI_NONE osabi.
9685
9686 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
9687
9688         PR gdb/22980
9689         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
9690         GDB_OSABI_NONE.
9691         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
9692         * osabi.c (gdb_osabi_names): Add "unknown" entry.
9693
9694 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
9695
9696         * common/byte-vector.h (char_vector): New type.
9697         * target.h (target_read_alloc): Return
9698         gdb::optional<byte_vector>.
9699         (target_read_stralloc): Return gdb::optional<char_vector>.
9700         (target_get_osdata): Return gdb::optional<char_vector>.
9701         * target.c (target_read_alloc_1): Templatize.  Replacement
9702         manual memory management with vector.
9703         (target_read_alloc): Change return type, adjust.
9704         (target_read_stralloc): Change return type, adjust.
9705         (target_get_osdata): Change return type, adjust.
9706         * auxv.c (struct auxv_info) <length>: Remove.
9707         <data>: Change type to gdb::optional<byte_vector>.
9708         (auxv_inferior_data_cleanup): Free auxv_info with delete.
9709         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
9710         (target_auxv_search): Adjust.
9711         (fprint_target_auxv): Adjust.
9712         * avr-tdep.c (avr_io_reg_read_command): Adjust.
9713         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
9714         (linux_make_corefile_notes): Adjust.
9715         * osdata.c (get_osdata): Adjust.
9716         * remote.c (remote_get_threads_with_qxfer): Adjust.
9717         (remote_memory_map): Adjust.
9718         (remote_traceframe_info): Adjust.
9719         (btrace_read_config): Adjust.
9720         (remote_read_btrace): Adjust.
9721         (remote_pid_to_exec_file): Adjust.
9722         * solib-aix.c (solib_aix_get_library_list): Adjust.
9723         * solib-dsbt.c (decode_loadmap): Don't free buf.
9724         (dsbt_get_initial_loadmaps): Adjust.
9725         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
9726         * solib-target.c (solib_target_current_sos): Adjust.
9727         * tracepoint.c (sdata_make_value): Adjust.
9728         * xml-support.c (xinclude_start_include): Adjust.
9729         (xml_fetch_content_from_file): Adjust.
9730         * xml-support.h (xml_fetch_another): Change return type.
9731         (xml_fetch_content_from_file): Change return type.
9732         * xml-syscall.c (xml_init_syscalls_info): Adjust.
9733         * xml-tdesc.c (file_read_description_xml): Adjust.
9734         (fetch_available_features_from_target): Change return type.
9735         (target_fetch_description_xml): Adjust.
9736         (target_read_description_xml): Adjust.
9737
9738 2018-04-06  Tom Tromey  <tom@tromey.com>
9739
9740         * value.c (~value): Update.
9741         (struct value) <contents>: Now unique_xmalloc_ptr.
9742         (value_contents_bits_eq, allocate_value_contents)
9743         (value_contents_raw, value_contents_all_raw)
9744         (value_contents_for_printing, value_contents_for_printing_const)
9745         (set_value_enclosing_type): Update.
9746
9747 2018-04-06  Tom Tromey  <tom@tromey.com>
9748
9749         * value.c (range_s): Remove typedef, VEC.
9750         (struct range): Add operator<.
9751         (range_lessthan): Remove.
9752         (ranges_contain): Change type.
9753         (~value): Update.
9754         (struct value) <unavailable, optimized_out>: Now std::vector.
9755         (value_entirely_available)
9756         (value_entirely_covered_by_range_vector)
9757         (value_entirely_unavailable, value_entirely_optimized_out):
9758         Update.
9759         (insert_into_bit_range_vector): Change argument type.
9760         (find_first_range_overlap): Likewise.
9761         (struct ranges_and_idx, value_contents_bits_eq)
9762         (require_not_optimized_out, require_available): Update.
9763         (ranges_copy_adjusted): Change argument types.
9764         (value_optimized_out, value_copy, value_fetch_lazy): Update.
9765
9766 2018-04-06  Tom Tromey  <tom@tromey.com>
9767
9768         * value.c (~value): Update.
9769         (struct value) <parent>: Now a value_ref_ptr.
9770         (value_parent, set_value_parent, value_address, value_copy):
9771         Update.
9772
9773 2018-04-06  Tom Tromey  <tom@tromey.com>
9774
9775         * value.c (struct value): Add constructor, destructor, and member
9776         initializers.
9777         (allocate_value_lazy, value_decref): Update.
9778
9779 2018-04-06  Tom Tromey  <tom@tromey.com>
9780
9781         * value.c (struct value) <released, next>: Remove.
9782         (all_values): Now a std::vector.
9783         (allocate_value_lazy): Update.
9784         (value_next): Remove.
9785         (value_mark, value_free_to_mark, release_value)
9786         (value_release_to_mark): Update.
9787
9788 2018-04-06  Tom Tromey  <tom@tromey.com>
9789
9790         * value.h (fetch_subexp_value, value_release_to_mark): Update.
9791         (free_value_chain): Remove.
9792         * value.c (free_value_chain): Remove.
9793         (value_release_to_mark): Return a std::vector.
9794         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
9795         std::vector.
9796         (check_condition): Update.
9797         * eval.c (fetch_subexp_value): Change "val_chain" to a
9798         std::vector.
9799         * breakpoint.c (update_watchpoint): Update.
9800         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
9801
9802 2018-04-06  Tom Tromey  <tom@tromey.com>
9803
9804         * value.h (free_all_values): Remove.
9805         * value.c (free_all_values): Remove.
9806
9807 2018-04-06  Tom Tromey  <tom@tromey.com>
9808
9809         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
9810         (value_history_chain, value_history_count): Remove.
9811         (value_history): New global.
9812         (record_latest_value, access_value_history, show_values)
9813         (preserve_values): Update.
9814
9815 2018-04-06  Tom Tromey  <tom@tromey.com>
9816
9817         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
9818         * varobj.c (varobj_set_display_format, varobj_set_value)
9819         (install_default_visualizer, construct_visualizer)
9820         (install_new_value, ~varobj, varobj_get_value_type)
9821         (my_value_of_variable, varobj_editable_p): Update.
9822         * c-varobj.c (c_describe_child, c_value_of_variable)
9823         (cplus_number_of_children, cplus_describe_child): Update.
9824         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
9825         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
9826         (ada_value_of_variable, ada_value_is_changeable_p): Update.
9827
9828 2018-04-06  Tom Tromey  <tom@tromey.com>
9829
9830         * printcmd.c (last_examine_address): Change type to
9831         value_ref_ptr.
9832         (do_examine, x_command): Update.
9833
9834 2018-04-06  Tom Tromey  <tom@tromey.com>
9835
9836         * value.c (release_value): Update.
9837         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
9838         (struct bpstats) <val>: Now a value_ref_ptr.
9839         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
9840         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
9841         (~watchpoint, print_it_watchpoint, watch_command_1)
9842         (invalidate_bp_value_on_memory_change): Update.
9843
9844 2018-04-06  Tom Tromey  <tom@tromey.com>
9845
9846         * varobj.c (varobj_clear_saved_item)
9847         (update_dynamic_varobj_children, install_new_value, ~varobj):
9848         Update.
9849         * value.h (value_incref): Move declaration earlier.
9850         (value_decref): Rename from value_free.
9851         (struct value_ref_policy): New.
9852         (value_ref_ptr): New typedef.
9853         (struct value_deleter): Remove.
9854         (gdb_value_up): Remove typedef.
9855         (release_value): Change return type.
9856         (release_value_or_incref): Remove.
9857         * value.c (set_value_parent): Update.
9858         (value_incref): Change return type.
9859         (value_decref): Rename from value_free.
9860         (value_free_to_mark, free_all_values, free_value_chain): Update.
9861         (release_value): Return value_ref_ptr.
9862         (release_value_or_incref): Remove.
9863         (record_latest_value, set_internalvar, clear_internalvar):
9864         Update.
9865         * stack.c (info_frame_command): Don't call value_free.
9866         * python/py-value.c (valpy_dealloc, valpy_new)
9867         (value_to_value_object): Update.
9868         * printcmd.c (do_examine): Update.
9869         * opencl-lang.c (lval_func_free_closure): Update.
9870         * mi/mi-main.c (register_changed_p): Don't call value_free.
9871         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
9872         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
9873         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
9874         value_free.
9875         * guile/scm-value.c (vlscm_free_value_smob)
9876         (vlscm_scm_from_value): Update.
9877         * frame.c (frame_register_unwind, frame_unwind_register_signed)
9878         (frame_unwind_register_unsigned, get_frame_register_bytes)
9879         (put_frame_register_bytes): Don't call value_free.
9880         * findvar.c (address_from_register): Don't call value_free.
9881         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
9882         * dwarf2loc.c (entry_data_value_free_closure)
9883         (value_of_dwarf_reg_entry, free_pieced_value_closure)
9884         (dwarf2_evaluate_loc_desc_full): Update.
9885         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
9886         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
9887         (~watchpoint, watch_command_1)
9888         (invalidate_bp_value_on_memory_change): Update.
9889         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
9890
9891 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
9892
9893         PR gdb/23022
9894         * warning.m4: Add -Wno-error=deprecated-register.
9895         * configure: Re-generate.
9896
9897 2018-04-05  Tom Tromey  <tom@tromey.com>
9898
9899         * linespec.h: Remove include of "vec.h".
9900
9901 2018-04-05  Tom Tromey  <tom@tromey.com>
9902
9903         * linespec.c (typep): Remove typedef.
9904         (find_methods, find_superclass_methods): Take a std::vector.
9905         (find_method): Use std::vector.
9906
9907 2018-04-05  Tom Tromey  <tom@tromey.com>
9908
9909         * utils.c (compare_strings): Remove.
9910         * utils.h (compare_strings): Remove.
9911         * objc-lang.h (find_imps): Update.
9912         * objc-lang.c (find_methods): Take a std::vector.
9913         (uniquify_strings, find_imps): Likewise.
9914         * linespec.c (find_methods): Take a std::vector.
9915         (decode_objc): Use std::vector.
9916         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
9917         a std::vector.
9918         (find_method, find_function_symbols): Use std::vector.
9919
9920 2018-04-05  Tom Tromey  <tom@tromey.com>
9921
9922         * completer.c (completion_tracker::completion_tracker): Remove
9923         cast.
9924         (completion_tracker::discard_completions): Likewise.
9925         * breakpoint.c (ambiguous_names_p): Remove cast.
9926         * ada-lang.c (_initialize_ada_language): Remove cast.
9927         * utils.h (streq): Update.
9928         (streq_hash): Add new declaration.
9929         * utils.c (streq): Return bool.
9930         (streq_hash): New function.
9931
9932 2018-04-05  Tom Tromey  <tom@tromey.com>
9933
9934         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
9935         Remove a string copy.
9936
9937 2018-04-05  Tom Tromey  <tom@tromey.com>
9938
9939         * linespec.c (filter_results): Use std::vector.
9940         (decode_line_2, decode_line_full): Update.
9941
9942 2018-04-05  Tom Tromey  <tom@tromey.com>
9943
9944         * linespec.c (canonical_to_fullform): Return std::string.
9945         (filter_results): Update.
9946         (struct decode_line_2_item): Add constructor.
9947         <fullform, displayform>: Now std::string.
9948         (decode_line_2_compare_items): Now a std::sort comparator.
9949         (decode_line_2): Update.
9950
9951 2018-04-05  Tom Tromey  <tom@tromey.com>
9952
9953         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
9954         (unexpected_linespec_error): Update.
9955         (linespec_parse_basic, parse_linespec): Update.
9956
9957 2018-04-05  Tom Tromey  <tom@tromey.com>
9958
9959         * linespec.c (linespec_parse_basic): Reindent.
9960
9961 2018-04-05  Tom Tromey  <tom@tromey.com>
9962
9963         * minsyms.h (iterate_over_minimal_symbols): Update.
9964         * minsyms.c (iterate_over_minimal_symbols): Take a
9965         gdb::function_view.
9966         * linespec.c (struct collect_minsyms): Remove.
9967         (compare_msyms): Now a std::sort comparator.
9968         (add_minsym): Add parameters.
9969         (search_minsyms_for_name): Update.  Use std::vector.
9970
9971 2018-04-03  Tom Tromey  <tom@tromey.com>
9972
9973         * mipsread.c (read_alphacoff_dynamic_symtab): Use
9974         gdb::byte_vector.
9975
9976 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
9977
9978         * MAINTAINERS (Write After Approval): Add Weimin Pan.
9979
9980 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
9981
9982         PR gdb/16959
9983         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
9984         printing static type.
9985
9986 2018-04-01  Tom Tromey  <tom@tromey.com>
9987
9988         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
9989         (rs6000_xfer_shared_libraries): Update.
9990
9991 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
9992
9993         * common/gdb_vecs.h (char_ptr): Remove.
9994         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
9995
9996 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
9997
9998         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
9999         with std::vector.
10000         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
10001
10002 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
10003
10004         * tracepoint.h (struct uploaded_tp): Initialize fields.
10005         <actions, step_actions, cmd_strings>: Change type to
10006         std::vector<char *>.
10007         * tracepoint.c (get_uploaded_tp): Allocate with new.
10008         (free_uploaded_tps): Free with delete.
10009         (parse_tracepoint_definition): Adjust to std::vector change.
10010         * breakpoint.c (read_uploaded_action): Likewise.
10011         (create_tracepoint_from_upload): Likewise.
10012         * ctf.c (ctf_write_uploaded_tp): Likewise.
10013         (SET_ARRAY_FIELD): Likewise.
10014         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
10015
10016 2018-03-30  Tom Tromey  <tom@tromey.com>
10017
10018         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
10019         std::unique_ptr.
10020         (svr4_keep_data_in_core): Update.
10021         (svr4_read_so_list): Update.
10022
10023 2018-03-30  Tom Tromey  <tom@tromey.com>
10024
10025         * windows-nat.c (handle_output_debug_string, handle_exception):
10026         Update.
10027         * target.h (target_read_string): Update.
10028         * target.c (target_read_string): Change "string" to
10029         unique_xmalloc_ptr.
10030         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
10031         Update.
10032         * solib-frv.c (frv_current_sos): Update.
10033         * solib-dsbt.c (dsbt_current_sos): Update.
10034         * solib-darwin.c (darwin_current_sos): Update.
10035         * linux-thread-db.c (inferior_has_bug): Update.
10036         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
10037         Update.  Remove alloca.
10038         * ada-lang.c (ada_main_name): Update.
10039
10040 2018-03-30  Tom Tromey  <tom@tromey.com>
10041
10042         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
10043         (struct dwo_file_deleter): New.
10044         (dwo_file_up): New typedef.
10045         (open_and_init_dwo_file): Use dwo_file_up.
10046         (free_dwo_file_cleanup): Remove.
10047
10048 2018-03-30  Tom Tromey  <tom@tromey.com>
10049
10050         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
10051         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
10052
10053 2018-03-30  Tom Tromey  <tom@tromey.com>
10054
10055         * dwarf2read.c (class free_cached_comp_units): New class.
10056         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
10057         (free_cached_comp_units): Remove function.
10058
10059 2018-03-30  Tom Tromey  <tom@tromey.com>
10060
10061         * utils.h (make_cleanup_unpush_target): Remove.
10062         * inf-ptrace.c (struct target_unpusher): New.
10063         (target_unpush_up) New typedef.
10064         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
10065         target_unpush_up.
10066         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
10067
10068 2018-03-27  Tom Tromey  <tom@tromey.com>
10069
10070         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
10071
10072 2018-03-27  Pedro Alves  <palves@redhat.com>
10073             Tom Tromey  <tom@tromey.com>
10074
10075         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
10076         destructor.  Now a class.
10077         (gdb_readline_wrapper_cleanup): Remove function.
10078         (gdb_readline_wrapper): Remove cleanups.
10079
10080 2018-03-27  Tom Tromey  <tom@tromey.com>
10081
10082         * typeprint.h (struct type_print_options) <local_typedefs,
10083         global_typedefs>: Remove "struct" keyword.
10084         (class typedef_hash_table): New class.
10085         (recursively_update_typedef_hash, add_template_parameters)
10086         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
10087         (find_typedef_in_hash): Don't declare.
10088         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
10089         (typedef_hash_table::recursively_update): Rename from
10090         recursively_update_typedef_hash.  Now a member.
10091         (typedef_hash_table::add_template_parameters): Rename from
10092         add_template_parameters.  Now a member.
10093         (typedef_hash_table::typedef_hash_table): Now a constructor;
10094         rename from create_typedef_hash.
10095         (typedef_hash_table::~typedef_hash_table): Now a destructor;
10096         rename from free_typedef_hash.
10097         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
10098         (do_free_global_table): Remove.
10099         (typedef_hash_table::typedef_hash_table): New constructor; renamed
10100         from copy_type_recursive.
10101         (create_global_typedef_table): Remove.
10102         (typedef_hash_table::find_global_typedef): Now a member of
10103         typedef_hash_table.
10104         (typedef_hash_table::find_typedef): Rename from
10105         find_typedef_in_hash; now a member.
10106         (whatis_exp): Update.
10107         * extension.h (struct ext_lang_type_printers): Add constructor and
10108         destructor.
10109         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
10110         declare.
10111         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
10112         Now a constructor; rename from start_ext_lang_type_printers.
10113         (ext_lang_type_printers): Now a destructor; rename from
10114         free_ext_lang_type_printers.
10115         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
10116         Update.
10117         (c_type_print_base_struct_union): Update.  Remove cleanups.
10118
10119 2018-03-27  Tom Tromey  <tom@tromey.com>
10120
10121         * dwarf-index-write.c: Include <cmath>.
10122
10123 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
10124
10125         * NEWS: Add entry describing new "set|show varsize-limit" command.
10126         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
10127         command.
10128         * printcmd.c (_initialize_printcmd): Add "set var" alias of
10129         "set variable".
10130
10131 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
10132
10133         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
10134         dwarf-index-write.c
10135         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
10136         * dwarf-index-common.c: New file.
10137         * dwarf-index-common.h: New file.
10138         * dwarf-index-write.c: New file.
10139         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
10140         (struct dwarf2_section_info): Move from here.
10141         (dwarf2_section_info_def): Likewise.
10142         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
10143         (offset_type): Likewise.
10144         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
10145         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
10146         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
10147         (byte_swap): Likewise.
10148         (MAYBE_SWAP): Likewise.
10149         (dwarf2_per_cu_ptr): Likewise.
10150         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
10151         (struct tu_stats): Likewise.
10152         (struct dwarf2_per_objfile): Likewise.
10153         (struct dwarf2_per_cu_data): Likewise.
10154         (struct signatured_type): Likewise.
10155         (sig_type_ptr): Likewise.
10156         (DEF_VEC_P (sig_type_ptr)): Likewise.
10157         (INDEX4_SUFFIX): Likewise.
10158         (INDEX5_SUFFIX): Likewise.
10159         (DEBUG_STR_SUFFIX): Likewise.
10160         (dwarf2_read_section): Make non-static.
10161         (mapped_index_string_hash): Move from here.
10162         (dwarf5_djb_hash): Likewise.
10163         (file_write): Likewise.
10164         (class data_buf): Likewise.
10165         (struct symtab_index_entry): Likewise.
10166         (struct mapped_symtab): Likewise.
10167         (find_slot): Likewise.
10168         (hash_expand): Likewise.
10169         (add_index_entry): Likewise.
10170         (uniquify_cu_indices): Likewise.
10171         (class c_str_view): Likewise.
10172         (class c_str_view_hasher): Likewise.
10173         (class vector_hasher): Likewise.
10174         (write_hash_table): Likewise.
10175         (psym_index_map): Likewise.
10176         (struct addrmap_index_data): Likewise.
10177         (add_address_entry): Likewise.
10178         (add_address_entry_worker): Likewise.
10179         (write_address_map): Likewise.
10180         (symbol_kind): Likewise.
10181         (write_psymbols): Likewise.
10182         (struct signatured_type_index_data): Likewise.
10183         (write_one_signatured_type): Likewise.
10184         (recursively_count_psymbols): Likewise.
10185         (recursively_write_psymbols): Likewise.
10186         (class debug_names): Likewise.
10187         (check_dwarf64_offsets): Likewise.
10188         (psyms_seen_size): Likewise.
10189         (write_gdbindex): Likewise.
10190         (write_debug_names): Likewise.
10191         (assert_file_size): Likewise.
10192         (write_psymtabs_to_index): Likewise.
10193         (save_gdb_index_command): Likewise.
10194         (_initialize_dwarf2_read): Don't register the "save gdb-index"
10195         command.
10196         * dwarf2read.h: New file.
10197
10198 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
10199
10200         PR gdb/22670
10201         * dwarf2read.c (dwarf2_physname): Do not return the demangled
10202         symbol name if the CU's language stores symbol names in linkage
10203         format.
10204         * language.h (struct language_defn)
10205         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
10206         all instances of this struct.
10207
10208 2018-03-26  Tom Tromey  <tom@tromey.com>
10209
10210         * stack.c (backtrace_command_1): Remove verbose code.
10211
10212 2018-03-26  Tom Tromey  <tom@tromey.com>
10213
10214         * python/py-framefilter.c (py_print_type): Don't catch
10215         exceptions.  Return void.
10216         (py_print_value): Likewise.
10217         (py_print_single_arg): Likewise.
10218         (enumerate_args): Don't catch exceptions.
10219         (py_print_args): Likewise.
10220         (py_print_frame): Likewise.
10221         (gdbpy_apply_frame_filter): Catch exceptions here.
10222
10223 2018-03-26  Tom Tromey  <tom@tromey.com>
10224
10225         * stack.c (_initialize_stack): Remove trailing newlines from help
10226         text.  Add "Usage" line to "backtrace" help.
10227
10228 2018-03-26  Tom Tromey  <tom@tromey.com>
10229
10230         PR python/16486:
10231         * python/py-framefilter.c (py_print_args): Call wrap_hint.
10232
10233 2018-03-26  Tom Tromey  <tom@tromey.com>
10234
10235         * python/py-framefilter.c (py_print_single_arg): Return
10236         EXT_LANG_BT_ERROR from catch.
10237
10238 2018-03-26  Tom Tromey  <tom@tromey.com>
10239
10240         PR backtrace/15584:
10241         * stack.c (backtrace_command_1): Move some code into no-filters
10242         "if".
10243
10244 2018-03-26  Tom Tromey  <tom@tromey.com>
10245
10246         * python/py-framefilter.c (throw_quit_or_print_exception): New
10247         function.
10248         (gdbpy_apply_frame_filter): Use it.
10249
10250 2018-03-26  Tom Tromey  <tom@tromey.com>
10251
10252         PR cli/17716:
10253         * python/py-framefilter.c (py_print_type, py_print_value)
10254         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
10255         RETURN_MASK_ERROR.
10256
10257 2018-03-26  Tom Tromey  <tom@tromey.com>
10258
10259         * python/py-framefilter.c (enumerate_args): Use
10260         gdb::unique_xmalloc_ptr.
10261
10262 2018-03-26  Tom Tromey  <tom@tromey.com>
10263
10264         * python/py-framefilter.c (py_print_frame): Return
10265         EXT_LANG_BT_OK.
10266         (gdbpy_apply_frame_filter): Update comment.
10267         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
10268         Remove.
10269         <EXT_LANG_BT_NO_FILTERS>: Change value.
10270
10271 2018-03-26  Tom Tromey  <tom@tromey.com>
10272
10273         PR backtrace/15582:
10274         * stack.c (backtrace_command): Parse "hide" argument.
10275         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
10276         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
10277         constant.
10278
10279 2018-03-26  Tom Tromey  <tom@tromey.com>
10280
10281         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
10282         add "flags".
10283         (backtrace_command): Remove "fulltrace", add "flags".
10284
10285 2018-03-26  Tom Tromey  <tom@tromey.com>
10286
10287         * stack.c (backtrace_command): Rewrite command line parsing.
10288
10289 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
10290
10291         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
10292
10293 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
10294
10295         * filename-seen-cache.h: Add include guard.
10296
10297 2018-03-26  Keith Seitz  <keiths@redhat.com>
10298
10299         * symfile.c (place_section): Remove "struct" from section_addr_info
10300         in comment.
10301         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
10302         "struct" keyword from section_addr_info.
10303
10304 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
10305
10306         * regformats/regdef.h (reg): Add constructors.
10307
10308 2018-03-25  Pedro Alves  <palves@redhat.com>
10309
10310         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
10311         if then/else bodies in var_func_name extraction.
10312
10313 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
10314
10315         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
10316         lookup_minimal_symbol() to find symbol entry.
10317         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
10318
10319 2018-03-23  Keith Seitz  <keiths@redhat.com>
10320
10321         PR c++/22968
10322         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
10323         nested type definitions for C++, too.
10324
10325 2018-03-23  Tom Tromey  <tom@tromey.com>
10326
10327         * machoread.c (struct oso_el): Add a constructor.  Don't define as
10328         a typedef.
10329         (macho_register_oso): Remove.
10330         (macho_symtab_read): Take a std::vector.
10331         (oso_el_compare_name): Now a std::sort comparator.
10332         (macho_symfile_read_all_oso): Take a std::vector.
10333         (macho_symfile_read): Use std::vector.  Remove cleanups.
10334
10335 2018-03-22  Tom Tromey  <tom@tromey.com>
10336
10337         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
10338         (record_full_goto_bookmark): Use std::string.
10339
10340 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10341
10342         PR tdep/18295
10343         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
10344         a single mask.
10345
10346 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10347
10348         * rs6000-tdep.c (store_insn_p): New function.
10349         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
10350         and cr_reg to their unshifted values. Use store_insn_p to
10351         match LR saves using either R1 or fdata->alloca_reg. Use
10352         store_insn_p to match CR saves. Set alloca_reg_offset
10353         when alloca_reg and framep are set. Remove lr_reg shift
10354         when assigning to fdata->lr_register.
10355
10356 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10357
10358         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
10359         command line args instead of emitting a warning.
10360
10361 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
10362
10363         * tracepoint.h (struct static_tracepoint_marker): Initialize
10364         fields, define default constructor, move constructor and move
10365         assignment, disable the rest.
10366         <str_id, extra>: Make std::string.
10367         (release_static_tracepoint_marker): Remove.
10368         (free_current_marker): Remove.
10369         * tracepoint.c (free_current_marker): Remove.
10370         (parse_static_tracepoint_marker_definition): Adjust to
10371         std::string, use new hex2str overload.
10372         (release_static_tracepoint_marker): Remove.
10373         (print_one_static_tracepoint_marker): Get marker by reference
10374         and adjust to std::string.
10375         (info_static_tracepoint_markers_command): Adjust to std::vector
10376         changes
10377         * target.h (static_tracepoint_marker_p): Remove typedef.
10378         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
10379         (struct target_ops) <to_static_tracepoint_marker_at>: Return
10380         bool.
10381         <to_static_tracepoint_markers_by_strid>: Return std::vector.
10382         * target-debug.h
10383         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
10384         (target_debug_print_std_vector_static_tracepoint_marker): New.
10385         (target_debug_print_struct_static_tracepoint_marker_p): Rename
10386         to...
10387         (target_debug_print_static_tracepoint_marker_p): ... this.
10388         * target-delegates.c: Re-generate.
10389         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
10390         Make std::string.
10391         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
10392         (decode_static_tracepoint_spec): Adjust to std::vector.
10393         (tracepoint_print_one_detail): Adjust to std::string.
10394         (strace_marker_decode_location): Adjust to std::string.
10395         (update_static_tracepoint): Adjust to std::string, remove call
10396         to release_static_tracepoint_marker.
10397         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
10398         Adjust to std::vector.
10399         * remote.c (remote_static_tracepoint_marker_at): Return bool.
10400         (remote_static_tracepoint_markers_by_strid): Adjust to
10401         std::vector.
10402         * common/rsp-low.h (hex2str): New overload with explicit count
10403         of bytes.
10404         * common/rsp-low.c (hex2str): New overload with explicit count
10405         of bytes.
10406         * unittests/rsp-low-selftests.c (test_hex2str): New function.
10407         (_initialize_rsp_low_selftests): Add test_hex2str test.
10408         * unittests/tracepoint-selftests.c
10409         (test_parse_static_tracepoint_marker_definition): Adjust to
10410         std::string.
10411
10412 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
10413
10414         * tracepoint.c (parse_static_tracepoint_marker_definition):
10415         Consider case where the definition is followed by more
10416         definitions.
10417         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10418         tracepoint-selftests.c.
10419         * unittests/tracepoint-selftests.c: New.
10420
10421 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10422
10423         * MAINTAINERS (Write After Approval): Add Pedro Franco de
10424         Carvalho.
10425
10426 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
10427
10428         * symtab.c (find_pc_sect_line): fixed indentation.
10429
10430 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
10431
10432         * symtab.c (find_pc_sect_line): now uses binary search.
10433
10434 2018-03-19  Tom Tromey  <tom@tromey.com>
10435
10436         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
10437         "IDENT" production.
10438
10439 2018-03-19  Pedro Alves  <palves@redhat.com>
10440             Tom Tromey  <tom@tromey.com>
10441
10442         * unittests/observable-selftests.c: New file.
10443         * common/observable.h: New file.
10444         * observable.h: New file.
10445         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
10446         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
10447         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
10448         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
10449         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
10450         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
10451         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
10452         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
10453         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
10454         python/py-breakpoint.c, python/py-finishbreakpoint.c,
10455         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
10456         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
10457         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
10458         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
10459         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
10460         tui/tui-interp.c, valops.c: Update all users.
10461         * tui/tui-hooks.c (tui_bp_created_observer)
10462         (tui_bp_deleted_observer, tui_bp_modified_observer)
10463         (tui_inferior_exit_observer, tui_before_prompt_observer)
10464         (tui_normal_stop_observer, tui_register_changed_observer):
10465         Remove.
10466         (tui_observers_token): New global.
10467         (attach_or_detach, tui_attach_detach_observers): New functions.
10468         (tui_install_hooks, tui_remove_hooks): Use
10469         tui_attach_detach_observers.
10470         * record-btrace.c (record_btrace_thread_observer): Remove.
10471         (record_btrace_thread_observer_token): New global.
10472         * observer.sh: Remove.
10473         * observer.c: Rename to observable.c.
10474         * observable.c (namespace gdb_observers): Define new objects.
10475         (observer_debug): Move into gdb_observers namespace.
10476         (struct observer, struct observer_list, xalloc_observer_list_node)
10477         (xfree_observer_list_node, generic_observer_attach)
10478         (generic_observer_detach, generic_observer_notify): Remove.
10479         (_initialize_observer): Update.
10480         Don't include observer.inc.
10481         * Makefile.in (generated_files): Remove observer.h, observer.inc.
10482         (clean mostlyclean): Likewise.
10483         (observer.h, observer.inc): Remove targets.
10484         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
10485         (COMMON_SFILES): Use observable.c, not observer.c.
10486         * .gitignore: Remove observer.h.
10487
10488 2018-03-18  Tom Tromey  <tom@tromey.com>
10489
10490         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
10491         gdb::def_vector.
10492         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
10493
10494 2018-03-17  Tom Tromey  <tom@tromey.com>
10495
10496         * auto-load.c (auto_load_objfile_script_1): Use std::string.
10497
10498 2018-03-17  Tom Tromey  <tom@tromey.com>
10499
10500         * target.c (class scoped_target_fd): New.
10501         (target_fileio_close_cleanup): Remove.
10502         (target_fileio_read_alloc_1): Use scoped_target_fd.
10503
10504 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
10505
10506         * silent-rules.mk: New.
10507         * Makefile.in: Include silent-rules.mk
10508         (srcdir, VPATH, top_srcdir): Move up.
10509         (COMPILE): Add ECHO_CXX.
10510         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
10511         (init.c): Add ECHO_INIT_C.
10512         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
10513         (version.c): Add ECHO_GEN.
10514         (printcmd.o): Add ECHO_CXX.
10515         (target-float.o): Add ECHO_CXX.
10516         (ada-exp.o): Add ECHO_CXX.
10517         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
10518         (insight$(EXEEXT)): Add ECHO_CXXLD.
10519         * gnulib/configure.ac: Add AM_SILENT_RULES.
10520         * gnulib/aclocal.m4: Re-generate.
10521         * gnulib/configure: Re-generate.
10522         * gnulib/import/Makefile.in: Re-generate.
10523
10524 2018-03-16  Tom Tromey  <tom@tromey.com>
10525
10526         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
10527         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
10528         * utils.c (do_free_section_addr_info)
10529         (make_cleanup_free_section_addr_info): Remove.
10530         * symfile.h (struct other_sections): Add constructor.
10531         (struct section_addr_info): Remove.
10532         (section_addr_info): New typedef.
10533         (struct sym_fns) <sym_offsets>: Change type of parameter.
10534         (build_section_addr_info_from_objfile)
10535         (relative_addr_info_to_section_offsets, addr_info_make_relative)
10536         (default_symfile_offsets, symbol_file_add)
10537         (symbol_file_add_from_bfd)
10538         (build_section_addr_info_from_section_table): Update.
10539         (alloc_section_addr_info, free_section_addr_info): Don't declare.
10540         * symfile.c (alloc_section_addr_info): Remove.
10541         (build_section_addr_info_from_section_table): Change return type.
10542         Update.
10543         (build_section_addr_info_from_bfd)
10544         (build_section_addr_info_from_objfile): Likewise.
10545         (free_section_addr_info): Remove.
10546         (relative_addr_info_to_section_offsets): Change type of "addrs".
10547         (addrs_section_compar): Now a std::sort comparator.
10548         (addrs_section_sort): Change return type.
10549         (addr_info_make_relative): Change type of "addrs".  Update.
10550         (default_symfile_offsets, syms_from_objfile_1)
10551         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
10552         (symbol_file_add_separate): Update.
10553         (symbol_file_add): Change type of "addrs".  Update.
10554         (add_symbol_file_command): Update.  Remove cleanups.
10555         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
10556         cleanups.
10557         * symfile-debug.c (debug_sym_offsets): Change type of "info".
10558         * solib.c (solib_read_symbols): Update.
10559         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
10560         * machoread.c (macho_symfile_offsets): Update.
10561         * jit.c (jit_bfd_try_read_symtab): Update.
10562
10563 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
10564
10565         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10566         unittests/utils-selftests.c.
10567         * unittests/utils-selftests.c: New file.
10568
10569 2018-03-14  Tom Tromey  <tom@tromey.com>
10570
10571         PR cli/14977:
10572         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
10573         for NULL.
10574
10575 2018-03-14  Tom Tromey  <tom@tromey.com>
10576
10577         PR cli/19918:
10578         * printcmd.c (printf_pointer): Allow "-" in format.
10579
10580 2018-03-14  Tom Tromey  <tom@tromey.com>
10581
10582         * printcmd.c (_initialize_printcmd): Add usage to printf.
10583
10584 2018-03-14  Yao Qi  <qiyao@sourceware.org>
10585
10586         * MAINTAINERS: Update my email address.
10587
10588 2018-03-13  Tom Tromey  <tom@tromey.com>
10589
10590         * machoread.c (macho_check_dsym): Change filenamep to a
10591         std::string*.
10592         (macho_symfile_read): Update.
10593         * symfile.c (load_command): Use std::string.
10594
10595 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
10596
10597         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
10598         to error message string.
10599         (riscv_register_name): Use xsnprintf instead of sprintf.
10600         (riscv_insn::fetch_instruction): Use gdb_assert instead of
10601         internal_error.
10602         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
10603         error.
10604         (riscv_push_dummy_call): Likewise.
10605
10606 2018-03-12  Tom Tromey  <tom@tromey.com>
10607
10608         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
10609         Use gdb::byte_vector.
10610         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
10611
10612 2018-03-12  Yao Qi  <yao.qi@linaro.org>
10613
10614         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
10615         parameter type to readable_regcache.
10616         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
10617         the declaration.
10618
10619 2018-03-11  Tom Tromey  <tom@tromey.com>
10620
10621         * dwarf2read.c (struct nextfield): Add initializers.
10622         (struct nextfnfield): Remove.
10623         (struct fnfieldlist): Add initializers.  Remove "length" and
10624         "head", use std::vector.
10625         (struct decl_field_list): Remove.
10626         (struct field_info): Add initializers.
10627         <fields, baseclasses>: Now std::vector.
10628         <nbaseclasses, nfnfields, typedef_field_list_count,
10629         nested_types_list_count>: Remove.
10630         (dwarf2_add_field, dwarf2_add_type_defn)
10631         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
10632         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
10633         (process_structure_scope): Update.
10634
10635 2018-03-11  Tom Tromey  <tom@tromey.com>
10636
10637         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
10638         for use by std::sort.
10639         (build_type_psymtabs_1): Use std::vector.
10640
10641 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
10642
10643         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
10644         and LIBMPFR in the printed configuration.
10645
10646 2018-03-08  Tom Tromey  <tom@tromey.com>
10647
10648         * source.c (get_filename_and_charpos): Use scoped_fd.
10649         * nto-procfs.c (procfs_open_1): Use scoped_fd.
10650         (procfs_pidlist): Likewise.
10651         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
10652         (iterate_over_mappings): Likewise.
10653
10654 2018-03-08  Tom Tromey  <tom@tromey.com>
10655
10656         * infcall.c (struct call_return_meta_info)
10657         <stack_temporaries_enabled>: Remove.
10658         (get_call_return_value, call_function_by_hand_dummy): Update.
10659         * thread.c (disable_thread_stack_temporaries): Remove.
10660         (enable_thread_stack_temporaries): Remove.
10661         (thread_stack_temporaries_enabled_p): Return bool.
10662         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
10663         (get_last_thread_stack_temporary): Update.
10664         * eval.c (evaluate_subexp): Update.
10665         * gdbthread.h (class enable_thread_stack_temporaries): Now a
10666         class, not a function.
10667         (value_ptr, value_vec): Remove typedefs.
10668         (class thread_info) <stack_temporaries_enabled>: Now bool.
10669         <stack_temporaries>: Now a std::vector.
10670         (thread_stack_temporaries_enabled_p)
10671         (value_in_thread_stack_temporaries): Return bool.
10672
10673 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
10674
10675         * remote.c (putpkt_binary): Fix omitted bytes reporting.
10676         (getpkt_or_notif_sane_1): Likewise.
10677
10678 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
10679
10680         * build-id.c (build_id_to_debug_bfd): Use std::string.
10681
10682 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
10683
10684         * build-id.c (find_separate_debug_file_by_buildid): Return
10685         std::string.
10686         * build-id.h (find_separate_debug_file_by_buildid): Return
10687         std::string.
10688         * coffread.c (coff_symfile_read): Adjust to std::string.
10689         * elfread.c (elf_symfile_read): Adjust to std::string.
10690         * symfile.c (separate_debug_file_exists): Change parameter to
10691         std::string.
10692         (find_separate_debug_file): Return std::string.
10693         (find_separate_debug_file_by_debuglink): Return std::string.
10694         * symfile.h (find_separate_debug_file_by_debuglink): Return
10695         std::string.
10696
10697 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
10698
10699         * common/xml-utils.c (xml_escape_text): Move code to...
10700         (xml_escape_text_append): ... this new function.
10701         * common/xml-utils.h (xml_escape_text_append): New declaration.
10702         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
10703         New function.
10704         (_initialize_xml_utils): register test_xml_escape_text_append as
10705         a selftest.
10706
10707 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
10708
10709         * defs.h: Remove MAX_REGISTER_SIZE.
10710         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
10711         asserts.
10712         * python/py-unwind.c (pyuw_sniffer): Likewise.
10713
10714 2018-03-07  Tom Tromey  <tom@tromey.com>
10715
10716         * linux-tdep.c (linux_info_proc): Update.
10717         * target.h (struct target_ops) <to_fileio_readlink>: Return
10718         optional<string>.
10719         (target_fileio_readlink): Return optional<string>.
10720         * remote.c (remote_hostio_readlink): Return optional<string>.
10721         * inf-child.c (inf_child_fileio_readlink): Return
10722         optional<string>.
10723         * target.c (target_fileio_readlink): Return optional<string>.
10724
10725 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
10726
10727         * regcache.c (cooked_read_test): Add riscv to the list of
10728         architectures that have a save_reggroup.
10729
10730 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10731
10732         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
10733         value is not a dynamic class object.
10734
10735 2018-03-06  Tom Tromey  <tom@tromey.com>
10736
10737         * rust-exp.y: Formatting fixes.
10738
10739 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10740
10741         * riscv-tdep.c (riscv_register_name): Remove target description
10742         support.
10743         (riscv_gdbarch_init): Remove target description check.
10744
10745 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10746
10747         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
10748         comment.
10749         * riscv-tdep.h: Likewise.
10750
10751 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10752
10753         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
10754         (riscv_pseudo_register_write): Delete.
10755         (riscv_gdbarch_init): Remove all use of pseudo registers.
10756
10757 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10758
10759         * record-btrace.c (btrace_print_lines): Replace cleanup
10760         parameter with RAII equivalents.
10761         (btrace_insn_history): Replace cleanup with RAII equivalents.
10762         * ui-out.h (make_cleanup_ui_out_list_begin_end,
10763         make_cleanup_ui_out_tuple_begin_end): Remove.
10764         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
10765         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
10766         make_cleanup_ui_out_list_begin_end): Remove.
10767
10768 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10769
10770         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
10771         parameter types to std::vector.  Use bool.
10772         (record_btrace_wait): Replace VEC(tp_t) with
10773         std::vector<thread_info *>.
10774         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
10775
10776 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10777
10778         * record-btrace.c (record_btrace_disable_callback): Remove.
10779         (struct scoped_btrace_disable): New.
10780         (record_btrace_open): Use scoped_btrace_disable.
10781
10782 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10783
10784         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
10785         reading values from registers.
10786
10787 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10788
10789         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
10790         where appropriate.
10791
10792 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10793
10794         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
10795         change parameter type.  Use GDB's print functions, and use
10796         core_addr_to_string where appropriate.
10797         (riscv_push_dummy_call): Use core_addr_to_string where
10798         appropriate, update call to riscv_print_arg_location, and reindent
10799         a few lines.
10800         (riscv_return_value): Update call to riscv_print_arg_location.
10801
10802 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10803             Tim Newsome <tim@sifive.com>
10804             Albert Ou <a0u@eecs.berkeley.edu>
10805             Darius Rad <darius@bluespec.com>
10806
10807         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
10808         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
10809         (ALLDEPFILES): Add riscv-tdep.c
10810         * configure.tgt: Add riscv support.
10811         * riscv-tdep.c: New file.
10812         * riscv-tdep.h: New file.
10813         * NEWS: Mention new target.
10814         * MAINTAINERS: Add entry for riscv.
10815
10816 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10817
10818         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
10819         fields within aggregates.
10820
10821 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
10822
10823         * record-btrace.c (btrace_print_lines): Change type of flags to
10824         gdb_disassembly_flags.
10825
10826 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10827
10828         * fbsd-nat.c: Include "inf-ptrace.h".
10829         (USE_SIGTRAP_SIGINFO): Conditionally define.
10830         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
10831         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
10832         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
10833         function.
10834         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
10835         Likewise.
10836         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
10837         Likewise.
10838         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
10839         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
10840         "supports_stopped_by_hw_breakpoint" target methods.
10841
10842 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10843
10844         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
10845         * fbsd-nat.c (debug_fbsd_nat): New variable.
10846         (show_fbsd_nat_debug): New function.
10847         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
10848         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
10849
10850 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10851
10852         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
10853         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
10854         prototype.
10855         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
10856         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
10857         method.
10858
10859 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10860
10861         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
10862         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
10863
10864 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10865
10866         * charset.c (struct charset_vector): New.
10867         (charsets): Change type to charset_vector.
10868         (find_charset_names): Adjust.
10869         (add_one): Adjust.
10870         (_initialize_charset): Adjust.
10871
10872 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10873
10874         * progspace.h (struct program_space) <deleted_solibs>: Change
10875         type to std::vector<std::string>.
10876         * progspace.c (clear_program_space_solib_cache): Adjust.
10877         * breakpoint.c (print_solib_event): Adjust.
10878         (check_status_catch_solib): Adjust.
10879         * solib.c (update_solib_list): Adjust.
10880         * ui-out.h (class ui_out) <field_string>: New overload.
10881         * ui-out.c (ui_out::field_string): New overload.
10882
10883 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10884
10885         * progspace.h (struct program_space): Add constructor and
10886         destructor, initialize fields.
10887         (add_program_space): Remove.
10888         * progspace.c (add_program_space): Rename to...
10889         (program_space::program_space): ... this.
10890         (release_program_space): Rename to...
10891         (program_space::~program_space): ... this.
10892         (delete_program_space): Use delete to delete program_space.
10893         (initialize_progspace): Use new to allocate program_space.
10894         * inferior.c (add_inferior_with_spaces): Likewise.
10895         (clone_inferior_command): Likewise.
10896         * infrun.c (follow_fork_inferior): Likewise.
10897         (handle_vfork_child_exec_or_exit): Likewise.
10898
10899 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10900
10901         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
10902         (delim_string_to_char_ptr_vec): Return std::vector of
10903         gdb::unique_xmalloc_ptr.
10904         (dirnames_to_char_ptr_vec_append): Take std::vector of
10905         gdb::unique_xmalloc_ptr.
10906         (dirnames_to_char_ptr_vec): Return std::vector of
10907         gdb::unique_xmalloc_ptr.
10908         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
10909         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
10910         (delim_string_to_char_ptr_vec): Return an std::vector of
10911         gdb::unique_xmalloc_ptr, adjust the code.
10912         (dirnames_to_char_ptr_vec_append): Take an std::vector of
10913         gdb::unique_xmalloc_ptr, adjust the code.
10914         (dirnames_to_char_ptr_vec): Return an std::vector of
10915         gdb::unique_xmalloc_ptr, adjust the code.
10916         * auto-load.c (auto_load_safe_path_vec): Change type to
10917         std::vector of gdb::unique_xmalloc_ptr.
10918         (auto_load_expand_dir_vars): Return an std::vector of
10919         gdb::unique_xmalloc_ptr, adjust the code.
10920         (auto_load_safe_path_vec_update): Adjust.
10921         (filename_is_in_auto_load_safe_path_vec): Adjust.
10922         (auto_load_objfile_script_1): Adjust.
10923         * build-id.c (build_id_to_debug_bfd): Adjust.
10924         * linux-thread-db.c (thread_db_load_search): Adjust.
10925         * source.c (add_path): Adjust.
10926         (openp): Adjust.
10927         * symfile.c (find_separate_debug_file): Adjust.
10928         * utils.c (do_free_char_ptr_vec): Remove.
10929         (make_cleanup_free_char_ptr_vec): Remove.
10930
10931 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
10932
10933         PR gdb/22907
10934         * common/pathstuff.c: Conditionally include "<windows.h>".
10935
10936 2018-03-01  Georg Sauthoff  <mail@georg.so>
10937
10938         PR gdb/22888
10939         * gcore.in: Quote variables and switch interpreter to bash.
10940
10941 2018-03-01  Tom Tromey  <tom@tromey.com>
10942
10943         * dwarf2read.c (alloc_discriminant_info): Fix default_index
10944         assertion.  Add assertion for discriminant_index.
10945         (quirk_rust_enum): Use correct base type name in univariant case.
10946
10947 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
10948
10949         * record.c (get_call_history_modifiers): Return a
10950         record_print_flags.
10951         (cmd_record_call_history): Adjust.
10952         * record-btrace.c (record_btrace_call_history): Adjust.
10953         (record_btrace_call_history_range): Adjust.
10954         (record_btrace_call_history_from): Adjust.
10955         * target-debug.h (target_debug_print_record_print_flags): New.
10956         * target-delegates.c: Re-generate.
10957         * target.c (target_call_history): Change flags type.
10958         (target_call_history_from): Likewise.
10959         (target_call_history_range): Likewise.
10960         * target.h (struct target_ops) <target_call_history>: Likewise.
10961         (target_call_history_from): Likewise.
10962         (target_call_history_range): Likewise.
10963
10964 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
10965             Simon Marchi  <simon.marchi@polymtl.ca>
10966
10967         * common/common-utils.c: Include "sys/stat.h".
10968         (is_regular_file): Move here from "source.c"; change return
10969         type to "bool".
10970         * common/common-utils.h (is_regular_file): New prototype.
10971         * common/pathstuff.c (contains_dir_separator): New function.
10972         * common/pathstuff.h (contains_dir_separator): New prototype.
10973         * source.c: Don't include "sys/stat.h".
10974         (is_regular_file): Move to "common/common-utils.c".
10975
10976 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
10977
10978         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
10979         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
10980         * auto-load.c: Include "common/pathstuff.h".
10981         * common/common-def.h (current_directory): Move here.
10982         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
10983         function.
10984         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
10985         prototype.
10986         * common/pathstuff.c: New file.
10987         * common/pathstuff.h: New file.
10988         * compile/compile.c: Include "common/pathstuff.h".
10989         * defs.h (current_directory): Move to "common/common-defs.h".
10990         * dwarf2read.c: Include "common/pathstuff.h".
10991         * exec.c: Likewise.
10992         * guile/scm-safe-call.c: Likewise.
10993         * linux-thread-db.c: Likewise.
10994         * main.c: Likewise.
10995         * nto-tdep.c: Likewise.
10996         * objfiles.c: Likewise.
10997         * source.c: Likewise.
10998         * symtab.c: Likewise.
10999         * utils.c: Include "common/pathstuff.h".
11000         (gdb_realpath): Move to "common/pathstuff.c".
11001         (gdb_realpath_keepfile): Likewise.
11002         (gdb_abspath): Likewise.
11003         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
11004         (gdb_realpath_keepfile): Likewise.
11005         (gdb_abspath): Likewise.
11006
11007 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
11008
11009         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
11010         wildcard process pid for super_resume for kernels with a
11011         specific bug.
11012
11013 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
11014
11015         * compile/compile.c (get_args): Add additional comments
11016         explaining function.
11017
11018 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
11019             Tom Tromey  <tom@tromey.com>
11020
11021         * target.h (memory_write_request_s): Remove typedef.  Don't define
11022         VEC.
11023         (target_write_memory_blocks): Change argument to std::vector.
11024         (struct memory_write_request): Add constructor.
11025         * target-memory.c (compare_block_starting_address): Return bool.
11026         Change argument types.
11027         (claim_memory): Change arguments to use std::vector.
11028         (split_regular_and_flash_blocks, blocks_to_erase)
11029         (compute_garbled_blocks): Likewise.
11030         (cleanup_request_data, cleanup_write_requests_vector): Remove.
11031         (target_write_memory_blocks): Change argument to std::vector.
11032         * symfile.c (struct load_section_data): Add constructor and
11033         destructor.  Use std::vector for "requests".
11034         (struct load_progress_data): Add initializers.
11035         (load_section_callback): Update.  Use "new".
11036         (clear_memory_write_data): Remove.
11037         (generic_load): Update.
11038
11039 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
11040
11041         * arch/aarch64.h: Use common/tdesc.h.
11042
11043 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
11044
11045         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
11046         architecture with a 64-bit ABI.
11047
11048 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
11049
11050         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
11051         ahead of target description loading.
11052
11053 2018-02-26  Tom Tromey  <tom@tromey.com>
11054
11055         * stack.c (backtrace_command_1): Update.
11056         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
11057         of "flags".
11058         * python/py-framefilter.c (py_print_frame)
11059         (gdbpy_apply_frame_filter): Change type of "flags".
11060         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
11061         of "flags".
11062         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
11063         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
11064         * extension.h (enum frame_filter_flag): Rename from
11065         frame_filter_flags.
11066         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
11067         (apply_ext_lang_frame_filter): Change type of "flags".
11068         * extension.c (apply_ext_lang_frame_filter): Change type of
11069         "flags".
11070         * extension-priv.h (struct extension_language_ops)
11071         <apply_frame_filter>: Change type of "flags".
11072
11073 2018-02-26  Tom Tromey  <tom@tromey.com>
11074
11075         PR python/16497:
11076         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
11077         off-by-one in py_end computation.
11078         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
11079         PRINT_MORE_FRAMES.
11080         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
11081         constant.
11082
11083 2018-02-26  Tom Tromey  <tom@tromey.com>
11084
11085         * dwarf2read.c (struct variant_field): New.
11086         (struct nextfield) <variant>: New field.
11087         (dwarf2_add_field): Handle DW_TAG_variant_part.
11088         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
11089         discriminated union.
11090         (read_structure_type): Handle DW_TAG_variant_part.
11091         (handle_struct_member_die): New function, extracted from
11092         process_structure_scope.  Handle DW_TAG_variant.
11093         (process_structure_scope): Handle discriminated unions.  Call
11094         handle_struct_member_die.
11095
11096 2018-02-26  Tom Tromey  <tom@tromey.com>
11097
11098         * rust-lang.h (rust_last_path_segment): Declare.
11099         * rust-lang.c (rust_last_path_segment): Now public.  Change
11100         contract.
11101         (struct disr_info): Remove.
11102         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
11103         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
11104         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
11105         (rust_enum_p, rust_enum_variant): New function.
11106         (rust_underscore_fields): Remove "offset" parameter.
11107         (rust_print_enum): New function.
11108         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
11109         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
11110         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
11111         enums.
11112         (rust_internal_print_type): New function, from rust_print_type.
11113         Remove enum code.
11114         (rust_print_type): Call rust_internal_print_type.
11115         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
11116         Update enum handling.
11117         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
11118         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
11119         (rust_union_quirks): New functions.
11120         (process_full_comp_unit, process_full_type_unit): Call
11121         rust_union_quirks.
11122         (process_structure_scope): Update rust_unions if necessary.
11123
11124 2018-02-26  Tom Tromey  <tom@tromey.com>
11125
11126         * value.h (value_union_variant): Declare.
11127         * valops.c (value_union_variant): New function.
11128         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
11129         (struct discriminant_info): New.
11130         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
11131         enumerator.
11132         (struct main_type) <flag_discriminated_union>: New field.
11133
11134 2018-02-26  Tom Tromey  <tom@tromey.com>
11135
11136         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11137         unittests/unpack-selftests.c.
11138         * unittests/unpack-selftests.c: New file.
11139         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
11140
11141 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11142
11143         * dwarf2read.c (struct partial_die_info) <read>: New method.
11144         (read_partial_die): Remove the declaration.
11145         (load_partial_dies): Update.
11146         (partial_die_info::partial_die_info):
11147         (read_partial_die): Change it to partial_die_info::read.
11148
11149 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11150
11151         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
11152         (fixup_partial_die): Remove declaration.
11153         (scan_partial_symbols): Update.
11154         (partial_die_parent_scope): Likewise.
11155         (partial_die_full_name): Likewise.
11156         (fixup_partial_die): Change it to partial_die_info::fixup.
11157
11158 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11159
11160         * dwarf2read.c (read_partial_die): Update the declaration.
11161         (load_partial_dies): Caller update.
11162         (read_partial_die): Remove one argument abbrev_len.
11163
11164 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11165
11166         * dwarf2read.c (struct partial_die_info): Add ctor, delete
11167         assignment operator.
11168         (load_partial_dies): Use ctor and copy ctor.
11169         (read_partial_die): Update.
11170         (dwarf2_cu::find_partial_die): Use ctor.
11171
11172 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11173
11174         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
11175         (find_partial_die_in_comp_unit): Change it to
11176         dwarf2_cu::find_partial_die.
11177         (find_partial_die): Update.
11178
11179 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11180
11181         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
11182         is NULL.
11183
11184 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11185
11186         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
11187
11188 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
11189
11190         * arch/amd64.h: Use common/tdesc.h.
11191         * arch/i386.c: Likewise.
11192         * arch/i386.h: Likewise.
11193         * arch/tic6x.c: Likewise.
11194         * arch/tdesc.h: Move file from here...
11195         * common/tdesc.h: ...to here.
11196         * features/aarch64-core.c: Regenerate.
11197         * features/aarch64-fpu.c: Regenerate.
11198         * features/i386/32bit-avx.c: Regenerate.
11199         * features/i386/32bit-avx512.c: Regenerate.
11200         * features/i386/32bit-core.c: Regenerate.
11201         * features/i386/32bit-linux.c: Regenerate.
11202         * features/i386/32bit-mpx.c: Regenerate.
11203         * features/i386/32bit-pkeys.c: Regenerate.
11204         * features/i386/32bit-sse.c: Regenerate.
11205         * features/i386/64bit-avx.c: Regenerate.
11206         * features/i386/64bit-avx512.c: Regenerate.
11207         * features/i386/64bit-core.c: Regenerate.
11208         * features/i386/64bit-linux.c: Regenerate.
11209         * features/i386/64bit-mpx.c: Regenerate.
11210         * features/i386/64bit-pkeys.c: Regenerate.
11211         * features/i386/64bit-segments.c: Regenerate.
11212         * features/i386/64bit-sse.c: Regenerate.
11213         * features/i386/x32-core.c: Regenerate.
11214         * features/tic6x-c6xp.c: Regenerate.
11215         * features/tic6x-core.c: Regenerate.
11216         * features/tic6x-gp.c: Regenerate.
11217         * target-descriptions.c: Use common/tdesc.h.
11218         * target-descriptions.h: Likewise.
11219
11220 2018-02-24  Tom Tromey  <tom@tromey.com>
11221
11222         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
11223         (try_thread_db_load_from_dir, thread_db_load_search): Use
11224         std::string.
11225         (info_auto_load_libthread_db_compare): Return bool.  Change
11226         argument types.
11227         (info_auto_load_libthread_db): Use std::vector, std::string.
11228         Remove cleanups.
11229
11230 2018-02-24  Tom Tromey  <tom@tromey.com>
11231
11232         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
11233         std::string.
11234         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
11235         std::string*.
11236         * gdbarch.c: Rebuild.
11237         * gdbarch.h: Rebuild.
11238         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
11239         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
11240         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
11241         std::string*.
11242
11243 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
11244
11245         * gdbtypes.h (sect_offset): Change type to uint64_t.
11246         (sect_offset_str): New function.
11247         * dwarf2read.c (create_addrmap_from_aranges): Use
11248         sect_offset_str.
11249         (error_check_comp_unit_head): Likewise.
11250         (create_debug_type_hash_table): Likewise.
11251         (read_cutu_die_from_dwo): Likewise.
11252         (init_cutu_and_read_dies): Likewise.
11253         (init_cutu_and_read_dies_no_follow): Likewise.
11254         (process_psymtab_comp_unit_reader): Likewise.
11255         (partial_die_parent_scope): Likewise.
11256         (peek_die_abbrev): Likewise.
11257         (process_queue): Likewise.
11258         (dwarf2_physname): Likewise.
11259         (read_namespace_alias): Likewise.
11260         (read_import_statement): Likewise.
11261         (create_dwo_cu_reader): Likewise.
11262         (create_cus_hash_table): Likewise.
11263         (lookup_dwo_cutu): Likewise.
11264         (inherit_abstract_dies): Likewise.
11265         (read_func_scope): Likewise.
11266         (read_call_site_scope): Likewise.
11267         (dwarf2_add_member_fn): Likewise.
11268         (read_common_block): Likewise.
11269         (read_module_type): Likewise.
11270         (read_typedef): Likewise.
11271         (read_subrange_type): Likewise.
11272         (load_partial_dies): Likewise.
11273         (read_partial_die): Likewise.
11274         (find_partial_die): Likewise.
11275         (read_str_index): Likewise.
11276         (dwarf2_string_attr): Likewise.
11277         (build_error_marker_type): Likewise.
11278         (lookup_die_type): Likewise.
11279         (dump_die_shallow): Likewise.
11280         (follow_die_ref): Likewise.
11281         (dwarf2_fetch_die_loc_sect_off): Likewise.
11282         (dwarf2_fetch_constant_bytes): Likewise.
11283         (follow_die_sig): Likewise.
11284         (get_signatured_type): Likewise.
11285         (get_DW_AT_signature_type): Likewise.
11286         (dwarf2_find_containing_comp_unit): Likewise.
11287         (set_die_type): Likewise.
11288
11289 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
11290
11291         * arch/aarch64.c: Include "common-defs.h".
11292         * arch/amd64.c: Likewise.
11293         * arch/i386.c: Likewise.
11294
11295 2018-02-21  Tom Tromey  <tom@tromey.com>
11296
11297         * value.h: (extract_field_op): Update.
11298         * eval.c (extract_field_op): Return a const char *.
11299         * expression.h (parse_expression_for_completion): Update.
11300         * completer.c (complete_expression): Update.
11301         (add_struct_fields): Make fieldname const.
11302         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
11303         (mark_completion_tag, parse_exp_in_context_1): Update.
11304         (parse_expression_for_completion): Change "name" to
11305         unique_xmalloc_ptr*.
11306
11307 2018-02-21  Tom Tromey  <tom@tromey.com>
11308
11309         * infcall.c (call_function_by_hand_dummy): Use std::vector.
11310
11311 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11312
11313         * avr-tdep.c (avr_read_pc): Change parameter type to
11314         readable_regcache.
11315         * gdbarch.sh (read_pc): Likewise.
11316         * gdbarch.c: Re-generated.
11317         * gdbarch.h: Re-generated.
11318         * hppa-tdep.c (hppa_read_pc): Change parameter type to
11319         readable_regcache.
11320         * ia64-tdep.c (ia64_read_pc): Likewise.
11321         * mips-tdep.c (mips_read_pc): Likewise.
11322         * spu-tdep.c (spu_read_pc): Likewise.
11323
11324 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11325
11326         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
11327         * regcache-dump.c: New file.
11328         * regcache.c: Move register_dump to regcache-dump.c.
11329         (maintenance_print_registers): Likewise.
11330         (maintenance_print_raw_registers): Likewise.
11331         (maintenance_print_cooked_registers): Likewise.
11332         (maintenance_print_register_groups): Likewise.
11333         (maintenance_print_remote_registers): Likewise.
11334         (_initialize_regcache): Likewise.
11335         * regcache.h (register_dump): Moved from regcache.c.
11336
11337 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11338
11339         * regcache.c (regcache::regcache): Update.
11340         (regcache::invalidate): Move it to detached_regcache::invalidate.
11341         (get_thread_arch_aspace_regcache): Update.
11342         (regcache::raw_update): Update.
11343         (regcache::cooked_read): Remove some code.
11344         (regcache::cooked_read_value): Likewise.
11345         (regcache::raw_write): Remove assert on m_readonly_p.
11346         (regcache::raw_supply_integer): Move it to
11347         detached_regcache::raw_supply_integer.
11348         (regcache::raw_supply_zeroed): Likewise.
11349         * regcache.h (detached_regcache) <raw_supply_integer>: New
11350         declaration.
11351         <raw_supply_zeroed, invalidate>: Likewise.
11352         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
11353         <invalidate>: Likewise.
11354         <m_readonly_p>: Removed.
11355
11356 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11357
11358         * infcmd.c (get_return_value): Let stop_regs point to
11359         get_current_regcache.
11360         * regcache.c (regcache::regcache): Remove.
11361         (register_dump_reg_buffer): New class.
11362         (regcache_print): Adjust.
11363         * regcache.h (regcache): Remove constructors.
11364
11365 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11366
11367         * regcache.c (class register_dump): New class.
11368         (register_dump_regcache, register_dump_none): New class.
11369         (register_dump_remote, register_dump_groups): New class.
11370         (regcache_print): Update.
11371         * regcache.h (regcache_dump_what): Move it to regcache.c.
11372         (regcache) <dump>: Remove.
11373
11374 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11375
11376         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
11377          reg_buffer_rw *.
11378         (jit_unwind_reg_set_impl): Call raw_supply.
11379         (jit_frame_sniffer): Use reg_buffer_rw.
11380         * record-full.c (record_full_core_regbuf): Change its type.
11381         (record_full_core_open_1): Use reg_buffer_rw.
11382         (record_full_close): Likewise.
11383         (record_full_core_fetch_registers): Use regcache->raw_supply.
11384         (record_full_core_store_registers): Likewise.
11385         * regcache.c (regcache::get_register_status): Move it to
11386         reg_buffer.
11387         (regcache_raw_set_cached_value): Remove.
11388         (regcache::raw_set_cached_value): Remove.
11389         (regcache::raw_write): Call raw_supply.
11390         (regcache::raw_supply): Move it to reg_buffer_rw.
11391         * regcache.h (regcache_raw_set_cached_value): Remove.
11392         (reg_buffer_rw): New class.
11393
11394 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11395
11396         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
11397         readonly_detached_regcache.
11398         (dummy_frame_prev_register): Use regcache->cooked_read.
11399         * frame.c (frame_save_as_regcache): Change return type.
11400         (frame_pop): Update.
11401         * frame.h (frame_save_as_regcache): Update declaration.
11402         * inferior.h (get_infcall_suspend_state_regcache): Update
11403         declaration.
11404         * infrun.c (infcall_suspend_state) <registers>: use
11405         readonly_detached_regcache.
11406         (save_infcall_suspend_state): Don't use regcache_dup.
11407         (get_infcall_suspend_state_regcache): Change return type.
11408         * linux-fork.c (struct fork_info) <savedregs>: Change to
11409         readonly_detached_regcache.
11410         <pc>: New field.
11411         (fork_save_infrun_state): Don't use regcache_dup.
11412         (info_checkpoints_command): Adjust.
11413         * mi/mi-main.c (register_changed_p): Update declaration.
11414         (mi_cmd_data_list_changed_registers): Use
11415         readonly_detached_regcache.
11416         (register_changed_p): Change parameter type to
11417         readonly_detached_regcache.
11418         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
11419         readonly_detached_regcache.
11420         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
11421         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
11422         New.
11423         (regcache::save): Move it to reg_buffer.
11424         (regcache::restore): Change parameter type.
11425         (regcache_dup): Remove.
11426         * regcache.h (reg_buffer) <save>: New method.
11427         (readonly_detached_regcache): New class.
11428         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
11429         readonly_detached_regcache.
11430         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
11431
11432 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11433
11434         * frame.c (frame_save_as_regcache): Use regcache method save.
11435         (frame_pop): Use regcache method restore.
11436         * infrun.c (restore_infcall_suspend_state): Likewise.
11437         * linux-fork.c (fork_load_infrun_state): Likewise.
11438         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
11439         save.
11440         * regcache.c (regcache_save): Remove.
11441         (regcache::restore): More asserts.
11442         (regcache_cpy): Remove.
11443         * regcache.h (regcache_save): Remove the declaration.
11444         (regcache::restore): Move from private to public.
11445         Remove the friend declaration of regcache_cpy.
11446         (regcache_cpy): Remove declaration.
11447
11448 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11449
11450         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
11451         parameter type to 'readable_regcache *'.
11452         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
11453         * arm-tdep.c (arm_neon_quad_read): Likewise.
11454         (arm_pseudo_read): Likewise.
11455         * avr-tdep.c (avr_pseudo_register_read): Likewise.
11456         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
11457         * frv-tdep.c (frv_pseudo_register_read): Likewise.
11458         * gdbarch.c: Re-generated.
11459         * gdbarch.h: Re-generated.
11460         * gdbarch.sh (pseudo_register_read): Change parameter type to
11461         'readable_regcache *'.
11462         (pseudo_register_read_value): Likewise.
11463         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
11464         (h8300_pseudo_register_read): Likewise.
11465         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
11466         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
11467         (i386_pseudo_register_read_into_value): Likewise.
11468         (i386_pseudo_register_read_value): Likewise.
11469         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
11470         declaration.
11471         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
11472         * m32c-tdep.c (m32c_raw_read): Likewise.
11473         (m32c_read_flg): Likewise.
11474         (m32c_banked_register): Likewise.
11475         (m32c_banked_read): Likewise.
11476         (m32c_sb_read): Likewise.
11477         (m32c_part_read): Likewise.
11478         (m32c_cat_read): Likewise.
11479         (m32c_r3r2r1r0_read): Likewise.
11480         (m32c_pseudo_register_read): Likewise.
11481         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
11482         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
11483         (mep_pseudo_cr64_read): Likewise.
11484         (mep_pseudo_register_read): Likewise.
11485         * mips-tdep.c (mips_pseudo_register_read): Likewise.
11486         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
11487         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
11488         * regcache.c (regcache::raw_read): Move it to readable_regcache.
11489         (regcache::cooked_read): Likewise.
11490         (regcache::cooked_read_value): Likewise.
11491         (regcache_cooked_read_signed):
11492         (regcache::cooked_read): Likewise.
11493         * regcache.h (readable_regcache): New class.
11494         (regcache): Inherit readable_regcache.  Move some methods to
11495         readable_regcache.
11496         * rl78-tdep.c (rl78_pseudo_register_read): Change
11497         parameter type to 'readable_regcache *'.
11498         * rs6000-tdep.c (do_regcache_raw_read): Remove.
11499         (e500_pseudo_register_read): Change parameter type to
11500         'readable_regcache *'.
11501         (dfp_pseudo_register_read): Likewise.
11502         (vsx_pseudo_register_read): Likewise.
11503         (efpr_pseudo_register_read): Likewise.
11504         * s390-tdep.c (s390_pseudo_register_read): Likewise.
11505         * sh-tdep.c (sh_pseudo_register_read): Likewise.
11506         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
11507         (sh64_pseudo_register_read): Likewise.
11508         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
11509         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
11510         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
11511         (spu_pseudo_register_read): Likewise.
11512         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
11513         (xtensa_pseudo_register_read): Likewise.
11514
11515 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11516
11517         * regcache.c (regcache::regcache): Call reg_buffer ctor.
11518         (regcache::arch): Move it to reg_buffer::arch.
11519         (regcache::register_buffer): Likewise.
11520         (regcache::assert_regnum): Likewise.
11521         (regcache::num_raw_registers): Likewise.
11522         * regcache.h (reg_buffer): New class.
11523         (regcache): Inherit reg_buffer.
11524
11525 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
11526
11527         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
11528         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
11529
11530 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
11531
11532         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
11533
11534 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
11535
11536         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
11537         (SFILES): Remove common/*.c files.
11538         (COMMON_OBS): Remove some *.o files built from common/*.c files.
11539         * common/common.host: Add common reference.
11540         * configure.ac: Likewise.
11541         * configure: Regenerate.
11542
11543 2018-02-16  Yao Qi  <yao.qi@linaro.org>
11544
11545         * block.c (block_namespace_info): Inherit allocate_on_obstack.
11546         (block_initialize_namespace): Use new.
11547         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
11548         (dwarf2_free_objfile): Use delete.
11549         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
11550         (copy_type_recursive): Use new.
11551         * gdb_obstack.h (allocate_on_obstack): New.
11552
11553 2018-02-15  Yao Qi  <yao.qi@linaro.org>
11554
11555         PR gdb/22849
11556         * inferior.c (exit_inferior_1): Reset inf->control.
11557
11558 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
11559
11560         * ada-lang.c (ada_to_fixed_value_create): Delete advance
11561         declaration.
11562
11563 2018-02-14  Pedro Alves  <palves@redhat.com>
11564
11565         * frame-unwind.c (frame_unwind_try_unwinder): Always call
11566         frame_cleanup_after_sniffer on exception.
11567
11568 2018-02-14  Tom Tromey  <tom@tromey.com>
11569
11570         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
11571         const.
11572         (solib_bfd_open): Make pathname const.
11573         * solib.c (solib_bfd_open): Make pathname const.
11574         * solib-spu.c (spu_bfd_fopen): Make name const.
11575         (spu_bfd_open): Make pathname const.
11576         * solib-darwin.c (darwin_bfd_open): Make pathname const.
11577         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
11578
11579 2018-02-14  Tom Tromey  <tom@tromey.com>
11580
11581         * symfile.c (symfile_bfd_open): Update.
11582         * source.h (openp, source_full_path_of, find_and_open_source):
11583         Change argument type to unique_xmalloc_ptr.
11584         * source.c (openp): Take a unique_xmalloc_ptr.
11585         (source_full_path_of, find_and_open_source): Likewise.
11586         (open_source_file, symtab_to_fullname): Update.
11587         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
11588         unique_xmalloc_ptr.
11589         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
11590         (exec_file_find): Update.
11591         * psymtab.c (psymtab_to_fullname): Update.
11592         * nto-tdep.h (nto_find_and_open_solib): Update.
11593         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
11594         unique_xmalloc_ptr.
11595         * exec.c (exec_file_attach): Update.
11596         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
11597         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
11598
11599 2018-02-14  Tom Tromey  <tom@tromey.com>
11600
11601         * solib.c: Include source.h.
11602         * nto-tdep.c: Include source.h.
11603         * mi/mi-cmd-env.c: Include source.h.
11604         * infcmd.c: Include source.h.
11605         * exec.c: Include source.h.
11606         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
11607         (add_path, directory_switch, source_path, init_source_path): Move
11608         declarations...
11609         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
11610         (add_path, directory_switch, source_path, init_source_path):
11611         ...here.
11612
11613 2018-02-14  Tom Tromey  <tom@tromey.com>
11614
11615         * solist.h (exec_file_find, solib_find): Return
11616         unique_xmalloc_ptr.
11617         (solib_bfd_fopen): Take a const char *.
11618         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
11619         (exec_file_find, solib_find): Likewise.
11620         (solib_bfd_fopen): Do not take ownership of "pathname".
11621         (solib_bfd_open): Use unique_xmalloc_ptr.
11622         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
11623         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
11624         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
11625         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
11626
11627 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
11628
11629         * ada-lang.c (name_match_type_from_name): Remove reference to
11630         ada_name_for_lookup in function's documentation.
11631         * ada-lang.h (ada_name_for_lookup): Delete declaration.
11632
11633 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
11634
11635         * defs.h (enum openp_flags): New enum.
11636         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
11637         Move to enum openp_flags.
11638         (openp_flags): New enum flags.
11639         (openp): Change parameter type to openp_flags.
11640         * source.c (openp): Change parameter type to openp_flags.
11641         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
11642         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
11643
11644 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
11645
11646         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
11647         per-command.
11648
11649 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
11650
11651         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
11652         into...
11653         (class dwarf2_queue_guard): ...the destructor of this new class.
11654         (dw2_do_instantiate_symtab): Create instance of the new class
11655         dwarf2_queue_guard, remove cleanup.
11656
11657 2018-02-09  Tom Tromey  <tom@tromey.com>
11658
11659         * source.c (find_source_lines): Don't reference past the end of
11660         the vector.
11661
11662 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11663
11664         * remote.c (remote_btrace_maybe_reopen): Change error message.
11665         * btrace.c (btrace_enable): Likewise.
11666         (parse_xml_btrace): Likewise.
11667         (parse_xml_btrace_conf): Likewise.
11668
11669 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11670
11671         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
11672         (linux_enable_pt, linux_enable_bts): Call
11673         diagnose_perf_event_open_fail.
11674
11675 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11676
11677         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
11678         Remove parameter and change return type.  Update callers.  Move it.
11679         (linux_enable_bts, linux_enable_pt): Improve error message.
11680         (linux_enable_pt): Remove zero buffer size check.
11681         (linux_enable_btrace): Improve error messages.  Remove NULL return
11682         check.
11683
11684 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11685
11686         * btrace.c (btrace_enable): Remove target_supports_btrace call.
11687         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
11688         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
11689         (linux_supports_pt, linux_supports_btrace): Remove.
11690         (linux_enable_bts): Call cpu_supports_bts.
11691         * nat/linux-btrace.h (linux_supports_btrace): Remove.
11692         * remote.c (remote_supports_btrace): Remove.
11693         (init_remote_ops): Remove remote_supports_btrace.
11694         * target-delegates.c: Regenerated.
11695         * target.c (target_supports_btrace): Remove.
11696         * target.h (target_ops) <to_supports_btrace>: Remove
11697         (target_supports_btrace): Remove.
11698         * x86-linux-nat.c (x86_linux_create_target): Remove
11699         linux_supports_btrace.
11700
11701 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11702
11703         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
11704         btrace failed.
11705         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
11706         exception and use message in own exception.
11707
11708 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11709
11710         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
11711         (perf_event_pt_event_type): Use gdb_file_up.
11712         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
11713         scoped_fd, and scoped_mmap.
11714
11715 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11716
11717         * common/scoped_mmap.h: New.
11718         * unittests/scoped_mmap-selftest.c: New.
11719         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11720         unittests/scoped_mmap-selftest.c.
11721
11722 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11723
11724         * common/scoped_fd.h: New.
11725         * unittests/scoped_fd-selftest.c: New.
11726         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11727         unittests/scoped_fd-selftest.c.
11728
11729 2018-02-09  Tom Tromey  <tom@tromey.com>
11730
11731         * auto-load.c (auto_load_section_scripts): Use
11732         gdb::unique_xmalloc_ptr.
11733
11734 2018-02-09  Tom Tromey  <tom@tromey.com>
11735
11736         * auto-load.c (execute_script_contents): Use std::string.
11737
11738 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
11739
11740         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
11741         Python function, rather than a new command.
11742
11743 2018-02-08  Tom Tromey  <tom@tromey.com>
11744
11745         * solib.c (solib_find_1): Use std::string.
11746         (solib_bfd_fopen): Use unique_xmalloc_ptr.
11747
11748 2018-02-08  Tom Tromey  <tom@tromey.com>
11749
11750         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
11751
11752 2018-02-08  Tom Tromey  <tom@tromey.com>
11753
11754         * source.c (find_source_lines): Use gdb::def_vector.
11755
11756 2018-02-08  Tom Tromey  <tom@tromey.com>
11757
11758         * macrocmd.c (struct temporary_macro_definition): New.
11759         (macro_define_command): Use temporary_macro_definition.  Remove
11760         cleanups.
11761         (free_macro_definition_ptr): Remove.
11762
11763 2018-02-08  Tom Tromey  <tom@tromey.com>
11764
11765         * macroexp.c (maybe_expand): Use std::string.
11766
11767 2018-02-08  Tom Tromey  <tom@tromey.com>
11768
11769         * macroexp.c (struct macro_buffer): Add initializers for some
11770         members.
11771         (init_buffer, init_shared_buffer, free_buffer)
11772         (free_buffer_return_text): Remove.
11773         (macro_buffer): New constructors.
11774         (~macro_buffer): New destructor.
11775         (macro_buffer::set_shared): New method.
11776         (macro_buffer::resize_buffer, macro_buffer::appendc)
11777         (macro_buffer::appendmem): Now methods, not free functions.
11778         (set_token, append_tokens_without_splicing, stringify)
11779         (macro_stringify): Update.
11780         (gather_arguments): Change return type.  Remove argc_p argument,
11781         add args_ptr argument.  Use std::vector.
11782         (substitute_args): Remove argc argument.  Accept std::vector.
11783         (expand): Update.  Use std::vector.
11784         (scan, macro_expand, macro_expand_next): Update.
11785
11786 2018-02-08  Tom Tromey  <tom@tromey.com>
11787
11788         * symtab.c (default_collect_symbol_completion_matches_break_on):
11789         Use unique_xmalloc_ptr.
11790         * macroscope.h: (sal_macro_scope, user_macro_scope)
11791         (default_macro_scope): Return unique_xmalloc_ptr.
11792         * macroscope.c (sal_macro_scope, user_macro_scope)
11793         (default_macro_scope): Return unique_xmalloc_ptr.
11794         * macroexp.h (macro_expand, macro_expand_once): Return
11795         unique_xmalloc_ptr.
11796         * macroexp.c (macro_expand, macro_expand_once): Return
11797         unique_xmalloc_ptr.
11798         * macrocmd.c (macro_expand_command, macro_expand_once_command)
11799         (info_macro_command, info_macros_command): Use
11800         unique_xmalloc_ptr.
11801         * compile/compile-c-support.c (write_macro_definitions): Use
11802         unique_xmalloc_ptr.
11803         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
11804
11805 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
11806
11807         * value.c (value_static_field): Assign field type instead of
11808         containing type when returning an optimized out value.
11809
11810 2018-02-06  Yao Qi  <yao.qi@linaro.org>
11811
11812         * ft32-tdep.c (ft32_read_pc): Remove.
11813         (ft32_write_pc): Remove.
11814         (ft32_gdbarch_init): Update.
11815         * m32r-tdep.c (m32r_read_pc): Remove.
11816         (m32r_gdbarch_init): Update.
11817         * mep-tdep.c (mep_read_pc): Remove.
11818         (mep_gdbarch_init): Update.
11819         * microblaze-tdep.c (microblaze_write_pc): Remove.
11820         (microblaze_gdbarch_init): Update.
11821         * mn10300-tdep.c (mn10300_read_pc): Remove.
11822         (mn10300_write_pc): Remove.
11823         (mn10300_gdbarch_init): Update.
11824         * moxie-tdep.c (moxie_read_pc): Remove.
11825         (moxie_write_pc): Remove.
11826         (moxie_gdbarch_init): Update.
11827
11828 2018-02-06  Yao Qi  <yao.qi@linaro.org>
11829
11830         * expprint.c (print_subexp_standard): Handle
11831         OP_F77_UNDETERMINED_ARGLIST.
11832         (dump_subexp_body_standard): Likewise.
11833
11834 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
11835
11836         * target-descriptions.c (tdesc_element_visitor) Add empty
11837         implementations.
11838         (tdesc_type): Move make_gdb_type from here.
11839         (tdesc_type_builtin): Likewise.
11840         (tdesc_type_vector): Likewise.
11841         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
11842         (make_gdb_type_struct): Move from tdesc_type_with_fields.
11843         (make_gdb_type_union): Likewise.
11844         (make_gdb_type_flags): Likewise.
11845         (make_gdb_type_enum): Likewise.
11846         (make_gdb_type): New function.
11847         (tdesc_register_type): Use static make_gdb_type.
11848
11849 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
11850
11851         * infcmd.c (default_print_one_register_info): Align natural-format
11852         column values consistently one under another.
11853         (pad_to_column): New function.
11854
11855 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
11856
11857         * dwarf2read.c (dwarf2_physname): Move commment.
11858
11859 2018-02-01  Leszek Swirski  <leszeks@google.com>
11860
11861         * varobj.c (varobj_formatted_print_options): Allow recursive
11862         pretty printing if pretty printing is enabled.
11863
11864 2018-02-01  Leszek Swirski  <leszeks@google.com>
11865
11866         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
11867         names after a structop as a filename.
11868
11869 2018-02-01  Yao Qi  <yao.qi@linaro.org>
11870
11871         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
11872         (arm_record_coproc_data_proc): Likewise.
11873
11874 2018-02-01  Yao Qi  <yao.qi@linaro.org>
11875
11876         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
11877
11878 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
11879
11880         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
11881         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
11882
11883 2018-01-31  Pedro Alves  <palves@redhat.com>
11884
11885         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
11886         * inflow.c (child_terminal_save_inferior): Wrap reference to
11887         tcgetpgrp in HAVE_TERMIOS_H.
11888         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
11889         _WIN32.
11890         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
11891         always iterate over all inferiors.
11892         (gdbsim_cntrl_c): Adjust.
11893         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
11894
11895 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
11896
11897         * gdbtypes.c (lookup_array_range_type): Make sure the array's
11898         index type is objfile-owned if the element type is as well.
11899
11900 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
11901
11902         GDB 8.1 released.
11903
11904 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11905
11906         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
11907         "features/s390x-linux64.c".
11908         (_initialize_s390_linux_tdep): Remove initialization of tdescs
11909         s390_linux32 and s390x_linux64.
11910         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
11911         default tdesc.
11912         * s390-tdep.c: Include "features/s390-linux32.c" and
11913         "features/s390x-linux64.c".
11914         (s390_tdesc_valid): Add check for tdesc_has_registers.
11915         (s390_gdbarch_init): Make sure there is always a valid tdesc.
11916         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
11917         tdesc_s390x_linux64.
11918         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
11919         tdesc_s390x_linux64 to...
11920         * s390-tdep.h: ...here.
11921
11922 2018-01-30  Pedro Alves  <palves@redhat.com>
11923
11924         PR gdb/13211
11925         * config.in, configure: Regenerate.
11926         * configure.ac: Check for getpgid.
11927         * go32-nat.c (go32_pass_ctrlc): New.
11928         (go32_target): Install it.
11929         * inf-child.c (inf_child_target): Install
11930         child_terminal_save_inferior, child_pass_ctrlc and
11931         child_interrupt.
11932         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
11933         (inf_ptrace_target): No longer install it.
11934         * infcmd.c (interrupt_target_1): Adjust.
11935         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
11936         (child_interrupt): Declare.
11937         (inferior::terminal_state): New.
11938         * inflow.c (struct terminal_info): Update comments.
11939         (inferior_process_group): Delete.
11940         (terminal_is_ours): Delete.
11941         (gdb_tty_state): New.
11942         (child_terminal_init): Adjust.
11943         (is_gdb_terminal, sharing_input_terminal_1)
11944         (sharing_input_terminal): New functions.
11945         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
11946         Set the process's actual process group in the foreground if
11947         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
11948         mark terminal as the inferior's if not sharing GDB's terminal.
11949         Don't check attach_flag.
11950         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
11951         pass down a target_terminal_state.
11952         (child_terminal_save_inferior): New, factored out from ...
11953         (child_terminal_ours_1): ... this.  Handle
11954         target_terminal_state::is_ours_for_output.
11955         (child_interrupt, child_pass_ctrlc): New.
11956         (inflow_inferior_exit): Clear the inferior's terminal_state.
11957         (copy_terminal_info): Copy the inferior's terminal state.
11958         (_initialize_inflow): Remove reference to terminal_is_ours.
11959         * inflow.h (inferior_process_group): Delete.
11960         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
11961         * procfs.c (procfs_target): Don't install procfs_interrupt.
11962         (procfs_interrupt): Delete.
11963         * remote.c (remote_serial_quit_handler): Adjust.
11964         (remote_interrupt): Remove ptid parameter.  Adjust.
11965         * target-delegates.c: Regenerate.
11966         * target.c: Include "terminal.h".
11967         (target_terminal::terminal_state): Rename to ...
11968         (target_terminal::m_terminal_state): ... this.
11969         (target_terminal::init): Adjust.
11970         (target_terminal::inferior): Adjust to per-inferior
11971         terminal_state.
11972         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
11973         (target_terminal::ours, target_terminal::ours_for_output): Use
11974         target_terminal_is_ours_kind.
11975         (target_interrupt): Remove ptid parameter.  Adjust.
11976         (default_target_pass_ctrlc): Adjust.
11977         * target.h (target_ops::to_terminal_save_inferior): New field.
11978         (target_ops::to_interrupt): Remove ptid_t parameter.
11979         (target_interrupt): Remove ptid_t parameter.  Update comment.
11980         (target_pass_ctrlc): Update comment.
11981         * target/target.h (target_terminal_state): New scoped enum,
11982         factored out of ...
11983         (target_terminal::terminal_state): ... here.
11984         (target_terminal::inferior): Update comments.
11985         (target_terminal::restore_inferior): New.
11986         (target_terminal::is_inferior, target_terminal::is_ours)
11987         (target_terminal::is_ours_for_output): Adjust.
11988         (target_terminal::scoped_restore_terminal_state): Adjust to
11989         rename, and call restore_inferior() instead of inferior().
11990         (target_terminal::scoped_restore_terminal_state::m_state): Change
11991         type.
11992         (target_terminal::terminal_state): Rename to ...
11993         (target_terminal::m_terminal_state): ... this and change type.
11994
11995 2018-01-30  Pedro Alves  <palves@redhat.com>
11996
11997         * linux-nat.c (wait_for_signal): New function.
11998         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
11999         directly.
12000         (async_terminal_is_ours)
12001         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
12002         (linux_nat_add_target): Don't override
12003         to_terminal_inferior/to_terminal_ours.
12004
12005 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
12006
12007         * remote.c (remote_follow_fork): Don't call "detach_inferior".
12008
12009 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
12010
12011         * dwarf2read.c (free_dwo_files): Add forward-declaration.
12012         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
12013         dwarf2_per_objfile_free here.
12014         (dwarf2_per_objfile_free): Remove.
12015         (_initialize_dwarf2_read): Don't register
12016         dwarf2_per_objfile_free as a registry cleanup.
12017
12018 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
12019
12020         Avoid compilation errors in MinGW native builds
12021
12022         The error is triggered by including python-internal.h, and the
12023         error message is:
12024
12025              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
12026                       from build-gnulib/import/math.h:27,
12027                       from d:/usr/Python26/include/pyport.h:235,
12028                       from d:/usr/Python26/include/Python.h:58,
12029                       from python/python-internal.h:94,
12030                       from python/py-arch.c:24:
12031              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
12032         using ::hypot;
12033                 ^~~~~
12034
12035         This happens because Python headers define 'hypot' to expand t
12036         '_hypot' in the Windows builds.
12037         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
12038         'hypoth'.  This avoids a compilation error.
12039
12040 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
12041
12042         * MAINTAINERS (Write After Approval): Fix ordering.
12043
12044 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
12045
12046         * MAINTAINERS (Write After Approval): Add Alan Hayward.
12047
12048 2018-01-26  Alan Modra  <amodra@gmail.com>
12049
12050         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
12051         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
12052         Remove nop.  Make const.  Comment.
12053         (powerpc32_plt_stub_so_2): New.
12054         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
12055         Correct count.  Update uses.
12056         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
12057         Move common code reading PLT entry word.  Correct
12058         powerpc32_plt_stub PLT address calculation.
12059         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
12060         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
12061         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
12062         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
12063         (ppc64_standard_linkage8): Likewise.
12064         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
12065         Correct insns description.
12066         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
12067
12068 2018-01-24  Pedro Alves  <palves@redhat.com>
12069
12070         GCC PR libstdc++/83906
12071         * gdbtypes.c (operator==(const dynamic_prop &,
12072         const dynamic_prop &)): New.
12073         (operator==(const range_bounds &, const range_bounds &)): New.
12074         (check_types_equal): Use them instead of memcmp.
12075         * gdbtypes.h (operator==(const dynamic_prop &,
12076         const dynamic_prop &)): Declare.
12077         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
12078         (operator==(const range_bounds &, const range_bounds &)): Declare.
12079         (operator!=(const range_bounds &, const range_bounds &)): Declare.
12080
12081 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12082
12083         * s390-linux-tdep.c (s390_record_address_mask)
12084         (s390_record_calc_disp_common, s390_record_calc_disp)
12085         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
12086         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
12087         (s390_process_record): Move to s390-tdep.c.
12088         (s390_linux_init_abi_any): Adjust.
12089         * s390-tdep.c (s390_record_address_mask)
12090         (s390_record_calc_disp_common, s390_record_calc_disp)
12091         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
12092         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
12093         (s390_process_record): Moved from s390-linux-tdep.c
12094         (s390_gdbarch_init): Adjust.
12095
12096 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12097
12098         * s390-linux-nat.c (s390-tdep.h): New include.
12099         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
12100         (HFILES_NO_SRCDIR): Add s390-tdep.h.
12101         (ALLDEPFILES): Add s390-tdep.c.
12102         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
12103         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
12104         * s390-tdep.h: ...this.  New file.
12105         * s390-linux-tdep.c (s390-tdep.h): New include.
12106         (_initialize_s390_tdep): Rename to...
12107         (_initialize_s390_linux_tdep): ...this and adjust.
12108         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
12109         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
12110         s390-tdep.h.
12111         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
12112         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
12113         (s390_is_partial_instruction, s390_software_single_step)
12114         (is_non_branch_ril, s390_displaced_step_copy_insn)
12115         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
12116         (s390_prologue_data, s390_addr, s390_store, s390_load)
12117         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
12118         (s390_register_call_saved, s390_guess_tracepoint_registers)
12119         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
12120         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
12121         (s390_pseudo_register_name, s390_pseudo_register_type)
12122         (s390_pseudo_register_read, s390_pseudo_register_write)
12123         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
12124         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
12125         (s390_addr_bits_remove, s390_address_class_type_flags)
12126         (s390_address_class_type_flags_to_name)
12127         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
12128         (s390_function_arg_float, s390_function_arg_vector)
12129         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
12130         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
12131         (s390_frame_align, s390_register_return_value, s390_return_value)
12132         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
12133         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
12134         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
12135         (s390_trad_frame_prev_register, s390_unwind_cache)
12136         (s390_prologue_frame_unwind_cache)
12137         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
12138         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
12139         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
12140         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
12141         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
12142         (s390_frame_base_address, s390_local_base_address)
12143         (s390_frame_base, s390_gcc_target_options)
12144         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
12145         (s390_validate_reg_range, s390_tdesc_valid)
12146         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
12147         * s390-tdep.c: ...this.  New file.
12148
12149 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12150
12151         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
12152         (s390_process_record, s390_gdbarch_tdep_alloc)
12153         (s390_linux_init_abi_any): Use/set new hook.
12154
12155 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12156
12157         * s390-linux-tdep.c (osabi.h): New include.
12158         (s390_linux_init_abi_31, s390_linux_init_abi_64)
12159         (s390_linux_init_abi_any): New functions.
12160         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
12161
12162 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12163
12164         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
12165         tdesc_has_registers check
12166
12167 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12168
12169         * s390-linux-tdep.c (s390_tdesc_valid): New function.
12170         (s390_validate_reg_range): New macro.
12171         (s390_gdbarch_init): Adjust.
12172
12173 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12174
12175         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
12176         (s390_gdbarch_tdep_alloc): Adjust.
12177         (s390_gdbarch_init): Adjust.
12178
12179 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12180
12181         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
12182         <have_tdb>: Change type to bool.
12183         (s390_gdbarch_tdep_alloc): Adjust.
12184         (s390_gdbarch_init): Adjust.
12185
12186 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12187
12188         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
12189         (gdbarch_tdep) <have_upper, have_vx>: New fields.
12190         (s390_gdbarch_tdep_alloc): New function.
12191         (s390_gdbarch_init): Allocate tdep at start and use its fields
12192         instead of separate variables.
12193
12194 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12195
12196         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
12197         when looking for cached gdbarch and add comment for remaining.
12198
12199 2018-01-22  Pedro Alves  <palves@redhat.com>
12200             Sergio Durigan Junior  <sergiodj@redhat.com>
12201
12202         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
12203         case.
12204
12205 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
12206
12207         * MAINTAINERS: Update my company e-mail address.
12208
12209 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12210
12211         * regcache.c (cooked_write_test): New function.
12212         (_initialize_regcache): Register the test.
12213
12214 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12215
12216         * ia64-tdep.c (ia64_pseudo_register_read): Call
12217         regcache->cooked_read instead of regcache_cooked_read_unsigned.
12218         * m32c-tdep.c (m32c_cat_read): Likewise.
12219         (m32c_r3r2r1r0_read): Likewise.
12220         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12221         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
12222
12223 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12224
12225         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
12226         method raw_read instead of regcache_raw_read.
12227         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12228         * arm-tdep.c (arm_neon_quad_read): Likewise.
12229         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12230         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12231         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12232         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
12233         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12234         (i386_pseudo_register_read_into_value): Likewise.
12235         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12236         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12237         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12238         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
12239         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
12240         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
12241         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
12242         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
12243         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
12244
12245 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12246
12247         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
12248         * configure.tgt: Remove target mt.
12249         * mt-tdep.c: Remove.
12250         * regcache.c (cooked_read_test): Remove the check for mt.
12251
12252 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12253
12254         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
12255         instead of gdbarch_pseudo_register_read_value.
12256
12257 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
12258
12259         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
12260         language is Ada.
12261
12262 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
12263
12264         * linespec.c (create_sals_line_offset): Remove code that preserved
12265         the symtab_and_line's line number.
12266
12267 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12268
12269         * varobj.c (varobj_create): Don't set valid_block when creating a
12270         floating varobj.
12271
12272 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12273
12274         * varobj.c (varobj_create): Remove out of date comment.
12275
12276 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12277
12278         PR mi/20395
12279         * ada-exp.y (write_var_from_sym): Pass extra parameter when
12280         updating innermost block.
12281         * parse.c (innermost_block_tracker::update): Take extra type
12282         parameter, and check types match before updating innermost block.
12283         (write_dollar_variable): Update innermost block for registers.
12284         * parser-defs.h (enum innermost_block_tracker_type): New enum.
12285         (innermost_block_tracker::innermost_block_tracker): Initialise
12286         m_types member.
12287         (innermost_block_tracker::reset): Take type parameter.
12288         (innermost_block_tracker::update): Take type parameter, and pass
12289         type through as needed.
12290         (innermost_block_tracker::m_types): New member.
12291         * varobj.c (varobj_create): Pass type when reseting innermost
12292         block.
12293
12294 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12295
12296         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
12297         * ada-lang.c (resolve_subexp): Likewise.
12298         * breakpoint.c (set_breakpoint_condition) Likewise.
12299         (watch_command_1) Likewise.
12300         * c-exp.y (variable): Likewise.
12301         * d-exp.y (PrimaryExpression): Likewise.
12302         * f-exp.y (variable): Likewise.
12303         * go-exp.y (variable): Likewise.
12304         * m2-exp.y (variable): Likewise.
12305         * objfiles.c (objfile::~objfile): Likewise.
12306         * p-exp.y (variable): Likewise.
12307         * parse.c (innermost_block): Change type.
12308         * parser-defs.h (class innermost_block_tracker): New.
12309         (innermost_block): Change to innermost_block_tracker.
12310         * printcmd.c (display_command): Switch to innermost_block API.
12311         (do_one_display): Likewise.
12312         * rust-exp.y (do_one_display): Likewise.
12313         * symfile.c (clear_symtab_users): Likewise.
12314         * varobj.c (varobj_create): Switch to innermost_block API, replace
12315         use of innermost_block with block stored on varobj object.
12316
12317 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12318
12319         * expression.h (innermost_block): Remove declaration.
12320         * varobj.c: Add 'parser-defs.h' include.
12321
12322 2018-01-19  Tom Tromey  <tom@tromey.com>
12323
12324         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
12325         symbols in the static and global blocks.
12326
12327 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
12328
12329         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
12330         gdb_ptrace.h, and move including gdb_wait.h ...
12331         * nat/linux-ptrace.h: ... to here.
12332
12333 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
12334
12335         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
12336         inf_ptrace_detach_success.
12337         (inf_ptrace_detach_success): Add inferior parameter, use it
12338         instead of inferior_ptid, pass it to detach_inferior.
12339         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
12340         parameter.
12341         * inferior.c (detach_inferior): Add overload that takes an
12342         inferior object.
12343         * inferior.h (detach_inferior): Likewise.
12344         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
12345         use inferior_ptid, adjust call to inf_ptrace_detach_success.
12346         * linux-thread-db.c (thread_db_detach): Use inf parameter.
12347
12348 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
12349
12350         * target.h (struct target_ops) <to_detach>: Add inferior
12351         parameter.
12352         (target_detach): Likewise.
12353         * target.c (dispose_inferior): Pass inferior down.
12354         (target_detach): Pass inferior down.  Assert that it is equal to
12355         the current inferior.
12356         * aix-thread.c (aix_thread_detach): Pass inferior down.
12357         * corefile.c (core_file_command): Pass current_inferior() down.
12358         * corelow.c (core_detach): Add inferior parameter.
12359         * darwin-nat.c (darwin_detach): Likewise.
12360         * gnu-nat.c (gnu_detach): Likewise.
12361         * inf-ptrace.c (inf_ptrace_detach): Likewise.
12362         * infcmd.c (detach_command): Pass current_inferior() down to
12363         target_detach.
12364         * infrun.c (follow_fork_inferior): Pass parent_inf to
12365         target_detach.
12366         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
12367         target_detach.
12368         * linux-nat.c (linux_nat_detach): Add inferior parameter.
12369         * linux-thread-db.c (thread_db_detach): Likewise.
12370         * nto-procfs.c (procfs_detach): Likewise.
12371         * procfs.c (procfs_detach): Likewise.
12372         * record.c (record_detach): Likewise.
12373         * record.h (struct inferior): Forward-declare.
12374         (record_detach): Add inferior parameter.
12375         * remote-sim.c (gdbsim_detach): Likewise.
12376         * remote.c (remote_detach_1): Likewise.
12377         (remote_detach): Likewise.
12378         (extended_remote_detach): Likewise.
12379         * sol-thread.c (sol_thread_detach): Likewise.
12380         * target-debug.h (target_debug_print_inferior_p): New macro.
12381         * target-delegates.c: Re-generate.
12382         * top.c (kill_or_detach): Pass inferior down to target_detach.
12383         * windows-nat.c (windows_detach): Add inferior parameter.
12384
12385 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
12386
12387         * target.h (struct target_ops) <to_detach>: Remove args
12388         parameter.
12389         (target_detach): Likewise.
12390         * target.c (dispose_inferior): Adjust.
12391         (target_detach): Remove args parameter, adjust.
12392         * aix-thread.c (aix_thread_detach): Adjust.
12393         * corefile.c (core_file_command): Adjust.
12394         * corelow.c (core_detach): Adjust.
12395         * darwin-nat.c (darwin_detach): Adjust.
12396         * gnu-nat.c (gnu_detach): Adjust.
12397         * inf-ptrace.c (inf_ptrace_detach): Adjust.
12398         * infcmd.c (detach_command): Adjust
12399         * infrun.c (follow_fork_inferior): Adjust.
12400         (handle_vfork_child_exec_or_exit): Adjust.
12401         * linux-fork.c (linux_fork_detach): Remove args parameter.
12402         * linux-fork.h (linux_fork_detach): Likewise.
12403         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
12404         * linux-thread-db.c (thread_db_detach): Likewise.
12405         * nto-procfs.c (procfs_detach): Likewise.
12406         * procfs.c (procfs_detach): Likewise.
12407         (do_detach): Remove signo parameter.
12408         * record.c (record_detach): Remove args parameter.
12409         * record.h (record_detach): Likewise.
12410         * remote-sim.c (gdbsim_detach): Likewise.
12411         * remote.c (remote_detach_1): Likewise.
12412         (remote_detach): Likewise.
12413         (extended_remote_detach): Likewise.
12414         * sol-thread.c (sol_thread_detach): Likewise.
12415         * target-delegates.c: Re-generate.
12416         * top.c (struct qt_args) <args>: Remove field.
12417         (kill_or_detach): Don't pass args.
12418         (quit_force): Don't set args.
12419         * windows-nat.c (windows_detach): Remove args parameter.
12420
12421 2018-01-19  Yao Qi  <yao.qi@linaro.org>
12422
12423         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
12424         (arm_linux_init_abi): Install it.
12425
12426 2018-01-19  Yao Qi  <yao.qi@linaro.org>
12427
12428         * osabi.c (gdb_osabi_names): Extend the regexp for
12429         arm-linux-gnueabihf.
12430
12431 2018-01-18  Yao Qi  <yao.qi@linaro.org>
12432
12433         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
12434         m_abbrevs.
12435         (abbrev_table::add_abbrev): Update.
12436         (abbrev_table::lookup_abbrev): Update.
12437
12438 2018-01-18  Yao Qi  <yao.qi@linaro.org>
12439
12440         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
12441
12442 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
12443
12444         * compile/compile.c (compile_to_object): Convert "triplet_rx"
12445         to "std::string".
12446
12447 2018-01-17  Tom Tromey  <tom@tromey.com>
12448
12449         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
12450
12451 2018-01-17  Tom Tromey  <tom@tromey.com>
12452
12453         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
12454         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
12455         (create_array_type_with_stride): Update.
12456         * dwarf2read.c (set_die_type): Update.
12457
12458 2018-01-17  Tom Tromey  <tom@tromey.com>
12459
12460         * dwarf2read.c (delayed_method_info): Remove typedef.
12461         (dwarf2_cu::method_info): Now a std::vector.
12462         (add_to_method_list): Update.
12463         (free_delayed_list): Remove.
12464         (compute_delayed_physnames): Update.
12465         (process_full_comp_unit, process_full_type_unit): Clear the method
12466         list.  Remove cleanups.
12467         (psymtab_include_file_name): Add name_holder parameter.  Use
12468         unique_xmalloc_ptr.
12469         (dwarf_decode_lines): Update.
12470
12471 2018-01-17  Tom Tromey  <tom@tromey.com>
12472             Simon Marchi  <simon.marchi@ericsson.com>
12473
12474         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
12475         (dwarf2_per_objfile::free_cached_comp_units)
12476         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
12477         (init_cutu_and_read_dies_no_follow): Update.
12478         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
12479         (dwarf2_cu::~dwarf2_cu): New.
12480         (free_heap_comp_unit, free_stack_comp_unit): Remove.
12481         (age_cached_comp_units, free_one_cached_comp_unit): Update.
12482
12483 2018-01-17  Tom Tromey  <tom@tromey.com>
12484             Simon Marchi  <simon.marchi@ericsson.com>
12485
12486         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
12487         (struct die_reader_specs) <abbrev_table>: New member.
12488         (struct abbrev_table): Add constructor.
12489         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
12490         <abbrev_obstack>: Now an auto_obstack.
12491         (abbrev_table_up): New typedef.
12492         (init_cu_die_reader): Add abbrev_table parameter.
12493         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
12494         Add result_dwo_abbrev_table.
12495         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
12496         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
12497         Update.
12498         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
12499         parameter.
12500         (skip_children): Update.
12501         (abbrev_table::alloc_abbrev): Rename from
12502         abbrev_table_alloc_abbrev.
12503         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
12504         (abbrev_table::lookup_abbrev): Rename from
12505         abbrev_table_lookup_abbrev.
12506         (abbrev_table_read_table): Return abbrev_table_up.
12507         (abbrev_table_free, abbrev_table_free_cleanup)
12508         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
12509         (load_partial_dies): Update.
12510
12511 2018-01-17  Tom Tromey  <tom@tromey.com>
12512
12513         * dwarf2read.c (dwarf2_compute_name): Update comment.
12514         (read_func_scope, read_variable): Update.
12515         (new_symbol): Remove.
12516         (new_symbol_full): Rename to new_symbol.
12517
12518 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
12519
12520         PR gdb/16577
12521         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
12522         a warning instead of throwing an error, set section size to 0 and return
12523         NULL.
12524         * gdb_bfd.h (gdb_bfd_map_section): Update description.
12525
12526 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
12527
12528         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
12529         std::string.
12530         (linux_ptrace_attach_fail_reason_string): Likewise.
12531         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
12532         Likewise.
12533         (linux_ptrace_attach_fail_reason_string): Likewise.
12534         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
12535
12536 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
12537
12538         * linux-nat.c (linux_nat_attach): Remove xstrdup.
12539
12540 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
12541
12542         PR gdb/21559
12543         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
12544         checking for fs_base/gs_base fields in struct user_regs_struct.
12545         * configure: Regenerate.
12546
12547 2018-01-17  Yao Qi  <yao.qi@linaro.org>
12548
12549         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
12550         function.
12551         (aarch64_linux_init_abi): Install it to gdbarch hook
12552         gcc_target_options.
12553
12554 2018-01-15  Pedro Alves  <palves@redhat.com>
12555
12556         * common/signals-state-save-restore.c
12557         (save_original_signals_state): Fix typos.
12558
12559 2017-01-12  Tom Tromey  <tom@tromey.com>
12560             Sergio Durigan Junior  <sergiodj@redhat.com>
12561
12562         * Makefile.in (install-only): Install gdb-add-index.
12563
12564 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
12565
12566         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
12567
12568 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12569
12570         * infrun.c (keep_going_pass_signal): Clear step-over info when
12571         insert_breakpoints fails.
12572
12573 2018-01-11  Pedro Alves  <palves@redhat.com>
12574
12575         PR gdb/22583
12576         * infrun.c (resume): Rename to ...
12577         (resume_1): ... this.
12578         (resume): Reimplement as wrapper around resume_1.
12579
12580 2018-01-11  Pedro Alves  <palves@redhat.com>
12581
12582         PR remote/22597
12583         * remote.c (remote_parse_stop_reply): Default to the last-set
12584         general thread instead of to 'magic_null_ptid'.
12585
12586 2018-01-10  Pedro Alves  <palves@redhat.com>
12587
12588         * language.h (language_get_symbol_name_matcher): Rename ...
12589         (get_symbol_name_matcher): ... this.
12590         * language.c (language_get_symbol_name_matcher): Ditto.
12591         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
12592         callers adjusted.
12593
12594 2018-01-10  Pedro Alves  <palves@redhat.com>
12595
12596         PR gdb/22670
12597         * dwarf2read.c
12598         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
12599         Adjust to use language_get_symbol_name_matcher instead of
12600         language_defn::la_get_symbol_name_matcher.
12601         * language.c (language_get_symbol_name_matcher): If in Ada mode
12602         and the lookup name is a verbatim match, return Ada's matcher.
12603         * language.h (language_get_symbol_name_matcher): Adjust comment.
12604         (ada_lookup_name_info::verbatim_p):: New method.
12605
12606 2018-01-10  Pedro Alves  <palves@redhat.com>
12607
12608         PR gdb/22670
12609         * ada-lang.c (ada_collect_symbol_completion_matches): If the
12610         minsym's language is language_auto or language_cplus, pass down
12611         language_ada instead.
12612         * symtab.c (compare_symbol_name): Don't frob symbol language here.
12613
12614 2018-01-10  Pedro Alves  <palves@redhat.com>
12615
12616         PR gdb/22670
12617         * minsyms.c (linkage_name_str): New function.
12618         (iterate_over_minimal_symbols): Use it.
12619
12620 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12621
12622         * NEWS: Document that 'info proc' now works on FreeBSD.
12623
12624 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12625
12626         * configure.ac: Check for kinfo_getfile in libutil.
12627         * configure: Regenerate.
12628         * config.in: Regenerate.
12629         * fbsd-nat.c: Include "fbsd-tdep.h".
12630         (fbsd_fetch_cmdline): New.
12631         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
12632         rather than calling error.
12633         (fbsd_info_proc): New.
12634         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
12635         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
12636         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
12637
12638 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12639
12640         * fbsd-nat.c (struct free_deleter): Remove.
12641         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
12642
12643 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12644
12645         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
12646         NULL for an empty pathname.
12647
12648 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12649
12650         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
12651         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
12652         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
12653         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
12654         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
12655         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
12656         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
12657         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
12658         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
12659         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
12660         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
12661         (fbsd_core_fetch_timeval, fbsd_print_sigset)
12662         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
12663         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
12664         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
12665
12666 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
12667
12668         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
12669         (gnu_xfer_auxv): New function.
12670         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
12671         TARGET_OBJECT_AUXV.
12672
12673 2018-01-08  Yao Qi  <yao.qi@linaro.org>
12674             Simon Marchi  <simon.marchi@ericsson.com>
12675
12676         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
12677         common/selftest.c.
12678         (COMMON_OBS): Remove selftest.o.
12679         * configure.ac: Append selftest-arch.c and common/selftest.c to
12680         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
12681         * configure: Re-generated.
12682         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
12683         GDB_SELF_TEST.
12684         (maintenance_info_selftests): Likewise.
12685
12686 2018-01-08  Xavier Roirand  <roirand@adacore.com>
12687
12688         * ada-valprint.c (val_print_packed_array_elements): Use
12689         proper number of elements when printing an array indexed
12690         by an enumeration type.
12691
12692 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
12693
12694         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
12695         (dw2_get_file_names_reader): Adjust.
12696         (lookup_dwo_signatured_type): Adjust.
12697         (lookup_dwp_signatured_type): Adjust.
12698         (lookup_signatured_type): Adjust.
12699         (create_type_unit_group): Adjust.
12700         (get_type_unit_group): Adjust.
12701         (process_psymtab_comp_unit_reader): Adjust.
12702         (build_type_psymtabs_reader): Adjust.
12703         (scan_partial_symbols): Adjust.
12704         (add_partial_symbol): Adjust.
12705         (add_partial_subprogram): Adjust.
12706         (peek_die_abbrev): Adjust.
12707         (fixup_go_packaging): Adjust.
12708         (process_imported_unit_die): Adjust.
12709         (dwarf2_compute_name): Adjust.
12710         (dwarf2_physname): Adjust.
12711         (read_import_statement): Adjust.
12712         (handle_DW_AT_stmt_list): Adjust.
12713         (read_file_scope): Adjust.
12714         (read_func_scope): Adjust.
12715         (read_lexical_block_scope): Adjust.
12716         (read_call_site_scope): Adjust.
12717         (read_variable): Adjust.
12718         (dwarf2_rnglists_process): Adjust.
12719         (dwarf2_ranges_process): Adjust.
12720         (dwarf2_ranges_read): Adjust.
12721         (dwarf2_get_pc_bounds): Adjust.
12722         (dwarf2_record_block_ranges): Adjust.
12723         (dwarf2_add_field): Adjust.
12724         (dwarf2_add_member_fn): Adjust.
12725         (read_structure_type): Adjust.
12726         (process_structure_scope): Adjust.
12727         (read_enumeration_type): Adjust.
12728         (read_array_type): Adjust.
12729         (mark_common_block_symbol_computed): Adjust.
12730         (read_common_block): Adjust.
12731         (read_namespace_type): Adjust.
12732         (read_namespace): Adjust.
12733         (read_module_type): Adjust.
12734         (read_tag_pointer_type): Adjust.
12735         (read_tag_ptr_to_member_type): Adjust.
12736         (read_tag_string_type): Adjust.
12737         (read_subroutine_type): Adjust.
12738         (read_typedef): Adjust.
12739         (read_base_type): Adjust.
12740         (attr_to_dynamic_prop): Adjust.
12741         (read_subrange_type): Adjust.
12742         (read_unspecified_type): Adjust.
12743         (dwarf2_read_abbrevs): Adjust.
12744         (load_partial_dies): Adjust.
12745         (read_partial_die): Adjust.
12746         (find_partial_die): Adjust.
12747         (guess_partial_die_structure_name): Adjust.
12748         (fixup_partial_die): Adjust.
12749         (read_attribute_value): Adjust.
12750         (read_addr_index): Adjust.
12751         (read_addr_index_from_leb128): Adjust.
12752         (read_str_index): Adjust.
12753         (dwarf2_string_attr): Adjust.
12754         (get_debug_line_section): Adjust.
12755         (dwarf_decode_line_header): Adjust.
12756         (lnp_state_machine::check_line_address): Adjust.
12757         (dwarf_decode_lines_1): Adjust.
12758         (dwarf_decode_lines): Adjust.
12759         (dwarf2_start_symtab): Adjust.
12760         (var_decode_location): Adjust.
12761         (new_symbol_full): Adjust.
12762         (dwarf2_const_value_data): Adjust.
12763         (dwarf2_const_value_attr): Adjust.
12764         (dwarf2_const_value): Adjust.
12765         (die_type): Adjust.
12766         (die_containing_type): Adjust.
12767         (build_error_marker_type): Adjust.
12768         (lookup_die_type): Adjust.
12769         (guess_full_die_structure_name): Adjust.
12770         (anonymous_struct_prefix): Adjust.
12771         (determine_prefix): Adjust.
12772         (dwarf2_name): Adjust.
12773         (follow_die_ref_or_sig): Adjust.
12774         (follow_die_offset): Adjust.
12775         (follow_die_ref): Adjust.
12776         (follow_die_sig_1): Adjust.
12777         (follow_die_sig): Adjust.
12778         (get_signatured_type): Adjust.
12779         (get_DW_AT_signature_type): Adjust.
12780         (decode_locdesc): Adjust.
12781         (dwarf_decode_macros): Adjust.
12782         (cu_debug_loc_section): Adjust.
12783         (fill_in_loclist_baton): Adjust.
12784         (dwarf2_symbol_mark_computed): Adjust.
12785         (init_one_comp_unit): Don't assign
12786         dwarf2_cu::dwarf2_per_objfile.
12787         (set_die_type): Adjust.
12788
12789 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
12790
12791         * dwarf2read.c (struct mapped_debug_names): Add constructor.
12792         <dwarf2_per_objfile>: New field.
12793         (dwarf2_per_objfile): Remove global.
12794         (get_dwarf2_per_objfile): New function.
12795         (set_dwarf2_per_objfile): New function.
12796         (dwarf2_build_psymtabs_hard): Change objfile parameter to
12797         dwarf2_per_objfile.
12798         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
12799         (read_abbrev_offset): Likewise.
12800         (read_indirect_string): Likewise.
12801         (read_indirect_line_string): Likewise.
12802         (read_indirect_string_at_offset): Likewise.
12803         (read_indirect_string_from_dwz): Likewise.
12804         (dwarf2_find_containing_comp_unit): Change objfile parameter to
12805         dwarf2_per_objfile.
12806         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
12807         (create_all_comp_units): Change objfile parameter to
12808         dwarf2_per_objfile.
12809         (create_all_type_units): Likewise.
12810         (process_queue): Add dwarf2_per_objfile parameter.
12811         (read_and_check_comp_unit_head): Likewise.
12812         (lookup_dwo_unit_in_dwp): Likewise.
12813         (get_dwp_file): Likewise.
12814         (process_cu_includes): Likewise.
12815         (struct free_dwo_file_cleanup_data): New struct.
12816         (dwarf2_has_info): Use get_dwarf2_per_objfile and
12817         set_dwarf2_per_objfile.
12818         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
12819         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
12820         context, adjust calls.
12821         (dw2_instantiate_symtab): Likewise.
12822         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
12823         (dw2_get_cu): Likewise.
12824         (create_cu_from_index_list): Change objfile parameter to
12825         dwarf2_per_objfile.
12826         (create_cus_from_index_list): Get dwarf2_per_objfile from
12827         context, adjust calls.
12828         (create_cus_from_index): Likewise.
12829         (create_signatured_type_table_from_index): Change objfile
12830         parameter to dwarf2_per_objfile.
12831         (create_signatured_type_table_from_debug_names): Change objfile
12832         parameter to dwarf2_per_objfile.
12833         (create_addrmap_from_index): Likewise.
12834         (create_addrmap_from_aranges): Likewise.
12835         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
12836         (dw2_setup): Remove.
12837         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
12838         context.
12839         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
12840         get_dwarf2_per_objfile.
12841         (dw2_forget_cached_source_info): Likewise.
12842         (dw2_map_symtabs_matching_filename): Likewise.
12843         (struct dw2_symtab_iterator) <index>: Remove.
12844         <dwarf2_per_objfile>: New field.
12845         (dw2_symtab_iter_init): Replace index parameter with
12846         dwarf2_per_objfile.
12847         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
12848         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
12849         (dw2_print_stats): Likewise.
12850         (dw2_dump): Likewise.
12851         (dw2_expand_symtabs_for_function): Likewise.
12852         (dw2_expand_all_symtabs): Likewise.
12853         (dw2_expand_symtabs_with_fullname): Likewise.
12854         (dw2_expand_marked_cus): Replace index and objfile parameters
12855         with dwarf2_per_objfile.
12856         (dw_expand_symtabs_matching_file_matcher): Add
12857         dwarf2_per_objfile parameter and adjust calls.
12858         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
12859         adjust calls.
12860         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
12861         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
12862         adjust calls.
12863         (create_cus_from_debug_names_list): Replace objfile parameter
12864         with dwarf2_per_objfile and adjust calls.
12865         (create_cus_from_debug_names): Likewise.
12866         (dwarf2_read_debug_names): Likewise.
12867         (mapped_debug_names::namei_to_name): Adjust call.
12868         (dw2_debug_names_iterator::next): Likewise.
12869         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
12870         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
12871         (dw2_debug_names_dump): Likewise.
12872         (dw2_debug_names_expand_symtabs_for_function): Likewise.
12873         (dw2_debug_names_expand_symtabs_matching): Likewise.
12874         (dwarf2_initialize_objfile): Likewise.
12875         (dwarf2_build_psymtabs): Likewise.
12876         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
12877         this_cu.
12878         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
12879         (read_and_check_comp_unit_head): Likewise.
12880         (read_abbrev_offset): Likewise.
12881         (create_debug_type_hash_table): Likewise.
12882         (create_debug_types_hash_table): Likewise.
12883         (create_all_type_units): Replace objfile parameter with
12884         dwarf2_per_objfile.
12885         (add_type_unit): Add dwarf2_per_objfile parameter.
12886         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
12887         with dwarf2_per_objfile.
12888         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
12889         (lookup_dwp_signatured_type): Likewise.
12890         (lookup_signatured_type): Likewise.
12891         (read_cutu_die_from_dwo): Likewise.
12892         (init_tu_and_read_dwo_dies): Likewise.
12893         (init_cutu_and_read_dies): Likewise.
12894         (init_cutu_and_read_dies_no_follow): Likewise.
12895         (allocate_type_unit_groups_table): Add objfile parameter.
12896         (create_type_unit_group): Use dwarf2_per_objfile from cu.
12897         (get_type_unit_group): Likewise.
12898         (process_psymtab_comp_unit): Update call.
12899         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
12900         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
12901         (print_tu_stats): Likewise.
12902         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
12903         in void* parameter.
12904         (build_type_psymtabs): Change objfile parameter to
12905         dwarf2_per_objfile.
12906         (process_skeletonless_type_unit): Use dwarf2_per_objfile
12907         passed in void* parameter.
12908         (process_skeletonless_type_units): Change objfile parameter to
12909         dwarf2_per_objfile.
12910         (set_partial_user): Likewise.
12911         (dwarf2_build_psymtabs_hard): Likewise.
12912         (read_comp_units_from_section): Likewise.
12913         (create_all_comp_units): Likewise.
12914         (scan_partial_symbols): Update calls.
12915         (add_partial_symbol): Likewise.
12916         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
12917         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
12918         (process_queue): Add dwarf2_per_objfile parameter.
12919         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
12920         (compute_compunit_symtab_includes): Likewise.
12921         (process_cu_includes): Add dwarf2_per_objfile parameter.
12922         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
12923         (process_full_type_unit): Likewise.
12924         (process_imported_unit_die): Update call.
12925         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
12926         (read_file_scope): Likewise.
12927         (allocate_dwo_file_hash_table): Add objfile parameter.
12928         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
12929         (create_cus_hash_table): Likewise.
12930         (create_dwp_hash_table): Likewise.
12931         (create_dwo_unit_in_dwp_v1): Likewise.
12932         (create_dwp_v2_section): Likewise.
12933         (create_dwo_unit_in_dwp_v2): Likewise.
12934         (lookup_dwo_unit_in_dwp): Likewise.
12935         (try_open_dwop_file): Likewise.
12936         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
12937         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
12938         cleanup to include a reference to dwarf2_per_objfile.
12939         (open_dwp_file): Add dwarf2_per_objfile parameter.
12940         (open_and_init_dwp_file): Likewise.
12941         (get_dwp_file): Likewise.
12942         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
12943         (queue_and_load_all_dwo_tus): Update call.
12944         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
12945         data.
12946         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
12947         (dwarf2_ranges_process): Likewise.
12948         (dwarf2_get_pc_bounds): Likewise.
12949         (mark_common_block_symbol_computed): Likewise.
12950         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
12951         (dwarf2_read_abbrevs): Update call.
12952         (read_partial_die): Use dwarf2_per_objfile from cu.
12953         (find_partial_die): Likewise.
12954         (fixup_partial_die): Likewise.
12955         (read_attribute_value): Likewise.
12956         (read_indirect_string_at_offset_from): Add objfile parameter.
12957         (read_indirect_string_at_offset): Add dwarf2_per_objfile
12958         parameter.
12959         (read_indirect_string_from_dwz): Add objfile parameter.
12960         (read_indirect_string): Add objfile parameter.
12961         (read_addr_index_1): Add dwarf2_per_objfile parameter.
12962         (read_addr_index): Use dwarf2_per_objfile from cu.
12963         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
12964         call dw2_setup.
12965         (read_str_index): Use dwarf2_per_objfile from cu.
12966         (get_debug_line_section): Likewise.
12967         (read_formatted_entries): Add dwarf2_per_objfile parameter.
12968         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
12969         (new_symbol_full): Use dwarf2_per_objfile from cu.
12970         (build_error_marker_type): Likewise.
12971         (lookup_die_type): Likewise.
12972         (determine_prefix): Likewise.
12973         (follow_die_offset): Likewise.
12974         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
12975         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
12976         (dwarf2_fetch_die_type_sect_off): Likewise.
12977         (dwarf2_get_die_type): Likewise.
12978         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
12979         (get_signatured_type): Likewise.
12980         (get_DW_AT_signature_type): Likewise.
12981         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
12982         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
12983         (cu_debug_loc_section): Likewise.
12984         (fill_in_loclist_baton): Likewise.
12985         (dwarf2_symbol_mark_computed): Likewise.
12986         (dwarf2_find_containing_comp_unit): Change objfile parameter to
12987         dwarf2_per_objfile.
12988         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
12989         parameter.
12990         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
12991         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
12992         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
12993         (set_die_type): Use dwarf2_free_objfile from cu.
12994         (get_die_type_at_offset): Likewise.
12995         (dwarf2_per_objfile_free): Don't assign global variable.
12996         (debug_names) <constructor>: Add dwarf2_per_objfile
12997         parameter, update m_debugstrlookup construction.
12998         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
12999         parameter.
13000         <m_dwarf2_per_objfile>: New field.
13001         <lookup>: Use m_dwarf2_per_objfile.
13002         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
13003         (psyms_seen_size): Likewise.
13004         (write_gdbindex): Replace objfile parameter with
13005         dwarf2_per_objfile.
13006         (write_debug_names): Likewise.
13007         (write_psymtabs_to_index): Likewise.
13008         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
13009         calls.
13010
13011 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
13012
13013         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
13014         <dwarf2_per_objfile>: New field.
13015         (struct dwarf2_per_cu_data) <objfile>: Remove.
13016         <dwarf2_per_objfile>: New field.
13017         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
13018         of objfile.
13019         (create_signatured_type_table_from_index): Likewise.
13020         (create_debug_type_hash_table): Likewise.
13021         (fill_in_sig_entry_from_dwo_entry): Likewise.
13022         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
13023         (create_type_unit_group): Assign dwarf2_per_objfile instead of
13024         objfile.
13025         (create_partial_symtab): Access objfile through
13026         dwarf2_per_objfile.
13027         (process_psymtab_comp_unit_reader): Likewise.
13028         (read_comp_units_from_section): Likewise.
13029         (scan_partial_symbols): Likewise.
13030         (add_partial_symbol): Likewise.
13031         (add_partial_subprogram): Likewise.
13032         (peek_die_abbrev): Likewise.
13033         (fixup_go_packaging): Likewise.
13034         (process_full_comp_unit): Likewise.
13035         (process_full_type_unit): Likewise.
13036         (process_imported_unit_die): Likewise.
13037         (dwarf2_compute_name): Likewise.
13038         (dwarf2_physname): Likewise.
13039         (read_import_statement): Likewise.
13040         (create_cus_hash_table): Assign dwarf2_physname instead of
13041         objfile.
13042         (read_func_scope): Access objfile through dwarf2_per_objfile.
13043         (read_lexical_block_scope): Likewise.
13044         (read_call_site_scope): Likewise.
13045         (read_variable): Likewise.
13046         (dwarf2_rnglists_process): Likewise.
13047         (dwarf2_ranges_process): Likewise.
13048         (dwarf2_ranges_read): Likewise.
13049         (dwarf2_record_block_ranges): Likewise.
13050         (dwarf2_add_field): Likewise.
13051         (dwarf2_add_member_fn): Likewise.
13052         (read_structure_type): Likewise.
13053         (process_structure_scope): Likewise.
13054         (read_enumeration_type): Likewise.
13055         (read_array_type): Likewise.
13056         (read_common_block): Likewise.
13057         (read_namespace_type): Likewise.
13058         (read_namespace): Likewise.
13059         (read_module_type): Likewise.
13060         (read_tag_pointer_type): Likewise.
13061         (read_tag_ptr_to_member_type): Likewise.
13062         (read_tag_string_type): Likewise.
13063         (read_subroutine_type): Likewise.
13064         (read_typedef): Likewise.
13065         (read_base_type): Likewise.
13066         (attr_to_dynamic_prop): Likewise.
13067         (read_subrange_type): Likewise.
13068         (read_unspecified_type): Likewise.
13069         (load_partial_dies): Likewise.
13070         (read_partial_die): Likewise.
13071         (find_partial_die): Likewise.
13072         (guess_partial_die_structure_name): Likewise.
13073         (fixup_partial_die): Likewise.
13074         (read_attribute_value): Likewise.
13075         (read_addr_index_from_leb128): Likewise.
13076         (dwarf2_read_addr_index): Likewise.
13077         (dwarf2_string_attr): Likewise.
13078         (lnp_state_machine::check_line_address): Likewise.
13079         (dwarf_decode_lines_1): Likewise.
13080         (dwarf_decode_lines): Likewise.
13081         (dwarf2_start_symtab): Likewise.
13082         (var_decode_location): Likewise.
13083         (new_symbol_full): Likewise.
13084         (dwarf2_const_value_data): Likewise.
13085         (dwarf2_const_value_attr): Likewise.
13086         (dwarf2_const_value): Likewise.
13087         (die_type): Likewise.
13088         (die_containing_type): Likewise.
13089         (lookup_die_type): Likewise.
13090         (guess_full_die_structure_name): Likewise.
13091         (anonymous_struct_prefix): Likewise.
13092         (dwarf2_name): Likewise.
13093         (follow_die_ref_or_sig): Likewise.
13094         (follow_die_offset): Likewise.
13095         (follow_die_ref): Likewise.
13096         (dwarf2_fetch_die_loc_sect_off): Likewise.
13097         (dwarf2_fetch_constant_bytes): Likewise.
13098         (dwarf2_fetch_die_type_sect_off): Likewise.
13099         (dwarf2_get_die_type): Likewise.
13100         (follow_die_sig): Likewise.
13101         (decode_locdesc): Likewise.
13102         (dwarf2_per_cu_objfile): Likewise.
13103         (dwarf2_per_cu_text_offset): Likewise.
13104         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
13105         objfile.
13106         (set_die_type): Access objfile through
13107         dwarf2_per_objfile.
13108
13109 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
13110
13111         * valprint.c (converted_character_d): Remove typedef.
13112         (DEF_VEC_O (converted_character_d)): Remove.
13113         (count_next_character): Use std::vector.
13114         (print_converted_chars_to_obstack): Likewise.
13115         (generic_printstr): Likewise.
13116
13117 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13118
13119         * xml-support.h (struct gdb_xml_value): Add constructor.
13120         <value>: Change type to unique_xmalloc_ptr.
13121         (gdb_xml_value_s): Remove typedef.
13122         (DEF_VEC_O (gdb_xml_value_s)): Remove.
13123         (gdb_xml_element_start_handler): Change parameter type to
13124         std::vector.
13125         (xml_find_attribute): Likewise.
13126         * xml-support.c (xml_find_attribute): Change parameter type to
13127         std::vector and adjust.
13128         (gdb_xml_values_cleanup): Remove.
13129         (gdb_xml_parser::start_element): Adjust to std::vector.
13130         (xinclude_start_include): Change paraeter type to std::vector
13131         and adjust.
13132         * btrace.c (check_xml_btrace_version): Likewise.
13133         (parse_xml_btrace_block): Likewise.
13134         (parse_xml_btrace_pt_config_cpu): Likewise.
13135         (parse_xml_btrace_pt): Likewise.
13136         (parse_xml_btrace_conf_bts): Likewise.
13137         (parse_xml_btrace_conf_pt): Likewise.
13138         * memory-map.c (memory_map_start_memory): Likewise.
13139         (memory_map_start_property): Likewise.
13140         * osdata.c (osdata_start_osdata): Likewise.
13141         (osdata_start_item): Likewise.
13142         (osdata_start_column): Likewise.
13143         * remote.c (start_thread): Likewise.
13144         * solib-aix.c (library_list_start_library): Likewise.
13145         (library_list_start_list): Likewise.
13146         * solib-svr4.c (library_list_start_library): Likewise.
13147         (svr4_library_list_start_list): Likewise.
13148         * solib-target.c (library_list_start_segment): Likewise.
13149         (library_list_start_section): Likewise.
13150         (library_list_start_library): Likewise.
13151         (library_list_start_list): Likewise.
13152         * tracepoint.c (traceframe_info_start_memory): Likewise.
13153         (traceframe_info_start_tvar): Likewise.
13154         * xml-syscall.c (syscall_start_syscall): Likewise.
13155         * xml-tdesc.c (tdesc_start_target): Likewise.
13156         (tdesc_start_feature): Likewise.
13157         (tdesc_start_reg): Likewise.
13158         (tdesc_start_union): Likewise.
13159         (tdesc_start_struct): Likewise.
13160         (tdesc_start_flags): Likewise.
13161         (tdesc_start_enum): Likewise.
13162         (tdesc_start_field): Likewise.
13163         (tdesc_start_enum_value): Likewise.
13164         (tdesc_start_vector): Likewise.
13165
13166 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13167
13168         * extension.h (struct xmethod_worker) <clone>: Remove.
13169         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
13170         Remove.
13171         (python_xmethod_worker::clone): Remove.
13172         * valops.c (find_overload_match): Use std::move instead of
13173         clone.
13174
13175 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13176
13177         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
13178         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
13179         <free_xmethod_worker_data>: Remove.
13180         <get_matching_xmethod_workers>: Chance VEC to std::vector.
13181         <get_xmethod_arg_types>: Remove.
13182         <get_xmethod_result_type>: Remove.
13183         <invoke_xmethod>: Remove.
13184         * extension.c (new_xmethod_worker): Remove.
13185         (clone_xmethod_worker): Remove.
13186         (get_matching_xmethod_workers): Return void, pass std::vector by
13187         pointer.
13188         (get_xmethod_arg_types): Rename to...
13189         (xmethod_worker::get_arg_types): ... this, and adjust.
13190         (get_xmethod_result_type): Rename to...
13191         (xmethod_worker::get_result_type): ... this, and adjust.
13192         (invoke_xmethod): Remove.
13193         (free_xmethod_worker): Remove.
13194         (free_xmethod_worker_vec): Remove.
13195         * extension.h (enum ext_lang_rc): Move here from
13196         extension-priv.h.
13197         (struct xmethod_worker): Add constructor and destructor.
13198         <data>: Remove.
13199         <value>: Remove.
13200         <invoke, clone, do_get_result_type, do_get_arg_types>: New
13201         virtual pure methods.
13202         <get_arg_types, get_result_type>: New methods.
13203         (xmethod_worker_ptr): Remove typedef.
13204         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
13205         (xmethod_worker_vec): Remove typedef.
13206         (xmethod_worker_up): New typedef.
13207         (invoke_xmethod): Remove.
13208         (clone_xmethod_worker): Remove.
13209         (free_xmethod_worker): Remove.
13210         (free_xmethod_worker_vec): Remove.
13211         (get_xmethod_arg_types): Remove.
13212         (get_xmethod_result_type): Remove.
13213         * valops.c (find_method_list): Use std::vector, don't use
13214         intermediate vector.
13215         (value_find_oload_method_list): Use std::vector.
13216         (find_overload_match): Use std::vector.
13217         (find_oload_champ): Use std::vector.
13218         * value.c (value_free): Use operator delete.
13219         (value_of_xmethod): Rename to...
13220         (value_from_xmethod): ... this.  Don't assign
13221         xmethod_worker::value, take rvalue-reference.
13222         (result_type_of_xmethod): Adjust.
13223         (call_xmethod): Adjust.
13224         * value.h: Include extension.h.
13225         (struct xmethod_worker): Don't forward-declare.
13226         (value_of_xmethod): Rename to...
13227         (value_from_xmethod): ... this, take rvalue-reference.
13228         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
13229         (struct python_xmethod_worker): ... this, add constructor and
13230         destructor.
13231         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
13232         (gdbpy_free_xmethod_worker_data): Rename to...
13233         (python_xmethod_worker::~python_xmethod_worker): ... this and
13234         adjust.
13235         (gdbpy_clone_xmethod_worker_data): Rename to...
13236         (python_xmethod_worker::clone): ... this and adjust.
13237         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
13238         temporary vector.
13239         (gdbpy_get_xmethod_arg_types): Rename to...
13240         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
13241         (gdbpy_get_xmethod_result_type): Rename to...
13242         (python_xmethod_worker::do_get_result_type): ... this and
13243         adjust.
13244         (gdbpy_invoke_xmethod): Rename to...
13245         (python_xmethod_worker::invoke): ... this and adjust.
13246         (new_python_xmethod_worker): Rename to...
13247         (python_xmethod_worker::python_xmethod_worker): ... this and
13248         adjust.
13249         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
13250         Remove.
13251         (gdbpy_free_xmethod_worker_data): Remove.
13252         (gdbpy_get_matching_xmethod_workers): Use std::vector.
13253         (gdbpy_get_xmethod_arg_types): Remove.
13254         (gdbpy_get_xmethod_result_type): Remove.
13255         (gdbpy_invoke_xmethod): Remove.
13256         * python/python.c (python_extension_ops): Remove obsolete
13257         callbacks.
13258
13259 2018-01-05  Pedro Alves  <palves@redhat.com>
13260
13261         PR gdb/18653
13262         * common/signals-state-save-restore.c
13263         (save_original_signals_state): New parameter 'quiet'.  Warn if we
13264         find a custom handler preinstalled, instead of internal erroring.
13265         But only warn if !quiet.
13266         * common/signals-state-save-restore.h
13267         (save_original_signals_state): New parameter 'quiet'.
13268         * main.c (captured_main_1): Move save_original_signals_state call
13269         after option handling, and pass QUIET.
13270
13271 2018-01-05  Pedro Alves  <palves@redhat.com>
13272
13273         * spu-tdep.c (spu_catch_start): Pass
13274         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
13275
13276 2018-01-05  Pedro Alves  <palves@redhat.com>
13277
13278         PR gdb/22670
13279         * ada-lang.c (literal_symbol_name_matcher): New function.
13280         (ada_get_symbol_name_matcher): Use it for
13281         symbol_name_match_type::SEARCH_NAME.
13282         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
13283         it down instead of assuming symbol_name_match_type::FULL.
13284         * block.h (block_lookup_symbol): New parameter 'match_type'.
13285         * c-valprint.c (print_unpacked_pointer): Use
13286         lookup_symbol_search_name instead of lookup_symbol.
13287         * compile/compile-object-load.c (get_out_value_type): Pass down
13288         symbol_name_match_type::SEARCH_NAME.
13289         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
13290         symbol_name_match_type::FULL.
13291         * cp-support.c (cp_get_symbol_name_matcher): Handle
13292         symbol_name_match_type::SEARCH_NAME.
13293         * infrun.c (insert_exception_resume_breakpoint): Use
13294         lookup_symbol_search_name.
13295         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
13296         * psymtab.c (maintenance_check_psymtabs): Use
13297         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
13298         * stack.c (print_frame_args): Use lookup_symbol_search_name and
13299         SYMBOL_SEARCH_NAME.
13300         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
13301         if symbol_name_match_type::SEARCH_NAME.
13302         (lookup_symbol_in_language): Pass down
13303         symbol_name_match_type::FULL.
13304         (lookup_symbol_search_name): New.
13305         (lookup_language_this): Pass down
13306         symbol_name_match_type::SEARCH_NAME.
13307         (lookup_symbol_aux, lookup_local_symbol): New parameter
13308         'match_type'.  Pass it down.
13309         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
13310         (lookup_symbol_search_name): New declaration.
13311         (lookup_symbol_in_block): New 'match_type' parameter.
13312
13313 2018-01-05  Pedro Alves  <palves@redhat.com>
13314
13315         PR gdb/22670
13316         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
13317         ada_lookup_symbol.
13318         (ada_lookup_symbol): Reimplement in terms of
13319         ada_lookup_symbol_list, bits factored out from
13320         ada_lookup_encoded_symbol.
13321
13322 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13323
13324         * ada-exp.y (write_object_renaming): When subscripting an array
13325         using a symbol as the index, pass the block in call to
13326         ada_lookup_encoded_symbol when looking that symbol up.
13327
13328 2018-01-05  Jerome Guitton  <guitton@adacore.com>
13329
13330         * ada-lang.c (ada_array_length): Use ada_index_type instead of
13331         TYPE_INDEX_TYPE.
13332
13333 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13334
13335         * ada-lang.c (ada_to_fixed_value_create): Add handling of
13336         the case where VALUE_LVAL (val0) is not lval_memory.
13337
13338 2018-01-05  Xavier Roirand  <roirand@adacore.com>
13339
13340         * ada-valprint.c (print_optional_low_bound): Handle
13341         character-indexed array printing like boolean-indexed array
13342         printing.
13343
13344 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13345
13346         * NEWS: Create a new section for the next release branch.
13347         Rename the section of the current branch, now that it has
13348         been cut.
13349
13350 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13351
13352         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
13353         * version.in: Bump version to 8.1.50.DATE-git.
13354
13355 2018-01-03  Xavier Roirand  <roirand@adacore.com>
13356
13357         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
13358         Add field.
13359         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
13360         Add field.
13361         (default_exception_support_info) <catch_handlers_sym>: Add field.
13362         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
13363         (ada_exception_name_addr_1): Add "catch handlers" handling.
13364         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
13365         Update all callers.
13366         (create_excep_cond_exprs) <ex>: Add parameter.
13367         (re_set_exception): Update create_excep_cond_exprs call.
13368         (print_it_exception, print_one_exception, print_mention_exception)
13369         (print_recreate_exception): Add "catch handler" handling.
13370         (allocate_location_catch_handlers, re_set_catch_handlers)
13371         (check_status_catch_handlers, print_it_catch_handlers)
13372         (print_one_catch_handlers, print_mention_catch_handlers)
13373         (print_recreate_catch_handlers): New function.
13374         (catch_handlers_breakpoint_ops): New variable.
13375         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
13376         Add parameter.  Add "catch handler" handling.
13377         (ada_exception_sym_name, ada_exception_breakpoint_ops):
13378         Add "catch handler" handling.
13379         (ada_exception_catchpoint_cond_string): Add "catch handler"
13380         handling.
13381         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
13382         call.
13383         (catch_ada_handlers_command): New function.
13384         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
13385         operations structure.
13386         (_initialize_ada_language): Add "catch handlers" command entry.
13387         * NEWS: Document "catch handlers" feature.
13388
13389 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
13390
13391         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
13392         account when creating the array type of the slice.
13393         (ada_value_slice): Likewise.
13394
13395 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
13396
13397         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
13398         New enum value.
13399         (create_array_type_with_stride): Add byte_stride_prop parameter.
13400         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
13401         New parameter.  Update all callers in this file.
13402         (array_type_has_dynamic_stride): New function.
13403         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
13404         of arrays with dynamic byte strides.
13405         * dwarf2read.c (read_array_type): Add support for dynamic
13406         DW_AT_byte_stride attributes.
13407
13408 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
13409
13410         * dwarf2read.c (read_unspecified_type): Treat
13411         DW_TAG_enumeration_type DIEs from Ada units as stubs.
13412
13413 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13414
13415         Update copyright year range in all GDB files.
13416
13417 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13418
13419         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
13420         and gdb/testsuite/gdb.base/step-line.c.
13421
13422 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13423
13424         * copyright.py (main): Dump the contents of
13425         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
13426         even if BY_HAND is empty.
13427
13428 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13429
13430         * top.c (print_gdb_version): Update Copyright year in version
13431         message.
13432
13433 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13434
13435         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
13436
13437 For older changes see ChangeLog-2017.
13438 \f
13439 Local Variables:
13440 mode: change-log
13441 left-margin: 8
13442 fill-column: 74
13443 version-control: never
13444 coding: utf-8
13445 End: