Remove cleanup from try_open_exec_file
[external/binutils.git] / gdb / ChangeLog
1 2018-09-13  Tom Tromey  <tom@tromey.com>
2
3         * exec.c (try_open_exec_file): Use std::string.
4
5 2018-09-13  Tom Tromey  <tom@tromey.com>
6
7         * utils.h (gdb_bfd_errmsg): Return std::string.
8         * exec.c (exec_file_attach): Update.
9         * compile/compile-object-load.c (compile_object_load): Update.
10         * utils.c (gdb_bfd_errmsg): Return std::string.
11
12 2018-09-13  Tom Tromey  <tom@tromey.com>
13
14         * procfs.c (struct procinfo_deleter): New.
15         (procinfo_up): New typedef.
16         (do_destroy_procinfo_cleanup): Remove.
17         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
18
19 2018-09-13  Tom Tromey  <tom@tromey.com>
20
21         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
22
23 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
24 2018-09-13  Tom Tromey  <tom@tromey.com>
25
26         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
27         (pspy_get_objfiles): New function.
28         (progspace_object_methods): New.
29         (pspace_object_type): Add tp_methods callback.
30         * python/python-internal.h (build_objfiles_list): New
31         declaration.
32         * python/python.c (build_objfiles_list): New function.
33         (gdbpy_objfiles): Implement using build_objfiles_list.
34         * NEWS: Mention the Progspace.objfiles method.
35
36 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
37
38         * python/py-inferior.c (infpy_get_progspace): New function.
39         (inferior_object_getset): Add progspace property.
40         * NEWS: Mention the new property.
41
42 2018-09-13  Tom Tromey  <tom@tromey.com>
43
44         PR rust/23650:
45         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
46
47 2018-09-13  Tom Tromey  <tom@tromey.com>
48
49         PR rust/23626:
50         * rust-lang.c (rust_enum_variant): Now static.
51         (rust_empty_enum_p): New function.
52         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
53         Handle empty enum.
54
55 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
56
57         * python/py-inferior.c (infpy_repr): New.
58         (inferior_object_type): Register infpy_repr.
59         * python/py-objfile.c (objfpy_repr): New.
60         (objfile_object_type): Register objfpy_repr.
61
62 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
63
64         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
65
66 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
67
68         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
69         typo.
70
71 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
72
73         * common/common-utils.c: Don't include '<sys/stat.h>'.
74         (is_regular_file): Move to...
75         * common/filestuff.c (is_regular_file): ... here.
76         * common/common-utils.h (is_regular_file): Move to...
77         * common/filestuff.h (is_regular_file): ... here.
78
79 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
80
81         * skip.c (debug_skip): New variable.
82         (skiplist_entry::do_skip_file_p): Add debug output.
83         (skiplist_entry::do_skip_gfile_p): Likewise.
84         (skiplist_entry::skip_function_p): Likewise.
85         (_initialize_step_skip): Create debug command.
86         * NEWS: Mention set/show debug skip.
87
88 2018-09-11  Xavier Roirand  <roirand@adacore.com>
89
90         * darwin-nat.c (should_disable_startup_with_shell):
91         New function.
92         (darwin_nat_target::create_inferior): Add call.
93
94 2018-09-11  Xavier Roirand  <roirand@adacore.com>
95
96         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
97         inf_port, msg_state>: Initialize.
98         (struct darwin_thread_info) <signaled, single_step>: Change
99         type and initialize.
100         (struct darwin_thread_info) <event>: Initialize.
101
102 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
103
104         PR gdb/23555
105         PR gdb/23558
106         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
107         guesses.
108
109 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
110
111         Revert:
112         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
113
114         PR gdb/23555
115         PR gdb/23558
116         * gnulib/aclocal.m4: Regenerate.
117         * gnulib/config.in: Regenerate.
118         * gnulib/configure: Regenerate.
119         * gnulib/import/Makefile.am: Update.
120         * gnulib/import/Makefile.in: Update.
121         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
122         * gnulib/import/_Noreturn.h: ... this.
123         * gnulib/import/alloca.in.h: Update.
124         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
125         * gnulib/import/arg-nonnull.h: ... this.
126         * gnulib/import/assure.h: Update.
127         * gnulib/import/at-func.c: Update.
128         * gnulib/import/basename-lgpl.c: Update.
129         * gnulib/import/extra/snippet/c++defs.h: Rename to...
130         * gnulib/import/c++defs.h: ... this.
131         * gnulib/import/canonicalize-lgpl.c: Update.
132         * gnulib/import/cdefs.h: Update.
133         * gnulib/import/chdir-long.c: Update.
134         * gnulib/import/chdir-long.h: Update.
135         * gnulib/import/cloexec.c: Update.
136         * gnulib/import/cloexec.h: Update.
137         * gnulib/import/close.c: Update.
138         * gnulib/import/closedir.c: Update.
139         * gnulib/import/config.charset: Update.
140         * gnulib/import/dirent-private.h: Update.
141         * gnulib/import/dirent.in.h: Update.
142         * gnulib/import/dirfd.c: Update.
143         * gnulib/import/dirname-lgpl.c: Update.
144         * gnulib/import/dirname.h: Update.
145         * gnulib/import/dosname.h: Update.
146         * gnulib/import/dup-safer-flag.c: Update.
147         * gnulib/import/dup-safer.c: Update.
148         * gnulib/import/dup.c: Update.
149         * gnulib/import/dup2.c: Update.
150         * gnulib/import/errno.in.h: Update.
151         * gnulib/import/error.c: Update.
152         * gnulib/import/error.h: Update.
153         * gnulib/import/exitfail.c: Update.
154         * gnulib/import/exitfail.h: Update.
155         * gnulib/import/extra/update-copyright: Update.
156         * gnulib/import/fchdir.c: Update.
157         * gnulib/import/fcntl.c: Update.
158         * gnulib/import/fcntl.in.h: Update.
159         * gnulib/import/fd-hook.c: Update.
160         * gnulib/import/fd-hook.h: Update.
161         * gnulib/import/fd-safer-flag.c: Update.
162         * gnulib/import/fd-safer.c: Update.
163         * gnulib/import/fdopendir.c: Update.
164         * gnulib/import/filename.h: Update.
165         * gnulib/import/filenamecat-lgpl.c: Update.
166         * gnulib/import/filenamecat.h: Update.
167         * gnulib/import/flexmember.h: Update.
168         * gnulib/import/float+.h: Update.
169         * gnulib/import/float.c: Update.
170         * gnulib/import/float.in.h: Update.
171         * gnulib/import/fnmatch.c: Update.
172         * gnulib/import/fnmatch.in.h: Update.
173         * gnulib/import/fnmatch_loop.c: Update.
174         * gnulib/import/fpucw.h: Update.
175         * gnulib/import/frexp.c: Update.
176         * gnulib/import/frexpl.c: Update.
177         * gnulib/import/fstat.c: Update.
178         * gnulib/import/fstatat.c: Update.
179         * gnulib/import/getcwd-lgpl.c: Update.
180         * gnulib/import/getcwd.c: Update.
181         * gnulib/import/getdtablesize.c: Update.
182         * gnulib/import/getlogin_r.c: Update.
183         * gnulib/import/getprogname.c: Update.
184         * gnulib/import/getprogname.h: Update.
185         * gnulib/import/gettext.h: Update.
186         * gnulib/import/gettimeofday.c: Update.
187         * gnulib/import/glob-libc.h: Update.
188         * gnulib/import/glob.c: Update.
189         * gnulib/import/glob.in.h: Update.
190         * gnulib/import/glob_internal.h: Update.
191         * gnulib/import/glob_pattern_p.c: Update.
192         * gnulib/import/globfree.c: Update.
193         * gnulib/import/hard-locale.c: Update.
194         * gnulib/import/hard-locale.h: Update.
195         * gnulib/import/intprops.h: Update.
196         * gnulib/import/inttypes.in.h: Update.
197         * gnulib/import/isnan.c: Update.
198         * gnulib/import/isnand-nolibm.h: Update.
199         * gnulib/import/isnand.c: Update.
200         * gnulib/import/isnanl-nolibm.h: Update.
201         * gnulib/import/isnanl.c: Update.
202         * gnulib/import/itold.c: Update.
203         * gnulib/import/libc-config.h: Update.
204         * gnulib/import/limits.in.h: Update.
205         * gnulib/import/localcharset.c: Update.
206         * gnulib/import/localcharset.h: Update.
207         * gnulib/import/localtime-buffer.c: Update.
208         * gnulib/import/localtime-buffer.h: Update.
209         * gnulib/import/lstat.c: Update.
210         * gnulib/import/m4/00gnulib.m4: Update.
211         * gnulib/import/m4/__inline.m4: Update.
212         * gnulib/import/m4/absolute-header.m4: Update.
213         * gnulib/import/m4/alloca.m4: Update.
214         * gnulib/import/m4/builtin-expect.m4: Update.
215         * gnulib/import/m4/canonicalize.m4: Update.
216         * gnulib/import/m4/chdir-long.m4: Update.
217         * gnulib/import/m4/close.m4: Update.
218         * gnulib/import/m4/closedir.m4: Update.
219         * gnulib/import/m4/configmake.m4: Update.
220         * gnulib/import/m4/d-ino.m4: Update.
221         * gnulib/import/m4/d-type.m4: Update.
222         * gnulib/import/m4/dirent_h.m4: Update.
223         * gnulib/import/m4/dirfd.m4: Update.
224         * gnulib/import/m4/dirname.m4: Update.
225         * gnulib/import/m4/double-slash-root.m4: Update.
226         * gnulib/import/m4/dup.m4: Update.
227         * gnulib/import/m4/dup2.m4: Update.
228         * gnulib/import/m4/eealloc.m4: Update.
229         * gnulib/import/m4/environ.m4: Update.
230         * gnulib/import/m4/errno_h.m4: Update.
231         * gnulib/import/m4/error.m4: Update.
232         * gnulib/import/m4/exponentd.m4: Update.
233         * gnulib/import/m4/exponentl.m4: Update.
234         * gnulib/import/m4/extensions.m4: Update.
235         * gnulib/import/m4/extern-inline.m4: Update.
236         * gnulib/import/m4/fchdir.m4: Update.
237         * gnulib/import/m4/fcntl-o.m4: Update.
238         * gnulib/import/m4/fcntl.m4: Update.
239         * gnulib/import/m4/fcntl_h.m4: Update.
240         * gnulib/import/m4/fdopendir.m4: Update.
241         * gnulib/import/m4/filenamecat.m4: Update.
242         * gnulib/import/m4/flexmember.m4: Update.
243         * gnulib/import/m4/float_h.m4: Update.
244         * gnulib/import/m4/fnmatch.m4: Update.
245         * gnulib/import/m4/fnmatch_h.m4: Update.
246         * gnulib/import/m4/fpieee.m4: Update.
247         * gnulib/import/m4/frexp.m4: Update.
248         * gnulib/import/m4/frexpl.m4: Update.
249         * gnulib/import/m4/fstat.m4: Update.
250         * gnulib/import/m4/fstatat.m4: Update.
251         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
252         * gnulib/import/m4/getcwd-path-max.m4: Update.
253         * gnulib/import/m4/getcwd.m4: Update.
254         * gnulib/import/m4/getdtablesize.m4: Update.
255         * gnulib/import/m4/getlogin.m4: Update.
256         * gnulib/import/m4/getlogin_r.m4: Update.
257         * gnulib/import/m4/getpagesize.m4: Update.
258         * gnulib/import/m4/getprogname.m4: Update.
259         * gnulib/import/m4/gettimeofday.m4: Update.
260         * gnulib/import/m4/glibc21.m4: Update.
261         * gnulib/import/m4/glob.m4: Update.
262         * gnulib/import/m4/glob_h.m4: Update.
263         * gnulib/import/m4/gnulib-cache.m4: Update.
264         * gnulib/import/m4/gnulib-common.m4: Update.
265         * gnulib/import/m4/gnulib-comp.m4: Update.
266         * gnulib/import/m4/gnulib-tool.m4: Update.
267         * gnulib/import/m4/hard-locale.m4: Update.
268         * gnulib/import/m4/include_next.m4: Update.
269         * gnulib/import/m4/inttypes-pri.m4: Update.
270         * gnulib/import/m4/inttypes.m4: Update.
271         * gnulib/import/m4/isnand.m4: Update.
272         * gnulib/import/m4/isnanl.m4: Update.
273         * gnulib/import/m4/largefile.m4: Update.
274         * gnulib/import/m4/limits-h.m4: Update.
275         * gnulib/import/m4/localcharset.m4: Update.
276         * gnulib/import/m4/locale-fr.m4: Update.
277         * gnulib/import/m4/locale-ja.m4: Update.
278         * gnulib/import/m4/locale-zh.m4: Update.
279         * gnulib/import/m4/localtime-buffer.m4: Update.
280         * gnulib/import/m4/longlong.m4: Update.
281         * gnulib/import/m4/lstat.m4: Update.
282         * gnulib/import/m4/malloc.m4: Update.
283         * gnulib/import/m4/malloca.m4: Update.
284         * gnulib/import/m4/math_h.m4: Update.
285         * gnulib/import/m4/mbrtowc.m4: Update.
286         * gnulib/import/m4/mbsinit.m4: Update.
287         * gnulib/import/m4/mbsrtowcs.m4: Update.
288         * gnulib/import/m4/mbstate_t.m4: Update.
289         * gnulib/import/m4/memchr.m4: Update.
290         * gnulib/import/m4/memmem.m4: Update.
291         * gnulib/import/m4/mempcpy.m4: Update.
292         * gnulib/import/m4/memrchr.m4: Update.
293         * gnulib/import/m4/mkdir.m4: Update.
294         * gnulib/import/m4/mkstemp.m4: Update.
295         * gnulib/import/m4/mmap-anon.m4: Update.
296         * gnulib/import/m4/mode_t.m4: Update.
297         * gnulib/import/m4/msvc-inval.m4: Update.
298         * gnulib/import/m4/msvc-nothrow.m4: Update.
299         * gnulib/import/m4/multiarch.m4: Update.
300         * gnulib/import/m4/nocrash.m4: Update.
301         * gnulib/import/m4/off_t.m4: Update.
302         * gnulib/import/m4/onceonly.m4: Update.
303         * gnulib/import/m4/open-cloexec.m4: Update.
304         * gnulib/import/m4/open.m4: Update.
305         * gnulib/import/m4/openat.m4: Update.
306         * gnulib/import/m4/opendir.m4: Update.
307         * gnulib/import/m4/pathmax.m4: Update.
308         * gnulib/import/m4/rawmemchr.m4: Update.
309         * gnulib/import/m4/readdir.m4: Update.
310         * gnulib/import/m4/readlink.m4: Update.
311         * gnulib/import/m4/realloc.m4: Update.
312         * gnulib/import/m4/rename.m4: Update.
313         * gnulib/import/m4/rewinddir.m4: Update.
314         * gnulib/import/m4/rmdir.m4: Update.
315         * gnulib/import/m4/save-cwd.m4: Update.
316         * gnulib/import/m4/secure_getenv.m4: Update.
317         * gnulib/import/m4/setenv.m4: Update.
318         * gnulib/import/m4/signal_h.m4: Update.
319         * gnulib/import/m4/ssize_t.m4: Update.
320         * gnulib/import/m4/stat-time.m4: Update.
321         * gnulib/import/m4/stat.m4: Update.
322         * gnulib/import/m4/std-gnu11.m4: Update.
323         * gnulib/import/m4/stdbool.m4: Update.
324         * gnulib/import/m4/stddef_h.m4: Update.
325         * gnulib/import/m4/stdint.m4: Update.
326         * gnulib/import/m4/stdio_h.m4: Update.
327         * gnulib/import/m4/stdlib_h.m4: Update.
328         * gnulib/import/m4/strchrnul.m4: Update.
329         * gnulib/import/m4/strdup.m4: Update.
330         * gnulib/import/m4/strerror.m4: Update.
331         * gnulib/import/m4/string_h.m4: Update.
332         * gnulib/import/m4/strstr.m4: Update.
333         * gnulib/import/m4/strtok_r.m4: Update.
334         * gnulib/import/m4/sys_socket_h.m4: Update.
335         * gnulib/import/m4/sys_stat_h.m4: Update.
336         * gnulib/import/m4/sys_time_h.m4: Update.
337         * gnulib/import/m4/sys_types_h.m4: Update.
338         * gnulib/import/m4/tempname.m4: Update.
339         * gnulib/import/m4/time_h.m4: Update.
340         * gnulib/import/m4/unistd-safer.m4: Update.
341         * gnulib/import/m4/unistd_h.m4: Update.
342         * gnulib/import/m4/warn-on-use.m4: Update.
343         * gnulib/import/m4/wchar_h.m4: Update.
344         * gnulib/import/m4/wchar_t.m4: Update.
345         * gnulib/import/m4/wctype_h.m4: Update.
346         * gnulib/import/m4/wint_t.m4: Update.
347         * gnulib/import/malloc.c: Update.
348         * gnulib/import/malloc/scratch_buffer.h: Update.
349         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
350         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
351         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
352         * gnulib/import/malloca.c: Update.
353         * gnulib/import/malloca.h: Update.
354         * gnulib/import/malloca.valgrind: Update.
355         * gnulib/import/math.in.h: Update.
356         * gnulib/import/mbrtowc.c: Update.
357         * gnulib/import/mbsinit.c: Update.
358         * gnulib/import/mbsrtowcs-impl.h: Update.
359         * gnulib/import/mbsrtowcs-state.c: Update.
360         * gnulib/import/mbsrtowcs.c: Update.
361         * gnulib/import/memchr.c: Update.
362         * gnulib/import/memmem.c: Update.
363         * gnulib/import/mempcpy.c: Update.
364         * gnulib/import/memrchr.c: Update.
365         * gnulib/import/mkdir.c: Update.
366         * gnulib/import/mkstemp.c: Update.
367         * gnulib/import/msvc-inval.c: Update.
368         * gnulib/import/msvc-inval.h: Update.
369         * gnulib/import/msvc-nothrow.c: Update.
370         * gnulib/import/msvc-nothrow.h: Update.
371         * gnulib/import/open.c: Update.
372         * gnulib/import/openat-die.c: Update.
373         * gnulib/import/openat-priv.h: Update.
374         * gnulib/import/openat-proc.c: Update.
375         * gnulib/import/openat.c: Update.
376         * gnulib/import/openat.h: Update.
377         * gnulib/import/opendir.c: Update.
378         * gnulib/import/pathmax.h: Update.
379         * gnulib/import/pipe-safer.c: Update.
380         * gnulib/import/rawmemchr.c: Update.
381         * gnulib/import/readdir.c: Update.
382         * gnulib/import/readlink.c: Update.
383         * gnulib/import/realloc.c: Update.
384         * gnulib/import/ref-add.sin: Update.
385         * gnulib/import/ref-del.sin: Update.
386         * gnulib/import/rename.c: Update.
387         * gnulib/import/rewinddir.c: Update.
388         * gnulib/import/rmdir.c: Update.
389         * gnulib/import/same-inode.h: Update.
390         * gnulib/import/save-cwd.c: Update.
391         * gnulib/import/save-cwd.h: Update.
392         * gnulib/import/scratch_buffer.h: Update.
393         * gnulib/import/secure_getenv.c: Update.
394         * gnulib/import/setenv.c: Update.
395         * gnulib/import/signal.in.h: Update.
396         * gnulib/import/stat-time.c: Update.
397         * gnulib/import/stat-time.h: Update.
398         * gnulib/import/stat-w32.c: Update.
399         * gnulib/import/stat-w32.h: Update.
400         * gnulib/import/stat.c: Update.
401         * gnulib/import/stdbool.in.h: Update.
402         * gnulib/import/stddef.in.h: Update.
403         * gnulib/import/stdint.in.h: Update.
404         * gnulib/import/stdio.in.h: Update.
405         * gnulib/import/stdlib.in.h: Update.
406         * gnulib/import/str-two-way.h: Update.
407         * gnulib/import/strchrnul.c: Update.
408         * gnulib/import/strdup.c: Update.
409         * gnulib/import/streq.h: Update.
410         * gnulib/import/strerror-override.c: Update.
411         * gnulib/import/strerror-override.h: Update.
412         * gnulib/import/strerror.c: Update.
413         * gnulib/import/string.in.h: Update.
414         * gnulib/import/stripslash.c: Update.
415         * gnulib/import/strnlen1.c: Update.
416         * gnulib/import/strnlen1.h: Update.
417         * gnulib/import/strstr.c: Update.
418         * gnulib/import/strtok_r.c: Update.
419         * gnulib/import/sys_stat.in.h: Update.
420         * gnulib/import/sys_time.in.h: Update.
421         * gnulib/import/sys_types.in.h: Update.
422         * gnulib/import/tempname.c: Update.
423         * gnulib/import/tempname.h: Update.
424         * gnulib/import/time.in.h: Update.
425         * gnulib/import/unistd--.h: Update.
426         * gnulib/import/unistd-safer.h: Update.
427         * gnulib/import/unistd.in.h: Update.
428         * gnulib/import/unsetenv.c: Update.
429         * gnulib/import/verify.h: Update.
430         * gnulib/import/extra/snippet/warn-on-use.h: Update.
431         * gnulib/import/wchar.in.h: Update.
432         * gnulib/import/wctype.in.h: Update.
433         * gnulib/import/xalloc-oversized.h: Update.
434         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
435         "53e2c179f26a890fa6685af4b6c1397ee370433b".
436
437 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
438
439         * record-btrace.c (get_thread_current_frame): Remove
440         old_inferior_ptid.
441
442 2018-09-10  Jerome Guitton  <guitton@adacore.com>
443
444         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
445         with check_tag to 1 if and only if the type is tagged and the
446         component being searched cannot been found in the current
447         view. Otherwise, always call ada_to_fixed_type with
448         check_tag to 0.
449
450 2018-09-10  Xavier Roirand  <roirand@adacore.com>
451
452         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
453         declaration.
454         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
455         * ada-varobj.c (ada_varobj_get_number_of_children,
456         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
457
458 2018-09-10  Xavier Roirand  <roirand@adacore.com>
459
460         * ada-valprint.c (ada_value_print): Use type instead of
461         enclosing type.
462
463 2018-09-10  Xavier Roirand  <roirand@adacore.com>
464
465         * ada-lang.c (ada_value_subscript): Handle case when parameter is
466         an array of access to unconstrained array.
467
468 2018-09-10  Xavier Roirand  <roirand@adacore.com>
469
470         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
471         (ada_check_typedef): Use it.
472
473 2018-09-10  Xavier Roirand  <roirand@adacore.com>
474
475         * ada-varobj.c (ada_varobj_describe_struct_child)
476         (ada_varobj_describe_child): Handle union case like struct one.
477
478 2018-09-10  Tom Tromey  <tom@tromey.com>
479
480         PR python/18380:
481         * python/python.c (_initialize_python): Make example in "python"
482         help work in Python 3.
483
484 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
485
486         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
487         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
488         $(EXEEXT) to the script, as it is not a program.
489
490 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
491
492         * python/py-prettyprint.c (pretty_print_one_value): Return
493         gdbpy_ref<>.
494         (print_string_repr): Adjust.
495         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
496         * python/python-internal.h (apply_varobj_pretty_printer): Return
497         gdbpy_ref<>.
498         * varobj.c (varobj_value_get_print_value): Adjust.
499
500 2018-09-08  Tom Tromey  <tom@tromey.com>
501
502         PR python/16047:
503         * python/py-prettyprint.c (pretty_print_one_value): Check for
504         to_string method.
505
506 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
507
508         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
509         replace_operator_with_call.
510
511 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
512
513         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
514
515 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
516
517         * ada-typeprint.c (print_range): Print the bounds using TYPE
518         rather than its TYPE_TARGET_TYPE.
519
520 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
521
522         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
523         call to ada_to_fixed_value_create.
524
525 2018-09-08  Jerome Guitton  <guitton@adacore.com>
526
527         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
528
529 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
530
531         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
532         by calls to error.
533
534 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
535
536         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
537         Move update of loop variable "fi".
538
539 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
540
541         * ada-lang.c (value_assign_to_component): In the case of
542         big-endian targets, extract the bits of the given VAL
543         using an src_offset of zero if container is not a scalar.
544
545 2018-09-06  Simon Ser  <contact@emersion.fr>
546
547         PR gdb/23105
548         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
549         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
550         * fbsd-tdep.c (fbsd_make_note_desc): New.
551         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
552         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
553         * target.h (enum target_object) Add FreeBSD-specific
554         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
555
556 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
557
558         * compile/compile-c.h (generate_c_for_variable_locations):
559         Change reference to pointer.
560         * compile/compile-c-support.c (compile_program) <compute>:
561         Likewise.
562         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
563         (generate_c_for_for_one_variable): Likewise
564         (generate_c_for_variable_locations): Likewise
565         * compile/compile-c-types.c (compile_c_instance::convert_type):
566         Likewise
567         * compile/compile-cplus-symbols.c (convert_one_symbol):
568         std::move the scope passed to enter_scope.
569         * compile/compile-cplus-types.c
570         (compile_cplus_instance::enter_scope): Make parameter
571         rvalue-reference.
572         (compile_cplus_instance::new_scope): Change reference to
573         pointer.
574         (compile_cplus_instance::convert_type): Likewise
575         (compile_cplus_convert_typedef): std::move the scope passed to
576         enter_scope.
577         (compile_cplus_convert_struct_or_union): Likewise.
578         (compile_cplus_convert_enum): Likewise.
579         (compile_cplus_convert_namespace): Likewise.
580         * compile/compile-cplus.h (compile_cplus_instance)
581         <enter_scope>: Make parameter rvalue-reference.
582         * compile/compile-internal.h (compile_instance)
583         <get_cached_type>: Likewise
584         * compile/compile-loc2c.c (push): Likewise
585         (pushf): Likewise
586         (unary): Likewise
587         (binary): Likewise
588         (print_label): Likewise
589         (pushf_register_address): Likewise
590         (pushf_register): Likewise
591         (do_compile_dwarf_expr_to_c): Likewise
592         (compile_dwarf_expr_to_c): Likewise
593         (compile_dwarf_bounds_to_c): Likewise
594         * compile/compile.c (compile_instance::get_cached_type):
595         Likewise
596         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
597         (compile_dwarf_bounds_to_c): Likewise
598         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
599         (dwarf2_compile_property_to_c): Likewise
600         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
601         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
602         Likewise
603
604 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
605
606         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
607         * tui/tui-data.c (init_content_element): Don't initialize it.
608
609 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
610
611         * tui/tui-data.h (struct tui_win_info)
612         <detail::opaque>: Remove.
613         * tui/tui-data.c (init_win_info): Remove assignment.
614
615 2018-09-05  Tom Tromey  <tom@tromey.com>
616
617         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
618         -Wformat-nonliteral.
619         * target-float.c (host_float_ops<T>::to_string)
620         (host_float_ops<T>::from_string): Use
621         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
622         * configure: Rebuild.
623
624 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
625
626         * printcmd.c (printf_c_string): Use
627         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
628         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
629
630 2018-09-05  Tom Tromey  <tom@tromey.com>
631
632         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
633
634 2018-09-05  Tom de Vries  <tdevries@suse.de>
635
636         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
637         with resolve_abstract_p == true.
638         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
639         defaulting to false. Propagate resolve_abstract_p to
640         dwarf2_fetch_die_loc_sect_off.
641         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
642         parameter, defaulting to false.
643         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
644         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
645         parameter.
646         * dwarf2read.h (struct die_info): Forward-declare.
647         (die_info_ptr): New typedef.
648         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
649
650 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
651
652         GDB 8.2 released.
653
654 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
655             Pedro Alves  <palves@redhat.com>
656
657         * gnulib/Makefile.in (aclocal_m4_deps): Move to
658         "aclocal-m4-deps.mk".  Include file here.
659         $(srcdir)/aclocal.m4: Add "configure.ac".
660         * gnulib/aclocal-m4-deps.mk: New file.
661         * gnulib/update-gnulib.sh: Automatically update
662         "aclocal-m4-deps.mk".
663
664 2018-09-04  Tom Tromey  <tom@tromey.com>
665
666         * configure: Rebuild.
667         * configure.ac: Remove multi-ice code.
668
669 2018-09-04  Tom Tromey  <tom@tromey.com>
670
671         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
672         (ada-exp.o): Update.
673
674 2018-09-04  Tom Tromey  <tom@tromey.com>
675
676         * Makefile.in (printcmd.o, target-float.o): Remove.
677         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
678
679 2018-09-04  Tom Tromey  <tom@tromey.com>
680
681         * gnulib/Makefile.in: Remove obsolete comment.
682         * Makefile.in: Remove obsolete comment.
683
684 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
685
686         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
687         line with '+'.
688
689 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
690
691         * riscv-tdep.c: Add 'prologue-value.h' include.
692         (struct riscv_unwind_cache): New struct.
693         (riscv_debug_unwinder): New global.
694         (riscv_scan_prologue): Update arguments, capture register details
695         from prologue scan.
696         (riscv_skip_prologue): Reformat arguments line, move end of
697         prologue calculation into riscv_scan_prologue.
698         (riscv_frame_cache): Update return type, create
699         riscv_unwind_cache, scan the prologue, and fill in remaining cache
700         details.
701         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
702         (riscv_frame_prev_register): Use the trad_frame within the
703         riscv_unwind_cache.
704         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
705         flag.
706
707 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
708
709         * trad-frame.h (trad_frame_set_realreg): Declare.
710         (trad_frame_set_addr): Declare.
711         * trad-frame.c (trad_frame_set_realreg): Define new function.
712         (trad_frame_set_addr): Define new function.
713         (trad_frame_set_reg_realreg): Use new function.
714         (trad_frame_set_reg_addr): Use new function.
715
716 2018-09-01  Keith Seitz  <keiths@redhat.com>
717
718         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
719         pulongest instead of "%lld".
720         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
721         ATTRIBUTE_UNUSED.
722
723 2018-08-31  Tom Tromey  <tom@tromey.com>
724
725         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
726         variant part type.
727
728 2018-08-31  Pedro Alves  <palves@redhat.com>
729
730         * gdbarch.h: Regenerate.
731
732 2018-08-31  Pedro Alves  <palves@redhat.com>
733
734         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
735         * target.h (Hardware watchpoint interfaces): Describe
736         continuable/steppable/non-steppable watchpoints.
737         * gdbarch.h, gdbarch.c: Regenerate.
738
739 2018-08-31  Pedro Alves  <palves@redhat.com>
740
741         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
742         Delete.
743         * s390-linux-nat.c
744         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
745         * target.h (target_ops::have_continuable_watchpoint): Delete.
746         (target_have_continuable_watchpoint): Delete.
747         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
748         * target-delegates.c: Regenerate.
749
750 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
751
752         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
753         the files present in "gnulib/import/m4/".
754
755 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
756
757         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
758         c.sw, c.swsp, and c.sdsp.
759
760 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
761
762         * riscv-tdep.c (struct riscv_inferior_data): Delete.
763         (riscv_read_misa_reg): Don't cache value read into inferior data.
764         (riscv_new_inferior_data): Delete.
765         (riscv_inferior_data_cleanup): Delete.
766         (riscv_inferior_data): Delete.
767         (riscv_invalidate_inferior_data): Delete.
768         (_initialize_riscv_tdep): Remove initialisation of inferior data.
769
770 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
771
772         * compile/compile-cplus-types.c
773         (compile_cplus_instance::leave_scope): Take the address of scope
774         object.
775         (compile_cplus_instance::convert_qualified_base): Compare quals
776         to 0.
777
778 2018-08-30  Keith Seitz  <keiths@redhat.com>
779
780         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
781         Use "%s" and host_address_to_string instead of "%p" in printf.
782
783 2018-08-29  Keith Seitz  <keiths@redhat.com>
784
785         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
786         and compile-cplus-types.c.
787         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
788         * c-lang.c (cplus_language_defn): Set C++ compile functions.
789         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
790         Declare.
791         * compile/compile-c-support.c: Include compile-cplus.h.
792         (load_libcompile): Templatize.
793         (get_compile_context): "New" function.
794         (c_get_compile_context): Use get_compile_context.
795         (cplus_get_compile_context): New function.
796         (cplus_push_user_expression, cplus_pop_user_expression)
797         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
798         (cplus_compute_program): Define new structs/functions.
799         * compile/compile-cplus-symmbols.c: New file.
800         * compile/compile-cplus-types.c: New file.
801         * compile/compile-cplus.h: New file.
802         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
803         Declare.
804         * compile/compile-object-load.c (get_out_value_type): Use
805         strncmp_iw when comparing symbol names.
806         (compile_object_load): Add mst_bss and mst_data.
807         * compile/compile.c (_initialize_compile): Remove
808         -Wno-implicit-function-declaration from `compile_args'.
809         * compile/gcc-cp-plugin.h: New file.
810         * NEWS: Mention C++ compile support and new debug options.
811
812 2018-08-29  Keith Seitz  <keiths@redhat.com>
813
814         * linespec.c (collect_info::add_symbol): Make virtual.
815         (struct symbol_searcher_collect_info): New struct.
816         (symbol_searcher::find_all_symbols): New method.
817         * symtab.h (class symbol_searcher): New class.
818
819 2018-08-29  Keith Seitz  <keiths@redhat.com>
820
821         * linespec.c (struct linespec) <function_symbols, label_symbols>:
822         Change to vector of block_symbol.  Update all users.
823         (struct collect_info) <symbols>: Likewise.
824         (collect_info::add_symbol): Take block_symbol as argument.
825         Update all callers.
826         (decode_compound_collector) <m_symbols>: Change type to vector
827         of block_symbol.  Update all users.
828         (decode_compound_collector::operator ()): Change parameter type
829         to block_symbol.
830         (find_method, find_function_symbols, find_linespec_symbols)
831         (find_label_symbols_in_block, find_label_symbols): Change symbol
832         vectors to block_symbol vectors.
833         * symtab.h (symbol_found_callback_ftype): Change parameter type to
834         block_symbol.
835
836 2018-08-29  Keith Seitz  <keiths@redhat.com>
837
838         * linespec.c (symbolp): Remove typedef and VEC definitions.
839         (bound_minimal_symbol_d): Likewise.
840
841 2018-08-29  Keith Seitz  <keiths@redhat.com>
842
843         * linespec.c (decode_compound_collector::decode_compound_collector):
844         Remove initialization for `m_symtabs'.
845         (decode_compound_collector::release_symbols): Change return type
846         to std::vector.  Update all callers.
847         (class decode_compound_collector) <m_symbols>: Change type to
848         std::vector.
849         (lookup_prefix_sym): Change return type to std::vector.  Update all
850         callers.
851         (compare_symbols): Remove.
852         (std_compare_symbols): Rename to `compare_symbols'.
853         (find_method): Change `sym_classes' parameter to std::vector.
854         Update all callers.  Use std::sort to sort sym_classes.
855         (find_linespec_symbols): Remove cleanup.
856
857 2018-08-29  Keith Seitz  <keiths@redhat.com>
858
859         * linespec.c (struct linespec) <minimal_symbols>: Change type to
860         std::vector.  Update all users.
861         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
862         (struct collect_info) <minimal_symbols>: Likewise.
863         (compare_msymbols): Return bool.  Change parameters to const
864         bound_minimal_symbol references.
865         (find_method, find_function_symbols, find_linespec_symbols): Change
866         `minsyms' parameter to std::vector.  Update all callers.
867
868 2018-08-29  Keith Seitz  <keiths@redhat.com>
869
870         * linespec.c (struct linespec) <label_symbols>: Change type to
871         std::vector.  Update all users.
872         (find_label_symbols_in_block): Change `result' parameter to
873         std::vector.  Update all callers.
874         (find_label_symbols): Return std::vector.  Update all callers.
875
876 2018-08-29  Keith Seitz  <keiths@redhat.com>
877
878         * linespec.c (struct linespec) <function_symbols>: Change type to
879         std::vector.  Update all users.
880         (struct collect_info) <function_symbols>: Likewise.
881         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
882         (std_compare_symbols): New function.
883         (find_method, find_function_symbols, find_linespec_symbols)
884         (find_label_symbols_in_block): Change `symbols' parameter to
885         std::vector.  Update all callers.
886         (find_label_symbols): Likewise for `function_symbols' and
887         `label_funcs_ret'.
888
889 2018-08-29  Keith Seitz  <keiths@redhat.com>
890
891         * linespec.c (symtab_vector_up): Define.
892         (struct linespec) <file_symtabs>: Change type to std::vector *.
893         Update all uses.
894         (struct collect_info) <file_symtabs>: Likewise.
895         (collect_symtabs_from_filename): Return symtab_vector_up.
896         Update all callers.
897         (decode_objc): Remove cleanup.
898         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
899         (symtab_collector::release_symtabs): Return symtab_vector_up.
900         Update all callers.
901         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
902         Update all users.
903         (collect_symtabs_from_filename, symtabs_from_filename): Return
904         symtab_vector_up.  Update all callers.
905
906 2018-08-29  Tom Tromey  <tom@tromey.com>
907
908         * csky-tdep.c (csky_analyze_prologue): Use
909         core_addr_to_string_nz.
910
911 2018-08-29  Tom Tromey  <tom@tromey.com>
912
913         * windows-nat.c (struct xlate_exception) <them>: Change type to
914         DWORD.
915         (xlate): Fix formatting.  Remove last entry.
916         (struct xlate_exception, xlate): Comment out.
917         (windows_nat_target::resume): Use ranged for.
918
919 2018-08-29  Jim Wilson  <jimw@sifive.com>
920
921         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
922         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
923         of NT_PRFPREG.
924         (riscv_linux_nat_target::store_registers): Likewise.
925
926 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
927
928         PR gdb/23555
929         PR gdb/23558
930         * gnulib/aclocal.m4: Regenerate.
931         * gnulib/config.in: Regenerate.
932         * gnulib/configure: Regenerate.
933         * gnulib/import/Makefile.am: Update.
934         * gnulib/import/Makefile.in: Update.
935         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
936         * gnulib/import/_Noreturn.h: ... this.
937         * gnulib/import/alloca.in.h: Update.
938         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
939         * gnulib/import/arg-nonnull.h: ... this.
940         * gnulib/import/assure.h: Update.
941         * gnulib/import/at-func.c: Update.
942         * gnulib/import/basename-lgpl.c: Update.
943         * gnulib/import/extra/snippet/c++defs.h: Rename to...
944         * gnulib/import/c++defs.h: ... this.
945         * gnulib/import/canonicalize-lgpl.c: Update.
946         * gnulib/import/cdefs.h: Update.
947         * gnulib/import/chdir-long.c: Update.
948         * gnulib/import/chdir-long.h: Update.
949         * gnulib/import/cloexec.c: Update.
950         * gnulib/import/cloexec.h: Update.
951         * gnulib/import/close.c: Update.
952         * gnulib/import/closedir.c: Update.
953         * gnulib/import/config.charset: Update.
954         * gnulib/import/dirent-private.h: Update.
955         * gnulib/import/dirent.in.h: Update.
956         * gnulib/import/dirfd.c: Update.
957         * gnulib/import/dirname-lgpl.c: Update.
958         * gnulib/import/dirname.h: Update.
959         * gnulib/import/dosname.h: Update.
960         * gnulib/import/dup-safer-flag.c: Update.
961         * gnulib/import/dup-safer.c: Update.
962         * gnulib/import/dup.c: Update.
963         * gnulib/import/dup2.c: Update.
964         * gnulib/import/errno.in.h: Update.
965         * gnulib/import/error.c: Update.
966         * gnulib/import/error.h: Update.
967         * gnulib/import/exitfail.c: Update.
968         * gnulib/import/exitfail.h: Update.
969         * gnulib/import/extra/update-copyright: Update.
970         * gnulib/import/fchdir.c: Update.
971         * gnulib/import/fcntl.c: Update.
972         * gnulib/import/fcntl.in.h: Update.
973         * gnulib/import/fd-hook.c: Update.
974         * gnulib/import/fd-hook.h: Update.
975         * gnulib/import/fd-safer-flag.c: Update.
976         * gnulib/import/fd-safer.c: Update.
977         * gnulib/import/fdopendir.c: Update.
978         * gnulib/import/filename.h: Update.
979         * gnulib/import/filenamecat-lgpl.c: Update.
980         * gnulib/import/filenamecat.h: Update.
981         * gnulib/import/flexmember.h: Update.
982         * gnulib/import/float+.h: Update.
983         * gnulib/import/float.c: Update.
984         * gnulib/import/float.in.h: Update.
985         * gnulib/import/fnmatch.c: Update.
986         * gnulib/import/fnmatch.in.h: Update.
987         * gnulib/import/fnmatch_loop.c: Update.
988         * gnulib/import/fpucw.h: Update.
989         * gnulib/import/frexp.c: Update.
990         * gnulib/import/frexpl.c: Update.
991         * gnulib/import/fstat.c: Update.
992         * gnulib/import/fstatat.c: Update.
993         * gnulib/import/getcwd-lgpl.c: Update.
994         * gnulib/import/getcwd.c: Update.
995         * gnulib/import/getdtablesize.c: Update.
996         * gnulib/import/getlogin_r.c: Update.
997         * gnulib/import/getprogname.c: Update.
998         * gnulib/import/getprogname.h: Update.
999         * gnulib/import/gettext.h: Update.
1000         * gnulib/import/gettimeofday.c: Update.
1001         * gnulib/import/glob-libc.h: Update.
1002         * gnulib/import/glob.c: Update.
1003         * gnulib/import/glob.in.h: Update.
1004         * gnulib/import/glob_internal.h: Update.
1005         * gnulib/import/glob_pattern_p.c: Update.
1006         * gnulib/import/globfree.c: Update.
1007         * gnulib/import/hard-locale.c: Update.
1008         * gnulib/import/hard-locale.h: Update.
1009         * gnulib/import/intprops.h: Update.
1010         * gnulib/import/inttypes.in.h: Update.
1011         * gnulib/import/isnan.c: Update.
1012         * gnulib/import/isnand-nolibm.h: Update.
1013         * gnulib/import/isnand.c: Update.
1014         * gnulib/import/isnanl-nolibm.h: Update.
1015         * gnulib/import/isnanl.c: Update.
1016         * gnulib/import/itold.c: Update.
1017         * gnulib/import/libc-config.h: Update.
1018         * gnulib/import/limits.in.h: Update.
1019         * gnulib/import/localcharset.c: Update.
1020         * gnulib/import/localcharset.h: Update.
1021         * gnulib/import/localtime-buffer.c: Update.
1022         * gnulib/import/localtime-buffer.h: Update.
1023         * gnulib/import/lstat.c: Update.
1024         * gnulib/import/m4/00gnulib.m4: Update.
1025         * gnulib/import/m4/__inline.m4: Update.
1026         * gnulib/import/m4/absolute-header.m4: Update.
1027         * gnulib/import/m4/alloca.m4: Update.
1028         * gnulib/import/m4/builtin-expect.m4: Update.
1029         * gnulib/import/m4/canonicalize.m4: Update.
1030         * gnulib/import/m4/chdir-long.m4: Update.
1031         * gnulib/import/m4/close.m4: Update.
1032         * gnulib/import/m4/closedir.m4: Update.
1033         * gnulib/import/m4/configmake.m4: Update.
1034         * gnulib/import/m4/d-ino.m4: Update.
1035         * gnulib/import/m4/d-type.m4: Update.
1036         * gnulib/import/m4/dirent_h.m4: Update.
1037         * gnulib/import/m4/dirfd.m4: Update.
1038         * gnulib/import/m4/dirname.m4: Update.
1039         * gnulib/import/m4/double-slash-root.m4: Update.
1040         * gnulib/import/m4/dup.m4: Update.
1041         * gnulib/import/m4/dup2.m4: Update.
1042         * gnulib/import/m4/eealloc.m4: Update.
1043         * gnulib/import/m4/environ.m4: Update.
1044         * gnulib/import/m4/errno_h.m4: Update.
1045         * gnulib/import/m4/error.m4: Update.
1046         * gnulib/import/m4/exponentd.m4: Update.
1047         * gnulib/import/m4/exponentl.m4: Update.
1048         * gnulib/import/m4/extensions.m4: Update.
1049         * gnulib/import/m4/extern-inline.m4: Update.
1050         * gnulib/import/m4/fchdir.m4: Update.
1051         * gnulib/import/m4/fcntl-o.m4: Update.
1052         * gnulib/import/m4/fcntl.m4: Update.
1053         * gnulib/import/m4/fcntl_h.m4: Update.
1054         * gnulib/import/m4/fdopendir.m4: Update.
1055         * gnulib/import/m4/filenamecat.m4: Update.
1056         * gnulib/import/m4/flexmember.m4: Update.
1057         * gnulib/import/m4/float_h.m4: Update.
1058         * gnulib/import/m4/fnmatch.m4: Update.
1059         * gnulib/import/m4/fnmatch_h.m4: Update.
1060         * gnulib/import/m4/fpieee.m4: Update.
1061         * gnulib/import/m4/frexp.m4: Update.
1062         * gnulib/import/m4/frexpl.m4: Update.
1063         * gnulib/import/m4/fstat.m4: Update.
1064         * gnulib/import/m4/fstatat.m4: Update.
1065         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
1066         * gnulib/import/m4/getcwd-path-max.m4: Update.
1067         * gnulib/import/m4/getcwd.m4: Update.
1068         * gnulib/import/m4/getdtablesize.m4: Update.
1069         * gnulib/import/m4/getlogin.m4: Update.
1070         * gnulib/import/m4/getlogin_r.m4: Update.
1071         * gnulib/import/m4/getpagesize.m4: Update.
1072         * gnulib/import/m4/getprogname.m4: Update.
1073         * gnulib/import/m4/gettimeofday.m4: Update.
1074         * gnulib/import/m4/glibc21.m4: Update.
1075         * gnulib/import/m4/glob.m4: Update.
1076         * gnulib/import/m4/glob_h.m4: Update.
1077         * gnulib/import/m4/gnulib-cache.m4: Update.
1078         * gnulib/import/m4/gnulib-common.m4: Update.
1079         * gnulib/import/m4/gnulib-comp.m4: Update.
1080         * gnulib/import/m4/gnulib-tool.m4: Update.
1081         * gnulib/import/m4/hard-locale.m4: Update.
1082         * gnulib/import/m4/include_next.m4: Update.
1083         * gnulib/import/m4/inttypes-pri.m4: Update.
1084         * gnulib/import/m4/inttypes.m4: Update.
1085         * gnulib/import/m4/isnand.m4: Update.
1086         * gnulib/import/m4/isnanl.m4: Update.
1087         * gnulib/import/m4/largefile.m4: Update.
1088         * gnulib/import/m4/limits-h.m4: Update.
1089         * gnulib/import/m4/localcharset.m4: Update.
1090         * gnulib/import/m4/locale-fr.m4: Update.
1091         * gnulib/import/m4/locale-ja.m4: Update.
1092         * gnulib/import/m4/locale-zh.m4: Update.
1093         * gnulib/import/m4/localtime-buffer.m4: Update.
1094         * gnulib/import/m4/longlong.m4: Update.
1095         * gnulib/import/m4/lstat.m4: Update.
1096         * gnulib/import/m4/malloc.m4: Update.
1097         * gnulib/import/m4/malloca.m4: Update.
1098         * gnulib/import/m4/math_h.m4: Update.
1099         * gnulib/import/m4/mbrtowc.m4: Update.
1100         * gnulib/import/m4/mbsinit.m4: Update.
1101         * gnulib/import/m4/mbsrtowcs.m4: Update.
1102         * gnulib/import/m4/mbstate_t.m4: Update.
1103         * gnulib/import/m4/memchr.m4: Update.
1104         * gnulib/import/m4/memmem.m4: Update.
1105         * gnulib/import/m4/mempcpy.m4: Update.
1106         * gnulib/import/m4/memrchr.m4: Update.
1107         * gnulib/import/m4/mkdir.m4: Update.
1108         * gnulib/import/m4/mkstemp.m4: Update.
1109         * gnulib/import/m4/mmap-anon.m4: Update.
1110         * gnulib/import/m4/mode_t.m4: Update.
1111         * gnulib/import/m4/msvc-inval.m4: Update.
1112         * gnulib/import/m4/msvc-nothrow.m4: Update.
1113         * gnulib/import/m4/multiarch.m4: Update.
1114         * gnulib/import/m4/nocrash.m4: Update.
1115         * gnulib/import/m4/off_t.m4: Update.
1116         * gnulib/import/m4/onceonly.m4: Update.
1117         * gnulib/import/m4/open-cloexec.m4: Update.
1118         * gnulib/import/m4/open.m4: Update.
1119         * gnulib/import/m4/openat.m4: Update.
1120         * gnulib/import/m4/opendir.m4: Update.
1121         * gnulib/import/m4/pathmax.m4: Update.
1122         * gnulib/import/m4/rawmemchr.m4: Update.
1123         * gnulib/import/m4/readdir.m4: Update.
1124         * gnulib/import/m4/readlink.m4: Update.
1125         * gnulib/import/m4/realloc.m4: Update.
1126         * gnulib/import/m4/rename.m4: Update.
1127         * gnulib/import/m4/rewinddir.m4: Update.
1128         * gnulib/import/m4/rmdir.m4: Update.
1129         * gnulib/import/m4/save-cwd.m4: Update.
1130         * gnulib/import/m4/secure_getenv.m4: Update.
1131         * gnulib/import/m4/setenv.m4: Update.
1132         * gnulib/import/m4/signal_h.m4: Update.
1133         * gnulib/import/m4/ssize_t.m4: Update.
1134         * gnulib/import/m4/stat-time.m4: Update.
1135         * gnulib/import/m4/stat.m4: Update.
1136         * gnulib/import/m4/std-gnu11.m4: Update.
1137         * gnulib/import/m4/stdbool.m4: Update.
1138         * gnulib/import/m4/stddef_h.m4: Update.
1139         * gnulib/import/m4/stdint.m4: Update.
1140         * gnulib/import/m4/stdio_h.m4: Update.
1141         * gnulib/import/m4/stdlib_h.m4: Update.
1142         * gnulib/import/m4/strchrnul.m4: Update.
1143         * gnulib/import/m4/strdup.m4: Update.
1144         * gnulib/import/m4/strerror.m4: Update.
1145         * gnulib/import/m4/string_h.m4: Update.
1146         * gnulib/import/m4/strstr.m4: Update.
1147         * gnulib/import/m4/strtok_r.m4: Update.
1148         * gnulib/import/m4/sys_socket_h.m4: Update.
1149         * gnulib/import/m4/sys_stat_h.m4: Update.
1150         * gnulib/import/m4/sys_time_h.m4: Update.
1151         * gnulib/import/m4/sys_types_h.m4: Update.
1152         * gnulib/import/m4/tempname.m4: Update.
1153         * gnulib/import/m4/time_h.m4: Update.
1154         * gnulib/import/m4/unistd-safer.m4: Update.
1155         * gnulib/import/m4/unistd_h.m4: Update.
1156         * gnulib/import/m4/warn-on-use.m4: Update.
1157         * gnulib/import/m4/wchar_h.m4: Update.
1158         * gnulib/import/m4/wchar_t.m4: Update.
1159         * gnulib/import/m4/wctype_h.m4: Update.
1160         * gnulib/import/m4/wint_t.m4: Update.
1161         * gnulib/import/malloc.c: Update.
1162         * gnulib/import/malloc/scratch_buffer.h: Update.
1163         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1164         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1165         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1166         * gnulib/import/malloca.c: Update.
1167         * gnulib/import/malloca.h: Update.
1168         * gnulib/import/malloca.valgrind: Update.
1169         * gnulib/import/math.in.h: Update.
1170         * gnulib/import/mbrtowc.c: Update.
1171         * gnulib/import/mbsinit.c: Update.
1172         * gnulib/import/mbsrtowcs-impl.h: Update.
1173         * gnulib/import/mbsrtowcs-state.c: Update.
1174         * gnulib/import/mbsrtowcs.c: Update.
1175         * gnulib/import/memchr.c: Update.
1176         * gnulib/import/memmem.c: Update.
1177         * gnulib/import/mempcpy.c: Update.
1178         * gnulib/import/memrchr.c: Update.
1179         * gnulib/import/mkdir.c: Update.
1180         * gnulib/import/mkstemp.c: Update.
1181         * gnulib/import/msvc-inval.c: Update.
1182         * gnulib/import/msvc-inval.h: Update.
1183         * gnulib/import/msvc-nothrow.c: Update.
1184         * gnulib/import/msvc-nothrow.h: Update.
1185         * gnulib/import/open.c: Update.
1186         * gnulib/import/openat-die.c: Update.
1187         * gnulib/import/openat-priv.h: Update.
1188         * gnulib/import/openat-proc.c: Update.
1189         * gnulib/import/openat.c: Update.
1190         * gnulib/import/openat.h: Update.
1191         * gnulib/import/opendir.c: Update.
1192         * gnulib/import/pathmax.h: Update.
1193         * gnulib/import/pipe-safer.c: Update.
1194         * gnulib/import/rawmemchr.c: Update.
1195         * gnulib/import/readdir.c: Update.
1196         * gnulib/import/readlink.c: Update.
1197         * gnulib/import/realloc.c: Update.
1198         * gnulib/import/ref-add.sin: Update.
1199         * gnulib/import/ref-del.sin: Update.
1200         * gnulib/import/rename.c: Update.
1201         * gnulib/import/rewinddir.c: Update.
1202         * gnulib/import/rmdir.c: Update.
1203         * gnulib/import/same-inode.h: Update.
1204         * gnulib/import/save-cwd.c: Update.
1205         * gnulib/import/save-cwd.h: Update.
1206         * gnulib/import/scratch_buffer.h: Update.
1207         * gnulib/import/secure_getenv.c: Update.
1208         * gnulib/import/setenv.c: Update.
1209         * gnulib/import/signal.in.h: Update.
1210         * gnulib/import/stat-time.c: Update.
1211         * gnulib/import/stat-time.h: Update.
1212         * gnulib/import/stat-w32.c: Update.
1213         * gnulib/import/stat-w32.h: Update.
1214         * gnulib/import/stat.c: Update.
1215         * gnulib/import/stdbool.in.h: Update.
1216         * gnulib/import/stddef.in.h: Update.
1217         * gnulib/import/stdint.in.h: Update.
1218         * gnulib/import/stdio.in.h: Update.
1219         * gnulib/import/stdlib.in.h: Update.
1220         * gnulib/import/str-two-way.h: Update.
1221         * gnulib/import/strchrnul.c: Update.
1222         * gnulib/import/strdup.c: Update.
1223         * gnulib/import/streq.h: Update.
1224         * gnulib/import/strerror-override.c: Update.
1225         * gnulib/import/strerror-override.h: Update.
1226         * gnulib/import/strerror.c: Update.
1227         * gnulib/import/string.in.h: Update.
1228         * gnulib/import/stripslash.c: Update.
1229         * gnulib/import/strnlen1.c: Update.
1230         * gnulib/import/strnlen1.h: Update.
1231         * gnulib/import/strstr.c: Update.
1232         * gnulib/import/strtok_r.c: Update.
1233         * gnulib/import/sys_stat.in.h: Update.
1234         * gnulib/import/sys_time.in.h: Update.
1235         * gnulib/import/sys_types.in.h: Update.
1236         * gnulib/import/tempname.c: Update.
1237         * gnulib/import/tempname.h: Update.
1238         * gnulib/import/time.in.h: Update.
1239         * gnulib/import/unistd--.h: Update.
1240         * gnulib/import/unistd-safer.h: Update.
1241         * gnulib/import/unistd.in.h: Update.
1242         * gnulib/import/unsetenv.c: Update.
1243         * gnulib/import/verify.h: Update.
1244         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1245         * gnulib/import/wchar.in.h: Update.
1246         * gnulib/import/wctype.in.h: Update.
1247         * gnulib/import/xalloc-oversized.h: Update.
1248         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1249         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1250
1251 2018-08-16  Gary Benson <gbenson@redhat.com>
1252
1253         PR gdb/13000:
1254         * gdb/main.c (captured_main_1): Exit with nonzero status
1255         in batch mode if the last command to be executed failed.
1256         * NEWS: Mention the above.
1257
1258 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
1259
1260         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
1261         end of warning message.
1262
1263 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
1264
1265         PR gdb/22943:
1266         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
1267         (aarch64_extract_return_value): Use
1268         aapcs_is_vfp_call_or_return_candidate.
1269         (aarch64_return_in_memory): Likewise.
1270         (aarch64_store_return_value): Likewise.
1271
1272 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
1273
1274         * aarch64-tdep.c
1275         (aapcs_is_vfp_call_or_return_candidate): Make static
1276         (pass_in_v_or_stack): Remove function.
1277         (pass_in_v_vfp_candidate): New function.
1278         (aarch64_push_dummy_call): Check for float register candidates.
1279
1280 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
1281
1282         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
1283         (aapcs_is_vfp_call_or_return_candidate_1): New function.
1284         (aapcs_is_vfp_call_or_return_candidate): Likewise.
1285
1286 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
1287
1288         PR build/23399
1289         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
1290         (struct ipa_sym_addresses): Rename to...
1291         (struct ipa_sym_addresses_common): ... this.
1292         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
1293
1294 2018-08-28  Tom Tromey  <tom@tromey.com>
1295
1296         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
1297         (token_fifo): Now a std::vector.
1298         (yylex, c_parse): Update.
1299         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
1300         (token_fifo): Now a std::vector.
1301         (yylex, d_parse): Update.
1302         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
1303         (token_fifo): Now a std::vector.
1304         (yylex, go_parse): Update.
1305
1306 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
1307
1308         * parser-defs.h (struct type_stack) <elements>: Change type to
1309         std::vector<union type_stack_elt>.
1310         <depth, size>: Remove.
1311         * parse.c (parse_exp_in_context_1): Adjust.
1312         (type_stack_reserve): Remove.
1313         (check_type_stack_depth): Remove.
1314         (insert_into_type_stack): Adjust to std::vector.
1315         (insert_type): Likewise.
1316         (push_type): Likewise.
1317         (push_type_int): Likewise.
1318         (insert_type_address_space): Likewise.
1319         (pop_type): Likewise.
1320         (pop_type_int): Likewise.
1321         (pop_typelist): Likewise.
1322         (pop_type_stack): Likewise.
1323         (append_type_stack): Likewise.
1324         (push_type_stack): Likewise.
1325         (get_type_stack): Likewise.
1326         (type_stack_cleanup): Likewise.
1327         (push_typelist): Likewise.
1328         (follow_types): Likewise.
1329         (_initialize_parse): Likewise.
1330
1331 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1332
1333         * NEWS: Mention csky target.
1334
1335 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
1336             Hafiz Abid Qadeer  <abidh@codesourcery.com>
1337             Don Breazeal  <donb@codesourcery.com>
1338
1339         * csky-linux-tdep.c: New file.
1340         * csky-tdep.c: Likewise.
1341         * csky-tdep.h: Likewise.
1342         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
1343         csky-tdep.o.
1344         (HFILES_NO_SRCDIR): Add csky-tdep.h.
1345         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
1346         * configure.tgt: Add csky support.
1347
1348 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
1349
1350         * python/py-framefilter.c (py_print_frame): Print frame architecture
1351         when printing on an MI output.
1352
1353 2018-08-27  Tom Tromey  <tom@tromey.com>
1354
1355         PR build/23087:
1356         * configure: Rebuild.
1357         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
1358
1359 2018-08-27  Tom Tromey  <tom@tromey.com>
1360
1361         * aarch64-linux-tdep.c
1362         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
1363         casts to int.
1364
1365 2018-08-27  Tom Tromey  <tom@tromey.com>
1366
1367         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
1368         unsigned.
1369         (ppc64_standard_linkage1, ppc64_standard_linkage2)
1370         (ppc64_standard_linkage3, ppc64_standard_linkage4)
1371         (ppc64_standard_linkage5, ppc64_standard_linkage6)
1372         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
1373         unsigned.
1374
1375 2018-08-27  Tom Tromey  <tom@tromey.com>
1376
1377         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
1378         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
1379
1380 2018-08-27  Tom Tromey  <tom@tromey.com>
1381
1382         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
1383         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
1384         ULONGEST_MAX.
1385         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
1386         ULONGEST_MAX.
1387         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
1388         ULONGEST_MAX.
1389         * sparc-linux-tdep.c (sparc32_linux_sigframe)
1390         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
1391         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
1392         ULONGEST_MAX.
1393         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
1394         (ppc64_linux_sigaction_tramp_frame)
1395         (ppc32_linux_sighandler_tramp_frame)
1396         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
1397         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
1398         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
1399         * mn10300-linux-tdep.c (am33_linux_sigframe)
1400         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
1401         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
1402         * mips-linux-tdep.c (mips_linux_o32_sigframe)
1403         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
1404         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
1405         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
1406         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
1407         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
1408         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
1409         * microblaze-linux-tdep.c
1410         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
1411         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
1412         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
1413         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
1414         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
1415         * common/common-types.h (ULONGEST_MAX): New define.
1416         (CORE_ADDR_MAX): Fix formatting.
1417         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
1418         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
1419         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
1420         (arm_linux_rt_sigreturn_tramp_frame)
1421         (arm_eabi_linux_sigreturn_tramp_frame)
1422         (arm_eabi_linux_rt_sigreturn_tramp_frame)
1423         (thumb2_eabi_linux_sigreturn_tramp_frame)
1424         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
1425         (arm_linux_restart_syscall_tramp_frame)
1426         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
1427         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
1428         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
1429         ULONGEST_MAX.
1430         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
1431
1432 2018-08-27  Tom Tromey  <tom@tromey.com>
1433
1434         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
1435         CORE_ADDR_MAX.
1436         * mips-tdep.c (mips_deal_with_atomic_sequence)
1437         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
1438         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
1439         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
1440         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
1441         CORE_ADDR_MAX.
1442         * aarch64-tdep.c (aarch64_software_single_step): Use
1443         CORE_ADDR_MAX.
1444
1445 2018-08-27  Tom Tromey  <tom@tromey.com>
1446
1447         * linespec.c (complete_linespec_component): Add cast to "char".
1448         * completer.c (completion_tracker::build_completion_result): Add
1449         cast to "char".
1450
1451 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
1452
1453         * solist.h (struct solist, struct target_so_ops): Fix
1454         indentation.
1455
1456 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
1457
1458         * ada-tasks.c (ada_task_info_s): Remove typedef.
1459         (DEF_VEC_O(ada_task_info_s)): Remove.
1460         (struct ada_tasks_inferior_data): Initialize fields.
1461         <task_list>: Make an std::vector.
1462         (get_ada_tasks_inferior_data): Allocate with new.
1463         (ada_get_task_number): Adjust.
1464         (get_task_number_from_id): Likewise.
1465         (valid_task_id): Likewise.
1466         (ada_get_task_info_from_ptid): Likewise.
1467         (iterate_over_live_ada_tasks): Likewise.
1468         (add_ada_task): Likewise.
1469         (read_known_tasks): Likewise.
1470         (ada_build_task_list): Likewise.
1471         (print_ada_task_info): Likewise.
1472         (info_task): Likewise.
1473         (task_command_1): Likewise.
1474
1475 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
1476
1477         * ada-lang.c (add_angle_brackets): Return std::string.
1478
1479 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
1480
1481         * python/py-threadevent.c (py_get_event_thread): Initialize
1482         pythread.
1483
1484 2018-08-24  Pedro Alves  <palves@redhat.com>
1485
1486         * python/py-bpevent.c (create_breakpoint_event_object): Use
1487         copy-initialization.
1488         * python/py-continueevent.c (emit_continue_event): Use
1489         copy-initialization.
1490         * python/py-exitedevent.c (create_exited_event_object): Return a
1491         gdbpy_ref<>.
1492         (emit_exited_event): Use copy-initialization.
1493         * python/py-inferior.c (python_new_inferior)
1494         (python_inferior_deleted, add_thread_object): Use
1495         copy-initialization.
1496         * python/py-infevents.c (create_inferior_call_event_object)
1497         (create_register_changed_event_object)
1498         (create_memory_changed_event_object): Return a gdbpy_ref<>.
1499         (emit_inferior_call_event, emit_memory_changed_event)
1500         (emit_register_changed_event): Use copy-initialization.
1501         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1502         Return a gdbpy_ref<>.
1503         (emit_new_objfile_event): Use copy-initialization.
1504         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
1505         (emit_clear_objfiles_event): Use copy-initialization.
1506         * python/py-signalevent.c (create_signal_event_object): Use
1507         copy-initialization.
1508         * python/py-threadevent.c (create_thread_event_object): Use
1509         copy-initialization.
1510
1511 2018-08-24  Pedro Alves  <palves@redhat.com>
1512             Simon Marchi  <simon.marchi@ericsson.com>
1513
1514         PR gdb/23379
1515         * python/py-continueevent.c: Include "gdbthread.h".
1516         (create_continue_event_object): Add intro comment.  Add 'ptid'
1517         parameter.  Use it to find thread to pass to
1518         create_thread_event_object.
1519         (emit_continue_event): Pass PTID down to
1520         create_continue_event_object.
1521         * python/py-event.h (py_get_event_thread): Declare.
1522         (create_thread_event_object): Remove default from 'thread'
1523         parameter.
1524         * python/py-stopevent.c (create_stop_event_object): Use
1525         py_get_event_thread.
1526         * python/py-threadevent.c (get_event_thread): Rename to ...
1527         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
1528         and use it to find the thread.
1529         (create_thread_event_object): Assert that THREAD isn't null.
1530         Don't find the event thread here.
1531
1532 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
1533
1534         * block.h (blockrange, blockranges): New struct declarations.
1535         (struct block): Add new field named `ranges'.
1536         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
1537         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
1538         macros for accessing ranges in struct block.
1539         (make_blockranges): New declaration.
1540         block.c (make_blockranges): New function.
1541         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
1542         for block.
1543         * symtab.h (find_pc_partial_function): Add new parameter `block'.
1544         * blockframe.c (cache_pc_function_block): New static global.
1545         (clear_pc_function_cache): Clear cache_pc_function_block.
1546         (find_pc_partial_function): Move comment to symtab.h.  Add
1547         support for non-contiguous blocks.
1548         * cli/cli-cmds.c (block.h): Include.
1549         (print_disassembly): Handle printing of non-contiguous blocks.
1550         (disassemble_current_function): Likewise.
1551         (disassemble_command): Likewise.
1552
1553         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
1554         BLOCK_START.
1555         * blockframe.c (get_pc_function_start): Likewise.
1556         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
1557         (gcc_symbol_address): Likewise.
1558         * compile/compile-object-run.c (compile_object_run): Likewise.
1559         * compile/compile.c (get_expr_block_and_pc): Likewise.
1560         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
1561         (func_addr_to_tail_call_list): Likewise.
1562         * findvar.c (default_read_var_value): Likewise.
1563         * inline-frame.c (inline_frame_this_id): Likewise.
1564         (skip-inline_frames): Likewise.
1565         * infcmd.c (until_next_command): Likewise.
1566         * linespec.c (convert_linespec_to_sals): Likewise.
1567         * parse.c (parse_exp_in_context_1): Likewise.
1568         * printcmd.c (build_address_symbolic): likewise.
1569         (info_address_command): Likewise.
1570         symtab.c (find_function_start_sal): Likewise.
1571         (skip_prologue_sal): Likewise.
1572         (find_function_alias_target): Likewise.
1573         (find_gnu_ifunc): Likewise.
1574         * stack.c (find_frame_funname): Likewise.
1575         * symtab.c (fixup_symbol_section): Likewise.
1576         (find_function_start_sal): Likewise.
1577         (skip_prologue_sal): Likewsie.
1578         (find_function_alias_target): Likewise.
1579         (find_gnu_ifunc): Likewise.
1580         * tracepoint.c (info_scope_command): Likewise.
1581         * value.c (value_fn_field): Likewise.
1582
1583         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
1584         in place of find_pc_partial_function.
1585         * blockframe.c (find_function_entry_range_from_pc): New function.
1586         * symtab.h (find_function_entry_range_from_pc): Declare and document.
1587         * objfiles.c (objfile_relocate1): Relocate start and end addresses
1588         for each range in a block.
1589
1590
1591 2018-08-23  Xavier Roirand  <roirand@adacore.com>
1592
1593         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
1594         incrementation.
1595
1596 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1597
1598         * solib-svr4.c (read_program_headers_from_bfd): Return
1599         gdb::optional<gdb::byte_vector>.
1600         (svr4_exec_displacement): Adjust.
1601
1602 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1603
1604         * solib-svr4.c (read_program_header): Return
1605         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
1606         (find_program_interpreter): Return
1607         gdb::optional<gdb::byte_vector>.
1608         (scan_dyntag_auxv): Adjust.
1609         (enable_break): Adjust.
1610         (svr4_exec_displacement): Adjust.
1611
1612 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1613
1614         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
1615         * inf-child.c (inf_child_target::terminal_save_inferior): New.
1616
1617 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1618
1619         * guile/scm-string.c (gdbscm_scm_from_printf): Use
1620         string_vprintf.
1621         * guile/scm-utils.c (gdbscm_printf): Likewise.
1622         * serial.c (serial_printf): Likewise.
1623         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
1624
1625 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
1626
1627         * stack.c (print_frame): Print frame architecture when printing on
1628         an MI output.
1629         * NEWS: Mention new "arch" attribute in frame output.
1630
1631 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
1632
1633         * arch/aarch64.h (aarch64_regnum): Update comment.
1634
1635 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
1636
1637         * NEWS: Add SVE to 8.2 section.
1638
1639 2018-08-21  Pedro Alves  <palves@redhat.com>
1640
1641         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
1642         out from gdbscm_parse_function_args.
1643         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
1644         gdbscm_parse_function_args_1.
1645
1646 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
1647
1648         PR gdb/17816
1649         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
1650         operator.
1651
1652 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
1653
1654         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
1655
1656 2018-08-19  Michael Spang  <spang@google.com>
1657
1658         PR gdb/11786
1659         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
1660         for PT_TLS segments.
1661
1662 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
1663
1664         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
1665         dwarf_variable_value.
1666         * dwarf2-frame.c (class dwarf_expr_executor):
1667         Add override for dwarf_variable_value.
1668         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
1669         (class symbol_needs_eval_context): Likewise.
1670         (indirect_synthetic_pointer): Add forward declaration.
1671         (sect_variable_value): New function.
1672         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
1673         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
1674         for DW_OP_GNU_variable_value.
1675
1676 2018-08-16  Tom Tromey  <tom@tromey.com>
1677
1678         * top.c (read_command_file): Update.
1679         (command_line_input): Remove "repeat" argument.
1680         * ada-lang.c (get_selections): Update.
1681         * linespec.c (decode_line_2): Update.
1682         * defs.h (command_line_input): Remove argument.
1683         * cli/cli-script.c (read_next_line): Update.
1684         * python/py-gdb-readline.c: Update.
1685
1686 2018-08-17  Tom Tromey  <tom@tromey.com>
1687
1688         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
1689         command_line_input.
1690
1691 2018-08-15  Tom Tromey  <tom@tromey.com>
1692
1693         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
1694
1695 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
1696
1697         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
1698         If used, use find_pc_partial_function to find address range
1699         to disassemble.
1700         * mi/mi-main.c (mi_cmd_list_features): Report
1701         "data-disassemble-a-option" feature.
1702         * NEWS: Mention new -data-disassemble option -a.
1703
1704 2018-08-13  Tom Tromey  <tom@tromey.com>
1705
1706         * common/common-defs.h (_FORTIFY_SOURCE): Define.
1707
1708 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1709
1710         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
1711         (aarch64_linux_collect_sve_regset): Likewise.
1712         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
1713         * regcache.h (regcache_map_entry_size): New function.
1714
1715 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1716
1717         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
1718         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
1719         (SVE_HEADER_VL_LENGTH): Likewise.
1720         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
1721         (SVE_HEADER_FLAGS_LENGTH): Likewise.
1722         (SVE_HEADER_RESERVED_LENGTH): Likewise.
1723         (SVE_HEADER_SIZE_OFFSET): Likewise.
1724         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
1725         (SVE_HEADER_VL_OFFSET): Likewise.
1726         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
1727         (SVE_HEADER_FLAGS_OFFSET): Likewise.
1728         (SVE_HEADER_RESERVED_OFFSET): Likewise.
1729         (SVE_HEADER_SIZE): Likewise.
1730         (aarch64_linux_core_read_vq): Add function.
1731         (aarch64_linux_core_read_description): Check for SVE section.
1732
1733 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1734
1735         * aarch64-fbsd-tdep.c
1736         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
1737         collect_size.
1738         * aarch64-linux-tdep.c
1739         (aarch64_linux_iterate_over_regset_sections): Likewise.
1740         * alpha-linux-tdep.c
1741         (alpha_linux_iterate_over_regset_sections):
1742         * alpha-nbsd-tdep.c
1743         (alphanbsd_iterate_over_regset_sections): Likewise.
1744         * amd64-fbsd-tdep.c
1745         (amd64fbsd_iterate_over_regset_sections): Likewise.
1746         * amd64-linux-tdep.c
1747         (amd64_linux_iterate_over_regset_sections): Likewise.
1748         * arm-bsd-tdep.c
1749         (armbsd_iterate_over_regset_sections): Likewise.
1750         * arm-fbsd-tdep.c
1751         (arm_fbsd_iterate_over_regset_sections): Likewise.
1752         * arm-linux-tdep.c
1753         (arm_linux_iterate_over_regset_sections): Likewise.
1754         * corelow.c (get_core_registers_cb): Likewise.
1755         (core_target::fetch_registers): Likewise.
1756         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
1757         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
1758         * gdbarch.h (void): Regenerate.
1759         * gdbarch.sh: Add supply_size and collect_size.
1760         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
1761         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
1762         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
1763         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
1764         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
1765         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
1766         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
1767         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
1768         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
1769         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
1770         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
1771         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
1772         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
1773         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
1774         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
1775         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
1776         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
1777         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
1778         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
1779         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
1780         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
1781         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
1782         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
1783         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
1784         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
1785         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
1786         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
1787         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
1788         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
1789         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
1790
1791 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
1792
1793         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
1794         with string_printf.
1795
1796 2018-08-10  Keith Seitz  <keiths@redhat.com>
1797
1798         * compile/compile-c-support.c (add_code_header, add_code_footer):
1799         Move into policy class.
1800         (c_push_user_expression, pop_user_expression_nop)
1801         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
1802         (compile_program): New host class.
1803         (c_compile_program): New typedef.
1804         (c_compute_porgram): Use c_compile_program.
1805
1806 2018-08-10  Keith Seitz  <keiths@redhat.com>
1807
1808         * compile/compile-internal.h (compile_instance::~compile_instance):
1809         Remove calls to htab_delete.
1810         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
1811         * compile.c (compile_instance::compile_instance): Initialize
1812         htab unique pointers.
1813         (compile_instance::get_cached_type, compile_instance::insert_type)
1814         (compile_instance::error_symbol_once): Update for unique_ptr.
1815
1816 2018-08-10  Keith Seitz  <keiths@redhat.com>
1817
1818         * compile/compile-c-symbols.c (struct symbol_error)
1819         (hash_symbol_error, eq_symbol_error, del_symbol_error)
1820         (compile_instance::insert_symbol_error)
1821         (compile_instance::error_symbol_once): Move to ...
1822         * compile/compile.c: ... here.
1823
1824 2018-08-10  Keith Seitz  <keiths@redhat.com>
1825
1826         * compile/compile-c-support.c (c_get_compile_context): Use `new'
1827         instead of `new_compile_instance'.
1828         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
1829         Update description.
1830         If the symbol error map is not initialized, create it.
1831         (generate_c_for_for_one_symbol): Do not check/initialize
1832         the symbol error map.
1833         * compile/compile-c-types.c (compile_c_instance): Make a class.
1834         Update all callers.
1835         (compile_instance::compile_instance): Initialize the type cache.
1836         (get_cached_type): New function.
1837         (insert_type): Update description.
1838         (compile_c_instance::m_default_cflags): Define.
1839         (convert_type): Update description.  Use get_cached_type.
1840         (delete_instance): Moved to destructor.
1841         (new_compile_instance): Moved to constructor.
1842         * compile/compile-c.h (compile_c_instance): Make class inheriting
1843         from compile_instance.
1844         <base>: Remove field.
1845         <type_map, symbol_err_map>: Move to base class.
1846         <c_plugin>: Rename to `m_plugin' and remove pointer type.
1847         * compile/compile-internal.h (compile_instance): Make class.
1848         <type_map_t, symbol_err_map_t>: Define.
1849         <fe>: Rename to `m_gcc_fe'.
1850         <scope, block, gcc_target_options>: Add `m_' prefix.
1851         <m_type_map, m_symbol_err_map>: New fields, moved from
1852         compile_c_instance.
1853         <destroy>: Remove.
1854         (convert_type, new_compile_instance): Remove.
1855         * compile/compile.c (cleanup_compile_instance): Remove.
1856         (compile_to_object): Use unique_ptr to eliminate cleanups.
1857         (compile_instance::set_print_callback, compile_instance::version)
1858         (compile_instance::set_verbose)
1859         (compile_instance::set_driver_filename)
1860         (compile_instance::set_triplet_regexp)
1861         (compile_instance::set_arguments)
1862         (compile_instance::set_source_file)
1863         (compile_instance::compile): Define.
1864
1865 2018-08-10  Keith Seitz  <keiths@redhat.com>
1866
1867         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
1868         * compile/compile-c-types.c: Define GCC_METHODN macros and include
1869         gcc-c-fe.def to define C plugin.
1870         (delete_instance): Delete `c_plugin'.
1871         (new_compile_instance): Initialize `c_plugin'.
1872         * compile/compile-c.h: Include gcc_c_plugin.h.
1873         (struct compile_c_instance) <c_plugin>: New member.
1874         * gcc-c-plugin.h: New file.
1875         Update all callers with API change.
1876
1877 2018-08-10  Keith Seitz  <keiths@redhat.com>
1878
1879         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
1880         (HFILES_NO_SRCDIR): ... to here.
1881         Add compile-internal.h and compile-c.h.
1882         * compile/compile-c-support.c: Include compile-c.h.
1883         * compile/compile-c-symbols.c: Include compile-c.h.
1884         (generate_c_for_variable_locations): Update comment.
1885         * compile/compile-c-types.c: Include compile-c.h.
1886         * compile/compile-c.h: New file -- moved C language declarations
1887         from other files here.
1888         * compile/compile-internal.h: Do not include hashtab.h or
1889         common/enum-flags.h.
1890         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
1891         (gcc_convert_symbol, gcc_symbol_address)
1892         (generate_c_for_variable_locations, c_get_mode_for_size)
1893         (c_get_range_decl_name): Definitions moved to compile-c.h.
1894         * compile/compile-loc2c.c: Include compile-c.h.
1895
1896 2018-08-10  Keith Seitz  <keiths@redhat.com>
1897
1898         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
1899         (c_symbol_substitution_name): ... this.
1900         Update all callers.
1901
1902 2018-08-10  Keith Seitz  <keiths@redhat.com>
1903
1904         * compile/compile-c-support.c (c_compute_program): Use
1905         unique_xmalloc_ptr to eliminate cleanup.
1906         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
1907         Return a unique_xmalloc_ptr and eliminate cleanup.
1908         * compile/compile-internal.h (generate_c_for_variable_locations):
1909         Return unique_xmalloc_ptr and update description.
1910
1911 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
1912
1913         * corelow.c (core_target::get_core_register_section): Rename
1914         min_size to section_min_size.
1915
1916 2018-08-09  Jim Wilson  <jimw@sifive.com>
1917
1918         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
1919         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
1920         * NEWS: Mention new GNU/Linux RISC-V target.
1921         * configure.host: Add riscv*-*-linux*.
1922         * configure.nat: Add riscv*.
1923         * configure.tgt: Add riscv*-*-linux*.
1924         * riscv-linux-nat.c: New file.
1925         * riscv-linux-tdep.c: New file.
1926
1927 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
1928
1929         * infrun.c (resume): Make static, add forward declaration.
1930         (proceed): Update header comment.
1931         * infrun.h (resume): Delete declaration.
1932
1933 2018-08-09  Tom Tromey  <tom@tromey.com>
1934
1935         * riscv-tdep.h: Minor formatting fixes.
1936
1937 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
1938
1939         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
1940         * dwarf-index-cache.c (create_dir_and_check): Likewise.
1941         (test_mkdir_recursive): Likewise.
1942         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
1943
1944 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
1945
1946         * valarith.c (value_subscripted_rvalue): If an array is not in
1947         memory, and we don't know the upper bound, then we can't know that
1948         the requested element exists or not.
1949
1950 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
1951
1952         * target.c (str_comma_list_concat_elem): Fix typo in comment.
1953         (target_options_to_string): Add comment.
1954
1955 2018-08-08  Tom Tromey  <tom@tromey.com>
1956
1957         * unittests/scoped_mmap-selftests.c: Check result of "write".
1958
1959 2018-08-08  Jim Wilson  <jimw@sifive.com>
1960
1961         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
1962         (decode_register_index_short): New.
1963         (decode_j_type_insn, decode_cj_type_insn): New.
1964         (decode_b_type_insn, decode_cb_type_insn): New.
1965         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
1966         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
1967         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
1968         is_c_sw_insn instead of is_sw_insn.
1969         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
1970         (riscv_software_single_step): New.
1971         * riscv-tdep.h (riscv_software_single_step): Declare.
1972
1973         * riscv-tdep.c (riscv_isa_xlen): Drop static.
1974         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
1975
1976 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
1977
1978         PR gdb/18050:
1979         * target.c (dispose_inferior): Don't dispose of inferiors that are
1980         already killed.
1981
1982 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
1983
1984         * remote.c (remote_target::download_tracepoint): Change char* to
1985         const char*.
1986
1987 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
1988
1989         * target.h (target_options_to_string): Return an std::string.
1990         * target.c (str_comma_list_concat_elem): Return void, use
1991         std::string.
1992         (do_option): Likewise.
1993         (target_options_to_string): Return an std::string.
1994         * linux-nat.c (linux_nat_target::wait): Adjust.
1995         * target-debug.h (target_debug_print_options): Adjust.
1996
1997 2018-08-07  Tom Tromey  <tom@tromey.com>
1998
1999         * Makefile.in (CPPFLAGS): New variable.
2000         (INTERNAL_CPPFLAGS): Use it.
2001
2002 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2003
2004         * NEWS: Mention the index cache.
2005
2006 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2007
2008         * common/pathstuff.h (get_standard_cache_dir): New.
2009         * common/pathstuff.c (get_standard_cache_dir): New.
2010         * build-id.h (build_id_to_string): New.
2011         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
2012         DEBUG_STR_SUFFIX): Move to here.
2013         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
2014         DEBUG_STR_SUFFIX): Move from there.
2015         (write_psymtabs_to_index): Make non-static, add basename
2016         parameter.  Write to temporary files, rename when done.
2017         (save_gdb_index_command): Adjust call to
2018         write_psymtabs_to_index.
2019         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
2020         field.
2021         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
2022         (get_gdb_index_contents_from_cache): New.
2023         (get_gdb_index_contents_from_cache_dwz): New.
2024         (dwarf2_initialize_objfile): Read index from cache.
2025         (dwarf2_build_psymtabs): Save to index.
2026         * dwarf-index-cache.h: New file.
2027         * dwarf-index-cache.c: New file.
2028         * dwarf-index-write.h: New file.
2029
2030 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2031
2032         * gnulib/aclocal.m4: Re-generate.
2033         * gnulib/config.in: Re-generate.
2034         * gnulib/configure: Re-generate.
2035         * gnulib/import/Makefile.am: Re-generate.
2036         * gnulib/import/Makefile.in: Re-generate.
2037         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2038         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2039         * gnulib/import/m4/mkdir.m4: New file.
2040         * gnulib/import/mkdir.c: New file.
2041         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
2042         module.
2043
2044 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2045
2046         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
2047         * common/scoped_mmap.c: New file.
2048         * common/scoped_mmap.h (destroy): New method.
2049         (~scoped_mmap, reset): Use destroy.
2050         (scoped_mmap): New move constructor.
2051         (mmap_file): New declaration.
2052         * unittests/scoped_mmap-selftests.c (test_normal,
2053         test_invalid_filename, run_tests): New functions.
2054         (_initialize_scoped_mmap_selftests): Register selftest.
2055
2056 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2057
2058         * dwarf2read.c (read_gdb_index_from_section): Rename to...
2059         (read_gdb_index_from_buffer): ... this.  Remove section
2060         parameter, add buffer parameter.
2061         (get_gdb_index_contents_ftype,
2062         get_gdb_index_contents_dwz_ftype): New typedefs.
2063         (dwarf2_read_gdb_index): Add callback parameters to get the
2064         index contents.
2065         (get_gdb_index_contents_from_section): New.
2066         (dwarf2_initialize_objfile): Update call to
2067         dwarf2_read_gdb_index.
2068
2069 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
2070
2071         * common/filestuff.h (gdb_fopen_cloexec): New overload.
2072         (gdb_open_cloexec): Likewise.
2073         * nat/linux-osdata.c (command_from_pid): Use string_printf.
2074         (commandline_from_pid): Likewise.
2075         (linux_xfer_osdata_threads): Likewise.
2076         (linux_xfer_osdata_fds): Likewise.
2077         * ada-lang.c (is_package_name): Likewise.
2078         * auxv.c (procfs_xfer_auxv): Likewise.
2079         * breakpoint.c (print_one_breakpoint_location): Use
2080         uiout::field_fmt.
2081         (print_one_catch_solib): Use string_printf.
2082         * coff-pe-read.c (add_pe_exported_sym): Likewise.
2083         (add_pe_forwarded_sym): Likewise.
2084         * dwarf2read.c (create_type_unit_group): Likewise.
2085         (build_error_marker_type): Likewise.
2086         * infcall.c (get_function_name): Likewise.
2087         * valprint.c (print_converted_chars_to_obstack): Likewise.
2088         * xtensa-tdep.c (xtensa_register_type): Likewise.
2089
2090 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
2091
2092         * remote.c (remote_target::download_tracepoint): Fix format
2093         string errors.
2094
2095 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2096
2097         * tracefile.c: Include common/byte-vector.h.
2098         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
2099         with trace_regblock_size if needed.  Update uses of buf.
2100
2101 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2102
2103         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
2104         std::vector<unsigned char>.
2105         * tracepoint.c (collection_list::collection_list): Remove
2106         m_regs_mask initializer from initializer list.  Resize
2107         m_regs_mask using the largest remote register number.
2108         (collection_list::add_remote_register): Remove size check on
2109         m_regs_mask.  Use at to access element.
2110         (collection_list::stringify): Change type of temp_buf to
2111         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
2112         stringify the register mask.  Use pack_hex_byte for the register
2113         mask.
2114
2115 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2116
2117         * tracepoint.h (class collection_list) <add_register>: Remove.
2118         <add_remote_register, add_ax_registers, add_local_register>:
2119         Declare.
2120         <add_memrange>: Add scope parameter.
2121         * tracepoint.c (encode_actions_1): Likewise.
2122         (collection_list::add_register): Rename to ...
2123         (collection_list::add_remote_register): ... this.  Update
2124         comment.
2125         (collection_list::add_ax_registers, add_local_register): New
2126         methods.
2127         (collection_list::add_memrange): Add scope parameter.  Call
2128         add_local_register instead of add_register.
2129         (finalize_tracepoint_aexpr): New function.
2130         (collection_list::collect_symbol): Update calls to add_memrange.
2131         Call add_local_register instead of add_register.  Call
2132         add_ax_registers.  Call finalize_tracepoint_aexpr.
2133         (encode_actions_1): Get remote regnos for $reg action.  Call
2134         add_remote_register, add_ax_registers, and add_local_register.
2135         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
2136         (validate_actionline): Call finalize_tracepoint_aexpr.
2137
2138 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2139
2140         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
2141         Replace array buf with gdb::char_vector buf, of size
2142         get_remote_packet_size ().  Replace references to buf and
2143         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
2144         and xsnprintf with snprintf.  Raise errors if the buffer is too
2145         small.
2146
2147 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2148
2149         * remote.c (remote_target::download_tracepoint): Fix the has_more
2150         predicate in the QTDP action list iteration.
2151
2152 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2153
2154         * remote.c (remote_target::download_tracepoint): Fix indentation
2155         in for block.
2156
2157 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2158
2159         * proc-api.c (_initialize_proc_api): Remove c, unused.
2160         * procfs.c (procfs_init_inferior): Remove signals, unused.
2161         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
2162         unused.
2163
2164 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
2165             Andrew Burgess  <andrew.burgess@embecosm.com>
2166
2167         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
2168         'W_STOPCODE (0)' as this could be ambiguous.
2169
2170 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
2171
2172         * ser-tcp.c (net_open): Fix thinko when deciding whether to
2173         disable TCP's Nagle algorithm (use "ai_protocol" instead of
2174         "ai_socktype").
2175
2176 2018-08-02  Tom Tromey  <tom@tromey.com>
2177
2178         PR symtab/16842.
2179         * dwarf2read.c (read_func_scope): Set symtab on template parameter
2180         symbols.
2181         (process_structure_scope): Likewise.
2182
2183 2018-08-02  Xavier Roirand  <roirand@adacore.com>
2184
2185         PR gdb/22629:
2186         * darwin-nat.c (darwin_kill_inferior): Fix handling of
2187         kill inferior.
2188
2189 2018-08-02  Tom Tromey  <tom@tromey.com>
2190
2191         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
2192         (darwin_suspend_inferior, darwin_resume_inferior)
2193         (darwin_decode_notify_message, darwin_resume_inferior_threads)
2194         (darwin_check_new_threads): Check result of get_darwin_inferior.
2195
2196 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
2197
2198         GDB 8.1.1 released.
2199
2200 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
2201
2202         * varobj.c (varobj_get_path_expr_parent): Report an error if
2203         parent is a dynamic varobj.
2204
2205 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
2206
2207         * gnulib/aclocal.m4: Re-generate.
2208         * gnulib/config.in: Re-generate.
2209         * gnulib/configure: Re-generate.
2210         * gnulib/import/Makefile.in: Re-generate.
2211         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2212         * gnulib/import/m4/onceonly.m4: Re-generate.
2213
2214 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
2215
2216         * target-descriptions.c (struct xml_test_tdesc): New.
2217         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
2218         (record_xml_tdesc): Update.
2219         (maintenance_check_xml_descriptions): Update.
2220         * target-descriptions.h (record_xml_tdesc): Update comment.
2221
2222 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2223
2224         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
2225         checking array bounds are defined.
2226
2227 2018-07-30  Tom Tromey  <tom@tromey.com>
2228
2229         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
2230         irreflexivity violation.
2231
2232 2018-07-30  Tom Tromey  <tom@tromey.com>
2233
2234         * cli/cli-decode.c (lookup_cmd): Remove lint code.
2235         * value.c (unpack_long): Remove lint code.
2236         * valops.c (value_ind): Remove lint code.
2237         * valarith.c (value_x_binop, value_x_unop, value_equal)
2238         (value_pos): Remove lint code.
2239
2240 2018-07-28  Tom de Vries  <tdevries@suse.de>
2241
2242         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
2243         with undefined upper bound as <optimized out>.
2244
2245 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
2246
2247         * gcore.in: Rename variable "name" to "prefix".  Expand
2248         "usage" text.
2249
2250 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
2251
2252         * windows-nat.c (windows_nat_target::create_inferior): Update to
2253         call close() in global namespace.
2254
2255 2018-07-26  Tom Tromey  <tom@tromey.com>
2256
2257         * dwarf-index-write.c (add_address_entry): Don't add objfile
2258         offsets.
2259         * dbxread.c (find_stab_function): Rename from
2260         find_stab_function_addr.  Return a bound_minimal_symbol.
2261         (read_dbx_symtab): Use raw_text_low, raw_text_high.
2262         Don't add objfile offsets.
2263         (end_psymtab): Use raw_text_low, raw_text_high,
2264         MSYMBOL_VALUE_RAW_ADDRESS.
2265         (read_ofile_symtab): Update.
2266         (process_one_symbol): Update.
2267         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
2268         offsets.
2269         (dw2_relocate): Remove.
2270         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
2271         searching addrmap.
2272         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
2273         Update.
2274         (process_psymtab_comp_unit_reader, add_partial_symbol)
2275         (add_partial_subprogram, dwarf2_ranges_read): Update.
2276         (load_partial_dies): Update.
2277         (add_address_entry): Don't add objfile offsets.
2278         (dwarf2_build_include_psymtabs): Update.
2279         (create_addrmap_from_aranges): Don't add objfile offsets.
2280         (dw2_find_pc_sect_compunit_symtab): Update.
2281         * mdebugread.c (parse_symbol): Don't add objfile offsets.
2282         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
2283         Update.
2284         (parse_partial_symbols): Don't add objfile offsets.  Use
2285         raw_text_low, raw_text_high.  Update.
2286         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
2287         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
2288         or call 'relocate' quick function.  Clear psymbol_map.
2289         * psympriv.h (struct partial_symbol) <address>: Add section
2290         offset.
2291         <set_unrelocated_address>: Rename from set_address.
2292         <raw_text_low, raw_text_high>: New methods.
2293         <text_low, text_high>: Add objfile parameter.
2294         (add_psymbol_to_bcache): Add 'section' parameter.  Call
2295         set_unrelocated_address.
2296         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
2297         (find_pc_psymbol): Update.
2298         (fixup_psymbol_section, relocate_psymtabs): Remove.
2299         (dump_psymtab, psym_functions): Update.
2300         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
2301         parameter.
2302         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
2303         (start_psymtab_common): Update.
2304         * symfile-debug.c (debug_qf_relocate): Remove.
2305         (debug_sym_quick_functions): Update.
2306         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
2307         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
2308         Update.
2309
2310 2018-07-26  Tom Tromey  <tromey@redhat.com>
2311
2312         * dbxread.c (end_psymtab): Use text_high_valid and
2313         text_low_valid.
2314         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
2315         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
2316         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
2317         Update comment.
2318         <text_low_valid, text_high_valid>: New fields.
2319         <set_text_low, set_text_high>: Update.
2320         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
2321
2322 2018-07-26  Tom Tromey  <tom@tromey.com>
2323
2324         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
2325         Update.
2326         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
2327         textlow and texthigh fields.
2328         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
2329         Update.
2330         * mdebugread.c (parse_lines, parse_partial_symbols)
2331         (psymtab_to_symtab_1): Update.
2332         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
2333         Rename fields.  Update comment.  Now private.
2334         <text_low, text_high, set_text_low, set_text_high>: New methods.
2335         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
2336         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
2337         (start_psymtab_common, maintenance_info_psymtabs)
2338         (maintenance_check_psymtabs): Update.
2339         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
2340         texthigh fields.
2341         (scan_xcoff_symtab): Update.
2342
2343 2018-07-26  Tom Tromey  <tromey@redhat.com>
2344
2345         * psympriv.h (struct partial_symbol) <unrelocated_address,
2346         address, set_address>: New methods.
2347         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
2348         (fixup_psymbol_section, relocate_psymtabs): Update.
2349         (print_partial_symbols): Add 'objfile' parameter.  Update.
2350         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
2351         Update.
2352
2353 2018-07-26  Tom Tromey  <tom@tromey.com>
2354
2355         * dwarf-index-write.c (write_psymbols, debug_names::insert)
2356         (debug_names::write_psymbols): Update.
2357         * psympriv.h (struct partial_symbol): Derive from
2358         general_symbol_info.
2359         <obj_section>: New method.
2360         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
2361         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
2362         (find_pc_sect_psymbol, fixup_psymbol_section)
2363         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
2364         (print_partial_symbols, recursively_search_psymtabs)
2365         (compare_psymbols, psymbol_hash, psymbol_compare)
2366         (add_psymbol_to_bcache, maintenance_check_psymtabs)
2367         (psymbol_name_matches, psym_fill_psymbol_map): Update.
2368
2369 2018-07-26  Tom Tromey  <tromey@redhat.com>
2370
2371         * dbxread.c (end_psymtab): Remove dead code.
2372
2373 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2374
2375         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
2376         DWARF unwinders are disabled.
2377         * dwarf2-frame.c: Add dwarf2read.h include.
2378         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
2379         disabled.
2380         (dwarf2_frame_unwinders_enabled_p): Define.
2381         (show_dwarf_unwinders_enabled_p): New function.
2382         (_initialize_dwarf2_frame): Register switch to control DWARF
2383         unwinder use.
2384         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
2385         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
2386         (show_dwarf_cmdlist): Remove static keyword.
2387         * dwarf2read.h (set_dwarf_cmdlist): Declare.
2388         (show_dwarf_cmdlist): Declare.
2389         * NEWS: Document new feature.
2390
2391 2018-07-26  Tom de Vries  <tdevries@suse.de>
2392
2393         PR breakpoints/23366
2394         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
2395
2396 2018-07-26  Tom de Vries  <tdevries@suse.de>
2397
2398         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
2399         DW_AT_count can't be translated to a dynamic prop.
2400
2401 2018-07-25  Tom de Vries  <tdevries@suse.de>
2402
2403         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
2404         try/catch.
2405
2406 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
2407
2408         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
2409
2410 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
2411
2412         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
2413
2414 2018-07-24  Keith Seitz  <keiths@redhat.comt
2415
2416         PR symtab/23010
2417         * dwarf2read.c (dw2_add_symbol_to_list): New function.
2418         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
2419         instead of add_symbol_to_list.
2420         (read_file_scope): Call prepare_one_comp_unit before reading
2421         any other DIEs.
2422
2423 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
2424
2425         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
2426
2427 2018-07-24  Tom Tromey  <tom@tromey.com>
2428
2429         * utils.c (malloc, realloc, free): Don't declare.
2430         * configure, config.in: Rebuild.
2431         * configure.ac: Don't check for declarations of free, malloc, or
2432         realloc.
2433
2434 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
2435
2436         * aarch64-linux-nat.c
2437         (aarch64_linux_nat_target::stopped_data_address): Remove unused
2438         variable.
2439         * arm-linux-nat.c (fetch_regs): Likewise.
2440         (store_regs): Likewise.
2441         (fetch_vfp_regs): Likewise.
2442         (store_vfp_regs): Likewise.
2443         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
2444         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
2445         (arm_linux_nat_target::insert_watchpoint): Likewise.
2446         (arm_linux_nat_target::remove_watchpoint): Likewise.
2447         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
2448         Likewise.
2449         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
2450         Likewise.
2451         * ppc-linux-nat.c (fetch_register): Likewise.
2452         (fetch_all_gp_regs): Likewise.
2453         (fetch_ppc_registers): Likewise.
2454         (store_all_gp_regs): Likewise.
2455         (store_ppc_registers): Likewise.
2456         (hwdebug_insert_point): Likewise.
2457         (can_use_watchpoint_cond_accel): Likewise.
2458         * remote-sim.c (gdb_os_write_stdout): Likewise.
2459
2460 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
2461             Tom Tromey  <tom@tromey.com>
2462
2463         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
2464         test for it.
2465         * configure: Rebuild.
2466
2467 2018-07-22  Tom Tromey  <tom@tromey.com>
2468
2469         * regformats/regdat.sh: Define xmltarget_${name} inside
2470         #ifndef IN_PROCESS_AGENT.
2471
2472 2018-07-22  Tom Tromey  <tom@tromey.com>
2473
2474         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
2475
2476 2018-07-22  Tom Tromey  <tom@tromey.com>
2477
2478         * symfile.c (reread_symbols): Notify iter, not objfile.
2479
2480 2018-07-22  Tom Tromey  <tom@tromey.com>
2481
2482         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
2483         Use arch_ops.
2484         (ravenscar_thread_target::prepare_to_store): Likewise.
2485
2486 2018-07-22  Tom Tromey  <tom@tromey.com>
2487
2488         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
2489         unused variable.  Call value_fetch_lazy when needed.
2490         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
2491         Remove unused variable.  Call value_fetch_lazy when needed.
2492
2493 2018-07-22  Tom Tromey  <tom@tromey.com>
2494
2495         * m32c-tdep.c (mark_dma): Return void.
2496         (make_regs): Remove unused declarations.
2497
2498 2018-07-22  Tom Tromey  <tom@tromey.com>
2499
2500         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
2501         cmdscm_get_valid_command_smob_arg_unsafe for effect.
2502         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
2503         bkscm_get_valid_block_smob_arg_unsafe for effect.
2504
2505 2018-07-22  Tom Tromey  <tom@tromey.com>
2506
2507         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
2508         value_type.
2509
2510 2018-07-22  Tom Tromey  <tom@tromey.com>
2511
2512         * windows-nat.c (saved_context): Conditionally define.
2513         * remote.c (remote_target::remote_btrace_maybe_reopen):
2514         Conditionally declare "warned".
2515         * inflow.c (sigquit_ours): Conditionally define.
2516         (new_tty): Move "tty" declaration inside #if.
2517         * guile/guile.c (guile_datadir): Conditionally define.
2518         * charset.c (set_be_le_names): Move some declarations inside #if.
2519         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
2520         #if.
2521         (parse_xml_btrace_conf): Likewise.
2522
2523 2018-07-22  Tom Tromey  <tom@tromey.com>
2524
2525         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
2526
2527 2018-07-22  Tom Tromey  <tom@tromey.com>
2528
2529         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
2530         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
2531         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
2532         * buildsym-legacy.c (get_macro_table): Remove unused variable.
2533         * stack.c (frame_apply_level_command): Remove unused variable.
2534         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
2535         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
2536         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
2537         unused variable.
2538         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
2539         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
2540         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
2541         variable.
2542         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
2543         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
2544         variable.
2545         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
2546         Remove unused variable.
2547         * cli/cli-script.c (recurse_read_control_structure): Remove unused
2548         variable.
2549         * common/tdesc.c (print_xml_feature::visit): Remove unused
2550         variable.
2551         * compile/compile-object-load.c (store_regs): Remove unused
2552         variables.
2553         * complaints.c (clear_complaints): Remove unused variable.
2554         * corelow.c (core_target_open): Remove unused variable.
2555         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
2556         variable.
2557         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
2558         variable.
2559         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
2560         variable.
2561         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
2562         variable.
2563         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
2564         variable.
2565         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
2566         variable.
2567         * ia64-tdep.c (examine_prologue): Remove unused variable.
2568         * infcall.c (run_inferior_call): Remove unused variable.
2569         * inferior.c (exit_inferior): Remove unused variable.
2570         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
2571         * linespec.c (decode_line_2): Remove unused variable.
2572         * linux-nat.c (super_close): Remove.
2573         * linux-tdep.c (linux_info_proc): Remove unused variable.
2574         * mi/mi-main.c (mi_execute_command): Remove unused variable.
2575         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
2576         Remove unused variable.
2577         * parse.c (find_minsym_type_and_address): Remove unused variable.
2578         * printcmd.c (info_symbol_command, printf_floating): Remove unused
2579         variable.
2580         * python/py-breakpoint.c (bppy_set_commands): Remove unused
2581         variable.
2582         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
2583         variables.
2584         * record-btrace.c (record_btrace_target::store_registers): Remove
2585         unused variable.
2586         (cmd_show_record_btrace_cpu): Remove unused variable.
2587         * riscv-tdep.c (riscv_register_reggroup_p)
2588         (riscv_push_dummy_call, riscv_return_value): Remove unused
2589         variable.
2590         * rust-exp.y (literal): Remove unused variable.
2591         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
2592         unused variable.
2593         <STRUCTOP_ANONYMOUS>: Likewise.
2594         * s390-linux-tdep.c (s390_linux_init_abi_31)
2595         (s390_linux_init_abi_64): Remove unused variable.
2596         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
2597         (file_select_thread, net_windows_open, _initialize_ser_windows):
2598         Remove unused variables.
2599         * symtab.c (find_pc_sect_line): Remove unused variable.
2600         * target-memory.c (compute_garbled_blocks): Remove unused
2601         variable.
2602         (target_write_memory_blocks): Remove unused variable.
2603         * target.c (target_stack::unpush): Remove unused variables.
2604         * tracepoint.c (start_tracing, all_tracepoint_actions)
2605         (merge_uploaded_trace_state_variables)
2606         (print_one_static_tracepoint_marker): Remove unused variable.
2607         * unittests/basic_string_view/element_access/char/1.cc (test01):
2608         Remove unused variable.
2609         * windows-nat.c (windows_continue, windows_add_all_dlls)
2610         (do_initial_windows_stuff, windows_nat_target::create_inferior):
2611         Remove unused variables.
2612
2613 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
2614
2615         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
2616         attr_profile in HAVE_ELF.
2617         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
2618         HAVE_ELF.
2619
2620 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
2621
2622         * frame.c (frame_register_unwind): Change parameter name.
2623         (frame_unwind_register): Likewise.
2624         (frame_unwind_register_value): Likewise.
2625         (frame_unwind_register_signed): Likewise.
2626         (frame_unwind_register_unsigned): Likewise.
2627         * frame.h (frame_register_unwind): Likewise.
2628         (frame_unwind_register): Likewise.
2629         (frame_unwind_register_value): Likewise.
2630         (frame_unwind_register_signed): Likewise.
2631         (frame_unwind_register_unsigned): Likewise.
2632         (frame_unwind_arch): Likewise.
2633
2634 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
2635
2636         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
2637         ISA maintenance.
2638
2639 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
2640
2641         * mips-linux-nat.c (mips_linux_nat_target::read_description):
2642         Call `get_ptrace_pid' rather than extracting the ptrace PID by
2643         hand.
2644
2645 2018-07-20  Keith Seitz  <keiths@redhat.com>
2646
2647         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
2648         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
2649         m_compunit_symtab, m_language>: Add "m_" prefix.
2650         Update all uses.
2651         * buildsym.c: Update all uses.
2652
2653 2018-07-20  Tom Tromey  <tom@tromey.com>
2654
2655         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
2656         * buildsym.h (record_line_ftype): Remove typedef.
2657
2658 2018-07-20  Tom Tromey  <tom@tromey.com>
2659
2660         * buildsym-legacy.h (augment_type_symtab): Don't declare.
2661         (end_expandable_symtab): Likewise.
2662         (end_symtab_get_static_block): Likewise.
2663         (end_symtab_from_static_block): Likewise.
2664         * buildsym-legacy.c (augment_type_symtab): Remove.
2665         (end_expandable_symtab): Remove.
2666         (end_symtab_get_static_block): Remove.
2667         (end_symtab_from_static_block): Remove.
2668
2669 2018-07-20  Tom Tromey  <tom@tromey.com>
2670
2671         * dwarf2read.c: Include buildsym.h.
2672         (struct dwarf2_cu) <builder>: New method.
2673         (fixup_go_packaging): Update.
2674         (process_full_comp_unit, process_full_type_unit): Update.  Don't
2675         use scoped_free_pendings.
2676         (using_directives): Add "cu" parameter, remove "language".
2677         (read_import_statement, setup_type_unit_groups, )
2678         (read_func_scope, read_lexical_block_scope)
2679         (dwarf2_record_block_ranges, read_namespace): Update.
2680         (lnp_state_machine::lnp_state_machine): Add cu parameter.
2681         (lnp_state_machine::handle_end_sequence): Update.
2682         (class lnp_state_machine) <m_cu>: New member.
2683         <m_record_line_callback>: Remove.
2684         <m_currently_recording_lines>: New member.
2685         (lnp_state_machine::handle_set_file): Update.
2686         (noop_record_line): Remove.
2687         (dwarf_record_line_p): Add cu parameter.
2688         (dwarf_record_line_1, dwarf_finish_line): Likewise.
2689         (lnp_state_machine::record_line)
2690         (lnp_state_machine::lnp_state_machine)
2691         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
2692         (dwarf_decode_lines): Update.
2693         (dwarf2_start_subfile): Add cu parameter.
2694         (dwarf2_start_symtab, new_symbol): Update.
2695         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
2696         Remove dwarf2_per_objfile parameter.
2697         (dwarf_decode_macros): Update.
2698
2699 2018-07-20  Tom Tromey  <tom@tromey.com>
2700
2701         * stabsread.c (define_symbol): Update.
2702         * buildsym-legacy.h (get_buildsym_compunit): Declare.
2703         * dwarf2read.c (new_symbol): Update.
2704         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
2705         * cp-namespace.c: Include buildsym.h.
2706         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
2707         * buildsym-legacy.c (get_buildsym_compunit): New function.
2708
2709 2018-07-20  Tom Tromey  <tom@tromey.com>
2710
2711         * xcoffread.c: Include buildsym-legacy.h.
2712         * windows-nat.c: Include buildsym-legacy.h.
2713         * stabsread.c: Include buildsym-legacy.h.
2714         * mdebugread.c: Include buildsym-legacy.h.
2715         * buildsym-legacy.h: New file.
2716         * buildsym-legacy.c: New file, from buildsym.c.
2717         * go32-nat.c: Include buildsym-legacy.h.
2718         * dwarf2read.c: Include buildsym-legacy.h.
2719         * dbxread.c: Include buildsym-legacy.h.
2720         * cp-namespace.c: Include buildsym-legacy.h.
2721         * coffread.c: Include buildsym-legacy.h.
2722         * buildsym.h: Move some contents to buildsym-legacy.h.
2723         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
2724         buildsym-legacy.c.
2725         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
2726
2727 2018-07-20  Tom Tromey  <tom@tromey.com>
2728
2729         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
2730         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
2731         (buildsym_compunit::buildsym_compunit)
2732         (buildsym_compunit::~buildsym_compunit)
2733         (buildsym_compunit::get_macro_table): Define.
2734
2735 2018-07-20  Tom Tromey  <tom@tromey.com>
2736
2737         * buildsym.c (reset_symtab_globals): Remove.
2738         (buildsym_compunit::end_symtab_from_static_block): Update.
2739         (buildsym_compunit::augment_type_symtab): Update.
2740         (end_symtab_from_static_block): Call free_buildsym_compunit.
2741         (augment_type_symtab, end_symtab, end_expandable_symtab):
2742         Likewise.
2743
2744 2018-07-20  Tom Tromey  <tom@tromey.com>
2745
2746         * arch-utils.c: Do not include buildsym.h.
2747         * mipsread.c: Do not include buildsym.h.
2748         * machoread.c: Do not include buildsym.h.
2749         * elfread.c: Do not include buildsym.h.
2750
2751 2018-07-20  Tom Tromey  <tom@tromey.com>
2752
2753         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
2754         initialization.
2755         (buildsym_compunit): Add new constructor.
2756         (struct buildsym_compunit) <get_last_source_file, finish_block,
2757         record_block_range, start_subfile, patch_subfile_names,
2758         push_subfile, pop_subfile, record_line, get_compunit_symtab,
2759         set_last_source_start_addr, get_last_source_start_addr,
2760         get_local_using_directives, set_local_using_directives,
2761         get_global_using_directives, outermost_context_p,
2762         get_current_context_stack, get_context_stack_depth,
2763         get_current_subfile, get_local_symbols, get_file_symbols,
2764         get_global_symbols, record_debugformat, record_producer,
2765         push_context, pop_context, end_symtab_get_static_block,
2766         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
2767         New public methods.
2768         <record_pending_block, finish_block_internal, make_blockvector,
2769         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
2770         private methods.
2771         Update all users.
2772
2773 2018-05-22  Tom Tromey  <tom@tromey.com>
2774
2775         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
2776         parameter.
2777         (finish_block_internal): Update.
2778
2779 2018-07-20  Tom Tromey  <tom@tromey.com>
2780
2781         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
2782         parameter.
2783         (finish_block_internal): Update.
2784
2785 2018-07-20  Tom Tromey  <tom@tromey.com>
2786
2787         * buildsym.h (EXTERN): Don't define or undef.
2788         * buildsym.c (EXTERN): Don't define.
2789
2790 2018-07-20  Tom Tromey  <tom@tromey.com>
2791
2792         * buildsym.c: Remove TODO comment.
2793
2794 2018-07-20  Tom Tromey  <tom@tromey.com>
2795
2796         * coffread.c (coff_symtab_read): Update.
2797         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
2798         (xcoff_new_init): Update.
2799         * mipsread.c (mipscoff_new_init): Update.
2800         * mdebugread.c (mdebug_build_psymtabs): Update.
2801         * elfread.c (elf_new_init): Update.
2802         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
2803         Update.
2804         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
2805         (coffstab_build_psymtabs, elfstab_build_psymtabs)
2806         (stabsect_build_psymtabs): Update.
2807         * buildsym.h (buildsym_init): Don't declare.
2808         * buildsym.c: Update comment.
2809         (prepare_for_building): Remove.
2810         (start_symtab, restart_symtab): Update.
2811         (reset_symtab_globals): Update comment.
2812         (buildsym_init): Remove.
2813
2814 2018-07-20  Tom Tromey  <tom@tromey.com>
2815
2816         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
2817         * stabsread.c (patch_block_stabs, define_symbol, read_type)
2818         (read_enum_type, common_block_start, common_block_end)
2819         (cleanup_undefined_types_1, finish_global_stabs): Update.
2820         * mdebugread.c (psymtab_to_symtab_1): Update.
2821         * dwarf2read.c (fixup_go_packaging, read_func_scope)
2822         (read_lexical_block_scope, new_symbol): Update.
2823         * dbxread.c (process_one_symbol): Update.
2824         * coffread.c (coff_symtab_read, process_coff_symbol)
2825         (coff_read_enum_type): Update.
2826         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
2827         declare.
2828         (get_local_symbols, get_file_symbols, get_global_symbols): New
2829         functions.
2830         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
2831         m_global_symbols.
2832         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
2833         (~scoped_free_pendings): Update.
2834         (finish_block, prepare_for_building, reset_symtab_globals)
2835         (end_symtab_get_static_block, end_symtab_with_blockvector)
2836         (augment_type_symtab, push_context): Update.
2837         (get_local_symbols, get_file_symbols, get_global_symbols): New
2838         functions.
2839         (buildsym_init): Update.
2840
2841 2018-07-20  Tom Tromey  <tom@tromey.com>
2842
2843         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
2844         (process_full_type_unit): Likewise.
2845         (dwarf2_start_symtab): Set list_in_scope.
2846
2847 2018-07-20  Tom Tromey  <tom@tromey.com>
2848
2849         * dwarf2read.c (process_psymtab_comp_unit_reader)
2850         (build_type_psymtabs_reader): Do not set list_in_scope.
2851
2852 2018-07-20  Tom Tromey  <tom@tromey.com>
2853
2854         * buildsym.c (free_pendings): Remove.
2855         (add_symbol_to_list, scoped_free_pendings)
2856         (finish_block_internal, buildsym_init): Update.
2857
2858 2018-07-20  Tom Tromey  <tom@tromey.com>
2859
2860         * xcoffread.c (read_xcoff_symtab): Update.
2861         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
2862         Update.
2863         * dbxread.c (process_one_symbol): Update.
2864         * coffread.c (coff_symtab_read): Update.
2865         * buildsym.h (finish_block): Update.
2866         * buildsym.c (finish_block): Remove "listhead" argument.
2867         (end_symtab_get_static_block): Update.
2868
2869 2018-07-20  Tom Tromey  <tom@tromey.com>
2870
2871         * buildsym.h (class scoped_free_pendings): Remove constructor.
2872         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
2873         method.
2874         <m_pending_block_obstack, m_pending_blocks>: New members.
2875         (pending_block_obstack, pending_blocks): Remove.
2876         (scoped_free_pendings::scoped_free_pendings): Default.
2877         (~scoped_free_pendings): Update.
2878         (free_pending_blocks): Remove.
2879         (finish_block_internal, record_pending_block, make_blockvector)
2880         (end_symtab_get_static_block, augment_type_symtab, push_context)
2881         (buildsym_init): Update.
2882
2883 2018-07-20  Tom Tromey  <tom@tromey.com>
2884
2885         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
2886         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
2887         members.
2888         (pending_addrmap, pending_addrmap_obstack)
2889         (pending_addrmap_interesting): Remove.
2890         (scoped_free_pendings, record_block_range, make_blockvector)
2891         (prepare_for_building, reset_symtab_globals, buildsym_init):
2892         Update.
2893
2894 2018-07-20  Tom Tromey  <tom@tromey.com>
2895
2896         * xcoffread.c (process_linenos): Update.
2897         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
2898         * mdebugread.c (psymtab_to_symtab_1): Update.
2899         * dwarf2read.c (setup_type_unit_groups)
2900         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
2901         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
2902         * dbxread.c (process_one_symbol): Update.
2903         * coffread.c (coff_symtab_read, enter_linenos)
2904         (process_coff_symbol): Update.
2905         * buildsym.h (current_subfile): Don't declare.
2906         (get_current_subfile): Declare.
2907         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
2908         member.
2909         (start_subfile, free_buildsym_compunit, push_subfile)
2910         (prepare_for_building, start_symtab): Update.
2911         (get_current_subfile): New function.
2912
2913 2018-07-20  Tom Tromey  <tom@tromey.com>
2914
2915         * coffread.c (coff_symtab_read): Update.
2916         * xcoffread.c (read_xcoff_symtab): Update.
2917         * dwarf2read.c (new_symbol): Update.
2918         (read_func_scope, read_lexical_block_scope): Update.
2919         * dbxread.c (process_one_symbol): Update.
2920         * buildsym.h (context_stack, context_stack_depth): Don't declare.
2921         (outermost_context_p): Remove macro.
2922         (outermost_context_p, get_current_context_stack)
2923         (get_context_stack_depth): Declare.
2924         (pop_context): Return struct context_stack.
2925         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
2926         member.
2927         (context_stack_size): Remove.
2928         (INITIAL_CONTEXT_STACK_SIZE): Remove.
2929         (prepare_for_building, end_symtab_get_static_block)
2930         (augment_type_symtab, push_context): Update.
2931         (pop_context): Return struct context_stack.
2932         (outermost_context_p, get_current_context_stack)
2933         (get_context_stack_depth): New functions.
2934         (buildsym_init): Update.
2935
2936 2018-07-20  Tom Tromey  <tom@tromey.com>
2937
2938         * rust-exp.y: Now a pure parser.  Update all rules.
2939         (%union): Move earlier.
2940         (current_parser, work_obstack): Remove globals.
2941         (rust_parser, ~rust_parser): Update.
2942         (class rust_parser) <copy_name, concat3, crate_name, super_name,
2943         lex_character, lex_number, lex_string, lex_identifier,
2944         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
2945         convert_name, convert_params_to_expression,
2946         convert_ast_to_expression, ast_basic_type, ast_operation,
2947         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
2948         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
2949         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
2950         ast_array_type, ast_slice_type, ast_reference_type,
2951         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
2952         (rust_parse): Update.
2953         (rustyyerror, rustyylex): Add parser parameter.
2954         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
2955         (rust_lex_stringish_test, rust_lex_test_sequence)
2956         (rust_lex_test_trailing_dot, rust_lex_test_completion)
2957         (rust_lex_test_push_back, rust_lex_tests): Update.
2958
2959 2018-07-19  Pedro Alves  <palves@redhat.com>
2960
2961         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
2962         gdb::unique_xmalloc_ptr.
2963         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
2964         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
2965         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
2966         copy-initialization.
2967         * guile/scm-pretty-print.c (ppscm_print_children): Use
2968         gdb::unique_xmalloc_ptr instead of cleanups.
2969         (gdbscm_apply_val_pretty_printer): Remove cleanups.
2970         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
2971         gdb::unique_xmalloc_ptr.
2972         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
2973         Adjust to use gdb::unique_xmalloc_ptr.
2974         * guile/scm-utils.c (extract_arg): Adjust.
2975         * guile/scm-value.c (gdbscm_value_field): Adjust to use
2976         gdb::unique_xmalloc_ptr instead of a cleanup.
2977
2978 2018-07-19  Tom Tromey  <tom@tromey.com>
2979
2980         * utils.c (do_value_free_to_mark)
2981         (make_cleanup_value_free_to_mark): Remove.
2982         * utils.h (make_cleanup_value_free_to_mark): Remove.
2983
2984 2018-07-19  Pedro Alves  <palves@redhat.com>
2985
2986         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
2987         forwarding reference.
2988
2989 2018-07-18  Pedro Alves  <palves@redhat.com>
2990
2991         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
2992         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
2993         cleanup.
2994
2995 2018-07-18  Pedro Alves  <palves@redhat.com>
2996
2997         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
2998         exceptions.
2999         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
3000         (gdbscm_wrap): New.
3001         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
3002         directly instead of a cleanup.
3003         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
3004         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
3005         (vlscm_binop_gdbthrow): New, factored out from ...
3006         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
3007         (vlscm_rich_compare): Use gdbscm_wrap.
3008         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
3009         instead of a cleanup.
3010         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
3011         cleanup.
3012         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
3013         Use xfree directly instead of a cleanup.
3014         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
3015         Adjust to use gdbscm_wrap and scoped_value_mark.
3016         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
3017         (gdbscm_value_address, gdbscm_value_dereference)
3018         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
3019         scoped_value_mark.
3020         (gdbscm_value_dynamic_type): Use scoped_value_mark.
3021         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
3022         scoped_value_mark.
3023         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
3024         gdbscm_wrap and scoped_value_mark.
3025         (gdbscm_value_to_string): Use xfree directly instead of a
3026         cleanup.  Move 'buffer' unique_ptr to TRY scope.
3027         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
3028         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
3029         scoped_value_mark.
3030         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
3031         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
3032         scoped_value_mark.
3033         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
3034         gdbscm_wrap.
3035
3036 2018-07-18  Tom de Vries  <tdevries@suse.de>
3037
3038         * findvar.c (default_read_var_value): Also resolve dynamic type for
3039         LOC_OPTIMIZED_OUT vars.
3040
3041 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
3042
3043         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
3044         decoding.
3045
3046 2018-07-17  Tom Tromey  <tom@tromey.com>
3047
3048         * guile/scm-param.c (pascm_set_func, pascm_show_func)
3049         (compute_enum_list, pascm_set_param_value_x)
3050         (gdbscm_parameter_value): Update.
3051         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
3052         (gdbscm_scm_to_host_string): Update.
3053         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
3054         Update.
3055         * guile/scm-cmd.c (cmdscm_add_completion): Update.
3056         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
3057         * guile/scm-string.c (gdbscm_scm_to_string): Return
3058         unique_xmalloc_ptr.
3059         (gdbscm_scm_to_host_string): Likewise.
3060
3061 2018-07-17  Tom Tromey  <tom@tromey.com>
3062
3063         * guile/guile.c (gdbscm_eval_from_control_command): Update.
3064         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
3065         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
3066         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
3067         unique_xmalloc_ptr.
3068
3069 2018-07-17  Tom Tromey  <tom@tromey.com>
3070
3071         * guile/scm-param.c (pascm_signal_setshow_error): Update.
3072         * guile/guile-internal.h (gdbscm_exception_message_to_string):
3073         Update.
3074         * guile/scm-cmd.c (cmdscm_function): Update.
3075         * guile/scm-pretty-print.c
3076         (ppscm_print_exception_unless_memory_error): Update.
3077         * guile/scm-exception.c (gdbscm_exception_message_to_string):
3078         Return unique_xmalloc_ptr.
3079
3080 2018-07-17  Tom Tromey  <tom@tromey.com>
3081
3082         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
3083         Use string_printf.
3084
3085 2018-07-17  Jim Wilson  <jimw@sifive.com>
3086
3087         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
3088         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
3089         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
3090         unecessary braces after EF_RISCV_RVC test.  Delete call to
3091         set_gdbarch_decr_pc_after_break.
3092
3093         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
3094         RISCV_LAST_FP_REGNUM + 1.
3095         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
3096
3097 2018-07-17  Tom Tromey  <tom@tromey.com>
3098
3099         * configure.ac: Remove --disable-gdbcli.
3100         * configure: Rebuild.
3101         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
3102         (SUBDIR_CLI_CFLAGS): Remove.
3103         (SFILES): Use SUBDIR_CLI_SRCS.
3104         (COMMON_OBS): Use SUBDIR_CLI_OBS.
3105
3106 2018-07-17  Tom Tromey  <tom@tromey.com>
3107
3108         PR gdb/18624:
3109         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
3110
3111 2018-07-16  Jim Wilson  <jimw@sifive.com>
3112
3113         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
3114
3115 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3116
3117         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
3118         variable.
3119         (libunwind_frame_sniffer): Likewise.
3120         (libunwind_frame_prev_register): Likewise.
3121         (libunwind_sigtramp_frame_sniffer): Likewise.
3122         * ia64-tdep.c (ia64_access_reg): Likewise.
3123         (ia64_access_rse_reg): Likewise.
3124         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
3125         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
3126
3127 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3128
3129         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
3130
3131 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3132
3133         * remote-sim.c (gdbsim_target::close,
3134         gdbsim_target::mourn_inferior): Remove unused variables.
3135
3136 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
3137
3138         * ia64-tdep.c (ktab_buf): New global.
3139         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
3140         (get_kernel_table): Adjust.
3141
3142 2018-07-16  Tom Tromey  <tom@tromey.com>
3143
3144         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
3145         * dwarf2read.c (using_directives, new_symbol): Use
3146         outermost_context_p.
3147         * dbxread.c (process_one_symbol): Use outermost_context_p.
3148         * coffread.c (coff_symtab_read): Use outermost_context_p.
3149
3150 2018-07-16  Tom Tromey  <tom@tromey.com>
3151
3152         * dwarf2read.c (using_directives, read_func_scope)
3153         (read_lexical_block_scope): Update.
3154         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
3155         * buildsym.h (local_using_directives, global_using_directives):
3156         Don't declare.
3157         (get_local_using_directives, set_local_using_directives)
3158         (get_global_using_directives): Declare.
3159         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
3160         m_global_using_directives>: New members.
3161         (finish_block_internal, prepare_for_building)
3162         (reset_symtab_globals, end_symtab_get_static_block)
3163         (push_context): Update.
3164         (get_local_using_directives, set_local_using_directives)
3165         (get_global_using_directives): New functions.
3166         (buildsym_init): Update.
3167
3168 2018-07-16  Tom Tromey  <tom@tromey.com>
3169
3170         * xcoffread.c (xcoff_initial_scan): Don't call
3171         free_pending_blocks.
3172         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
3173         * buildsym.h (class scoped_free_pendings): Add constructor.
3174         (free_pending_blocks): Don't declare.
3175         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
3176         (free_pending_blocks): Now static.
3177
3178 2018-07-16  Tom Tromey  <tom@tromey.com>
3179
3180         * buildsym.h (push_subfile, pop_subfile): Update declarations.
3181         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
3182         member.
3183         (struct subfile_stack): Remove.
3184         (subfile_stack): Remove.
3185         (push_subfile, pop_subfile, buildsym_init): Update.
3186
3187 2018-07-16  Tom Tromey  <tom@tromey.com>
3188
3189         * buildsym.c (push_subfile): Use gdb_assert.
3190         (pop_subfile): Use gdb_assert.
3191
3192 2018-07-16  Tom Tromey  <tom@tromey.com>
3193
3194         * buildsym.h (merge_symbol_lists): Remove.
3195         * buildsym.c (merge_symbol_lists): Remove.
3196
3197 2018-07-16  Tom Tromey  <tom@tromey.com>
3198
3199         * stabsread.c (scan_file_globals): Update comment.
3200         * stabsread.h (scan_file_globals): Move from buildsym.h.
3201         * buildsym.h (scan_file_globals): Move to stabsread.h.
3202
3203 2018-07-16  Tom Tromey  <tom@tromey.com>
3204
3205         * xcoffread.c (xcoff_new_init): Update.
3206         * mipsread.c (mipscoff_new_init): Update.
3207         * mdebugread.c (mdebug_build_psymtabs): Update.
3208         * elfread.c (elf_new_init): Update.
3209         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
3210         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
3211         * buildsym.h (buildsym_new_init): Don't declare.
3212         * buildsym.c (buildsym_new_init): Remove.
3213
3214 2018-07-16  Tom Tromey  <tom@tromey.com>
3215
3216         * stabsread.h (within_function): Move from buildsym.h.
3217         * stabsread.c (start_stabs): Clear within_function.
3218         * coffread.c (coff_start_symtab): Clear within_function.
3219         * buildsym.h (within_function): Move to stabsread.h.
3220         * buildsym.c (prepare_for_building): Update.
3221
3222 2018-07-16  Tom Tromey  <tom@tromey.com>
3223
3224         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
3225         * dwarf2read.c (dwarf2_start_symtab): Don't set
3226         processing_gcc_compilation.
3227         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
3228
3229 2018-07-16  Tom Tromey  <tom@tromey.com>
3230
3231         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
3232         (next_symbol_text_func): Move from buildsym.h.
3233         * stabsread.c (hashname): Move from buildsym.c.
3234         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
3235         (next_symbol_text_func, hashname): Move to stabsread.h.
3236         * buildsym.c: Don't include bcache.h
3237         (hashname): Move to stasbread.c.
3238
3239 2018-07-16  Tom Tromey  <tom@tromey.com>
3240
3241         * buildsym.h (context_stack_size): Don't declare.
3242         * buildsym.c (context_stack_size): New global.
3243
3244 2018-07-16  Tom Tromey  <tom@tromey.com>
3245
3246         * dbxread.c (processing_acc_compilation): New global.
3247         * buildsym.h (processing_acc_compilation): Don't declare.
3248
3249 2018-07-16  Tom Tromey  <tom@tromey.com>
3250
3251         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
3252         * dbxread.c (read_ofile_symtab): Update.
3253         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
3254         * buildsym.h (last_source_start_addr): Remove.
3255         (set_last_source_start_addr, get_last_source_start_addr):
3256         Declare.
3257         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
3258         parameter.
3259         (struct buildsym_compunit) <m_last_source_start_addr>: New
3260         member.
3261         (prepare_for_building): Remove start_addr parameter.
3262         (start_symtab, restart_symtab, end_symtab_get_static_block)
3263         (end_symtab_with_blockvector): Update.
3264         (set_last_source_start_addr, get_last_source_start_addr): New
3265         functions.
3266
3267 2018-07-16  Tom Tromey  <tom@tromey.com>
3268
3269         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
3270         member.
3271         (have_line_numbers): Remove.
3272         (record_line, prepare_for_building, end_symtab_get_static_block)
3273         (augment_type_symtab): Update.
3274
3275 2018-07-16  Tom Tromey  <tom@tromey.com>
3276
3277         * buildsym.c (~buildsym_compunit): Free the macro table.
3278         (struct buildsym_compunit) <get_macro_table, release_macros>: New
3279         methods.
3280         <m_pending_macros>: New member.
3281         (pending_macros): Remove.
3282         (~scoped_free_pendings, get_macro_table, prepare_for_building)
3283         (reset_symtab_globals, end_symtab_get_static_block)
3284         (end_symtab_with_blockvector, augment_type_symtab)
3285         (buildsym_init): Update.
3286
3287 2018-07-16  Tom Tromey  <tom@tromey.com>
3288
3289         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
3290         parameter.
3291         (buildsym_compunit::set_last_source_file): New method.
3292         <m_last_source_file>: New member.
3293         (prepare_for_building): Remove "name" parameter.
3294         (start_symtab, restart_symtab, reset_symtab_globals): Update.
3295         (last_source_file): Remove.
3296         (set_last_source_file, get_last_source_file): Update.
3297
3298 2018-07-16  Tom Tromey  <tom@tromey.com>
3299
3300         * buildsym.c (prepare_for_building): Add assert.
3301
3302 2018-07-16  Tom Tromey  <tom@tromey.com>
3303
3304         * buildsym.c (~buildsym_compunit): Update.
3305         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
3306         (start_subfile, patch_subfile_names)
3307         (end_symtab_with_blockvector): Update.
3308
3309 2018-07-16  Tom Tromey  <tom@tromey.com>
3310
3311         * buildsym.c (struct buildsym_compunit): Add constructor,
3312         destructor, initializers.
3313         (start_buildsym_compunit): Remove.
3314         (free_buildsym_compunit): Use "delete".
3315         (start_symtab, restart_symtab): Use "new".
3316
3317 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
3318
3319         * symfile.c (set_objfile_default_section_offset): Remove struct
3320         keyword.
3321
3322 2018-07-14  Stafford Horne  <shorne@gmail.com>
3323
3324         * (Responsible Maintainers): Add myself as or1k maintainer.
3325
3326 2018-07-13  Tom Tromey  <tom@tromey.com>
3327
3328         * symfile.c (set_objfile_default_section_offset): Use extra braces
3329         around initializer.
3330
3331 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
3332
3333         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
3334         non-branching basr.
3335
3336 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3337
3338         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
3339         unittests/cli-utils-selftests.c
3340         * unittests/cli-utils-selftests.c: New file.
3341
3342 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3343
3344         * NEWS: Mention new commands. Mention change to 'thread apply'.
3345
3346 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3347
3348         * thread.c (thr_try_catch_cmd): New function.
3349         (thread_apply_all_command): Handle qcs flags.
3350         (thread_apply_command): Handle qcs flags.
3351         (taas_command): New function.
3352         (tfaas_command): New function.
3353         (_initialize_thread): Update to setup the new commands 'taas
3354         and 'tfaas'. Change doc string for 'thread apply'.
3355
3356 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3357
3358         * stack.c: (trailing_outermost_frame): New function, mostly
3359         extracted from backtrace_command_1.
3360         (leading_innermost_frame): New function.
3361         (backtrace_command_1): Update to call trailing_outermost_frame.
3362         (frame_apply_command_count): New function.
3363         (frame_apply_level_command): New function.
3364         (frame_apply_all_command): New function.
3365         (frame_apply_command): New function.
3366         (faas_command): New function.
3367         (frame_cmd_list): New variable.
3368         (_initialize_stack): Update to setup the new commands 'frame apply'
3369         and 'faas'.
3370
3371 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3372
3373         * cli-utils.c (number_or_range_parser::get_number): Only handle
3374         numbers or convenience var as numbers.
3375         (parse_flags): New function.
3376         (parse_flags_qcs): New function.
3377         (number_or_range_parser::finished): Ensure parsing end is detected
3378         before end of string.
3379         * cli-utils.h (parse_flags): New function.
3380         (parse_flags_qcs): New function.
3381         (number_or_range_parser): Remove m_finished bool.
3382         (number_or_range_parser::skip_range): Set m_in_range to false.
3383
3384 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3385
3386         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
3387         on Windows.
3388
3389 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
3390             Jan Kratochvil  <jan.kratochvil@redhat.com>
3391             Paul Fertser  <fercerpav@gmail.com>
3392             Tsutomu Seki  <sekiriki@gmail.com>
3393             Pedro Alves  <palves@redhat.com>
3394
3395         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
3396         'unittests/parse-connection-spec-selftests.c'.
3397         (COMMON_SFILES): Add 'common/netstuff.c'.
3398         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
3399         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
3400         * common/netstuff.c: New file.
3401         * common/netstuff.h: New file.
3402         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
3403         (wait_for_connect): Update comment.  New parameter
3404         'gdb::optional<int> sock' instead of 'struct serial *scb'.
3405         Use 'sock' directly instead of 'scb->fd'.
3406         (try_connect): New function, with code from 'net_open'.
3407         (net_open): Rewrite main loop to deal with multiple
3408         sockets/addresses.  Handle IPv6-style hostnames; implement
3409         support for IPv6 connections.
3410         * unittests/parse-connection-spec-selftests.c: New file.
3411
3412 2018-07-11  Pedro Alves  <palves@redhat.com>
3413
3414         PR gdb/23377
3415         * remote.c (remote_target::remote_detach_pid): Call
3416         set_current_process.
3417
3418 2018-07-11  Pedro Alves  <palves@redhat.com>
3419
3420         * h8300-tdep.c (h8300_gdbarch_init): Remove
3421         set_gdbarch_ecoff_reg_to_regnum calls.
3422
3423 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
3424
3425         PR c++/23373
3426         * c-typeprint.c (c_type_print_base_struct_union): Don't print
3427         offsets/sizes for static members of a class/struct.
3428
3429 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
3430
3431         * target-descriptions.c (tdesc_register_bitsize): Rename.
3432         * target-descriptions.h (tdesc_register_bitsize): Likewise.
3433         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
3434         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
3435
3436 2018-07-10  Tom Tromey  <tom@tromey.com>
3437
3438         * breakpoint.c (moribund_locations): Now static and a
3439         std::vector.
3440         (breakpoint_init_inferior, moribund_breakpoint_here_p)
3441         (build_bpstat_chain, update_global_location_list)
3442         (breakpoint_retire_moribund): Update.
3443         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
3444         VEC.
3445
3446 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3447
3448         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
3449         (riscv_register_reggroup_p): Use new function, remove unneeded
3450         parenthesis.
3451         (riscv_push_dummy_call): Extend assert to compare against xlen or
3452         flen based on register type.
3453
3454 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3455
3456         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
3457
3458 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3459
3460         * remote.c (show_hardware_watchpoint_limit): New function.
3461         (show_hardware_watchpoint_length_limit): New function.
3462         (show_hardware_breakpoint_limit): New function.
3463         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
3464         where appropriate, update help text.
3465
3466 2018-07-09  Tom Tromey  <tom@tromey.com>
3467
3468         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
3469         (CLIBS): Don't mention NAT_CLIBS.
3470
3471 2018-07-09  Tom Tromey  <tom@tromey.com>
3472
3473         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
3474         (LIBGDB_OBS, clean mostlyclean): Update.
3475         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
3476
3477 2018-07-09  Tom Tromey  <tom@tromey.com>
3478
3479         * Makefile.in (%.c: %.y): Use ECHO_YACC.
3480         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
3481         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
3482
3483 2018-07-09  Tom Tromey  <tom@tromey.com>
3484
3485         * Makefile.in (ALLDEPFILES): Remove exec.c.
3486         (COMMON_OBS): Remove exec.o.
3487         (COMMON_SFILES): Add exec.c.
3488
3489 2018-07-09  Tom Tromey  <tom@tromey.com>
3490
3491         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
3492
3493 2018-07-09  Tom Tromey  <tom@tromey.com>
3494
3495         * Makefile.in (clean mostlyclean): Remove stamp-version.
3496         (version.c): Depend on stamp-version.
3497         (stamp-version): New rule, from version.c rule.
3498
3499 2018-07-09  Tom Tromey  <tom@tromey.com>
3500
3501         * Makefile.in (init.c): Depend on stamp-init.
3502         (stamp-init): New rule, from init.c rule.
3503         (clean mostlyclean): Remove stamp-init.
3504
3505 2018-07-09  Tom Tromey  <tom@tromey.com>
3506
3507         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
3508         SUBDIR_GCC_COMPILE_SRCS.
3509
3510 2018-07-09  Tom Tromey  <tom@tromey.com>
3511
3512         * Makefile.in (init.c): Remove some unused sed rules.
3513
3514 2018-07-09  Tom Tromey  <tom@tromey.com>
3515
3516         * Makefile.in (TSOBS): Remove.
3517         (INIT_FILES): Update.
3518         (LIBGDB_OBS): Update.
3519         (COMMON_SFILES): Add inflow.c.
3520         (SFILES): Remove inflow.c.
3521
3522 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
3523
3524         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
3525
3526 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
3527
3528         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
3529         get_saveloc_name, is_signal_frame_name, step_name,
3530         init_remote_name, create_addr_space_name,
3531         destroy_addr_space_name, search_unwind_table_name,
3532         find_dyn_list_name): Constify.
3533
3534 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
3535
3536         * darwin-nat.c (darwin_pthread_kill): New function.
3537         (darwin_resume_thread): Use darwin_pthread_kill.
3538
3539 2018-07-05  Tom de Vries  <tdevries@suse.de>
3540
3541         * macroexp.c (macro_buffer) <operator=>: New member function.
3542
3543 2018-07-04  Tom Tromey  <tom@tromey.com>
3544
3545         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
3546
3547 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
3548
3549         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
3550         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
3551         * maint.c: Likewise.
3552         * top.c: Likewise.
3553
3554 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
3555
3556         * NEWS: Create a new section for the next release branch.
3557         Rename the section of the current branch, now that it has
3558         been cut.
3559
3560 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
3561
3562         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
3563         * version.in: Bump version to 8.2.50.DATE-git.
3564
3565 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
3566             Pedro Alves  <palves@redhat.com>
3567
3568         * linux-nat.c (linux_init_ptrace): Rename to ...
3569         (linux_init_ptrace_procfs): ... this.  Call
3570         linux_proc_init_warnings.
3571         (linux_nat_target::post_attach)
3572         (linux_nat_target::post_startup_inferior): Adjust.
3573         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
3574         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
3575
3576 2018-07-04  Tom de Vries  <tdevries@suse.de>
3577
3578         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
3579         check ...
3580         (read_comp_unit_head): ... here.
3581
3582 2018-07-03  Tom Tromey  <tom@tromey.com>
3583
3584         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
3585         (stop_tracing, tstatus_command)
3586         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
3587         (print_one_static_tracepoint_marker): Update.
3588         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
3589         std::vector.
3590         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
3591         VEC.
3592         (all_tracepoints, static_tracepoints_here): Return std::vector.
3593
3594 2018-07-03  Tom Tromey  <tom@tromey.com>
3595
3596         * common/ptid.c (ptid_equal): Remove.
3597         * common/ptid.h (ptid_equal): Don't declare.
3598         * ada-tasks.c: Update.
3599         * breakpoint.c: Update.
3600         * common/agent.c: Update.
3601         * corelow.c: Update.
3602         * darwin-nat-info.c: Update.
3603         * darwin-nat.c: Update.
3604         * dcache.c: Update.
3605         * dtrace-probe.c: Update.
3606         * dummy-frame.c: Update.
3607         * fbsd-nat.c: Update.
3608         * frame.c: Update.
3609         * gdbthread.h: Update.
3610         * gnu-nat.c: Update.
3611         * go32-nat.c: Update.
3612         * inf-loop.c: Update.
3613         * inf-ptrace.c: Update.
3614         * infcall.c: Update.
3615         * infcmd.c: Update.
3616         * inflow.c: Update.
3617         * infrun.c: Update.
3618         * linux-fork.c: Update.
3619         * linux-nat.c: Update.
3620         * linux-thread-db.c: Update.
3621         * mi/mi-cmd-var.c: Update.
3622         * mi/mi-interp.c: Update.
3623         * mi/mi-main.c: Update.
3624         * nto-procfs.c: Update.
3625         * ppc-linux-tdep.c: Update.
3626         * procfs.c: Update.
3627         * python/py-inferior.c: Update.
3628         * python/py-record-btrace.c: Update.
3629         * python/py-record.c: Update.
3630         * ravenscar-thread.c: Update.
3631         * regcache.c: Update.
3632         * remote-sim.c: Update.
3633         * remote.c: Update.
3634         * sol-thread.c: Update.
3635         * solib.c: Update.
3636         * target.c: Update.
3637         * tui/tui-stack.c: Update.
3638         * varobj.c: Update.
3639         * windows-nat.c: Update.
3640         * windows-tdep.c: Update.
3641
3642 2018-07-03  Tom Tromey  <tom@tromey.com>
3643
3644         * common/ptid.c (ptid_match): Remove.
3645         * common/ptid.h (ptid_match): Don't declare.
3646         * fbsd-nat.c: Update.
3647         * infcmd.c: Update.
3648         * infrun.c: Update.
3649         * linux-nat.c: Update.
3650         * record-btrace.c: Update.
3651         * regcache.c: Update.
3652         * remote.c: Update.
3653
3654 2018-07-03  Tom Tromey  <tom@tromey.com>
3655
3656         * common/ptid.c (ptid_tid_p): Remove.
3657         * common/ptid.h (ptid_tid_p): Don't declare.
3658         * sol-thread.c: Update.
3659
3660 2018-07-03  Tom Tromey  <tom@tromey.com>
3661
3662         * common/ptid.c (ptid_lwp_p): Remove.
3663         * common/ptid.h (ptid_lwp_p): Don't declare.
3664         * fbsd-nat.c: Update.
3665         * linux-nat.c: Update.
3666         * nat/linux-procfs.c: Update.
3667         * nat/x86-linux-dregs.c: Update.
3668         * sol-thread.c: Update.
3669
3670 2018-07-03  Tom Tromey  <tom@tromey.com>
3671
3672         * common/ptid.c (ptid_is_pid): Remove.
3673         * common/ptid.h (ptid_is_pid): Don't declare.
3674         * infrun.c: Update.
3675         * linux-nat.c: Update.
3676         * mi/mi-interp.c: Update.
3677         * remote.c: Update.
3678         * thread.c: Update.
3679
3680 2018-07-03  Tom Tromey  <tom@tromey.com>
3681
3682         * common/ptid.c (ptid_get_tid): Remove.
3683         * common/ptid.h (ptid_get_tid): Don't declare.
3684         * ada-tasks.c: Update.
3685         * aix-thread.c: Update.
3686         * bsd-uthread.c: Update.
3687         * darwin-nat.c: Update.
3688         * fbsd-nat.c: Update.
3689         * i386-darwin-nat.c: Update.
3690         * infrun.c: Update.
3691         * linux-tdep.c: Update.
3692         * nto-procfs.c: Update.
3693         * ppc-ravenscar-thread.c: Update.
3694         * python/py-infthread.c: Update.
3695         * ravenscar-thread.c: Update.
3696         * sol-thread.c: Update.
3697         * sparc-ravenscar-thread.c: Update.
3698         * windows-nat.c: Update.
3699
3700 2018-07-03  Tom Tromey  <tom@tromey.com>
3701
3702         * common/ptid.c (ptid_get_lwp): Remove.
3703         * common/ptid.h (ptid_get_lwp): Don't declare.
3704         * aarch64-linux-nat.c: Update.
3705         * ada-tasks.c: Update.
3706         * aix-thread.c: Update.
3707         * amd64-linux-nat.c: Update.
3708         * arm-linux-nat.c: Update.
3709         * corelow.c: Update.
3710         * fbsd-nat.c: Update.
3711         * fbsd-tdep.c: Update.
3712         * gnu-nat.c: Update.
3713         * i386-cygwin-tdep.c: Update.
3714         * i386-gnu-nat.c: Update.
3715         * i386-linux-nat.c: Update.
3716         * ia64-linux-nat.c: Update.
3717         * inf-ptrace.c: Update.
3718         * infrun.c: Update.
3719         * linux-fork.c: Update.
3720         * linux-nat.c: Update.
3721         * linux-tdep.c: Update.
3722         * linux-thread-db.c: Update.
3723         * mips-linux-nat.c: Update.
3724         * nat/aarch64-linux-hw-point.c: Update.
3725         * nat/aarch64-linux.c: Update.
3726         * nat/linux-btrace.c: Update.
3727         * nat/linux-osdata.c: Update.
3728         * nat/linux-procfs.c: Update.
3729         * nat/x86-linux-dregs.c: Update.
3730         * obsd-nat.c: Update.
3731         * ppc-fbsd-nat.c: Update.
3732         * ppc-linux-nat.c: Update.
3733         * procfs.c: Update.
3734         * python/py-infthread.c: Update.
3735         * ravenscar-thread.c: Update.
3736         * remote.c: Update.
3737         * s390-linux-nat.c: Update.
3738         * sol-thread.c: Update.
3739         * sol2-tdep.c: Update.
3740         * spu-linux-nat.c: Update.
3741         * x86-linux-nat.c: Update.
3742         * xtensa-linux-nat.c: Update.
3743
3744 2018-07-03  Tom Tromey  <tom@tromey.com>
3745
3746         * common/ptid.c (ptid_get_pid): Remove.
3747         * common/ptid.h (ptid_get_pid): Don't declare.
3748         * aarch64-linux-nat.c: Update.
3749         * ada-lang.c: Update.
3750         * aix-thread.c: Update.
3751         * alpha-bsd-nat.c: Update.
3752         * amd64-fbsd-nat.c: Update.
3753         * amd64-linux-nat.c: Update.
3754         * arm-linux-nat.c: Update.
3755         * arm-nbsd-nat.c: Update.
3756         * auxv.c: Update.
3757         * break-catch-syscall.c: Update.
3758         * breakpoint.c: Update.
3759         * bsd-uthread.c: Update.
3760         * corelow.c: Update.
3761         * ctf.c: Update.
3762         * darwin-nat.c: Update.
3763         * fbsd-nat.c: Update.
3764         * fbsd-tdep.c: Update.
3765         * gcore.c: Update.
3766         * gnu-nat.c: Update.
3767         * hppa-nbsd-nat.c: Update.
3768         * hppa-obsd-nat.c: Update.
3769         * i386-fbsd-nat.c: Update.
3770         * ia64-linux-nat.c: Update.
3771         * inf-ptrace.c: Update.
3772         * infcmd.c: Update.
3773         * inferior.c: Update.
3774         * inferior.h: Update.
3775         * inflow.c: Update.
3776         * infrun.c: Update.
3777         * linux-fork.c: Update.
3778         * linux-nat.c: Update.
3779         * linux-tdep.c: Update.
3780         * linux-thread-db.c: Update.
3781         * m68k-bsd-nat.c: Update.
3782         * mi/mi-interp.c: Update.
3783         * mi/mi-main.c: Update.
3784         * mips-linux-nat.c: Update.
3785         * mips-nbsd-nat.c: Update.
3786         * mips64-obsd-nat.c: Update.
3787         * nat/aarch64-linux-hw-point.c: Update.
3788         * nat/aarch64-linux.c: Update.
3789         * nat/linux-btrace.c: Update.
3790         * nat/linux-osdata.c: Update.
3791         * nat/linux-procfs.c: Update.
3792         * nat/x86-linux-dregs.c: Update.
3793         * nto-procfs.c: Update.
3794         * obsd-nat.c: Update.
3795         * ppc-linux-nat.c: Update.
3796         * ppc-nbsd-nat.c: Update.
3797         * ppc-obsd-nat.c: Update.
3798         * proc-service.c: Update.
3799         * procfs.c: Update.
3800         * python/py-inferior.c: Update.
3801         * python/py-infthread.c: Update.
3802         * ravenscar-thread.c: Update.
3803         * record.c: Update.
3804         * remote-sim.c: Update.
3805         * remote.c: Update.
3806         * rs6000-nat.c: Update.
3807         * s390-linux-nat.c: Update.
3808         * sh-nbsd-nat.c: Update.
3809         * sol-thread.c: Update.
3810         * sparc-nat.c: Update.
3811         * sparc64-tdep.c: Update.
3812         * spu-linux-nat.c: Update.
3813         * spu-tdep.c: Update.
3814         * target-debug.h: Update.
3815         * target.c: Update.
3816         * thread.c: Update.
3817         * tid-parse.c: Update.
3818         * tracefile-tfile.c: Update.
3819         * vax-bsd-nat.c: Update.
3820         * windows-nat.c: Update.
3821         * x86-linux-nat.c: Update.
3822         * x86-nat.c: Update.
3823
3824 2018-07-03  Tom Tromey  <tom@tromey.com>
3825
3826         * common/ptid.c (pid_to_ptid): Remove.
3827         * common/ptid.h (pid_to_ptid): Don't declare.
3828         * aix-thread.c: Update.
3829         * arm-linux-nat.c: Update.
3830         * common/ptid.c: Update.
3831         * common/ptid.h: Update.
3832         * corelow.c: Update.
3833         * ctf.c: Update.
3834         * darwin-nat.c: Update.
3835         * fbsd-nat.c: Update.
3836         * fork-child.c: Update.
3837         * gnu-nat.c: Update.
3838         * go32-nat.c: Update.
3839         * inf-ptrace.c: Update.
3840         * infcmd.c: Update.
3841         * inferior.c: Update.
3842         * infrun.c: Update.
3843         * linux-fork.c: Update.
3844         * linux-nat.c: Update.
3845         * nat/aarch64-linux-hw-point.c: Update.
3846         * nat/fork-inferior.c: Update.
3847         * nat/x86-linux-dregs.c: Update.
3848         * nto-procfs.c: Update.
3849         * obsd-nat.c: Update.
3850         * procfs.c: Update.
3851         * progspace.c: Update.
3852         * remote.c: Update.
3853         * rs6000-nat.c: Update.
3854         * s390-linux-nat.c: Update.
3855         * sol-thread.c: Update.
3856         * spu-linux-nat.c: Update.
3857         * target.c: Update.
3858         * top.c: Update.
3859         * tracefile-tfile.c: Update.
3860         * windows-nat.c: Update.
3861
3862 2018-07-03  Tom Tromey  <tom@tromey.com>
3863
3864         * common/ptid.h (ptid_build): Don't declare.
3865         * common/ptid.c (ptid_build): Remove.
3866         * aix-thread.c: Update.
3867         * bsd-kvm.c: Update.
3868         * bsd-uthread.c: Update.
3869         * common/agent.c: Update.
3870         * common/ptid.c: Update.
3871         * common/ptid.h: Update.
3872         * corelow.c: Update.
3873         * darwin-nat.c: Update.
3874         * fbsd-nat.c: Update.
3875         * gnu-nat.c: Update.
3876         * linux-fork.c: Update.
3877         * linux-nat.c: Update.
3878         * linux-thread-db.c: Update.
3879         * nat/linux-osdata.c: Update.
3880         * nat/linux-procfs.c: Update.
3881         * nto-procfs.c: Update.
3882         * obsd-nat.c: Update.
3883         * proc-service.c: Update.
3884         * procfs.c: Update.
3885         * ravenscar-thread.c: Update.
3886         * remote-sim.c: Update.
3887         * remote.c: Update.
3888         * sol-thread.c: Update.
3889         * target.c: Update.
3890         * windows-nat.c: Update.
3891
3892 2018-07-03  Tom Tromey  <tom@tromey.com>
3893
3894         * infrun.c (follow_exec): Use exit_inferior_silent.
3895         * inferior.c (exit_inferior_num_silent): Remove.
3896         * inferior.h (exit_inferior_num_silent): Don't declare.
3897
3898 2018-07-03  Tom Tromey  <tom@tromey.com>
3899
3900         PR cli/23340:
3901         * darwin-nat.c (darwin_attach_pid): Reset inferior and
3902         inferior_ptid on error.
3903
3904 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
3905             Simon Marchi  <simon.marchi@polymtl.ca>
3906
3907         PR tdep/8282
3908         * disasm.h (gdb_disassembler): Add
3909         `m_disassembler_options_holder'. member
3910         * disasm.c (get_all_disassembler_options): New function.
3911         (gdb_disassembler::gdb_disassembler): Use it.
3912         (gdb_buffered_insn_length_init_dis): Likewise.
3913         (gdb_buffered_insn_length): Adjust accordingly.
3914         (set_disassembler_options): Handle options with arguments.
3915         (show_disassembler_options_sfunc): Likewise.  Add a leading new
3916         line if showing options with descriptions.
3917         (disassembler_options_completer): Adapt to using the
3918         `disasm_options_and_args_t' structure.
3919         * mips-tdep.c (mips_disassembler_options): New variable.
3920         (mips_disassembler_options_o32): Likewise.
3921         (mips_disassembler_options_n32): Likewise.
3922         (mips_disassembler_options_n64): Likewise.
3923         (gdb_print_insn_mips): Don't set `disassembler_options'.
3924         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
3925         functions.
3926         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
3927         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
3928         `gdbarch_disassembler_options_implicit' and
3929         `gdbarch_valid_disassembler_options'.
3930         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
3931         `disasm_options_and_args_t' structure.
3932         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
3933         method.
3934         (valid_disassembler_options): Switch from `disasm_options_t' to
3935         the `disasm_options_and_args_t' structure.
3936         * NEWS: Document `set disassembler-options' support for the MIPS
3937         target.
3938         * gdbarch.h: Regenerate.
3939         * gdbarch.c: Regenerate.
3940
3941 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
3942
3943         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
3944
3945 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
3946
3947         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
3948         parameter in call to amd64_target_description.
3949         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
3950         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
3951         (amd64fbsd_init_abi): Likewise.
3952         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
3953         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
3954         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
3955         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
3956
3957 2018-06-29  Pedro Alves  <palves@redhat.com>
3958
3959         * gdb/amd64-tdep.h (amd64_create_target_description): Add
3960         "segments" parameter.
3961         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
3962         (_initialize_amd64_tdep): Update call to
3963         amd64_create_target_description.
3964         (amd64_target_description): Add "segments" parameter.  Adjust
3965         the implementation to use it.
3966         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
3967         call to amd64_create_target_description.
3968         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
3969         * gdb/arch/amd64.h (amd64_create_target_description): Add
3970         "segments" register.
3971         * gdb/arch/amd64.c (amd64_create_target_description): Add
3972         "segments" parameter.  Call create_feature_i386_64bit_segments
3973         only if SEGMENTS is true.
3974         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
3975         call to amd64_create_target_description.
3976
3977 2018-06-29  Pedro Alves  <palves@redhat.com>
3978
3979         * thread.c (thread_target_id_str): New, factored out from ...
3980         (print_thread_info_1): ... here.  Use it to compute the max
3981         "Target Id" column width.
3982
3983 2018-06-29  Pedro Alves  <palves@redhat.com>
3984
3985         * remote.c (remote_target::extra_thread_info): Delete
3986         'display_buf' and 'n' locals.  from the cache, regardless of
3987         packet mechanims is in use.  Use cache for qThreadExtra and qP
3988         methods too.
3989
3990 2018-06-29  Pedro Alves  <palves@redhat.com>
3991
3992         * blockframe.c (find_pc_sect_containing_function): New function.
3993         * breakpoint.c (print_breakpoint_location): Don't call
3994         find_pc_sect_function.
3995         * linespec.c (create_sals_line_offset): Record the location's
3996         symbol in the sal.
3997         * linespec.c (convert_address_location_to_sals): Fill in sal's
3998         symbol with find_pc_sect_containing_function.
3999         * symtab.c (find_function_start_sal): Rename to ...
4000         (find_function_start_sal_1): ... this.
4001         (find_function_start_sal): Reimplement as wrapper around
4002         find_function_start_sal_1, and use
4003         find_pc_sect_containing_function to fill in the sal's symbol.
4004         (find_function_start_sal(symbol*, bool)): Adjust.
4005         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
4006         comments.
4007         (find_pc_sect_containing_function): Declare.
4008
4009 2018-06-29  Pedro Alves  <palves@redhat.com>
4010
4011         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
4012         true if the the location has no symbol.
4013
4014 2018-06-28  Tom Tromey  <tom@tromey.com>
4015
4016         * NEWS: Mention --enable-codesign.
4017         * silent-rules.mk (ECHO_SIGN): New variable.
4018         * configure.ac: Add --enable-codesign.
4019         * configure: Rebuild.
4020         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
4021         (gdb$(EXEEXT)): Optionally invoke codesign.
4022
4023 2018-06-28  Pedro Alves  <palves@redhat.com>
4024
4025         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
4026         comments.
4027         (switch_to_thread_no_regs): Adjust comment.
4028         * infcmd.c (stop_pc): Delete.
4029         (post_create_inferior, info_program_command): Replace references
4030         to stop_pc with references to thread_info->suspend.stop_pc.
4031         * inferior.h (stop_pc): Delete declaration.
4032         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
4033         (handle_inferior_event_1, handle_signal_stop)
4034         (process_event_stop_test, keep_going_stepped_thread)
4035         (handle_step_into_function, handle_step_into_function_backward)
4036         (print_stop_location): Replace references to stop_pc with
4037         references to thread_info->suspend.stop_pc.
4038         (struct infcall_suspend_state) <stop_pc>: Delete field.
4039         (save_infcall_suspend_state, restore_infcall_suspend_state):
4040         Remove references to inf_stat->stop_pc.
4041         * linux-fork.c (fork_load_infrun_state): Likewise.
4042         * record-btrace.c (record_btrace_set_replay): Likewise.
4043         * record-full.c (record_full_goto_entry): Likewise.
4044         * remote.c (print_one_stopped_thread): Likewise.
4045         * target.c (target_resume): Extend comment.
4046         * thread.c (set_executing_thread): New.
4047         (set_executing): Use it.
4048         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
4049         Remove references to stop_pc.
4050
4051 2018-06-28  Pedro Alves  <palves@redhat.com>
4052
4053         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
4054         Moving fetching stop_pc until after ecs->event_thread is refreshed.
4055
4056 2018-06-28  Tom Tromey  <tom@tromey.com>
4057
4058         * coffread.c (coff_symfile_finish): Update.
4059         * xcoffread.c (xcoff_symfile_finish): Update.
4060         * elfread.c (elf_symfile_finish): Update.
4061         * symfile.h (dwarf2_free_objfile): Don't declare.
4062         * dwarf2read.c (_initialize_dwarf2_read): Use
4063         register_objfile_data_with_cleanup.
4064         (dwarf2_free_objfile): Now static.  Change signature.
4065
4066 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4067
4068         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
4069         option "-o" to add-symbol-file-load to add an offset to each
4070         section's load address.
4071         * symfile.c (set_objfile_default_section_offset): New function.
4072
4073 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4074
4075         * symfile.c (add_symbol_file_command): Make sure that sections
4076         with the same name are sorted in the same order.
4077
4078 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4079
4080         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
4081         require the second argument.  If omitted, load sections at the
4082         addresses specified in the file.
4083
4084 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4085
4086         * symfile.c (symbol_file_command, symbol_file_add_main_1)
4087         (_initialize_symfile): Add option "-o" to symbol-file to add an
4088         offset to each section of the symbol file.
4089
4090 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
4091
4092         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
4093
4094 2018-06-27  Tom Tromey  <tom@tromey.com>
4095
4096         * stack.c (_initialize_stack): Update "func" help text.
4097
4098 2018-06-27  Tom Tromey  <tom@tromey.com>
4099
4100         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
4101         std::vector.
4102         (unwind_infopy_str, pyuw_create_unwind_info)
4103         (unwind_infopy_add_saved_register, pyuw_sniffer)
4104         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
4105         Update.
4106         (struct saved_reg): Add constructor.
4107         <value>: Now a gdbpy_ref<>.
4108
4109 2018-06-27  Tom Tromey  <tom@tromey.com>
4110
4111         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
4112
4113 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4114
4115         * gdb-gdb.py.in: Format using autopep8.
4116
4117 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4118
4119         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
4120         (type_lookup_function): Recognize CORE_ADDR values.
4121
4122 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4123
4124         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
4125         print tag_name.
4126
4127 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4128
4129         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
4130         <__lt__>: Add.
4131
4132 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4133
4134         * gdb-gdb.py: Move to...
4135         * gdb-gdb.py.in: ... here.
4136         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
4137         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
4138         dependencies.
4139         (distclean): Remove gdb-gdb.py when cleaning.
4140         (gdb-gdb.py, gdb-gdb.gdb): New rules.
4141         * configure: Re-generate.
4142
4143 2018-06-27  Pedro Alves  <palves@redhat.com>
4144
4145         * proc-service.c (get_ps_regcache): New.
4146         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
4147         (ps_lsetfpregs): Use it.
4148
4149 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
4150
4151         PR gdb/21695
4152         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
4153         (dwarf_decode_lines_1): Adjust.
4154
4155 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4156
4157         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
4158         override.
4159         <info_proc>: Likewise.
4160
4161 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
4162
4163         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
4164         to windows_fetch_one_register, and only handle the case of
4165         fetching one register.  Move the code that reloads the context
4166         and iterates over all registers if R is negative to...
4167         (windows_nat_target::fetch_registers): ... here.
4168         (do_windows_store_inferior_registers): Rename to
4169         windows_store_one_register, and only handle the case of storing
4170         one register.  Move the code that handles the case where r is
4171         negative to...
4172         (windows_nat_target::store_registers) ... here.
4173
4174 2018-06-26  Tom Tromey  <tom@tromey.com>
4175
4176         PR rust/22574:
4177         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
4178         * rust-lang.c (rust_print_struct_def): Add podata parameter.
4179         Update.
4180         (rust_internal_print_type): Add podata parameter.
4181         (rust_print_type): Update.
4182
4183 2018-06-26  Tom Tromey  <tom@tromey.com>
4184
4185         * typeprint.h (struct print_offset_data) <update, finish,
4186         maybe_print_hole>: New methods.
4187         <indentation>: New constant.
4188         * typeprint.c (print_offset_data::indentation): Define.
4189         (print_offset_data::maybe_print_hole, print_offset_data::update)
4190         (print_offset_data::finish): Move from c-typeprint.c and rename.
4191         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
4192         (print_spaces_filtered_with_print_options): Update.
4193         (c_print_type_union_field_offset, maybe_print_hole)
4194         (c_print_type_struct_field_offset): Move to typeprint.c and
4195         rename.
4196         (c_type_print_base_struct_union): Update.
4197
4198 2018-06-25  Pedro Alves  <palves@redhat.com>
4199
4200         * gdbthread.h (thread_info_ref, delete_thread)
4201         (delete_thread_silent, first_thread_of_inferior)
4202         (any_thread_of_inferior, switch_to_thread)
4203         (enable_thread_stack_temporaries)
4204         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
4205         (get_last_thread_stack_temporary)
4206         (value_in_thread_stack_temporaries, can_access_registers_thread):
4207         Spell out "struct thread_info" instead of just "thread_info".
4208         * inferior.h (notice_new_inferior): Likewise.
4209
4210 2018-06-25  Pedro Alves  <palves@redhat.com>
4211
4212         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
4213         pass thread_info pointer to delete_thread.
4214         (windows_nat_target::detach): Pass inferior pointer to
4215         detach_inferior.
4216         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
4217         delete_thread.
4218         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
4219         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
4220         and pass a thread_info pointer to delete_thread.
4221         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
4222         pass thread_info pointer to delete_thread.
4223         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
4224         delete_thread_silent call.
4225         * procfs.c (procfs_target::detach): Pass inferior pointer to
4226         detach_inferior.
4227         (procfs_target::wait): Pass thread_info pointer to delete_thread.
4228         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
4229         delete_thread_silent call.
4230         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
4231         pass thread_info pointer to delete_thread.
4232         (windows_nat_target::detach): Pass inferior pointer to
4233         delete_inferior.
4234
4235 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
4236
4237         * regcache.c (readable_regcache::read_part): Fix asserts.
4238         (reg_buffer::raw_collect_part): New function.
4239         (regcache::write_part): Fix asserts.
4240         (reg_buffer::raw_supply_part): New function.
4241         (regcache::transfer_regset_register): New helper function.
4242         (regcache::transfer_regset): Call new functions.
4243         (regcache_supply_regset): Use gdb_byte*.
4244         (regcache::supply_regset): Likewise.
4245         (regcache_collect_regset): Likewise.
4246         (regcache::collect_regset): Likewise.
4247         * regcache.h (reg_buffer::raw_collect_part): New declaration.
4248         (reg_buffer::raw_supply_part): Likewise.
4249         (regcache::transfer_regset_register): Likewise.
4250         (regcache::transfer_regset): Use gdb_byte*.
4251
4252 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
4253
4254         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
4255
4256 2018-06-21  Pedro Alves  <palves@redhat.com>
4257
4258         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
4259         instead of a ptid_t.  All callers adjusted.
4260         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
4261         adjusted.
4262         (print_ada_task_info, display_current_task_id, task_command_1):
4263         Adjust.
4264         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
4265         inferior_thread.
4266         (breakpoint_kind): Adjust.
4267         (remove_breakpoints_pid): Rename to ...
4268         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
4269         pointer.  All callers adjusted.
4270         (bpstat_clear_actions): Use inferior_thread.
4271         (get_bpstat_thread): New.
4272         (bpstat_do_actions): Use it.
4273         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
4274         to take a thread_info pointer.  All callers adjusted.
4275         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
4276         (breakpoint_re_set_thread): Use inferior_thread.
4277         * breakpoint.h (struct inferior): Forward declare.
4278         (bpstat_stop_status): Update.
4279         (remove_breakpoints_pid): Delete.
4280         (remove_breakpoints_inf): New.
4281         * bsd-uthread.c (bsd_uthread_target::wait)
4282         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
4283         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
4284         (maint_btrace_packet_history_cmd)
4285         (maint_btrace_clear_packet_history_cmd): Adjust.
4286         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
4287         inferior_thread.
4288         * cli/cli-interp.c: Include "inferior.h".
4289         * common/refcounted-object.h (struct
4290         refcounted_object_ref_policy): New.
4291         * compile/compile-object-load.c: Include gdbthread.h.
4292         (store_regs): Use inferior_thread.
4293         * corelow.c (core_target::close): Use current_inferior.
4294         (core_target_open): Adjust to use first_thread_of_inferior and use
4295         the current inferior.
4296         * ctf.c (ctf_target::close): Adjust to use current_inferior.
4297         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
4298         <thread>: ... this new field.  All references adjusted.
4299         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
4300         Take a thread_info pointer instead of a ptid_t.
4301         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
4302         (dummy_frame_discard, register_dummy_frame_dtor): Take a
4303         thread_info pointer instead of a ptid_t.
4304         * elfread.c: Include "inferior.h".
4305         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
4306         Use inferior_thread.
4307         * eval.c (evaluate_subexp): Likewise.
4308         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
4309         inferior_thread.
4310         * gdb_proc_service.h (struct thread_info): Forward declare.
4311         (struct ps_prochandle) <ptid>: Delete, replaced by ...
4312         <thread>: ... this new field.  All references adjusted.
4313         * gdbarch.h, gdbarch.c: Regenerate.
4314         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
4315         'thread' parameter.  All implementations and callers adjusted.
4316         * gdbthread.h (thread_info) <set_running>: New method.
4317         (delete_thread, delete_thread_silent): Take a thread_info pointer
4318         instead of a ptid.
4319         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
4320         (first_thread_of_process): Delete, replaced by ...
4321         (first_thread_of_inferior): ... this new function.  All callers
4322         adjusted.
4323         (any_live_thread_of_process): Delete, replaced by ...
4324         (any_live_thread_of_inferior): ... this new function.  All callers
4325         adjusted.
4326         (switch_to_thread, switch_to_no_thread): Declare.
4327         (is_executing): Delete.
4328         (enable_thread_stack_temporaries): Update comment.
4329         <enable_thread_stack_temporaries>: Take a thread_info pointer
4330         instead of a ptid_t.  Incref the thread.
4331         <~enable_thread_stack_temporaries>: Decref the thread.
4332         <m_ptid>: Delete
4333         <m_thr>: New.
4334         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
4335         (get_last_thread_stack_temporary)
4336         (value_in_thread_stack_temporaries, can_access_registers_thread):
4337         Take a thread_info pointer instead of a ptid_t.  All callers
4338         adjusted.
4339         * infcall.c (get_call_return_value): Use inferior_thread.
4340         (run_inferior_call): Work with thread pointers instead of ptid_t.
4341         (call_function_by_hand_dummy): Work with thread pointers instead
4342         of ptid_t.  Use thread_info_ref.
4343         * infcmd.c (proceed_thread_callback): Access thread's state
4344         directly.
4345         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
4346         access thread's state directly.
4347         (continue_command): Use inferior_thread.
4348         (info_program_command): Use find_thread_ptid and access thread
4349         state directly.
4350         (proceed_after_attach_callback): Use thread state directly.
4351         (notice_new_inferior): Take a thread_info pointer instead of a
4352         ptid_t.  All callers adjusted.
4353         (exit_inferior): Take an inferior pointer instead of a pid.  All
4354         callers adjusted.
4355         (exit_inferior_silent): New.
4356         (detach_inferior): Delete.
4357         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
4358         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
4359         (detach_inferior_command, kill_inferior_command): Use
4360         find_inferior_id instead of valid_gdb_inferior_id and
4361         gdb_inferior_id_to_pid.
4362         (inferior_command): Use inferior and thread pointers.
4363         * inferior.h (struct thread_info): Forward declare.
4364         (notice_new_inferior): Take a thread_info pointer instead of a
4365         ptid_t.  All callers adjusted.
4366         (detach_inferior): Delete declaration.
4367         (exit_inferior, exit_inferior_silent): Take an inferior pointer
4368         instead of a pid.  All callers adjusted.
4369         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
4370         (valid_gdb_inferior_id): Delete.
4371         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
4372         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
4373         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
4374         ...
4375         <inf>: ... this new field.
4376         <step_ptid>: Delete, replaced by ...
4377         <step_thread>: ... this new field.
4378         (get_displaced_stepping_state): Take an inferior pointer instead
4379         of a pid.  All callers adjusted.
4380         (displaced_step_in_progress_any_inferior): Adjust.
4381         (displaced_step_in_progress_thread): Take a thread pointer instead
4382         of a ptid_t.  All callers adjusted.
4383         (displaced_step_in_progress, add_displaced_stepping_state): Take
4384         an inferior pointer instead of a pid.  All callers adjusted.
4385         (get_displaced_step_closure_by_addr): Adjust.
4386         (remove_displaced_stepping_state): Take an inferior pointer
4387         instead of a pid.  All callers adjusted.
4388         (displaced_step_prepare_throw, displaced_step_prepare)
4389         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
4390         All callers adjusted.
4391         (start_step_over): Adjust.
4392         (infrun_thread_ptid_changed): Remove bit updating ptids in the
4393         displaced step queue.
4394         (do_target_resume): Adjust.
4395         (fetch_inferior_event): Use inferior_thread.
4396         (context_switch, get_inferior_stop_soon): Take an
4397         execution_control_state pointer instead of a ptid_t.  All callers
4398         adjusted.
4399         (switch_to_thread_cleanup): Delete.
4400         (stop_all_threads): Use scoped_restore_current_thread.
4401         * inline-frame.c: Include "gdbthread.h".
4402         (inline_state) <inline_state>: Take a thread pointer instead of a
4403         ptid_t.  All callers adjusted.
4404         <ptid>: Delete, replaced by ...
4405         <thread>: ... this new field.
4406         (find_inline_frame_state): Take a thread pointer instead of a
4407         ptid_t.  All callers adjusted.
4408         (skip_inline_frames, step_into_inline_frame)
4409         (inline_skipped_frames, inline_skipped_symbol): Take a thread
4410         pointer instead of a ptid_t.  All callers adjusted.
4411         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
4412         (inline_skipped_frames, inline_skipped_symbol): Likewise.
4413         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
4414         pointers directly.
4415         * linux-nat.c (get_detach_signal): Likewise.
4416         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
4417         (thread_db_notice_clone): Adjust.
4418         (thread_db_find_new_threads_silently)
4419         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
4420         a thread pointer instead of a ptid_t.  All callers adjusted.
4421         * mi/mi-cmd-var.c: Include "inferior.h".
4422         (mi_cmd_var_update_iter): Update to use thread pointers.
4423         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
4424         inferior directly.
4425         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
4426         out to ...
4427         (mi_output_running): ... this new function.
4428         (mi_on_resume_1): Adjust to use it.
4429         (mi_user_selected_context_changed): Adjust to use inferior_thread.
4430         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
4431         directly.
4432         (interrupt_thread_callback): : Adjust to use thread and inferior
4433         pointers.
4434         * proc-service.c: Include "gdbthread.h".
4435         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
4436         * progspace-and-thread.c: Include "inferior.h".
4437         * progspace.c: Include "inferior.h".
4438         * python/py-exitedevent.c (create_exited_event_object): Adjust to
4439         hold a reference to an inferior_object.
4440         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
4441         inferior_thread.
4442         * python/py-inferior.c (struct inferior_object): Give the type a
4443         tag name instead of a typedef.
4444         (python_on_normal_stop): No need to check if the current thread is
4445         listed.
4446         (inferior_to_inferior_object): Change return type to
4447         inferior_object.  All callers adjusted.
4448         (find_thread_object): Delete, bits factored out to ...
4449         (thread_to_thread_object): ... this new function.
4450         * python/py-infthread.c (create_thread_object): Use
4451         inferior_to_inferior_object.
4452         (thpy_is_stopped): Use thread pointer directly.
4453         (gdbpy_selected_thread): Use inferior_thread.
4454         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
4455         field, replaced with ...
4456         <thread>: ... this new field.  All users adjusted.
4457         (btpy_insn_or_gap_new): Drop const.
4458         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
4459         callers adjusted.
4460         * python/py-record.c: Include "gdbthread.h".
4461         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
4462         a ptid_t.  All callers adjusted.
4463         (gdbpy_current_recording): Use inferior_thread.
4464         * python/py-record.h (recpy_record_object) <ptid>: Delete
4465         field, replaced with ...
4466         <thread>: ... this new field.  All users adjusted.
4467         (recpy_element_object) <ptid>: Delete
4468         field, replaced with ...
4469         <thread>: ... this new field.  All users adjusted.
4470         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
4471         a ptid_t.  All callers adjusted.
4472         * python/py-threadevent.c: Include "gdbthread.h".
4473         (get_event_thread): Use thread_to_thread_object.
4474         * python/python-internal.h (struct inferior_object): Forward
4475         declare.
4476         (find_thread_object, find_inferior_object): Delete declarations.
4477         (thread_to_thread_object, inferior_to_inferior_object): New
4478         declarations.
4479         * record-btrace.c: Include "inferior.h".
4480         (require_btrace_thread): Use inferior_thread.
4481         (record_btrace_frame_sniffer)
4482         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
4483         (get_thread_current_frame): Use scoped_restore_current_thread and
4484         switch_to_thread.
4485         (get_thread_current_frame): Use thread pointer directly.
4486         (record_btrace_replay_at_breakpoint): Use thread's inferior
4487         pointer directly.
4488         * record-full.c: Include "inferior.h".
4489         * regcache.c: Include "gdbthread.h".
4490         (get_thread_arch_regcache): Use the inferior's address space
4491         directly.
4492         (get_thread_regcache, registers_changed_thread): New.
4493         * regcache.h (get_thread_regcache(thread_info *thread)): New
4494         overload.
4495         (registers_changed_thread): New.
4496         (remote_target) <remote_detach_1>: Swap order of parameters.
4497         (remote_add_thread): <remote_add_thread>: Return the new thread.
4498         (get_remote_thread_info(ptid_t)): New overload.
4499         (remote_target::remote_notice_new_inferior): Use thread pointers
4500         directly.
4501         (remote_target::process_initial_stop_replies): Use
4502         thread_info::set_running.
4503         (remote_target::remote_detach_1, remote_target::detach)
4504         (extended_remote_target::detach): Adjust.
4505         * stack.c (frame_show_address): Use inferior_thread.
4506         * target-debug.h (target_debug_print_thread_info_pp): New.
4507         * target-delegates.c: Regenerate.
4508         * target.c (default_thread_address_space): Delete.
4509         (memory_xfer_partial_1): Use current_inferior.
4510         (target_detach): Use current_inferior.
4511         (target_thread_address_space): Delete.
4512         (generic_mourn_inferior): Use current_inferior.
4513         * target.h (struct target_ops) <thread_address_space>: Delete.
4514         (target_thread_address_space): Delete.
4515         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
4516         pointers directly.
4517         (delete_thread_1, delete_thread, delete_thread_silent): Take a
4518         thread pointer instead of a ptid_t.  Adjust all callers.
4519         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
4520         (first_thread_of_process): Delete, replaced by ...
4521         (first_thread_of_inferior): ... this new function.  All callers
4522         adjusted.
4523         (any_thread_of_process): Rename to ...
4524         (any_thread_of_inferior): ... this, and take an inferior pointer.
4525         (any_live_thread_of_process): Rename to ...
4526         (any_live_thread_of_inferior): ... this, and take an inferior
4527         pointer.
4528         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
4529         (value_in_thread_stack_temporaries)
4530         (get_last_thread_stack_temporary): Take a thread pointer instead
4531         of a ptid_t.  Adjust all callers.
4532         (thread_info::set_running): New.
4533         (validate_registers_access): Use inferior_thread.
4534         (can_access_registers_ptid): Rename to ...
4535         (can_access_registers_thread): ... this, and take a thread
4536         pointer.
4537         (print_thread_info_1): Adjust to compare thread pointers instead
4538         of ptids.
4539         (switch_to_no_thread, switch_to_thread): Make extern.
4540         (scoped_restore_current_thread::~scoped_restore_current_thread):
4541         Use m_thread pointer directly.
4542         (scoped_restore_current_thread::scoped_restore_current_thread):
4543         Use inferior_thread.
4544         (thread_command): Use thread pointer directly.
4545         (thread_num_make_value_helper): Use inferior_thread.
4546         * top.c (execute_command): Use inferior_thread.
4547         * tui/tui-interp.c: Include "inferior.h".
4548         * varobj.c (varobj_create): Use inferior_thread.
4549         (value_of_root_1): Use find_thread_global_id instead of
4550         global_thread_id_to_ptid.
4551
4552 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
4553
4554         * regcache.c (readable_regcache::read_part): Avoid memcpy when
4555         possible.
4556         (regcache::write_part): Likewise.
4557         (readable_regcache::cooked_read_part): Update comment.
4558         (readable_regcache::cooked_write_part): Likewise.
4559         * regcache.h: (readable_regcache::read_part): Likewise.
4560         (regcache::write_part): Likewise.
4561
4562 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
4563             Dirk Schubert  <dirk.schubert@arm.com>
4564
4565         * aarch64-linux-nat.c (post_attach): New.
4566         (aarch64_linux_nat_target::post_attach): Override post_attach to
4567         record the number of hardware debug registers.
4568
4569 2018-06-20  Tom Tromey  <tom@tromey.com>
4570
4571         * python/py-param.c (add_setshow_generic): Make parameters const.
4572         (parmpy_init): Update.
4573
4574 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
4575
4576         * regcache.h (regcache_cooked_read_ftype): Rename to...
4577         (register_read_ftype): ...this, change type to function_view.
4578         (class reg_buffer) <save>: Remove src parameter.
4579         (readonly_detached_regcache) <readonly_detached_regcache>: Make
4580         parameter non-const in first overload.  Remove src parameter in
4581         second overload.
4582         * regcache.c (do_cooked_read): Remove.
4583         (readonly_detached_regcache::readonly_detached_regcache): Make
4584         parameter non-const, adjust call to other constructor.
4585         (reg_buffer::save): Remove src parameter.
4586         * frame.c (do_frame_register_read): Remove.
4587         (frame_save_as_regcache): Use lambda function.
4588         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
4589         parameter to ppu2spu_data *.
4590         (ppu2spu_sniffer): Use lambda function.
4591
4592 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
4593
4594         * record-full.c (record_full_target::insert_breakpoint): Remove
4595         "struct" keyword, add const.
4596
4597 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
4598
4599         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
4600         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
4601         * configure.ac: Remove AC_PREREQ, add missing quoting.
4602         * gnulib/configure.ac: Modernize usage of
4603         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
4604         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
4605         (AUTOMAKE_VERSION): Bump to 1.15.1.
4606         * configure: Re-generate.
4607         * config.in: Re-generate.
4608         * aclocal.m4: Re-generate.
4609         * gnulib/aclocal.m4: Re-generate.
4610         * gnulib/config.in: Re-generate.
4611         * gnulib/configure: Re-generate.
4612         * gnulib/import/Makefile.in: Re-generate.
4613
4614 2018-06-19  Pedro Alves  <palves@redhat.com>
4615
4616         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
4617         (lookup_minimal_symbol_by_pc_section): ... here with
4618         gdb_assert_not_reached added.
4619
4620 2018-06-19  Pedro Alves  <palves@redhat.com>
4621
4622         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
4623         parameter with a block parameter.  Compare location's block symbol
4624         with the frame's block instead of addresses.
4625         (skip_inline_frames): Pass the current block instead of the
4626         frame's address.  Break out as soon as we determine the frame
4627         should not be skipped.
4628
4629 2018-06-18  Tom Tromey  <tom@tromey.com>
4630
4631         * solib-aix.c (solib_aix_get_section_offsets): Return
4632         unique_xmalloc_ptr.
4633         (solib_aix_solib_create_inferior_hook): Update.
4634
4635 2018-06-18  Tom Tromey  <tom@tromey.com>
4636
4637         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
4638
4639 2018-06-18  Tom Tromey  <tom@tromey.com>
4640
4641         * solib-frv.c (frv_relocate_main_executable): Use
4642         unique_xmalloc_ptr.
4643         * solib-dsbt.c (dsbt_relocate_main_executable): Use
4644         unique_xmalloc_ptr.
4645
4646 2018-06-18  Tom Tromey  <tom@tromey.com>
4647
4648         * objfiles.h (inhibit_section_map_updates): Update.
4649         (resume_section_map_updates, resume_section_map_updates_cleanup):
4650         Remove.
4651         * solib-svr4.c (svr4_handle_solib_event): Update.
4652         * objfiles.c (inhibit_section_map_updates): Return
4653         scoped_restore_tmpl<int>.
4654         (resume_section_map_updates, resume_section_map_updates_cleanup):
4655         Remove.
4656
4657 2018-06-18  Tom Tromey  <tom@tromey.com>
4658
4659         * valprint.h (read_string): Update.
4660         * valprint.c (read_string): Change type of "buffer".
4661         (val_print_string): Update.
4662         * python/py-value.c (valpy_string): Update.
4663         * language.h (struct language_defn) <la_get_string>: Change
4664         type of "buffer".
4665         (default_get_string, c_get_string): Update.
4666         * language.c (default_get_string): Change type of "buffer".
4667         * guile/scm-value.c (gdbscm_value_to_string): Update.
4668         * c-lang.c (c_get_string): Change type of "buffer".
4669
4670 2018-06-18  Tom Tromey  <tom@tromey.com>
4671
4672         * ser-mingw.c (struct pipe_state_destroyer): New.
4673         (pipe_state_up): New typedef.
4674         (cleanup_pipe_state): Remove.
4675         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
4676
4677 2018-06-18  Tom Tromey  <tom@tromey.com>
4678
4679         * rust-lang.h (rust_yyerror): Don't declare.
4680         * rust-lang.c (rust_language_defn): Update.
4681         * rust-exp.y (yyerror): Now static.
4682         * parse.c (parse_exp_in_context_1): Update.
4683         * p-lang.h (p_yyerror): Don't declare.
4684         * p-lang.c (p_language_defn): Update.
4685         * p-exp.y (yyerror): Now static.
4686         * opencl-lang.c (opencl_language_defn): Update.
4687         * objc-lang.c (objc_language_defn): Update.
4688         * m2-lang.h (m2_yyerror): Don't declare.
4689         * m2-lang.c (m2_language_defn): Update.
4690         * m2-exp.y (yyerror): Now static.
4691         * language.h (struct language_defn) <la_error>: Remove.
4692         * language.c (unk_lang_error): Remove.
4693         (unknown_language_defn, auto_language_defn): Remove.
4694         * go-lang.h (go_yyerror): Don't declare.
4695         * go-lang.c (go_language_defn): Update.
4696         * go-exp.y (yyerror): Now static.
4697         * f-lang.h (f_yyerror): Don't declare.
4698         * f-lang.c (f_language_defn): Update.
4699         * f-exp.y (yyerror): Now static.
4700         * d-lang.h (d_yyerror): Don't declare.
4701         * d-lang.c (d_language_defn): Update.
4702         * d-exp.y (yyerror): Now static.
4703         * c-lang.h (c_yyerror): Don't declare.
4704         * c-lang.c (c_language_defn, cplus_language_defn)
4705         (asm_language_defn, minimal_language_defn): Update.
4706         * c-exp.y (yyerror): Now static.
4707         * ada-lang.h (ada_yyerror): Don't declare.
4708         * ada-lang.c (ada_language_defn): Update.
4709         * ada-exp.y (yyerror): Now static.
4710
4711 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
4712
4713         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
4714         (store_sveregs_to_thread): Likewise.
4715         (aarch64_linux_fetch_inferior_registers): Check for SVE.
4716         (aarch64_linux_store_inferior_registers): Likewise.
4717         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
4718         function.
4719         (aarch64_sve_regs_copy_to_regcache): Likewise.
4720         (aarch64_sve_regs_copy_from_regcache): Likewise.
4721         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
4722         declaration.
4723         (aarch64_sve_regs_copy_to_regcache): Likewise.
4724         (aarch64_sve_regs_copy_from_regcache): Likewise.
4725         (sve_context): Structure from Linux headers.
4726         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
4727         (SVE_SIG_ZREG_SIZE): Likewise.
4728         (SVE_SIG_PREG_SIZE): Likewise.
4729         (SVE_SIG_FFR_SIZE): Likewise.
4730         (SVE_SIG_REGS_OFFSET): Likewise.
4731         (SVE_SIG_ZREGS_OFFSET): Likewise.
4732         (SVE_SIG_ZREG_OFFSET): Likewise.
4733         (SVE_SIG_ZREGS_SIZE): Likewise.
4734         (SVE_SIG_PREGS_OFFSET): Likewise.
4735         (SVE_SIG_PREG_OFFSET): Likewise.
4736         (SVE_SIG_PREGS_SIZE): Likewise.
4737         (SVE_SIG_FFR_OFFSET): Likewise.
4738         (SVE_SIG_REGS_SIZE): Likewise.
4739         (SVE_SIG_CONTEXT_SIZE): Likewise.
4740         (SVE_PT_REGS_MASK): Likewise.
4741         (SVE_PT_REGS_FPSIMD): Likewise.
4742         (SVE_PT_REGS_SVE): Likewise.
4743         (SVE_PT_VL_INHERIT): Likewise.
4744         (SVE_PT_VL_ONEXEC): Likewise.
4745         (SVE_PT_REGS_OFFSET): Likewise.
4746         (SVE_PT_FPSIMD_OFFSET): Likewise.
4747         (SVE_PT_FPSIMD_SIZE): Likewise.
4748         (SVE_PT_SVE_ZREG_SIZE): Likewise.
4749         (SVE_PT_SVE_PREG_SIZE): Likewise.
4750         (SVE_PT_SVE_FFR_SIZE): Likewise.
4751         (SVE_PT_SVE_FPSR_SIZE): Likewise.
4752         (SVE_PT_SVE_FPCR_SIZE): Likewise.
4753         (__SVE_SIG_TO_PT): Likewise.
4754         (SVE_PT_SVE_OFFSET): Likewise.
4755         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
4756         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
4757         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
4758         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
4759         (SVE_PT_SVE_PREG_OFFSET): Likewise.
4760         (SVE_PT_SVE_PREGS_SIZE): Likewise.
4761         (SVE_PT_SVE_FFR_OFFSET): Likewise.
4762         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
4763         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
4764         (SVE_PT_SVE_SIZE): Likewise.
4765         (SVE_PT_SIZE): Likewise.
4766         (HAS_SVE_STATE): New define.
4767
4768 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
4769
4770         * nat/aarch64-sve-linux-sigcontext.h: New file.
4771         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
4772         new files.
4773         (SVE_VQ_MIN): Likewise.
4774         (SVE_VQ_MAX): Likewise.
4775         (SVE_VL_MIN): Likewise.
4776         (SVE_VL_MAX): Likewise.
4777         (SVE_NUM_ZREGS): Likewise.
4778         (SVE_NUM_PREGS): Likewise.
4779         (sve_vl_valid): Likewise.
4780         (struct user_sve_header): Likewise.
4781
4782 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
4783             Richard Bunt <Richard.Bunt@arm.com>
4784
4785         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
4786         was requested by GDB.
4787
4788 2018-06-15  Tom de Vries  <tdevries@suse.de>
4789
4790         * MAINTAINERS (Write After Approval): Add Tom de Vries.
4791
4792 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
4793
4794         * gnulib/update-gnulib.sh: Print expected versions of
4795         autoconf/aclocal.
4796
4797 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
4798
4799         * arch-utils.c (default_type_align): Use type_length_units.
4800         * gdbtypes.c (type_align): Use type_length_units.
4801
4802 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4803
4804         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
4805         of 'define' command.
4806
4807 2018-06-14  Tom de Vries  <tdevries@suse.de>
4808
4809         PR cli/22573
4810         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
4811         get_no_prettyformat_print_options.
4812
4813 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
4814
4815         * sparc-nat.h: Include target.h.
4816         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
4817         <fetch_registers>: Remove this argument in function call.
4818         <store_registers>: Remove this argument in function call, remove
4819         extra semicolon.
4820         <low_forget_process>: Call sparc64_forget_process instead of
4821         sparc_forget_process.
4822
4823 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4824
4825         * procfs.c (_initialize_procfs): Use add_inf_child_target.
4826         (procfs_target::make_corefile_notes): Adjust to new
4827         target_read_alloc return type.
4828
4829 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4830             Stephen Roberts  <stephen.roberts@arm.com>
4831
4832         PR gdb/22882
4833         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
4834         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
4835         Move should_notify_stop local into more inner scope.
4836
4837 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4838             Stephen Roberts  <stephen.roberts@arm.com>
4839
4840         PR gdb/22882
4841         * infrun.c (resume_1): Add call to mark_async_event_handler.
4842
4843 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4844
4845         * infrun.c (do_target_wait): Change old version of $pc printed.
4846
4847 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
4848
4849         * dwarf2read.c (read_index_from_section): Rename to...
4850         (read_gdb_index_from_section): ... this, update all callers.
4851         (dwarf2_read_index): Rename to...
4852         (dwarf2_read_gdb_index): ... this, update all callers.
4853
4854 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
4855
4856         * gdb/hppa-linux-nat.c
4857         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
4858         hppa_linux_nat_target::fetch_registers.
4859
4860 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4861
4862         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
4863         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
4864         (AARCH64_DWARF_SVE_FFR): Likewise.
4865         (AARCH64_DWARF_SVE_P0): Likewise.
4866         (AARCH64_DWARF_SVE_Z0): Likewise.
4867
4868 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4869
4870         * common/common-regcache.h (raw_compare): New function.
4871         * regcache.c (regcache::raw_compare): Likewise.
4872         * regcache.h (regcache::raw_compare): New declaration.
4873
4874 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4875
4876         * common/common-regcache.h (reg_buffer_common): New structure.
4877         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
4878         (reg_buffer::raw_supply): Likewise.
4879         (reg_buffer::raw_supply_integer): Likewise.
4880         (reg_buffer::raw_supply_zeroed): Likewise.
4881         (reg_buffer::raw_collect): Likewise.
4882         (reg_buffer::raw_collect_integer): Likewise.
4883         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
4884         (reg_buffer::raw_supply): Likewise.
4885         (reg_buffer::raw_supply_integer): Likewise.
4886         (reg_buffer::raw_supply_zeroed): Likewise.
4887         (reg_buffer::raw_collect): Likewise.
4888         (reg_buffer::raw_collect_integer): Likewise.
4889
4890 2018-06-10  Tom Tromey  <tom@tromey.com>
4891
4892         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
4893         (class remote_state) <stop_reply_queue>: Now std::vector.
4894         (remote_state::~remote_state)
4895         (remote_target::stop_reply_queue_length): Update.
4896         (struct queue_iter_param, remove_child_of_pending_fork)
4897         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
4898         (check_pending_event_prevents_wildcard_vcont_callback)
4899         (remove_stop_reply_for_inferior)
4900         (remove_stop_reply_of_remote_state)
4901         (remote_notif_remove_once_on_match)
4902         (stop_reply_match_ptid_and_ws)
4903         (remote_kill_child_of_pending_fork): Remove.
4904         (remote_target::remove_new_fork_children)
4905         (remote_target::check_pending_events_prevent_wildcard_vcont)
4906         (remote_target::discard_pending_stop_replies)
4907         (remote_target::discard_pending_stop_replies_in_queue)
4908         (remote_target::remote_notif_remove_queued_reply)
4909         (remote_target::queued_stop_reply)
4910         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
4911         (remote_target::wait, remote_target::kill_new_fork_children)
4912         (remote_target::async): Update.
4913
4914 2018-06-10  Tom Tromey  <tom@tromey.com>
4915
4916         * record-full.c (record_full_arch_list_cleanups): Remove.
4917         (record_full_message): Use try/catch.
4918         (record_full_wait_cleanups): Remove.
4919         (record_full_wait_1): Use try/catch.
4920         (record_full_restore): Likewise.
4921
4922 2018-06-10  Tom Tromey  <tom@tromey.com>
4923
4924         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
4925         declare VEC.  Add constructor.
4926         <in_target_beneath>: Now bool.
4927         (record_full_breakpoints): Now a std::vector, static.
4928         (record_full_sync_record_breakpoints)
4929         (record_full_init_record_breakpoints)
4930         (record_full_target::insert_breakpoint)
4931         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
4932
4933 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
4934
4935         * dwarf2read.c (process_cu_includes): Remove struct keyword.
4936         * serial.c (serial_interface_lookup): Remove struct keyword.
4937
4938 2018-06-10  Tom Tromey  <tom@tromey.com>
4939
4940         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
4941         method.
4942         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
4943         a method.
4944         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
4945         method.
4946         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
4947         "beneath" as a method.
4948         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
4949         Use "beneath" as a method.
4950
4951 2018-06-10  Tom Tromey  <tom@tromey.com>
4952
4953         * tracefile.c (struct trace_file_writer_deleter): New.
4954         <operator()>: Rename from trace_file_writer_xfree.
4955         (trace_file_writer_up): New typedef.
4956         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
4957
4958 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
4959
4960         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
4961         <m_registers, m_register_status>: Change type to
4962         std::unique_ptr.
4963         * regcache.c (reg_buffer::reg_buffer): Use new instead of
4964         XCNEWVEC.
4965
4966 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
4967
4968         * common/common-regcache.h (enum register_status): Add
4969         underlying type "signed char".
4970         * regcache.h (reg_buffer) <m_register_status>: Change type to
4971         register_status *.
4972         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
4973         register_status instead of signed char.
4974         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
4975         (reg_buffer::get_register_status): Remove cast.
4976         (readable_regcache::raw_read): Remove cast.
4977         (readable_regcache::cooked_read): Remove cast.
4978
4979 2018-06-09  Tom Tromey  <tom@tromey.com>
4980
4981         * source.c (reverse_search_command, forward_search_command): Use
4982         scoped_fd.
4983
4984 2018-06-09  Tom Tromey  <tom@tromey.com>
4985
4986         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
4987         (serial_ops_list): Now static, std::vector.
4988         (serial_interface_lookup, serial_add_interface): Update.
4989
4990 2018-06-09  Tom Tromey  <tom@tromey.com>
4991
4992         * dwarf2read.c (process_cu_includes): Update.
4993         (process_full_comp_unit): Update.
4994         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
4995         std::vector.
4996
4997 2018-06-08  Paul Koning  <paul_koning@dell.com>
4998
4999         PR gdb/23252
5000
5001         * python/python.c (do_start_initialization):
5002         Avoid call to internal Python API.
5003         (init__gdb_module): New function.
5004
5005 2018-06-08  Gary Benson <gbenson@redhat.com>
5006
5007         * linux-thread-db.c (valprint.h): New include.
5008         (struct check_thread_db_info): New structure.
5009         (check_thread_db_on_load, tdb_testinfo): New static globals.
5010         (check_thread_db, check_thread_db_callback): New functions.
5011         (try_thread_db_load_1): Run integrity checks if requested.
5012         (maintenance_check_libthread_db): New function.
5013         (_initialize_thread_db): Register "maint check libthread-db"
5014         and "maint set/show check-libthread-db".
5015         * NEWS: Mention the above new commands.
5016
5017 2018-06-08  Tom Tromey  <tom@tromey.com>
5018
5019         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
5020         now a method.
5021
5022 2018-06-08  Tom Tromey  <tom@tromey.com>
5023
5024         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
5025
5026 2018-06-08  Tom Tromey  <tom@tromey.com>
5027
5028         * common/btrace-common.h (struct btrace_data): Add constructor,
5029         destructor, move assignment operator.
5030         <empty, clear, fini>: New methods.
5031         <format>: Initialize.
5032         (btrace_data_init, btrace_data_fini, btrace_data_clear)
5033         (btrace_data_empty): Don't declare.
5034         * common/btrace-common.c (btrace_data_init): Remove.
5035         (btrace_data::fini): Rename from btrace_data_fini.
5036         (btrace_data::empty): Rename from btrace_data_empty.
5037         (btrace_data::clear): Rename from btrace_data_clear.  Return
5038         bool.
5039         * btrace.h (make_cleanup_btrace_data): Don't declare.
5040         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
5041         (parse_xml_btrace): Update.
5042         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
5043         (maint_btrace_clear_packet_history_cmd): Update.
5044
5045 2018-06-07  Pedro Alves  <palves@redhat.com>
5046
5047         * target.h (target_ops) <beneath>: Now a method.  All references
5048         updated.
5049         (class target_stack): New.
5050         * target.c (g_target_stack): New.
5051         (g_current_top_target): Delete.
5052         (current_top_target): Get the top target out of g_target_stack.
5053         (target_stack::push, target_stack::unpush): New.
5054         (push_target, unpush_target): Reimplement.
5055         (target_is_pushed): Reimplement in terms of g_target_stack.
5056         (target_ops::beneath, target_stack::find_beneath): New.
5057
5058 2018-06-07  Pedro Alves  <palves@redhat.com>
5059
5060         * target.h (find_target_beneath): Delete declaration.
5061         * target.c (find_target_beneath): Delete definition.
5062         * aix-thread.c: All callers of find_target_beneath adjusted to
5063         call target_ops::beneath instead.
5064         * bsd-uthread.c: Likewise.
5065         * linux-thread-db.c: Likewise.
5066         * ravenscar-thread.c: Likewise.
5067         * sol-thread.c: Likewise.
5068         * spu-multiarch.c: Likewise.
5069
5070 2018-06-07  Pedro Alves  <palves@redhat.com>
5071
5072         * target.h (target_ops) <beneath>: Now a method.  All references
5073         updated.
5074         (target_ops) <m_beneath>: New.
5075         * target.c (target_ops::beneath): New.
5076         * corelow.c: Adjust all references to target_ops::beneath.
5077         * linux-thread-db.c: Likewise.
5078         * make-target-delegates: Likewise.
5079         * record-btrace.c: Likewise.
5080         * record-full.c: Likewise.
5081         * remote.c: Likewise.
5082         * target.c: Likewise.
5083         * target-delegates.c: Regenerate.
5084
5085 2018-06-07  Pedro Alves  <palves@redhat.com>
5086
5087         * target.h (target_stack): Delete.
5088         (current_top_target): Declare function.
5089         * target.c (target_stack): Delete.
5090         (g_current_top_target): New.
5091         (current_top_target): New function.
5092         * auxv.c: Use current_top_target instead of target_stack
5093         throughout.
5094         * avr-tdep.c: Likewise.
5095         * breakpoint.c: Likewise.
5096         * corefile.c: Likewise.
5097         * elfread.c: Likewise.
5098         * eval.c: Likewise.
5099         * exceptions.c: Likewise.
5100         * frame.c: Likewise.
5101         * gdbarch-selftests.c: Likewise.
5102         * gnu-v3-abi.c: Likewise.
5103         * ia64-tdep.c: Likewise.
5104         * ia64-vms-tdep.c: Likewise.
5105         * infcall.c: Likewise.
5106         * infcmd.c: Likewise.
5107         * infrun.c: Likewise.
5108         * linespec.c: Likewise.
5109         * linux-tdep.c: Likewise.
5110         * minsyms.c: Likewise.
5111         * ppc-linux-nat.c: Likewise.
5112         * ppc-linux-tdep.c: Likewise.
5113         * procfs.c: Likewise.
5114         * regcache.c: Likewise.
5115         * remote.c: Likewise.
5116         * rs6000-tdep.c: Likewise.
5117         * s390-linux-nat.c: Likewise.
5118         * s390-tdep.c: Likewise.
5119         * solib-aix.c: Likewise.
5120         * solib-darwin.c: Likewise.
5121         * solib-dsbt.c: Likewise.
5122         * solib-spu.c: Likewise.
5123         * solib-svr4.c: Likewise.
5124         * solib-target.c: Likewise.
5125         * sparc-tdep.c: Likewise.
5126         * sparc64-tdep.c: Likewise.
5127         * spu-tdep.c: Likewise.
5128         * symfile.c: Likewise.
5129         * symtab.c: Likewise.
5130         * target-descriptions.c: Likewise.
5131         * target-memory.c: Likewise.
5132         * target.c: Likewise.
5133         * target.h: Likewise.
5134         * tracefile-tfile.c: Likewise.
5135         * tracepoint.c: Likewise.
5136         * valops.c: Likewise.
5137         * valprint.c: Likewise.
5138         * value.c: Likewise.
5139         * windows-tdep.c: Likewise.
5140         * mi/mi-main.c: Likewise.
5141
5142 2018-06-07  Tom Tromey  <tom@tromey.com>
5143
5144         * valprint.h (build_address_symbolic): Declare.
5145         * printcmd.c (print_address_symbolic): Update.
5146         (build_address_symbolic): Change "name" and "filename" to
5147         std::string.
5148         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
5149         Update.
5150         * defs.h (build_address_symbolic): Remove declaration.
5151
5152 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
5153
5154         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
5155         (aarch64_vnv_type): Add function.
5156         (aarch64_pseudo_register_name): Add V regs for SVE.
5157         (aarch64_pseudo_register_type): Likewise.
5158         (aarch64_pseudo_register_reggroup_p): Likewise.
5159         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
5160         (aarch64_pseudo_read_value): Add V regs for SVE.
5161         (aarch64_pseudo_write_2): Use V0 offset for SVE
5162         (aarch64_pseudo_write): Add V regs for SVE.
5163         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
5164
5165 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
5166
5167         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
5168         (sve_vl_from_vq): Likewise.
5169
5170 2018-06-05  Tom Tromey  <tom@tromey.com>
5171
5172         * cli/cli-cmds.c (show_version): Update.
5173         * top.c (print_gdb_version): Add "interactive" parameter.
5174         Update.
5175         * main.c (captured_main_1): Update.
5176         * top.h (print_gdb_version): Add "interactive" parameter and a
5177         comment.
5178
5179 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
5180
5181         * common/enum-flags.h: Add trailing semicolon to example in
5182         comment.
5183
5184 2018-06-05  Tom Tromey  <tom@tromey.com>
5185
5186         PR cli/12326:
5187         * NEWS: Add entry about pager.
5188         * utils.c (pagination_disabled_for_command): New global.
5189         (prompt_for_continue): Allow "c" response to prompt.
5190         (reinitialize_more_filter): Clear
5191         pagination_disabled_for_command.
5192         (fputs_maybe_filtered): Check pagination_disabled_for_command.
5193
5194 2018-06-04  Tom Tromey  <tom@tromey.com>
5195
5196         * ada-lang.h (ada_lookup_symbol_list): Update.
5197         * ada-lang.c (resolve_subexp): Update.
5198         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
5199         parameter.
5200         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
5201         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
5202         results parameter to std::vector.
5203         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
5204         Update.
5205         * ada-exp.y (block_lookup): Update.
5206         (select_possible_type_sym): Change type of syms.  Remove nsyms
5207         parameter.
5208         (write_var_or_type, write_name_assoc): Update.
5209
5210 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
5211
5212         * windows-nat.c (windows_nat_target::xfer_partial): Return
5213         TARGET_XFER_E_IO if we need to delegate to the target beneath
5214         but BENEATH is NULL.
5215
5216 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
5217
5218         * Makefile.in (config.status): Add configure.nat as a
5219         dependency.
5220
5221 2018-06-04  Tom Tromey  <tom@tromey.com>
5222
5223         * cp-name-parser.y (cpname_state): Add method declarations.
5224         (HANDLE_QUAL): Update.
5225         (cpname_state::d_grab, cpname_state::fill_comp)
5226         (cpname_state::make_operator, cpname_state::make_dtor)
5227         (cpname_state::make_builtin_type, cpname_state::make_name)
5228         (cpname_state::d_qualify, cpname_state::d_int_type)
5229         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
5230         (%union): Move earlier.
5231
5232 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5233
5234         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
5235
5236 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5237
5238         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
5239         (aarch64_pseudo_write_1): Likewise.
5240         (aarch64_pseudo_read_value): Use helper.
5241         (aarch64_pseudo_write): Likewise.
5242
5243 2018-06-04  Pedro Alves  <palves@redhat.com>
5244
5245         * darwin-nat.c (darwin_ops): Delete.
5246         (darwin_attach_pid): Use get_native_target.
5247
5248 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5249
5250         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
5251         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
5252
5253 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5254
5255         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
5256         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
5257         (aarch64_gdbarch_init): Check for SVE.
5258         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
5259
5260 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5261
5262         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
5263         * aarch64-tdep.h (aarch64_read_description): Likewise.
5264         * arch/aarch64.c (aarch64_create_target_description): Likewise.
5265         * arch/aarch64.h (aarch64_create_target_description): Likewise.
5266         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
5267         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
5268         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
5269
5270 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
5271
5272         * value.c (value_fetch_lazy_bitfield): New.
5273         (value_fetch_lazy_memory): New.
5274         (value_fetch_lazy_register): New.
5275         (value_fetch_lazy): Factor out to smaller functions.
5276
5277 2018-06-01  Tom Tromey  <tom@tromey.com>
5278
5279         * cp-name-parser.y (backslashable, represented): Now const.
5280
5281 2018-06-01  Tom Tromey  <tom@tromey.com>
5282
5283         * cp-name-parser.y: Include parser-defs.h.
5284         (parser_fprintf): Remove declaration.
5285
5286 2018-06-01  Tom Tromey  <tom@tromey.com>
5287
5288         * cp-name-parser.y: Use %pure-parser, %lex-param, and
5289         %parse-param.
5290         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
5291         (global_result): Remove globals.
5292         (struct cpname_state): New.
5293         (yyparse): Don't declare.
5294         (yylex, yyerror): Move declarations after %union.
5295         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
5296         (make_name): Add state parameter.
5297         Update all callers.
5298         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
5299         parameter.
5300         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
5301         Update.
5302         (yylex): Add lvalp, state parameters.
5303         (yyerror): Add state parameter.
5304         (cp_demangled_name_to_comp): Update.
5305
5306 2018-06-01  Tom Tromey  <tom@tromey.com>
5307
5308         * cp-name-parser.y (parser_fprintf): Declare.
5309         (GDB_YY_REMAP_PREFIX): Define.
5310         Include yy-remap.h.  Don't redefine yy* identifiers.
5311
5312 2018-06-01  Tom Tromey  <tom@tromey.com>
5313
5314         * python/py-type.c (typy_legacy_template_argument): Update.
5315         * cp-support.h (cp_demangled_name_to_comp): Update.
5316         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
5317         parameter to be a "std::string *".
5318         (main): Update.
5319
5320 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
5321
5322         * ada-lex.l: Include "diagnostics.h" instead of
5323         "common/diagnostics.h".
5324         * unittests/environ-selftests.c: Likewise.
5325         * common/diagnostics.h: Moved to ../include.
5326
5327 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
5328
5329         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
5330         to language_mode_manual while calling breakpoint_re_set_one.
5331
5332 2018-06-01  Tom Tromey  <tom@tromey.com>
5333
5334         * valops.c (value_cast_structs, destructor_name_p): Update.
5335         * symtab.c (gdb_mangle_name): Update.
5336         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
5337         Update.
5338         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
5339         (pascal_object_print_value_fields, pascal_object_print_value):
5340         Update.
5341         * p-typeprint.c (pascal_type_print_derivation_info): Update.
5342         * linespec.c (find_methods): Update.
5343         * gdbtypes.h (type_name_no_tag): Remove.
5344         (type_name_or_error): Rename from type_name_no_tag_or_error.
5345         * gdbtypes.c (type_name_no_tag): Remove.
5346         (type_name_or_error): Rename from type_name_no_tag_or_error.
5347         (lookup_struct_elt_type, check_typedef): Update.
5348         * expprint.c (print_subexp_standard): Update.
5349         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
5350         * d-namespace.c (d_lookup_nested_symbol): Update.
5351         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
5352         (cp_print_class_member): Update.
5353         * cp-namespace.c (cp_lookup_nested_symbol): Update.
5354         * completer.c (add_struct_fields): Update.
5355         * c-typeprint.c (cp_type_print_derivation_info)
5356         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
5357         Update.
5358         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
5359         (ada_prefer_type, ada_is_exception_sym): Update.
5360
5361 2018-06-01  Tom Tromey  <tom@tromey.com>
5362
5363         * valops.c (enum_constant_from_type, value_namespace_elt)
5364         (value_maybe_namespace_elt): Update.
5365         * valarith.c (find_size_for_pointer_math): Update.
5366         * target-descriptions.c (make_gdb_type): Update.
5367         * symmisc.c (print_symbol): Update.
5368         * stabsread.c (define_symbol, read_type)
5369         (complain_about_struct_wipeout, add_undefined_type)
5370         (cleanup_undefined_types_1): Update.
5371         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
5372         (rust_range_type_p, val_print_struct, rust_print_struct_def)
5373         (rust_internal_print_type, rust_composite_type)
5374         (rust_evaluate_funcall, rust_evaluate_subexp)
5375         (rust_inclusive_range_type_p): Update.
5376         * python/py-type.c (typy_get_tag): Update.
5377         * p-typeprint.c (pascal_type_print_base): Update.
5378         * mdebugread.c (parse_symbol, parse_type): Update.
5379         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
5380         Update.
5381         * guile/scm-type.c (gdbscm_type_tag): Update.
5382         * go-lang.c (sixg_string_p): Update.
5383         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
5384         Update.
5385         * gdbtypes.h (struct main_type) <tag_name>: Remove.
5386         (TYPE_TAG_NAME): Remove.
5387         * gdbtypes.c (type_name_no_tag): Simplify.
5388         (check_typedef, check_types_equal, recursive_dump_type)
5389         (copy_type_recursive, arch_composite_type): Update.
5390         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
5391         in summary mode when needed.
5392         * eval.c (evaluate_funcall): Update.
5393         * dwarf2read.c (fixup_go_packaging, read_structure_type)
5394         (process_structure_scope, read_enumeration_type)
5395         (read_namespace_type, read_module_type, determine_prefix): Update.
5396         * cp-support.c (inspect_type): Update.
5397         * coffread.c (process_coff_symbol, decode_base_type): Update.
5398         * c-varobj.c (c_is_path_expr_parent): Update.
5399         * c-typeprint.c (c_type_print_base_struct_union): Update.
5400         (c_type_print_base_1): Update.  Print struct/class/union/enum in
5401         summary when using C language.
5402         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
5403         (gen_maybe_namespace_elt): Update.
5404         * ada-lang.c (ada_type_name): Simplify.
5405         (empty_record, ada_template_to_fixed_record_type_1)
5406         (template_to_static_fixed_type)
5407         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
5408
5409 2018-06-01  Tom Tromey  <tom@tromey.com>
5410
5411         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
5412         c_print_type.
5413         * c-typeprint.c (c_print_type_1): Add "language" parameter.
5414         (c_print_type): Update.
5415         (c_print_type): New overload.
5416         (c_type_print_varspec_prefix, c_type_print_args)
5417         (c_type_print_varspec_suffix, c_print_type_no_offsets)
5418         (c_type_print_base_struct_union, c_type_print_base_1)
5419         (cp_type_print_method_args): Add "language" parameter.
5420         (c_type_print_base): Update.
5421         * c-lang.h (c_print_type): Add new overload.
5422
5423 2018-06-01  Tom Tromey  <tom@tromey.com>
5424
5425         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
5426         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
5427
5428 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
5429
5430         * aarch64-tdep.c (aarch64_sve_register_names): New const
5431         var.
5432         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
5433         (AARCH64_SVE_Z_REGS_NUM): New define.
5434         (AARCH64_SVE_P_REGS_NUM): Likewise.
5435         (AARCH64_SVE_NUM_REGS): Likewise.
5436
5437 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
5438
5439         * nat/linux-ptrace.h [__alpha__]
5440         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
5441         definitions.
5442
5443 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
5444
5445         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
5446         the endianness selected.
5447         * NEWS: Document `set endian auto' mode operation update.
5448
5449 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
5450
5451         * Makefile.in: Add new header.
5452         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
5453         (sve_vl_from_vg): Likewise.
5454         (sve_vq_from_vl): Likewise.
5455         (sve_vl_from_vq): Likewise.
5456         (sve_vq_from_vg): Likewise.
5457         (sve_vg_from_vq): Likewise.
5458         * configure.nat: Add new c file.
5459         * nat/aarch64-sve-linux-ptrace.c: New file.
5460         * nat/aarch64-sve-linux-ptrace.h: New file.
5461
5462 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
5463
5464         * aarch64-linux-nat.c (aarch64_linux_read_description):
5465         Add parmeter zero.
5466         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
5467         Likewise.
5468         * aarch64-tdep.c (tdesc_aarch64_list): Add.
5469         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
5470         (aarch64_gdbarch_init): Add parmeter zero.
5471         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
5472         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
5473         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
5474         parmeter.
5475         * doc/gdb.texinfo: Describe SVE feature
5476         * features/aarch64-sve.c: New file.
5477
5478 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
5479
5480         PR gdb/23210
5481         * gdbarch.sh (significant_addr_bit): Default to zero when
5482         not set by target architecture.
5483         * gdbarch.c: Re-generated.
5484         * utils.c (address_significant): Update.
5485
5486 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
5487
5488         * stack.c (func_command): Remove trailing newline in call to error.
5489
5490 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5491
5492         * regcache.h (regcache_raw_collect): Remove, update callers to
5493         use regcache::raw_collect.
5494         * regcache.c (regcache_raw_collect): Remove.
5495
5496 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5497
5498         * regcache.h (regcache_raw_supply): Remove, update callers to
5499         use detached_regcache::raw_supply.
5500         * regcache.c (regcache_raw_supply): Remove.
5501
5502 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5503
5504         * regcache.h (regcache_cooked_write_part): Remove, update
5505         callers to use regcache::cooked_write_part.
5506         * regcache.c (regcache_cooked_write_part): Remove.
5507
5508 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5509
5510         * regcache.h (regcache_cooked_read_part): Remove, update callers
5511         to use readable_regcache::cooked_read_part.
5512         * regcache.c (regcache_cooked_read_part): Remove.
5513
5514 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5515
5516         * regcache.h (regcache_cooked_read_value): Remove, update
5517         callers to use readable_regcache::cooked_read_value.
5518         * regcache.c (regcache_cooked_read_value): Remove.
5519
5520 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5521
5522         * regcache.h (regcache_cooked_write): Remove, update callers to
5523         use regcache::cooked_write.
5524         * regcache.c (regcache_cooked_write): Remove.
5525
5526 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5527
5528         * regcache.h (regcache_invalidate): Remove, update callers to
5529         use detached_regcache::invalidate instead.
5530         * regcache.c (regcache_invalidate): Remove.
5531
5532 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5533
5534         * regcache.h (regcache_raw_write_part): Remove, update callers
5535         to use regcache::raw_write_part instead.
5536         * regcache.c (regcache_raw_write_part): Remove.
5537
5538 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5539
5540         * regcache.h (regcache_raw_read_part): Remove, update callers to
5541         use readable_regcache::raw_read_part instead.
5542         * regcache.c (regcache_raw_read_part): Remove.
5543
5544 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5545
5546         * regcache.h (regcache_cooked_read): Remove, update callers to
5547         use readable_regcache::cooked_read instead.
5548         * regcache.c (regcache_cooked_read): Remove.
5549
5550 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5551
5552         * regcache.h (regcache_raw_write): Remove, update callers to use
5553         regcache::raw_write instead.
5554         * regcache.c (regcache_raw_write): Remove.
5555
5556 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5557
5558         * regcache.h (regcache_raw_read): Remove, update callers to use
5559         readable_regcache::raw_read instead.
5560         * regcache.c (regcache_raw_read): Remove.
5561
5562 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5563
5564         * regcache.h (regcache_raw_update): Remove, update callers to
5565         use readable_regcache::raw_update instead.
5566         * regcache.c (regcache_raw_update): Remove.
5567
5568 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5569
5570         * regcache.h (regcache_register_status): Remove, update callers
5571         to use reg_buffer::get_register_status directly instead.
5572         * regcache.c (regcache_register_status): Remove.
5573
5574 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5575
5576         * regcache.h (regcache_get_ptid): Remove, update all callers to
5577         call regcache::ptid instead.
5578         * regcache.c (regcache_get_ptid): Remove.
5579
5580 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5581
5582         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
5583
5584 2018-05-30  Pedro Alves  <palves@redhat.com>
5585
5586         * common/common-exceptions.h (exception_rethrow): Use
5587         ATTRIBUTE_NORETURN.
5588
5589 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
5590
5591         * breakpoint.c (print_solib_event, check_status_catch_solib):
5592         Remove struct keyword in range-based for loops.
5593         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
5594         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
5595         Likewise.
5596         * linespec.c (find_superclass_methods, search_minsyms_for_name):
5597         Likewise.
5598         * symfile.c (addr_info_make_relative): Likewise.
5599         * thread.c (value_in_thread_stack_temporaries): Likewise.
5600
5601 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
5602
5603         PR gdb/16841
5604         * valops.c (value_struct_elt_for_reference): Call check_typedef on
5605         aggregate type to get its real type before accessing it.
5606
5607 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
5608
5609         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
5610         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
5611         * coff-pe-read.c (add_pe_forwarded_sym): Replace
5612         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
5613         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
5614         * jit.c (jit_breakpoint_re_set_internal): Likewise.
5615         * printcmd.c (info_address_command): Likewise.
5616
5617 2018-05-29  Tom Tromey  <tom@tromey.com>
5618
5619         * windows-nat.c (handle_exception): Update fall-through comment.
5620
5621 2018-05-29  Tom Tromey  <tom@tromey.com>
5622
5623         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
5624         (struct program_space) <added_solibs>: Now a std::vector.
5625         * breakpoint.c (print_solib_event): Update.
5626         (check_status_catch_solib): Update.
5627         * progspace.c (clear_program_space_solib_cache): Update.
5628         * solib.c (update_solib_list): Update.
5629
5630 2018-05-29  Tom Tromey  <tom@tromey.com>
5631
5632         * python/py-type.c (typy_richcompare): Update.
5633         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
5634         * gdbtypes.h (types_deeply_equal): Return bool.
5635         (types_equal): Likewise.
5636         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
5637         declare VEC.
5638         (check_types_equal): Change worklist to std::vector.  Return
5639         bool.
5640         (struct type_equality_entry): Add constructor.
5641         (compare_maybe_null_strings): Return bool.
5642         (check_types_worklist): Return bool.  Change worklist to
5643         std::vector.
5644         (types_deeply_equal): Use std::vector.
5645         (types_equal): Return bool.
5646         (compare_maybe_null_strings): Simplify.
5647
5648 2018-05-29  Tom Tromey  <tom@tromey.com>
5649
5650         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
5651
5652 2018-05-29  Tom Tromey  <tom@tromey.com>
5653
5654         * objc-lang.h: Don't include cp-support.h.
5655         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
5656         declare VEC.
5657
5658 2018-05-27  Tom Tromey  <tom@tromey.com>
5659
5660         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
5661
5662 2018-05-25  Tom Tromey  <tom@tromey.com>
5663
5664         * value.c (value::location): Initialize.
5665
5666 2018-05-25  Tom Tromey  <tom@tromey.com>
5667
5668         * dbxread.c (init_bincl_list): Remove.
5669         (bincl_list): Now a std::vector.
5670         (bincls_allocated, next_bincl): Remove.
5671         (free_bincl_list, do_free_bincl_list_cleanup)
5672         (make_cleanup_free_bincl_list): Remove.
5673         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
5674         unique_xmalloc_ptr.
5675         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
5676         (struct header_file_location): Add constructor.
5677         (add_bincl_to_list): Remove.
5678
5679 2018-05-25  Tom Tromey  <tom@tromey.com>
5680
5681         * tui/tui.c (tui_enable): Update.
5682         * mi/mi-interp.c (mi_interp::init): Update.
5683         * interps.h (class interp) <name>: New method.
5684         <m_name>: Rename from name.
5685         (~scoped_restore_interp): Update.
5686         * interps.c (interp::interp): Update.
5687         (interp_add, interp_set, interp_lookup_existing)
5688         (current_interp_named_p): Update.
5689
5690 2018-05-25  Tom Tromey  <tom@tromey.com>
5691
5692         * interps.c (interp_name): Remove.
5693         * mi/mi-interp.c (mi_interp::init): Update.
5694         * interps.h (interp_name): Remove.
5695         (~scoped_restore_interp): Update.
5696         * tui/tui.c (tui_enable): Update.
5697
5698 2018-05-25  Tom Tromey  <tom@tromey.com>
5699
5700         * utils.c (fputs_maybe_filtered): Update.
5701         * linespec.c (decode_line_full): Update.
5702         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
5703         (mi_print_breakpoint_for_event, mi_solib_loaded)
5704         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
5705         (mi_user_selected_context_changed): Update.
5706         * mi/mi-main.c (mi_execute_command): Update.
5707         * cli/cli-script.c (execute_control_command): Update.
5708         * python/python.c (execute_gdb_command): Update.
5709         * solib.c (info_sharedlibrary_command): Update.
5710         * interps.c (interp_ui_out): Remove.
5711         * interps.h (interp_ui_out): Remove.
5712
5713 2018-05-25  Tom Tromey  <tom@tromey.com>
5714
5715         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
5716         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
5717         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
5718
5719 2018-05-25  Tom Tromey  <tom@tromey.com>
5720
5721         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
5722         * interps.c (interp_exec): Use scoped_restore.
5723
5724 2018-05-25  Tom Tromey  <tom@tromey.com>
5725
5726         * remote.c (remote_target::remote_file_get): Use
5727         gdb::byte_vector.
5728         (remote_target::remote_file_put): Likewise.
5729
5730 2018-05-25  Tom Tromey  <tom@tromey.com>
5731
5732         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
5733         a std::string.
5734         (get_pe_section_index, add_pe_exported_sym): Update.
5735         (read_pe_exported_syms): Use gdb::def_vector.
5736
5737 2018-05-25  Tom Tromey  <tom@tromey.com>
5738
5739         * frame.c (remove_prev_frame): Remove.
5740         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
5741
5742 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
5743
5744         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
5745         Remove prototypes.
5746         * mips-linux-nat.c (supply_fpregset): Always call
5747         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
5748         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
5749         `mips_fill_fpregset'.
5750         * mips-linux-tdep.c (mips_supply_fpregset)
5751         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
5752         (mips_fill_fpregset_wrapper): Remove functions.
5753         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
5754         (mips_linux_fpregset): Remove variable.
5755         (mips_linux_iterate_over_regset_sections): Use
5756         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
5757         (mips_linux_o32_sigframe_init): Remove comment.
5758
5759 2018-05-25  Pedro Alves  <palves@redhat.com>
5760
5761         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
5762         (struct readahead_cache, struct packet_reg, struct
5763         remote_arch_state, class remote_state): Move higher up in the
5764         file.
5765         (remote_target::m_remote_state): Now an object instead of a pointer.
5766         (remote_target::get_remote_state): Adjust.
5767
5768 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
5769
5770         * stack.c (select_and_print_frame): Delete.
5771         (struct function_bounds): Move struct within function.
5772         (func_command): Most content moved into new function
5773         find_frame_for_function, use new function, print result, add
5774         function comment.
5775         (find_frame_for_function): New function, now returns a result.
5776
5777 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5778
5779         * stack.c (iterate_over_block_arg_vars): Fix comment.
5780         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
5781
5782 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
5783
5784         PR gdb/23203
5785         * frame.c
5786         (scoped_restore_selected_frame::scoped_restore_selected_frame):
5787         Define.
5788         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
5789         Define.
5790         * frame.h (class scoped_restore_selected_frame): New class.
5791         * stack.c (print_frame_local_vars): Remove catching and rethrowing
5792         of any exception, use scoped_restore_selected_frame to restore the
5793         frame instead.
5794
5795 2018-05-24  Pedro Alves  <palves@redhat.com>
5796
5797         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
5798         override.
5799
5800 2018-05-23  Tom Tromey  <tom@tromey.com>
5801
5802         * complaints.c (struct complaints): Remove.
5803         (symfile_complaint_book): Remove.
5804         (series): New global.
5805         (complaint_internal): Update.
5806         (clear_complaints): Update.
5807
5808 2018-05-23  Tom Tromey  <tom@tromey.com>
5809
5810         * complaints.c (counters): New global.
5811         (struct complain): Remove.
5812         (struct complaints) <root>: Remove.
5813         (complaint_sentinel): Remove.
5814         (symfile_complaint_book): Update.
5815         (find_complaint) Remove.
5816         (complaint_internal, clear_complaints): Update.
5817
5818 2018-05-23  Tom Tromey  <tom@tromey.com>
5819
5820         * complaints.c (struct complain) <file, line>: Remove.
5821         (find_complaint): Remove file, line parameters.
5822         (complaint_internal): Update.
5823
5824 2018-05-23  Tom Tromey  <tom@tromey.com>
5825
5826         * complaints.c (vcomplaint): Remove.
5827         (complaint_internal) Merge in contents of vcomplaint.
5828
5829 2018-05-23  Tom Tromey  <tom@tromey.com>
5830
5831         * complaints.c (struct complaints) <explanation>: Remove.
5832         (symfile_explanations): Remove.
5833         (symfile_complaint_book): Update.
5834         (vcomplaint): Update.
5835         (struct explanation): Remove.
5836
5837 2018-05-23  Tom Tromey  <tom@tromey.com>
5838
5839         * complaints.c (symfile_complaints): Remove.
5840         (complaint_internal): Remove "complaints" parameter.
5841         (clear_complaints, vcomplaint): Remove "c" parameter.
5842         (get_complaints): Remove.
5843         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
5844         (dwarf2_debug_line_missing_file_complaint)
5845         (dwarf2_debug_line_missing_end_sequence_complaint)
5846         (dwarf2_complex_location_expr_complaint)
5847         (dwarf2_const_value_length_mismatch_complaint)
5848         (dwarf2_section_buffer_overflow_complaint)
5849         (dwarf2_macro_malformed_definition_complaint)
5850         (dwarf2_invalid_attrib_class_complaint)
5851         (create_addrmap_from_index, dw2_symtab_iter_next)
5852         (dw2_expand_marked_cus)
5853         (dw2_debug_names_iterator::find_vec_in_debug_names)
5854         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
5855         (create_debug_type_hash_table, init_cutu_and_read_dies)
5856         (partial_die_parent_scope, add_partial_enumeration)
5857         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
5858         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
5859         (read_import_statement, read_file_scope, create_dwo_cu_reader)
5860         (create_cus_hash_table, create_dwp_hash_table)
5861         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
5862         (dwarf2_rnglists_process, dwarf2_ranges_process)
5863         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
5864         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
5865         (handle_struct_member_die, process_structure_scope)
5866         (read_array_type, read_common_block, read_module_type)
5867         (read_tag_pointer_type, read_typedef, read_base_type)
5868         (read_subrange_type, load_partial_dies, partial_die_info::read)
5869         (partial_die_info::read, partial_die_info::read)
5870         (partial_die_info::read, read_checked_initial_length_and_offset)
5871         (dwarf2_string_attr, read_formatted_entries)
5872         (dwarf_decode_line_header)
5873         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5874         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
5875         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
5876         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
5877         (get_signatured_type, get_DW_AT_signature_type)
5878         (decode_locdesc, file_file_name, consume_improper_spaces)
5879         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
5880         (dwarf_decode_macro_bytes, dwarf_decode_macros)
5881         (dwarf2_symbol_mark_computed, set_die_type)
5882         (read_attribute_value): Update.
5883         * stap-probe.c (handle_stap_probe, get_stap_base_address):
5884         Update.
5885         * dbxread.c (unknown_symtype_complaint)
5886         (lbrac_mismatch_complaint, repeated_header_complaint)
5887         (set_namestring, function_outside_compilation_unit_complaint)
5888         (read_dbx_symtab, process_one_symbol): Update.
5889         * gdbtypes.c (stub_noname_complaint): Update.
5890         * windows-nat.c (handle_unload_dll): Update.
5891         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
5892         (decode_base_type): Update.
5893         * xcoffread.c (bf_notfound_complaint, ef_complaint)
5894         (eb_complaint, record_include_begin, record_include_end)
5895         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
5896         (process_xcoff_symbol, read_symbol)
5897         (function_outside_compilation_unit_complaint)
5898         (scan_xcoff_symtab): Update.
5899         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
5900         * buildsym.c (finish_block_internal, make_blockvector)
5901         (end_symtab_get_static_block, augment_type_symtab): Update.
5902         * dtrace-probe.c (dtrace_process_dof)
5903         (dtrace_static_probe_ops::get_probes): Update.
5904         * complaints.h (struct complaint): Don't declare.
5905         (symfile_complaints): Remove.
5906         (complaint_internal): Remove "complaints" parameter.
5907         (complaint): Likewise.
5908         (clear_complaints): Likewise.
5909         * symfile.c (syms_from_objfile_1, finish_new_objfile)
5910         (reread_symbols): Update.
5911         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
5912         (dwarf2_frame_cache, decode_frame_entry): Update.
5913         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
5914         * objc-lang.c (lookup_objc_class, lookup_child_selector)
5915         (info_selectors_command): Update.
5916         * macrotab.c (macro_include, check_for_redefinition)
5917         (macro_undef): Update.
5918         * objfiles.c (filter_overlapping_sections): Update.
5919         * stabsread.c (invalid_cpp_abbrev_complaint)
5920         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
5921         (define_symbol, error_type, read_type, rs6000_builtin_type)
5922         (stabs_method_name_from_physname, read_member_functions)
5923         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
5924         (attach_fields_to_type, complain_about_struct_wipeout)
5925         (read_range_type, read_args, common_block_start)
5926         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
5927         Update.
5928         * mdebugread.c (index_complaint, unknown_ext_complaint)
5929         (basic_type_complaint, bad_tag_guess_complaint)
5930         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
5931         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
5932         (parse_procedure, parse_lines)
5933         (function_outside_compilation_unit_complaint)
5934         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
5935         (bad_tag_guess_complaint, reg_value_complaint): Update.
5936         * cp-support.c (demangled_name_complaint): Update.
5937         * macroscope.c (sal_macro_scope): Update.
5938         * dwarf-index-write.c (class debug_names): Update.
5939
5940 2018-05-23  Tom Tromey  <tom@tromey.com>
5941
5942         * complaints.c (clear_complaints): Remove "noisy" parameter.
5943         * complaints.h (clear_complaints): Update.
5944         * symfile.c (syms_from_objfile_1, finish_new_objfile)
5945         (reread_symbols): Update.
5946
5947 2018-05-23  Tom Tromey  <tom@tromey.com>
5948
5949         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
5950         SUBSEQUENT_MESSAGE.
5951         (vcomplaint, clear_complaints): Update.
5952         (symfile_explanations): Remove some messages.
5953
5954 2018-05-23  Tom Tromey  <tom@tromey.com>
5955
5956         * complaints.c (internal_complaint): Remove.
5957         * complaints.h (internal_complaint): Remove.
5958
5959 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
5960
5961         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
5962
5963 2018-05-22  Pedro Alves  <palves@redhat.com>
5964
5965         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
5966         (remote_fileio_badfd, remote_fileio_return_errno)
5967         (remote_fileio_return_success, remote_fileio_func_open)
5968         (remote_fileio_func_open, remote_fileio_func_close)
5969         (remote_fileio_func_read, remote_fileio_func_write)
5970         (remote_fileio_func_lseek, remote_fileio_func_rename)
5971         (remote_fileio_func_unlink, remote_fileio_func_stat)
5972         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
5973         (remote_fileio_func_isatty, remote_fileio_func_system): Add
5974         remote_target parameter.
5975         (remote_fio_func_map) <func>: Add remote_target parameter.
5976         (do_remote_fileio_request, remote_fileio_request):
5977         * remote-fileio.h (remote_fileio_request):
5978         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
5979         remote_target parameter.
5980         (remote_notif_process, handle_notification): Adjust to pass down
5981         the remote.
5982         (remote_notif_state_allocate): Add remote_target parameter.  Save
5983         it.
5984         * remote-notif.h (struct remote_target): Forward declare.
5985         (struct notif_client) <parse, ack, can_get_pending_events>: Add
5986         remote_target parameter.
5987         (struct remote_notif_state) <remote>: New field.
5988         (remote_notif_ack, remote_notif_parse): Add remote_target
5989         parameter.
5990         (remote_notif_state_allocate, remote_notif_state_allocate): Add
5991         remote_target parameter.
5992         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
5993         (threads_listing_context, rmt_thread_action, protocol_feature)
5994         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
5995         (packet_result, struct threads_listing_context, remote_state):
5996         Move definitions and declarations higher up.
5997         (remote_target) <~remote_target>: Declare.
5998         (remote_download_command_source, remote_file_put, remote_file_get)
5999         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
6000         (remote_hostio_pread_vFile, remote_hostio_send_command)
6001         (remote_hostio_set_filesystem, remote_hostio_open)
6002         (remote_hostio_close, remote_hostio_unlink, remote_state)
6003         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
6004         (get_memory_write_packet_size, get_memory_read_packet_size)
6005         (append_pending_thread_resumptions, remote_detach_1)
6006         (append_resumption, remote_resume_with_vcont)
6007         (add_current_inferior_and_thread, wait_ns, wait_as)
6008         (process_stop_reply, remote_notice_new_inferior)
6009         (process_initial_stop_replies, remote_add_thread)
6010         (btrace_sync_conf, remote_btrace_maybe_reopen)
6011         (remove_new_fork_children, kill_new_fork_children)
6012         (discard_pending_stop_replies, stop_reply_queue_length)
6013         (check_pending_events_prevent_wildcard_vcont)
6014         (discard_pending_stop_replies_in_queue, stop_reply)
6015         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
6016         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
6017         (remote_interrupt_as, remote_interrupt_ns)
6018         (remote_get_noisy_reply, remote_query_attached)
6019         (remote_add_inferior, remote_current_thread, get_current_thread)
6020         (set_thread, set_general_thread, set_continue_thread)
6021         (set_general_process, write_ptid)
6022         (remote_unpack_thread_info_response, remote_get_threadinfo)
6023         (parse_threadlist_response, remote_get_threadlist)
6024         (remote_threadlist_iterator, remote_get_threads_with_ql)
6025         (remote_get_threads_with_qxfer)
6026         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
6027         (get_offsets, remote_check_symbols, remote_supported_packet)
6028         (remote_query_supported, remote_packet_size)
6029         (remote_serial_quit_handler, remote_detach_pid)
6030         (remote_vcont_probe, remote_resume_with_hc)
6031         (send_interrupt_sequence, interrupt_query)
6032         (remote_notif_get_pending_events, fetch_register_using_p)
6033         (send_g_packet, process_g_packet, fetch_registers_using_g)
6034         (store_register_using_P, store_registers_using_G)
6035         (set_remote_traceframe, check_binary_download)
6036         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
6037         (remote_xfer_live_readonly_partial, remote_read_bytes)
6038         (remote_send_printf, remote_flash_write, readchar)
6039         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
6040         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
6041         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
6042         (extended_remote_disable_randomization, extended_remote_run)
6043         (send_environment_packet, extended_remote_environment_support)
6044         (extended_remote_set_inferior_cwd, remote_write_qxfer)
6045         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
6046         (packet_command): Now methods of ...
6047         (remote_target): ... this class.
6048         (m_remote_state) <remote_target>: New field.
6049         (struct remote_state) <stop_reply_queue,
6050         remote_async_inferior_event_token, wait_forever_enabled_p>: New
6051         fields.
6052         (remote_state::remote_state): Allocate stop_reply_queue.
6053         (remote_state): Delete global.
6054         (get_remote_state_raw): Delete.
6055         (remote_target::get_remote_state): Allocate m_remote_state on
6056         demand.
6057         (get_current_remote_target): New.
6058         (remote_ops, extended_remote_ops): Delete.
6059         (wait_forever_enabled_p, remote_async_inferior_event_token):
6060         Delete, moved to struct remote_state.
6061         (remote_target::close): Delete self.  Destruction bits split to
6062         ...
6063         (remote_target::~remote_target): ... this.
6064         (show_memory_packet_size): Adjust to use
6065         get_current_remote_target.
6066         (struct protocol_feature) <func>: Add remote_target parameter.
6067         All callers adjusted.
6068         (curr_quit_handler_target): New.
6069         (remote_serial_quit_handler): Reimplement.
6070         (remote_target::open_1): Adjust to use get_current_remote_target.
6071         Heap-allocate remote_target/extended_remote_target instances.
6072         (vcont_builder::vcont_builder): Add remote_target parameter, and
6073         save it in m_remote.  All callers adjusted.
6074         (vcont_builder::m_remote): New field.
6075         (vcont_builder::restart, vcont_builder::flush)
6076         (vcont_builder::push_action): Use it.
6077         (remote_target::commit_resume): Use it.
6078         (struct queue_iter_param) <remote>: New field.
6079         (remote_target::remove_new_fork_children): Fill in 'remote' field.
6080         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
6081         (check_pending_event_prevents_wildcard_vcont_callback)
6082         (remote_target::check_pending_events_prevent_wildcard_vcont)
6083         (remote_target::discard_pending_stop_replies)
6084         (remote_target::discard_pending_stop_replies_in_queue)
6085         (remote_target::remote_notif_remove_queued_reply): Fill in
6086         'remote' field.
6087         (remote_notif_get_pending_events): New.
6088         (remote_target::readchar, remote_target::remote_serial_write):
6089         Save/restore curr_quit_handler_target.
6090         (putpkt): New.
6091         (kill_new_fork_children): Fill in 'remote' field.
6092         (packet_command): Use get_current_remote_target, defer to
6093         remote_target method of same name.
6094         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
6095         parameter, and save it in m_remote.  All callers adjusted.
6096         (scoped_remote_fd::release): Use m_remote.
6097         (scoped_remote_fd::m_remote): New field.
6098         (remote_file_put, remote_file_get, remote_file_delete): Use
6099         get_current_remote_target, defer to remote_target method of same
6100         name.
6101         (remote_btrace_reset): Add remote_state paremeter.  Update all
6102         callers.
6103         (remote_async_inferior_event_handler). Pass down 'data'.
6104         (remote_new_objfile): Use get_current_remote_target.
6105         (remote_target::vcont_r_supported): New.
6106         (set_range_stepping): Use get_current_remote_target and
6107         remote_target::vcont_r_supported.
6108         (_initialize_remote): Don't allocate 'remote_state' and
6109         'stop_reply_queue' globals.
6110         * remote.h (struct remote_target): Forward declare.
6111         (getpkt, putpkt, remote_notif_get_pending_events): Add
6112         'remote_target' parameter.
6113
6114 2018-05-22  Pedro Alves  <palves@redhat.com>
6115
6116         * remote.c (vcont_builder): Now a class.  Make all data members
6117         private.
6118         (vcont_builder) <vcont_builder, restart, flush, push_action>:
6119         Declare methods.
6120         (vcont_builder_restart): Rename to ...
6121         (vcont_builder::restart): ... this.
6122         (vcont_builder_flush): Rename to ...
6123         (vcont_builder::flush): ... this.
6124         (vcont_builder_push_action): Rename to ...
6125         (vcont_builder::push_action): ... this.
6126         (remote_target::commit_resume): Adjust.
6127
6128 2018-05-22  Pedro Alves  <palves@redhat.com>
6129
6130         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
6131         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
6132         (get_fixed_memory_packet_size): New.
6133         (get_memory_packet_size): Use it.
6134         (set_memory_packet_size): Don't override the config size with
6135         DEFAULT_MAX_MEMORY_PACKET_SIZE.
6136         (show_memory_packet_size): Use get_fixed_memory_packet_size.
6137         Don't refer to get_memory_packet_size if not connected to a remote
6138         target.  Show "(default)" if configured size is 0.
6139
6140 2018-05-22  Pedro Alves  <palves@redhat.com>
6141
6142         * remote.c (remote_target::mourn_inferior): Move
6143         discard_pending_stop_replies call here from ...
6144         (_initialize_remote): ... here.
6145
6146 2018-05-22  Pedro Alves  <palves@redhat.com>
6147
6148         * remote.c (compare_section_command): Remove set_general_process
6149         call.
6150
6151 2018-05-22  Pedro Alves  <palves@redhat.com>
6152
6153         * remote.c (struct packet_reg, struct remote_arch_state):
6154         Move higher up in the file.
6155         (remote_state) <m_arch_states>: Store remote_arch_state values
6156         instead of remote_arch_state pointers.
6157         (remote_state::get_remote_arch_state): Adjust.
6158
6159 2018-05-22  Pedro Alves  <palves@redhat.com>
6160
6161         * remote.c: Include <unordered_map>.
6162         (remote_state): Now a class.
6163         (remote_state) <get_remote_arch_state>: Declare method.
6164         <get_remote_arch_state>: New field.
6165         (remote_arch_state) <remote_arch_state>: Declare ctor.
6166         <regs>: Now a unique_ptr.
6167         (remote_gdbarch_data_handle): Delete.
6168         (get_remote_arch_state): Delete.
6169         (remote_state::get_remote_arch_state): New.
6170         (get_remote_state): Adjust to call remote_state's
6171         get_remote_arch_state method.
6172         (init_remote_state): Delete, bits factored out to ...
6173         (remote_arch_state::remote_arch_state): ... this new method.
6174         (get_remote_packet_size, get_memory_packet_size)
6175         (process_g_packet, remote_target::fetch_registers)
6176         (remote_target::prepare_to_store, store_registers_using_G)
6177         (remote_target::store_registers, remote_target::get_trace_status):
6178         Adjust to call remote_state's method.
6179         (_initialize_remote): Remove reference to
6180         remote_gdbarch_data_handle.
6181
6182 2018-05-22  Pedro Alves  <palves@redhat.com>
6183
6184         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
6185         pread>: New method declarations.
6186         (remote_target::open_1): Adjust.
6187         (readahead_cache_invalidate): Rename to ...
6188         (readahead_cache::invalidate): ... this, and adjust to be a class
6189         method.
6190         (readahead_cache_invalidate_fd): Rename to ...
6191         (readahead_cache::invalidate_fd): ... this, and adjust to be a
6192         class method.
6193         (remote_hostio_pwrite): Adjust.
6194         (remote_hostio_pread_from_cache): Rename to ...
6195         (readahead_cache::pread): ... this, and adjust to be a class
6196         method.
6197         (remote_hostio_close): Adjust.
6198
6199 2018-05-22  Pedro Alves  <palves@redhat.com>
6200
6201         * remote.c (remote_hostio_close_cleanup): Delete.
6202         (class scoped_remote_fd): New.
6203         (remote_file_put, remote_file_get): Use it.
6204
6205 2018-05-22  Pedro Alves  <palves@redhat.com>
6206
6207         (struct vCont_action_support): Use bool and initialize all fields.
6208         (struct readahead_cache): Initialize all fields.
6209         (remote_state): Use bool and initialize all fields.
6210         (remote_state::remote_state, remote_state::~remote_state): New.
6211         (new_remote_state): Delete.
6212         (_initialize_remote): Use new to allocate remote_state.
6213
6214 2018-05-22  Pedro Alves  <palves@redhat.com>
6215             張俊芝  <zjz@zjz.name>
6216
6217         PR gdb/22973
6218         * c-exp.y: Include "c-support.h".
6219         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
6220         of tolower.  Use c_ident_is_alpha to scan names.
6221         * c-lang.c: Include "c-support.h".
6222         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
6223         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
6224         * c-support.h: New file, with bits factored out from ...
6225         * cp-name-parser.y: ... this file.
6226         Include "c-support.h".
6227         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
6228         c-support.h and renamed.
6229         (symbol_end, yylex): Adjust.
6230
6231 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6232
6233         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
6234         parameter type to CORE_ADDR.
6235         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
6236         parameter type in declaration to CORE_ADDR.
6237         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
6238         target_auxv_search to get AT_HWCAP and use the result to get the
6239         target description.
6240         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
6241         to CORE_ADDR. Remove the cast of the return value to unsigned
6242         long. Fix error predicate of target_auxv_search.
6243         (ppc_linux_nat_target::read_description): Change the type of the
6244         hwcap variable to CORE_ADDR.
6245
6246 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6247
6248         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
6249         if the size of fpscr is larger than 32 bits.
6250
6251 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6252
6253         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
6254         (ppc32_linux_vsxregmap): New global.
6255         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
6256         regcache_supply_regset, and regcache_collect_regset.
6257         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
6258         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
6259         (fetch_vsx_register, store_vsx_register): Remove.
6260         (fetch_vsx_registers): Add regno parameter. Get regset using
6261         ppc_linux_vsxregset. Use regset to supply registers.
6262         (store_vsx_registers): Add regno parameter. Get regset using
6263         ppc_linux_vsxregset. Use regset to collect registers.
6264         (fetch_register): Call fetch_vsx_registers instead of
6265         fetch_vsx_register.
6266         (store_register): Call store_vsx_registers instead of
6267         store_vsx_register.
6268         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
6269         new regno parameter.
6270         (store_ppc_registers): Call store_vsx_registers with -1 for the
6271         new regno parameter.
6272         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
6273         (ppc_collect_vsxregset): Remove.
6274
6275 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6276
6277         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
6278         offset fields.
6279         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
6280         for vector register offset fields.
6281         (ppc64_fbsd_reg_offsets): Likewise.
6282         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
6283         to vector register offset fields.
6284         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
6285         to vector register offset fields.
6286         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
6287         vector register offset fields.
6288         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
6289         initializers for vector register offset fields.
6290         (rs6000_aix64_reg_offsets): Likewise.
6291         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
6292         (ppc_supply_vrregset): Remove.
6293         (ppc_collect_vrregset): Remove.
6294         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
6295         (ppc_linux_vrregset) : New function.
6296         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
6297         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
6298         (ppc32_linux_vrregset): Remove.
6299         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
6300         and use result instead of ppc32_linux_vrregset.
6301         (ppc32_linux_reg_offsets): Remove initializers for vector register
6302         offset fields.
6303         (ppc64_linux_reg_offsets): Likewise.
6304         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
6305         * ppc-linux-nat.c: Include regset.h.
6306         (gdb_vrregset_t): Adjust comment to account for little-endian
6307         mode.
6308         (supply_vrregset, fill_vrregset): Remove.
6309         (fetch_altivec_register, store_altivec_register): Remove.
6310         (fetch_altivec_registers): Add regno parameter. Get regset using
6311         ppc_linux_vrregset. Use regset to supply registers.
6312         (store_altivec_registers): Add regno parameter. Get regset using
6313         ppc_linux_vrregset. Use regset to collect registers.
6314         (fetch_register): Call fetch_altivec_registers instead of
6315         fetch_altivec_register.
6316         (store_register): Call store_altivec_registers instead of
6317         store_altivec_register.
6318         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
6319         the new regno parameter.
6320         (store_ppc_registers): Call store_altivec_registers with -1 for
6321         the new regno parameter.
6322
6323 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6324
6325         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
6326         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
6327         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
6328         (gdb_vrregset_t): Change array type size to
6329         PPC_LINUX_SIZEOF_VRREGSET.
6330         (gdb_vsxregset_t): Change array type size to
6331         PPC_LINUX_SIZEOF_VSXREGSET.
6332         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
6333         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
6334         PPC_LINUX_SIZEOF_VSXREGSET.
6335
6336 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6337
6338         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
6339         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
6340         nat/ppc-linux.c.
6341         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
6342         ppc_linux_target_wordsize with tid.
6343         (ppc_linux_nat_target::read_description): Call ppc_linux_target
6344         wordsize with tid.
6345         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
6346         (ppc64_64bit_inferior_p): Add static and inline specifiers.
6347         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
6348         tid parameter. Remove static specifier.
6349         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
6350         (ppc_linux_target_wordsize): New declaration.
6351
6352 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6353
6354         * arch/ppc-linux-common.c: New file.
6355         * arch/ppc-linux-common.h: New file.
6356         * arch/ppc-linux-tdesc.h: New file.
6357         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
6358         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
6359         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
6360         arch/ppc-linux-tdesc.h.
6361         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
6362         arch/ppc-linux-tdesc.h.
6363         (ppc_linux_nat_target::read_description): Remove target
6364         description matching code. Fill a ppc_linux_features struct and
6365         call ppc_linux_match_description with it. Move comment about ISA
6366         2.05 to ppc-linux-common.c.
6367         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
6368         arch/ppc-linux-tdesc.h.
6369         (ppc_linux_core_read_description): Remove target description
6370         matching code. Fill a ppc_linux_features struct and call
6371         ppc_linux_match_description with it.
6372         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
6373         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
6374         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
6375         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
6376         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
6377         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
6378         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
6379         (tdesc_powerpc_e500l): Remove.
6380
6381 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
6382
6383         * ada-lang.c (catch_assert_command): Pass empty string instead
6384         of NULL for excep_string argument.
6385
6386 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
6387
6388         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
6389         the width of the requested register exceeds the width of the
6390         `ptrace' data type.
6391
6392 2018-05-21  Tom Tromey  <tom@tromey.com>
6393
6394         * printcmd.c (output_command): Remove.
6395         (output_command_const): Rename to output_command.
6396         * valprint.h (output_command): Rename from output_command_const.
6397         * tracepoint.c (trace_dump_actions): Call output_command.
6398
6399 2018-05-21  Tom Tromey  <tom@tromey.com>
6400
6401         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
6402         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
6403         * ada-lang.h (create_ada_exception_catchpoint): Update.
6404         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
6405         std::string.
6406         (create_excep_cond_exprs, ~ada_catchpoint)
6407         (should_stop_exception, print_one_exception)
6408         (print_mention_exception, print_recreate_exception): Update.
6409         (ada_get_next_arg): Remove.
6410         (catch_ada_exception_command_split): Use std::string.  Change type
6411         of "excep_string", "cond_string".
6412         (catch_ada_exception_command): Update.
6413         (create_ada_exception_catchpoint): Change type of excep_string.
6414         (ada_exception_sal): Remove excep_string parameter.
6415         (~ada_catchpoint): Remove.
6416
6417 2018-05-21  Tom Tromey  <tom@tromey.com>
6418
6419         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
6420         cleanup.
6421
6422 2018-05-21  Tom Tromey  <tom@tromey.com>
6423
6424         * ada-lang.c (ada_exception_message_1, ada_exception_message):
6425         Return unique_xmalloc_ptr.
6426         (print_it_exception): Update.
6427
6428 2018-05-21  Tom Tromey  <tom@tromey.com>
6429
6430         * tracepoint.c (trace_dump_actions): Use std::string.
6431
6432 2018-05-21  Tom Tromey  <tom@tromey.com>
6433
6434         * symfile.c (reread_symbols): Use std::string for original_name.
6435
6436 2018-05-21  Tom Tromey  <tom@tromey.com>
6437
6438         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
6439         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
6440         constructor.
6441
6442 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
6443
6444         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
6445         instance to...
6446         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
6447         * objfiles.c (get_objfile_bfd_data): Allocate
6448         objfile_per_bfd_storage with obstack_new when allocating on
6449         obstack.
6450
6451 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
6452
6453         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
6454         OBSTACK_ZALLOC.
6455         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
6456         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
6457         * mdebugread.c (mdebug_build_psymtabs): Likewise.
6458         (add_pending): Likewise.
6459         (parse_symbol): Likewise.
6460         (parse_partial_symbols): Likewise.
6461         (psymtab_to_symtab_1): Likewise.
6462         (new_psymtab): Likewise.
6463         (elfmdebug_build_psymtabs): Likewise.
6464         * minsyms.c (terminate_minimal_symbol_table): Likewise.
6465         * objfiles.c (get_objfile_bfd_data): Likewise.
6466         (objfile_register_static_link): Likewise.
6467         * psymtab.c (allocate_psymtab): Likewise.
6468         * stabsread.c (read_member_functions): Likewise.
6469         * xcoffread.c (xcoff_end_psymtab): Likewise.
6470
6471 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
6472
6473         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
6474         compiler supports std::is_trivially_constructible.
6475         * common/poison.h: Include obstack.h.
6476         (IsMallocable): Define to is_trivially_constructible if the
6477         compiler supports it, define to true_type otherwise.
6478         (xobnew): New.
6479         (XOBNEW): Redefine.
6480         (xobnewvec): New.
6481         (XOBNEWVEC): Redefine.
6482         * gdb_obstack.h (obstack_zalloc): New.
6483         (OBSTACK_ZALLOC): Redefine.
6484         (obstack_calloc): New.
6485         (OBSTACK_CALLOC): Redefine.
6486         (obstack_new): New.
6487         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
6488         (gdbarch_obstack): New declaration in gdbarch.h, definition in
6489         gdbarch.c.
6490         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
6491         obstack_calloc/obstack_zalloc.
6492         (gdbarch_obstack_zalloc): Remove.
6493         * target-descriptions.c (tdesc_data_init): Use obstack_new.
6494
6495 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6496
6497         * stack.c (backtrace_command_1): Remove useless variable int i.
6498
6499 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6500
6501         * stack.c (print_frame_info): Fix comment.
6502
6503 2018-05-18  Tom Tromey  <tom@tromey.com>
6504
6505         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
6506         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
6507         (~dwarf2_per_objfile): Update
6508         (dwarf2_get_dwz_file): Use new.
6509         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
6510         unique_ptr.
6511
6512 2018-05-18  Tom Tromey  <tom@tromey.com>
6513
6514         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
6515         unique_ptr.
6516         * dwarf2read.c (struct dwp_file): Add constructor and
6517         initializers.
6518         (open_and_init_dwp_file): Return a unique_ptr.
6519         (dwarf2_per_objfile, create_dwp_hash_table)
6520         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
6521         (lookup_dwo_unit_in_dwp): Update.
6522         (open_and_init_dwp_file, get_dwp_file): Update.
6523
6524 2018-05-18  Tom Tromey  <tom@tromey.com>
6525
6526         * dwarf2read.c (dwarf2_per_objfile): Update.
6527         (struct mapped_index): Add initializers.
6528         (dwarf2_read_index): Use new.
6529         (dw2_symtab_iter_init): Update.
6530         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
6531         unique_ptr.
6532
6533 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
6534
6535         * dwarf2read.c (mapped_index) <total_size>: Remove.
6536
6537 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
6538
6539         * unittests/format_pieces-selftests.c (test_format_specifier):
6540         Add ARI comments.
6541
6542 2018-05-18  Tom Tromey  <tom@tromey.com>
6543
6544         * c-typeprint.c (maybe_print_hole): New function.
6545         (c_print_type_struct_field_offset): Update.
6546         (c_type_print_base_struct_union): Call maybe_print_hole.
6547
6548 2018-05-17  Keith Seitz  <keiths@redhat.com>
6549
6550         * breakpoint.c (build_bpstat_chain): New function, moved from
6551         bpstat_stop_status.
6552         (bpstat_stop_status): Add optional parameter, `stop_chain'.
6553         If no stop chain is passed, call build_bpstat_chain to build it.
6554         * breakpoint.h (build_bpstat_chain): Declare.
6555         (bpstat_stop_status): Move documentation here from breakpoint.c.
6556         * infrun.c (handle_signal_stop): Before eliding inlined frames,
6557         build the stop chain and pass it to skip_inline_frames.
6558         Pass this stop chain to bpstat_stop_status.
6559         * inline-frame.c: Include breakpoint.h.
6560         (stopped_by_user_bp_inline_frame): New function.
6561         (skip_inline_frames): Add parameter `stop_chain'.
6562         Move documention to inline-frame.h.
6563         If non-NULL, use stopped_by_user_bp_inline_frame to determine
6564         whether the frame should be elided.
6565         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
6566         Add moved documentation and update for new parameter.
6567
6568 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
6569
6570         PR cli/14975
6571         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6572         unittests/format_pieces-selftests.c.
6573         * common/format.h (format_piece) <operator==>: New.
6574         (format_pieces) <operator[]>: Remove.
6575         * common/format.c (format_pieces::format_pieces): Handle \e.
6576         * unittests/format_pieces-selftests.c: New.
6577
6578 2018-05-17  Tom Tromey  <tom@tromey.com>
6579
6580         PR symtab/23010:
6581         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
6582         (dw2_instantiate_symtab): Add skip_partial parameter.
6583         (dw2_find_last_source_symtab, dw2_map_expand_apply)
6584         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
6585         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
6586         (dw2_expand_symtabs_matching_one)
6587         (dw2_find_pc_sect_compunit_symtab)
6588         (dw2_debug_names_lookup_symbol)
6589         (dw2_debug_names_expand_symtabs_for_function): Update.
6590         (init_cutu_and_read_dies): Add skip_partial parameter.
6591         (process_psymtab_comp_unit, build_type_psymtabs_1)
6592         (process_skeletonless_type_unit, load_partial_comp_unit)
6593         (psymtab_to_symtab_1): Update.
6594         (load_full_comp_unit): Add skip_partial parameter.
6595         (process_imported_unit_die, dwarf2_read_addr_index)
6596         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
6597         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
6598         (read_signatured_type): Update.
6599
6600 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
6601
6602         * value.c (release_value): Remove unused variable.
6603         (record_latest_value): Likewise.
6604         (access_value_history): Likewise.
6605         (preserve_values): Likewise.
6606
6607 2018-05-17  Tom Tromey  <tom@tromey.com>
6608
6609         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
6610         Initialize.
6611
6612 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
6613
6614         PR gdb/22286
6615         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
6616         Also handle registers whose width is not a multiple of
6617         PTRACE_TYPE_RET.
6618         (linux_nat_trad_target::store_register): Likewise.
6619
6620 2018-05-16  Tom Tromey  <tom@tromey.com>
6621
6622         * gdbcore.h (core_bfd): Redefine.
6623         * corelow.c (core_target::close): Update.
6624         (core_target_open): Update.
6625         * progspace.h (struct program_space) <cbfd>: Now a
6626         gdb_bfd_ref_ptr.
6627
6628 2018-05-16  Tom Tromey  <tom@tromey.com>
6629
6630         PR cli/19551:
6631         * symfile-add-flags.h (enum symfile_add_flags)
6632         <SYMFILE_NOT_FILENAME>: New constant.
6633         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
6634         objfile name from BFD.
6635         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
6636         * minidebug.c (find_separate_debug_file_in_section): Put
6637         ".gnu_debugdata" into BFD's file name.
6638
6639 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
6640
6641         * regcache.c (regcache_read_ftype, regcache_write_ftype):
6642         Remove.
6643
6644 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
6645
6646         PR binutils/21446
6647         * aarch64-tdep.c (aarch64_analyze_prologue,
6648         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
6649         Indicate not interested in errors.
6650
6651 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
6652
6653         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
6654         Supply the MIPS_ZERO_REGNUM register.
6655
6656 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
6657
6658         * mips-tdep.c (mask_address_var): Make variable static.
6659
6660 2018-05-14  Tom Tromey  <tom@tromey.com>
6661
6662         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
6663
6664 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
6665
6666         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
6667         FXSAVE_ADDR for the mxcsr register.
6668
6669 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
6670
6671         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
6672
6673 2018-05-11  Pedro Alves  <palves@redhat.com>
6674
6675         * corelow.c (core_target) <core_target>: No longer inline.
6676         Initialize m_core_gdbarch, m_core_vec and build the section table
6677         here.
6678         <~core_target>: New.
6679         <core_gdbarch, get_core_register_section>: New methods.
6680         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
6681         factored out from ...
6682         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
6683         (core_ops): Delete.
6684         (sniff_core_bfd): Add gdbarch parameter.
6685         (core_close): Delete, merged into ...
6686         (core_target::close): ... here.  Delete self.
6687         (core_close_cleanup): Delete.
6688         (core_target_open): Allocate a core_target on the heap.  Use a
6689         unique_ptr instead of a cleanup.  Bits moved into the core_target
6690         ctor.  Adjust to use core_target methods instead of globals.
6691         (get_core_register_section): Rename to ...
6692         (core_target::get_core_register_section): ... this and adjust.
6693         (struct get_core_registers_cb_data): New.
6694         (get_core_registers_cb): Use it.  Use bool.
6695         (core_target::fetch_registers, core_target::files_info)
6696         (core_target::xfer_partial, core_target::read_description)
6697         (core_target::pid_to, core_target::thread_name): Adjust to
6698         reference class fields instead of globals.
6699         * target.h (struct target_ops_deleter, target_ops_up): New.
6700
6701 2018-05-11  Pedro Alves  <palves@redhat.com>
6702
6703         * corefile.c (core_file_command): Move to corelow.c.
6704         * corelow.c (the_core_target): Delete.
6705         (core_file_command): Moved from corefile.c.  Check exec_bfd
6706         instead of the_core_target.  Use target_detach instead of calling
6707         into the_core_target directly.
6708         (maybe_say_no_core_file_now): New.
6709         (core_target::detach): Use it.
6710         (_initialize_corelow): Remove references to the_core_target.
6711         * gdbcore.h (the_core_target): Delete.
6712
6713 2018-05-11  Tom Tromey  <tromey@redhat.com>
6714             Pedro Alves  <palves@redhat.com>
6715
6716         * corefile.c (core_bfd): Remove.
6717         * gdbcore.h (core_bfd): Now a macro.
6718         * progspace.h (struct program_space) <cbfd>: New field.
6719
6720 2018-05-11  Tom Tromey  <tom@tromey.com>
6721
6722         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
6723         gdb::def_vector.
6724
6725 2018-05-10  Tom Tromey  <tom@tromey.com>
6726
6727         * configure: Rebuild.
6728         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
6729
6730 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
6731
6732         PR server/23158:
6733         * regformats/regdat.sh: Adjust script, following the addition
6734         of the new expedite_regs parameter to init_target_desc.
6735
6736 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
6737     
6738         PR gdb/23127
6739         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
6740         set_gdbarch_significant_addr_bit.
6741         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
6742         set_gdbarch_significant_addr_bit.
6743         * utils.c (address_significant): Update to sign extend addr.
6744
6745 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
6746
6747         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
6748         (xtensa_linux_init_abi): Limit tdep->num_regs by
6749         tdep->num_nopriv_regs.
6750         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
6751         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
6752         not initialized.
6753
6754 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
6755
6756         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
6757
6758 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
6759
6760         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
6761         (I387_MXCSR_INIT_VAL): New constant.
6762         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
6763         buffer if it was supplied by the inferior.
6764         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
6765         (i387_xsave_get_clear_bv): New function.
6766         (i387_supply_xsave): Only read x87 control registers from the
6767         xsave buffer if the feature is enabled, and the state will have
6768         been written, otherwise, provide a suitable default.
6769         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
6770         including x87 control registers.  Update control registers if they
6771         have changed from the default value, and mark features as enabled
6772         as required.
6773         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
6774
6775 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
6776
6777         * spu-tdep.c (info_spu_event_command): Fix output formatting.
6778
6779 2018-05-07  Tom Tromey  <tom@tromey.com>
6780
6781         * configure: Rebuild.
6782         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
6783
6784 2018-05-07  Tom Tromey  <tom@tromey.com>
6785
6786         PR tdep/20362:
6787         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
6788         bit.  Use correct value for VDIV.
6789
6790 2018-05-04  Tom Tromey  <tom@tromey.com>
6791
6792         * configure: Rebuild.
6793         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
6794
6795 2018-05-04  Tom Tromey  <tom@tromey.com>
6796
6797         * linux-record.c (record_linux_system_call) <case
6798         RECORD_SYS_RECVFROM>: Add "break".
6799
6800 2018-05-04  Tom Tromey  <tom@tromey.com>
6801
6802         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
6803         Add missing "break".
6804         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
6805         Add missing "break".
6806
6807 2018-05-04  Tom Tromey  <tom@tromey.com>
6808
6809         * rs6000-tdep.c (ppc_process_record_op4)
6810         (ppc_process_record_op63): Add fall-through comment.
6811
6812 2018-05-04  Tom Tromey  <tom@tromey.com>
6813
6814         * i386-tdep.c (i386_process_record): Add fall-through comment.
6815
6816 2018-05-04  Tom Tromey  <tom@tromey.com>
6817
6818         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
6819         comment.
6820
6821 2018-05-04  Tom Tromey  <tom@tromey.com>
6822
6823         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
6824         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
6825         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
6826         comment.
6827         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
6828         comment.
6829         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
6830         comment.
6831
6832 2018-05-04  Tom Tromey  <tom@tromey.com>
6833
6834         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
6835
6836 2018-05-04  Tom Tromey  <tom@tromey.com>
6837
6838         * s390-tdep.c (s390_process_record): Fix fall-through comments.
6839         * xcoffread.c (scan_xcoff_symtab): Move comment later.
6840         * symfile.c (section_is_mapped): Fix fall-through comment.
6841         * stabsread.c (define_symbol, read_member_functions): Fix
6842         fall-through comment.
6843         * s390-linux-tdep.c (s390_process_record): Fix fall-through
6844         comment.
6845         * remote.c (remote_wait_as): Fix fall-through comment.
6846         * p-exp.y (yylex): Fix fall-through comment.
6847         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
6848         comment.
6849         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
6850         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
6851         * jv-exp.y (yylex): Fix fall-through comment.
6852         * go-exp.y (lex_one_token): Fix fall-through comment.
6853         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
6854         fall-through comment.
6855         * f-exp.y (yylex): Fix fall-through comment.
6856         * dwarf2read.c (process_die): Fix fall-through comments.
6857         * dbxread.c (process_one_symbol): Fix fall-through comment.
6858         * d-exp.y (lex_one_token): Fix fall-through comment.
6859         * cp-name-parser.y (yylex): Fix fall-through comment.
6860         * coffread.c (coff_symtab_read): Fix fall-through comment.
6861         * c-exp.y (lex_one_token): Fix fall-through comment.
6862         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
6863         comment.
6864         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
6865         comment.
6866
6867 2018-05-04  Tom Tromey  <tom@tromey.com>
6868
6869         PR python/22730:
6870         * NEWS: Mention gdb.execute change.
6871         * gdbcmd.h (execute_control_command): Don't declare.
6872         * python/python.c (execute_gdb_command): Use read_command_lines_1,
6873         execute_control_commands, execute_control_commands_to_string.
6874         * cli/cli-script.h (execute_control_commands)
6875         (execute_control_commands_to_string): Declare.
6876         (execute_control_command): Add from_tty parameter.
6877         * cli/cli-script.c (execute_control_commands)
6878         (execute_control_commands_to_string): New functions.
6879         (execute_user_command): Use execute_control_commands.
6880         (execute_control_command_1): Add "from_tty" parameter.  Update.
6881         (execute_control_command): Likewise.
6882
6883 2018-05-04  Tom Tromey  <tom@tromey.com>
6884
6885         PR python/22731:
6886         * NEWS: Mention that breakpoint commands are writable.
6887         * python/py-breakpoint.c (bppy_set_commands): New function.
6888         (breakpoint_object_getset) <"commands">: Use it.
6889
6890 2018-05-04  Tom Tromey  <tom@tromey.com>
6891
6892         * tracepoint.c (actions_command): Update.
6893         * mi/mi-cmd-break.c (mi_command_line_array)
6894         (mi_command_line_array_cnt, mi_command_line_array_ptr)
6895         (mi_read_next_line): Remove.
6896         (mi_cmd_break_commands): Update.
6897         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
6898         function_view.
6899         * cli/cli-script.c (get_command_line): Update.
6900         (process_next_line): Use function_view.  Constify.
6901         (recurse_read_control_structure, read_command_lines)
6902         (read_command_lines_1): Change argument types to function_view.
6903         (do_define_command, document_command): Update.
6904         * breakpoint.h (check_tracepoint_command): Don't declare.
6905         * breakpoint.c (check_tracepoint_command): Remove.
6906         (commands_command_1, create_tracepoint_from_upload): Update.
6907
6908 2018-05-04  Tom Tromey  <tom@tromey.com>
6909
6910         PR gdb/11750:
6911         * cli/cli-script.h (enum command_control_type) <define_control>:
6912         New constant.
6913         * cli/cli-script.c (multi_line_command_p): Handle define_control.
6914         (build_command_line, execute_control_command_1)
6915         (process_next_line): Likewise.
6916         (do_define_command): New function, extracted from define_command.
6917         (define_command): Use it.
6918
6919 2018-05-04  Tom Tromey  <tom@tromey.com>
6920
6921         * tracepoint.c (actions_command): Update.
6922         * cli/cli-script.h (read_command_lines): Update.
6923         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
6924         (MAX_TMPBUF): Remove define.
6925         (define_command): Use string_printf.
6926         (document_command): Likewise.
6927         * breakpoint.c (commands_command_1): Update.
6928
6929 2018-05-04  Tom Tromey  <tom@tromey.com>
6930
6931         * top.c (execute_command): Update.
6932         * cli/cli-script.h (print_command_lines): Now varargs.
6933         * cli/cli-script.c (print_command_lines): Now varargs.
6934         (execute_control_command_1) <case while_control, case if_control>:
6935         Update.
6936
6937 2018-05-04  Tom Tromey  <tom@tromey.com>
6938
6939         * tracepoint.c (all_tracepoint_actions): Rename from
6940         all_tracepoint_actions_and_cleanup.  Change return type.
6941         (actions_command, encode_actions_1, encode_actions)
6942         (trace_dump_actions, tdump_command): Update.
6943         * remote.c (remote_download_command_source): Update.
6944         * python/python.c (gdbpy_eval_from_control_command)
6945         (python_command, python_interactive_command): Update.
6946         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
6947         * guile/guile.c (guile_command)
6948         (gdbscm_eval_from_control_command, guile_command): Update.
6949         * compile/compile.c (compile_code_command)
6950         (compile_print_command, compile_to_object): Update.
6951         * cli/cli-script.h (struct command_lines_deleter): New.
6952         (counted_command_line): New typedef.
6953         (struct command_line): Add constructor, destructor.
6954         <body_list>: Remove.
6955         <body_list_0, body_list_1>: New members.
6956         (command_line_up): Remove typedef.
6957         (read_command_lines, read_command_lines_1, get_command_line):
6958         Update.
6959         (copy_command_lines): Don't declare.
6960         * cli/cli-script.c (build_command_line): Use "new".
6961         (get_command_line): Return counted_command_line.
6962         (print_command_lines, execute_user_command)
6963         (execute_control_command_1, while_command, if_command): Update.
6964         (realloc_body_list): Remove.
6965         (process_next_line, recurse_read_control_structure): Update.
6966         (read_command_lines, read_command_lines_1): Return counted_command_line.
6967         (free_command_lines): Use "delete".
6968         (copy_command_lines): Remove.
6969         (define_command, document_command, show_user_1): Update.
6970         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
6971         a counted_command_line.
6972         * breakpoint.h (counted_command_line): Remove typedef.
6973         (breakpoint_set_commands): Update.
6974         * breakpoint.c (check_no_tracepoint_commands)
6975         (validate_commands_for_breakpoint): Update.
6976         (breakpoint_set_commands): Change commands to be a
6977         counted_command_line.
6978         (commands_command_1, update_dprintf_command_list)
6979         (create_tracepoint_from_upload): Update.
6980
6981 2018-05-04  Tom Tromey  <tom@tromey.com>
6982
6983         * cli/cli-decode.h (cmd_list_element): New constructor.
6984         (~cmd_list_element): New destructor.
6985         (struct cmd_list_element): Add initializers.
6986         * cli/cli-decode.c (do_add_cmd): Use "new".
6987         (delete_cmd): Use "delete".
6988
6989 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
6990             Pedro Alves <palves@redhat.com>
6991
6992         PR breakpoints/19806 and support for PR external/20207.
6993         * NEWS: Mention Aarch64 watchpoint improvements.
6994         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
6995         watchpoints and PR external/20207 watchpoints.
6996         * nat/aarch64-linux-hw-point.c
6997         (kernel_supports_any_contiguous_range): New.
6998         (aarch64_watchpoint_offset): New.
6999         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
7000         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
7001         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
7002         (aarch64_align_watchpoint): New parameters aligned_offset_p and
7003         next_addr_orig_p.  Support PR external/20207 watchpoints.
7004         (aarch64_downgrade_regs): New.
7005         (aarch64_dr_state_insert_one_point): New parameters offset and
7006         addr_orig.
7007         (aarch64_dr_state_remove_one_point): Likewise.
7008         (aarch64_handle_breakpoint): Update caller.
7009         (aarch64_handle_aligned_watchpoint): Likewise.
7010         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
7011         aligned_offset.
7012         (aarch64_linux_set_debug_regs): Remove const from state.  Call
7013         aarch64_downgrade_regs.
7014         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
7015         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
7016         (DR_CONTROL_MASK): ... this.
7017         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
7018         (unsigned int aarch64_watchpoint_offset): New prototype.
7019         (aarch64_linux_set_debug_regs): Remove const from state.
7020         * utils.c (align_up, align_down): Move to ...
7021         * common/common-utils.c (align_up, align_down): ... here.
7022         * utils.h (align_up, align_down): Move to ...
7023         * common/common-utils.h (align_up, align_down): ... here.
7024
7025 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
7026
7027         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
7028         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
7029         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
7030         Re-implement to match the ABI as summarized in GCC's
7031         gcc/config/sparc/sparc.c.  All callers updated.
7032         (sparc32_store_arguments): Remove assertion.
7033
7034 2018-05-04  Tom Tromey  <tom@tromey.com>
7035
7036         * printcmd.c: Don't include tui.h.
7037         (decode_format): Use skip_spaces.
7038
7039 2018-05-04  Tom Tromey  <tom@tromey.com>
7040
7041         PR gdb/22619:
7042         * printcmd.c (last_count): New global.
7043         (x_command): Use saved count when repeating.
7044
7045 2018-05-04  Tom Tromey  <tom@tromey.com>
7046
7047         * nto-procfs.c (do_closedir_cleanup): Remove.
7048         (procfs_pidlist): Use gdb_dir_up.
7049         * procfs.c (do_closedir_cleanup): Remove.
7050         (proc_update_threads): Use gdb_dir_up.
7051         * common/filestuff.h (struct gdb_dir_deleter): New.
7052         (gdb_dir_up): New typedef.
7053
7054 2018-05-04  Tom Tromey  <tom@tromey.com>
7055
7056         * ada-lang.c (print_mention_exception): Use std::string.
7057
7058 2018-05-04  Tom Tromey  <tom@tromey.com>
7059
7060         * ada-lang.c (create_excep_cond_exprs): Update.
7061         (ada_exception_catchpoint_cond_string): Use std::string.
7062
7063 2018-05-04  Tom Tromey  <tom@tromey.com>
7064
7065         * ada-lang.c (xget_renaming_scope): Return std::string.
7066         (old_renaming_is_invisible): Update.
7067
7068 2018-05-04  Tom Tromey  <tom@tromey.com>
7069
7070         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
7071         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
7072
7073 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
7074
7075         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
7076
7077 2018-05-04  Tom Tromey  <tom@tromey.com>
7078
7079         * remote.c (remote_query_supported_append): Change type.
7080         (remote_check_symbols): Update.
7081
7082 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
7083
7084         PR gdb/11420
7085         * configure.ac: Prepend libpython.
7086         * python/python-config.py: Likewise.
7087         * configure: Regenerate.
7088
7089 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
7090
7091         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
7092
7093 2018-05-03  Pedro Alves  <palves@redhat.com>
7094
7095         * s390-linux-nat.c
7096         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
7097         override.  Write 'true' instead of '1'.
7098         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
7099         declaration.
7100
7101 2018-05-02  Pedro Alves  <palves@redhat.com>
7102
7103         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
7104         add_inf_child_target.
7105         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
7106         add_inf_child_target.
7107         * aix-thread.c (aix_thread_target_info): New.
7108         (aix_thread_target) <shortname, longname, doc>: Delete.
7109         <info>: New.
7110         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
7111         add_inf_child_target.
7112         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
7113         add_inf_child_target.
7114         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
7115         add_inf_child_target.
7116         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
7117         add_inf_child_target.
7118         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
7119         add_inf_child_target.
7120         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
7121         add_inf_child_target.
7122         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
7123         add_inf_child_target.
7124         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
7125         add_inf_child_target.
7126         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
7127         add_inf_child_target.
7128         * bfd-target.c (target_bfd_target_info): New.
7129         (target_bfd) <shortname, longname, doc>: Delete.
7130         <info>: New.
7131         * bsd-kvm.c (bsd_kvm_target_info): New.
7132         (bsd_kvm_target) <shortname, longname, doc>: Delete.
7133         <info>: New.
7134         (bsd_kvm_target::open): Rename to ...
7135         (bsd_kvm_target_open): ... this.  Adjust.
7136         * bsd-uthread.c (bsd_uthread_target_info): New.
7137         (bsd_uthread_target) <shortname, longname, doc>: Delete.
7138         <info>: New.
7139         * corefile.c (core_file_command): Adjust.
7140         * corelow.c (core_target_info): New.
7141         (core_target) <shortname, longname, doc>: Delete.
7142         <info>: New.
7143         (core_target::open): Rename to ...
7144         (core_target_open): ... this.  Adjust.
7145         * ctf.c (ctf_target_info): New.
7146         (ctf_target) <shortname, longname, doc>: Delete.
7147         <info>: New.
7148         (ctf_target::open): Rename to ...
7149         (ctf_target_open): ... this.
7150         (_initialize_ctf): Adjust.
7151         * exec.c (exec_target_info): New.
7152         (exec_target) <shortname, longname, doc>: Delete.
7153         <info>: New.
7154         (exec_target::open): Rename to ...
7155         (exec_target_open): ... this.
7156         * gdbcore.h (core_target_open): Declare.
7157         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
7158         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
7159         add_inf_child_target.
7160         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
7161         add_inf_child_target.
7162         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
7163         add_inf_child_target.
7164         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
7165         add_inf_child_target.
7166         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
7167         add_inf_child_target.
7168         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
7169         add_inf_child_target.
7170         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
7171         add_inf_child_target.
7172         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
7173         add_inf_child_target.
7174         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
7175         add_inf_child_target.
7176         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
7177         add_inf_child_target.
7178         * inf-child.c (inf_child_target_info): New.
7179         (inf_child_target::info): New.
7180         (inf_child_open_target): Remove 'target' parameter.  Use
7181         get_native_target instead.
7182         (inf_child_target::open): Delete.
7183         (add_inf_child_target): New.
7184         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
7185         Delete.
7186         <info>: New.
7187         (add_inf_child_target): Declare.
7188         (inf_child_open_target): Declare.
7189         * linux-thread-db.c (thread_db_target_info): New.
7190         (thread_db_target) <shortname, longname, doc>: Delete.
7191         <info>: New.
7192         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
7193         add_inf_child_target.
7194         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
7195         add_inf_child_target.
7196         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
7197         add_inf_child_target.
7198         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
7199         add_inf_child_target.
7200         * make-target-delegates (print_class): Adjust.
7201         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
7202         add_inf_child_target.
7203         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
7204         add_inf_child_target.
7205         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
7206         add_inf_child_target.
7207         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
7208         add_inf_child_target.
7209         * nto-procfs.c (nto_native_target_info): New.
7210         (nto_procfs_target_native) <shortname, longname, doc>:
7211         Delete.
7212         <info>: New.
7213         (nto_procfs_target_info): New.
7214         (nto_procfs_target_procfs) <shortname, longname, doc>:
7215         Delete.
7216         <info>: New.
7217         (init_procfs_targets): Adjust.
7218         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
7219         add_inf_child_target.
7220         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
7221         add_inf_child_target.
7222         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
7223         add_inf_child_target.
7224         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
7225         add_inf_child_target.
7226         * ravenscar-thread.c (ravenscar_target_info): New.
7227         (ravenscar_thread_target) <shortname, longname, doc>:
7228         Delete.
7229         <info>: New.
7230         * record-btrace.c (record_btrace_target_info):
7231         (record_btrace_target) <shortname, longname, doc>: Delete.
7232         <info>: New.
7233         (record_btrace_target::open): Rename to ...
7234         (record_btrace_target_open): ... this.  Adjust.
7235         * record-full.c (record_longname, record_doc): New.
7236         (record_full_base_target) <shortname, longname, doc>: Delete.
7237         <info>: New.
7238         (record_full_target_info): New.
7239         (record_full_target): <shortname>: Delete.
7240         <info>: New.
7241         (record_full_core_open_1, record_full_open_1): Update comments.
7242         (record_full_base_target::open): Rename to ...
7243         (record_full_open): ... this.
7244         (cmd_record_full_restore): Update.
7245         (_initialize_record_full): Update.
7246         * remote-sim.c (remote_sim_target_info): New.
7247         (gdbsim_target) <shortname, longname, doc>: Delete.
7248         <info>: New.
7249         (gdbsim_target::open): Rename to ...
7250         (gdbsim_target_open): ... this.
7251         (_initialize_remote_sim): Adjust.
7252         * remote.c (remote_doc): New.
7253         (remote_target_info): New.
7254         (remote_target) <shortname, longname, doc>: Delete.
7255         <info>: New.
7256         (extended_remote_target_info): New.
7257         (extended_remote_target) <shortname, longname, doc>: Delete.
7258         <info>: New.
7259         (remote_target::open_1): Make static.  Adjust.
7260         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
7261         * s390-linux-nat.c (_initialize_s390_nat): Use
7262         add_inf_child_target.
7263         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
7264         add_inf_child_target.
7265         * sol-thread.c (thread_db_target_info): New.
7266         (sol_thread_target) <shortname, longname, doc>: Delete.
7267         <info>: New.
7268         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
7269         add_inf_child_target.
7270         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
7271         add_inf_child_target.
7272         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
7273         add_inf_child_target.
7274         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
7275         add_inf_child_target.
7276         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
7277         add_inf_child_target.
7278         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
7279         add_inf_child_target.
7280         * spu-linux-nat.c (_initialize_spu_nat): Use
7281         add_inf_child_target.
7282         * spu-multiarch.c (spu_multiarch_target_info): New.
7283         (spu_multiarch_target) <shortname, longname, doc>: Delete.
7284         <info>: New.
7285         * target-delegates.c: Regenerate.
7286         * target.c: Include <unordered_map>.
7287         (target_ops_p): Delete.
7288         (DEF_VEC_P(target_ops_p)): Delete.
7289         (target_factories): New.
7290         (test_target_info): New.
7291         (test_target_ops::info): New.
7292         (open_target): Adjust to use target_factories.
7293         (add_target_with_completer): Rename to ...
7294         (add_target): ... this.  Change prototype.  Register target_info
7295         and open callback in target_factories.  Register target_info in
7296         command context instead of target_ops.
7297         (add_target): Delete old implementation.
7298         (add_deprecated_target_alias): Change prototype.  Adjust.
7299         (the_native_target): New.
7300         (set_native_target, get_native_target): New.
7301         (find_default_run_target): Use the_native_target.
7302         (find_attach_target, find_run_target): Simplify.
7303         (target_ops::open): Delete.
7304         (dummy_target_info): New.
7305         (dummy_target::shortname, dummy_target::longname)
7306         (dummy_target::doc): Delete.
7307         (dummy_target::info): New.
7308         (debug_target::shortname, debug_target::longname)
7309         (debug_target::doc): Delete.
7310         (debug_target::info): New.
7311         * target.h (struct target_info): New.
7312         (target_ops::~target_ops): Add comment.
7313         (target_ops::info): New.
7314         (target_ops::shortname, target_ops::longname, target_ops::doc): No
7315         longer virtual.  Implement in terms of target_info.
7316         (set_native_target, get_native_target): Declare.
7317         (target_open_ftype): New.
7318         (add_target, add_target_with_completer)
7319         (add_deprecated_target_alias): Change prototype.
7320         (test_target) <shortname, longname, doc>: Delete.
7321         <info>: New.
7322         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
7323         add_inf_child_target.
7324         * tracefile-tfile.c (tfile_target_info): New.
7325         (tfile_target) <shortname, longname, doc>: Delete.
7326         <info>: New.
7327         (tfile_target::open): Rename to ...
7328         (tfile_target_open): ... this.
7329         (_initialize_tracefile_tfile): Adjust.
7330         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
7331         add_inf_child_target.
7332         * windows-nat.c (_initialize_windows_nat): Use
7333         add_inf_child_target.
7334         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
7335         add_inf_child_target.
7336
7337 2018-05-02  Pedro Alves  <palves@redhat.com>
7338
7339         * linux-nat.h (linux_nat_target) <low_new_thread,
7340         low_delete_thread, low_new_fork, low_forget_process,
7341         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
7342         New virtual methods.
7343         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
7344         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
7345         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
7346         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
7347         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
7348         Delete.
7349         * linux-fork.c (delete_fork): Adjust to call low method.
7350         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
7351         (linux_nat_new_fork, linux_nat_forget_process_hook)
7352         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
7353         (linux_nat_status_is_event):
7354         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
7355         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
7356         to call low method.
7357         (sigtrap_is_event): Rename to ...
7358         (linux_nat_target::low_status_is_event): ... this.
7359         (linux_nat_set_status_is_event): Delete.
7360         (save_stop_reason, linux_nat_wait_1)
7361         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
7362         low methods.
7363         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
7364         (linux_nat_set_new_fork, linux_nat_set_forget_process)
7365         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
7366         (linux_nat_set_prepare_to_resume): Delete.
7367         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
7368         low virtual methods.
7369         * amd64-linux-nat.c: Likewise.
7370         * arm-linux-nat.c: Likewise.
7371         * i386-linux-nat.c: Likewise.
7372         * ia64-linux-nat.c: Likewise.
7373         * mips-linux-nat.c: Likewise.
7374         * ppc-linux-nat.c: Likewise.
7375         * s390-linux-nat.c: Likewise.
7376         * sparc64-linux-nat.c: Likewise.
7377         * x86-linux-nat.c: Likewise.
7378         * x86-linux-nat.h: Include "nat/x86-linux.h".
7379         (x86_linux_nat_target) <low_new_fork, low_forget_process,
7380         low_prepare_to_resume, low_new_thread, low_delete_thread>:
7381         Override methods.
7382
7383 2018-05-02  Pedro Alves  <palves@redhat.com>
7384
7385         * target.h (target_ops)
7386         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
7387         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
7388         stopped_by_watchpoint, have_continuable_watchpoint,
7389         stopped_data_address, watchpoint_addr_within_range,
7390         can_accel_watchpoint_condition, can_run, thread_alive,
7391         has_all_memory, has_memory, has_stack, has_registers,
7392         has_execution, can_async_p, is_async_p, supports_non_stop,
7393         always_non_stop_p, can_execute_reverse, supports_multi_process,
7394         supports_enable_disable_tracepoint,
7395         supports_disable_randomization, supports_string_tracing,
7396         supports_evaluation_of_breakpoint_conditions,
7397         can_run_breakpoint_commands, filesystem_is_local,
7398         can_download_tracepoint, get_trace_state_variable_value,
7399         set_trace_notes, get_tib_address, use_agent, can_use_agent,
7400         record_is_replaying, record_will_replay,
7401         augmented_libraries_svr4_read>: Adjust to return bool.
7402         * aarch64-linux-nat.c: All implementations adjusted.
7403         * aix-thread.c: All implementations adjusted.
7404         * arm-linux-nat.c: All implementations adjusted.
7405         * breakpoint.c: All implementations adjusted.
7406         * bsd-kvm.c: All implementations adjusted.
7407         * bsd-uthread.c: All implementations adjusted.
7408         * corelow.c: All implementations adjusted.
7409         * ctf.c: All implementations adjusted.
7410         * darwin-nat.c: All implementations adjusted.
7411         * darwin-nat.h: All implementations adjusted.
7412         * exec.c: All implementations adjusted.
7413         * fbsd-nat.c: All implementations adjusted.
7414         * fbsd-nat.h: All implementations adjusted.
7415         * gnu-nat.c: All implementations adjusted.
7416         * gnu-nat.h: All implementations adjusted.
7417         * go32-nat.c: All implementations adjusted.
7418         * ia64-linux-nat.c: All implementations adjusted.
7419         * inf-child.c: All implementations adjusted.
7420         * inf-child.h: All implementations adjusted.
7421         * inf-ptrace.c: All implementations adjusted.
7422         * inf-ptrace.h: All implementations adjusted.
7423         * linux-nat.c: All implementations adjusted.
7424         * linux-nat.h: All implementations adjusted.
7425         * mips-linux-nat.c: All implementations adjusted.
7426         * nto-procfs.c: All implementations adjusted.
7427         * ppc-linux-nat.c: All implementations adjusted.
7428         * procfs.c: All implementations adjusted.
7429         * ravenscar-thread.c: All implementations adjusted.
7430         * record-btrace.c: All implementations adjusted.
7431         * record-full.c: All implementations adjusted.
7432         * remote-sim.c: All implementations adjusted.
7433         * remote.c: All implementations adjusted.
7434         * s390-linux-nat.c: All implementations adjusted.
7435         * sol-thread.c: All implementations adjusted.
7436         * spu-multiarch.c: All implementations adjusted.
7437         * target-delegates.c: All implementations adjusted.
7438         * target.c: All implementations adjusted.
7439         * target.h: All implementations adjusted.
7440         * tracefile-tfile.c: All implementations adjusted.
7441         * tracefile.c: All implementations adjusted.
7442         * tracefile.h: All implementations adjusted.
7443         * windows-nat.c: All implementations adjusted.
7444         * x86-linux-nat.h: All implementations adjusted.
7445         * x86-nat.h: All implementations adjusted.
7446
7447 2018-05-02  Pedro Alves  <palves@redhat.com>
7448
7449         * make-target-delegates (scan_target_h): Don't trim lines here.
7450         Replace sequences of tabs and/or whitespace with a single
7451         whitespace.
7452         (top level, parsing methods): Trim each line before processing it
7453         here.
7454
7455 2018-05-02  Pedro Alves  <palves@redhat.com>
7456             John Baldwin  <jhb@freebsd.org>
7457
7458         * target.h (enum strata) <debug_stratum>: New.
7459         (struct target_ops) <all delegation methods>: Replace by C++
7460         virtual methods, and drop "to_" prefix.  All references updated
7461         throughout.
7462         <to_shortname, to_longname, to_doc, to_data,
7463         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
7464         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
7465         virtual methods.  All references updated throughout.
7466         <can_attach, supports_terminal_ours, can_create_inferior,
7467         get_thread_control_capabilities, attach_no_wait>: New
7468         virtual methods.
7469         <insert_breakpoint, remove_breakpoint>: Now
7470         TARGET_DEFAULT_NORETURN methods.
7471         <info_proc>: Now returns bool.
7472         <to_magic>: Delete.
7473         (OPS_MAGIC): Delete.
7474         (current_target): Delete.  All references replaced by references
7475         to ...
7476         (target_stack): ... this.  New.
7477         (target_shortname, target_longname): Adjust.
7478         (target_can_run): Now a function declaration.
7479         (default_child_has_all_memory, default_child_has_memory)
7480         (default_child_has_stack, default_child_has_registers)
7481         (default_child_has_execution): Remove target_ops parameter.
7482         (complete_target_initialization): Delete.
7483         (memory_breakpoint_target): New template class.
7484         (test_target_ops): Refactor as a C++ class with virtual methods.
7485         * make-target-delegates (NAME_PART): Tighten.
7486         (POINTER_PART, CP_SYMBOL): New.
7487         (SIMPLE_RETURN_PART): Reimplement.
7488         (VEC_RETURN_PART): Expect less.
7489         (RETURN_PART, VIRTUAL_PART): New.
7490         (METHOD): Adjust to C++ virtual methods.
7491         (scan_target_h): Remove reference to C99.
7492         (dname): Output "target_ops::" prefix.
7493         (write_function_header): Adjust to output a C++ class method.
7494         (write_declaration): New.
7495         (write_delegator): Adjust to output a C++ class method.
7496         (tdname): Output "dummy_target::" prefix.
7497         (write_tdefault, write_debugmethod): Adjust to output a C++ class
7498         method.
7499         (tdefault_names, debug_names): Delete.
7500         (return_types, tdefaults, styles, argtypes_array): New.
7501         (top level): All methods are delegators.
7502         (print_class): New.
7503         (top level): Print dummy_target and debug_target classes.
7504         * target-delegates.c: Regenerate.
7505         * target-debug.h (target_debug_print_enum_info_proc_what)
7506         (target_debug_print_thread_control_capabilities)
7507         (target_debug_print_thread_info_p): New.
7508         * target.c (dummy_target): Delete.
7509         (the_dummy_target, the_debug_target): New.
7510         (target_stack): Now extern.
7511         (set_targetdebug): Push/unpush debug target.
7512         (default_child_has_all_memory, default_child_has_memory)
7513         (default_child_has_stack, default_child_has_registers)
7514         (default_child_has_execution): Remove target_ops parameter.
7515         (complete_target_initialization): Delete.
7516         (add_target_with_completer): No longer call
7517         complete_target_initialization.
7518         (target_supports_terminal_ours): Use regular delegation.
7519         (update_current_target): Delete.
7520         (push_target): No longer check magic number.  Don't call
7521         update_current_target.
7522         (unpush_target): Don't call update_current_target.
7523         (target_is_pushed): No longer check magic number.
7524         (target_require_runnable): Skip for all stratums over
7525         process_stratum.
7526         (target_ops::info_proc): New.
7527         (target_info_proc): Use find_target_at and
7528         find_default_run_target.
7529         (target_supports_disable_randomization): Use regular delegation.
7530         (target_get_osdata): Use find_target_at.
7531         (target_ops::open, target_ops::close, target_ops::can_attach)
7532         (target_ops::attach, target_ops::can_create_inferior)
7533         (target_ops::create_inferior, target_ops::can_run)
7534         (target_can_run): New.
7535         (default_fileio_target): Use regular delegation.
7536         (target_ops::fileio_open, target_ops::fileio_pwrite)
7537         (target_ops::fileio_pread, target_ops::fileio_fstat)
7538         (target_ops::fileio_close, target_ops::fileio_unlink)
7539         (target_ops::fileio_readlink): New.
7540         (target_fileio_open_1, target_fileio_unlink)
7541         (target_fileio_readlink): Always call the target method.  Handle
7542         FILEIO_ENOSYS.
7543         (return_zero, return_zero_has_execution): Delete.
7544         (init_dummy_target): Delete.
7545         (dummy_target::dummy_target, dummy_target::shortname)
7546         (dummy_target::longname, dummy_target::doc)
7547         (debug_target::debug_target, debug_target::shortname)
7548         (debug_target::longname, debug_target::doc): New.
7549         (target_supports_delete_record): Use regular delegation.
7550         (setup_target_debug): Delete.
7551         (maintenance_print_target_stack): Skip debug_stratum.
7552         (initialize_targets): Instantiate the_dummy_target and
7553         the_debug_target.
7554         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
7555         use target_stack.
7556         (target_auxv_search, fprint_target_auxv): Adjust.
7557         (info_auxv_command): Adjust to use target_stack.
7558         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
7559         * exceptions.c (print_flush): Handle a NULL target_stack.
7560         * regcache.c (target_ops_no_register): Refactor as class with
7561         virtual methods.
7562
7563         * exec.c (exec_target): New class.
7564         (exec_ops): Now an exec_target.
7565         (exec_open, exec_close_1, exec_get_section_table)
7566         (exec_xfer_partial, exec_files_info, exec_has_memory)
7567         (exec_make_note_section): Refactor as exec_target methods.
7568         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
7569         Delete.
7570         (exec_target::find_memory_regions): New.
7571         (_initialize_exec): Don't call init_exec_ops.
7572         * gdbcore.h (exec_file_clear): Delete.
7573
7574         * corefile.c (core_target): Delete.
7575         (core_file_command): Adjust.
7576         * corelow.c (core_target): New class.
7577         (the_core_target): New.
7578         (core_close): Remove target_ops parameter.
7579         (core_close_cleanup): Adjust.
7580         (core_target::close): New.
7581         (core_open, core_detach, get_core_registers, core_files_info)
7582         (core_xfer_partial, core_thread_alive, core_read_description)
7583         (core_pid_to_str, core_thread_name, core_has_memory)
7584         (core_has_stack, core_has_registers, core_info_proc): Rework as
7585         core_target methods.
7586         (ignore, core_remove_breakpoint, init_core_ops): Delete.
7587         (_initialize_corelow): Initialize the_core_target.
7588         * gdbcore.h (core_target): Delete.
7589         (the_core_target): New.
7590
7591         * ctf.c: (ctf_target): New class.
7592         (ctf_ops): Now a ctf_target.
7593         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
7594         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
7595         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
7596         methods.
7597         (init_ctf_ops): Delete.
7598         (_initialize_ctf): Don't call it.
7599         * tracefile-tfile.c (tfile_target): New class.
7600         (tfile_ops): Now a tfile_target.
7601         (tfile_open, tfile_close, tfile_files_info)
7602         (tfile_get_tracepoint_status, tfile_trace_find)
7603         (tfile_fetch_registers, tfile_xfer_partial)
7604         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
7605         Refactor as tfile_target methods.
7606         (tfile_xfer_partial_features): Remove target_ops parameter.
7607         (init_tfile_ops): Delete.
7608         (_initialize_tracefile_tfile): Don't call it.
7609         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
7610         (tracefile_has_stack, tracefile_has_registers)
7611         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
7612         tracefile_target methods.
7613         (init_tracefile_ops): Delete.
7614         (tracefile_target::tracefile_target): New.
7615         * tracefile.h: Include "target.h".
7616         (tracefile_target): New class.
7617         (init_tracefile_ops): Delete.
7618
7619         * spu-multiarch.c (spu_multiarch_target): New class.
7620         (spu_ops): Now a spu_multiarch_target.
7621         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
7622         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
7623         (spu_search_memory, spu_mourn_inferior): Refactor as
7624         spu_multiarch_target methods.
7625         (init_spu_ops): Delete.
7626         (_initialize_spu_multiarch): Remove references to init_spu_ops,
7627         complete_target_initialization.
7628
7629         * ravenscar-thread.c (ravenscar_thread_target): New class.
7630         (ravenscar_ops): Now a ravenscar_thread_target.
7631         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
7632         (ravenscar_thread_alive, ravenscar_pid_to_str)
7633         (ravenscar_fetch_registers, ravenscar_store_registers)
7634         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
7635         (ravenscar_stopped_by_hw_breakpoint)
7636         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
7637         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
7638         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
7639         methods.
7640         (init_ravenscar_thread_ops): Delete.
7641         (_initialize_ravenscar): Remove references to
7642         init_ravenscar_thread_ops and complete_target_initialization.
7643
7644         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
7645         (bsd_uthread_target): New class.
7646         (bsd_uthread_ops): Now a bsd_uthread_target.
7647         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
7648         (bsd_uthread_close, bsd_uthread_mourn_inferior)
7649         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
7650         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
7651         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
7652         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
7653         (bsd_uthread_target): Delete function.
7654         (_initialize_bsd_uthread): Remove reference to
7655         complete_target_initialization.
7656
7657         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
7658         (target_bfd): ... this new class.
7659         (target_bfd_xfer_partial, target_bfd_get_section_table)
7660         (target_bfd_close): Refactor as target_bfd methods.
7661         (target_bfd::~target_bfd): New.
7662         (target_bfd_reopen): Adjust.
7663         (target_bfd::close): New.
7664
7665         * record-btrace.c (record_btrace_target): New class.
7666         (record_btrace_ops): Now a record_btrace_target.
7667         (record_btrace_open, record_btrace_stop_recording)
7668         (record_btrace_disconnect, record_btrace_close)
7669         (record_btrace_async, record_btrace_info)
7670         (record_btrace_insn_history, record_btrace_insn_history_range)
7671         (record_btrace_insn_history_from, record_btrace_call_history)
7672         (record_btrace_call_history_range)
7673         (record_btrace_call_history_from, record_btrace_record_method)
7674         (record_btrace_is_replaying, record_btrace_will_replay)
7675         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
7676         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
7677         (record_btrace_store_registers, record_btrace_prepare_to_store)
7678         (record_btrace_to_get_unwinder)
7679         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
7680         (record_btrace_commit_resume, record_btrace_wait)
7681         (record_btrace_stop, record_btrace_can_execute_reverse)
7682         (record_btrace_stopped_by_sw_breakpoint)
7683         (record_btrace_supports_stopped_by_sw_breakpoint)
7684         (record_btrace_stopped_by_hw_breakpoint)
7685         (record_btrace_supports_stopped_by_hw_breakpoint)
7686         (record_btrace_update_thread_list, record_btrace_thread_alive)
7687         (record_btrace_goto_begin, record_btrace_goto_end)
7688         (record_btrace_goto, record_btrace_stop_replaying_all)
7689         (record_btrace_execution_direction)
7690         (record_btrace_prepare_to_generate_core)
7691         (record_btrace_done_generating_core): Refactor as
7692         record_btrace_target methods.
7693         (init_record_btrace_ops): Delete.
7694         (_initialize_record_btrace): Remove reference to
7695         init_record_btrace_ops.
7696         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
7697         the execution_direction global.
7698         (record_full_base_target, record_full_target)
7699         (record_full_core_target): New classes.
7700         (record_full_ops): Now a record_full_target.
7701         (record_full_core_ops): Now a record_full_core_target.
7702         (record_full_target::detach, record_full_target::disconnect)
7703         (record_full_core_target::disconnect)
7704         (record_full_target::mourn_inferior, record_full_target::kill):
7705         New.
7706         (record_full_open, record_full_close, record_full_async): Refactor
7707         as methods of the record_full_base_target class.
7708         (record_full_resume, record_full_commit_resume): Refactor
7709         as methods of the record_full_target class.
7710         (record_full_wait, record_full_stopped_by_watchpoint)
7711         (record_full_stopped_data_address)
7712         (record_full_stopped_by_sw_breakpoint)
7713         (record_full_supports_stopped_by_sw_breakpoint)
7714         (record_full_stopped_by_hw_breakpoint)
7715         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
7716         methods of the record_full_base_target class.
7717         (record_full_store_registers, record_full_xfer_partial)
7718         (record_full_insert_breakpoint, record_full_remove_breakpoint):
7719         Refactor as methods of the record_full_target class.
7720         (record_full_can_execute_reverse, record_full_get_bookmark)
7721         (record_full_goto_bookmark, record_full_execution_direction)
7722         (record_full_record_method, record_full_info, record_full_delete)
7723         (record_full_is_replaying, record_full_will_replay)
7724         (record_full_goto_begin, record_full_goto_end, record_full_goto)
7725         (record_full_stop_replaying): Refactor as methods of the
7726         record_full_base_target class.
7727         (record_full_core_resume, record_full_core_kill)
7728         (record_full_core_fetch_registers)
7729         (record_full_core_prepare_to_store)
7730         (record_full_core_store_registers, record_full_core_xfer_partial)
7731         (record_full_core_insert_breakpoint)
7732         (record_full_core_remove_breakpoint)
7733         (record_full_core_has_execution): Refactor
7734         as methods of the record_full_core_target class.
7735         (record_full_base_target::supports_delete_record): New.
7736         (init_record_full_ops): Delete.
7737         (init_record_full_core_ops): Delete.
7738         (record_full_save): Refactor as method of the
7739         record_full_base_target class.
7740         (_initialize_record_full): Remove references to
7741         init_record_full_ops and init_record_full_core_ops.
7742
7743         * remote.c (remote_target, extended_remote_target): New classes.
7744         (remote_ops): Now a remote_target.
7745         (extended_remote_ops): Now an extended_remote_target.
7746         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
7747         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
7748         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
7749         (remote_pass_signals, remote_set_syscall_catchpoint)
7750         (remote_program_signals, )
7751         (remote_thread_always_alive): Remove target_ops parameter.
7752         (remote_thread_alive, remote_thread_name)
7753         (remote_update_thread_list, remote_threads_extra_info)
7754         (remote_static_tracepoint_marker_at)
7755         (remote_static_tracepoint_markers_by_strid)
7756         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
7757         (remote_open): Refactor as methods of remote_target.
7758         (extended_remote_open, extended_remote_detach)
7759         (extended_remote_attach, extended_remote_post_attach):
7760         (extended_remote_supports_disable_randomization)
7761         (extended_remote_create_inferior): : Refactor as method of
7762         extended_remote_target.
7763         (remote_set_permissions, remote_open_1, remote_detach)
7764         (remote_follow_fork, remote_follow_exec, remote_disconnect)
7765         (remote_resume, remote_commit_resume, remote_stop)
7766         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
7767         (remote_terminal_ours, remote_wait, remote_fetch_registers)
7768         (remote_prepare_to_store, remote_store_registers)
7769         (remote_flash_erase, remote_flash_done, remote_files_info)
7770         (remote_kill, remote_mourn, remote_insert_breakpoint)
7771         (remote_remove_breakpoint, remote_insert_watchpoint)
7772         (remote_watchpoint_addr_within_range)
7773         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
7774         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
7775         (remote_supports_stopped_by_sw_breakpoint)
7776         (remote_stopped_by_hw_breakpoint)
7777         (remote_supports_stopped_by_hw_breakpoint)
7778         (remote_stopped_by_watchpoint, remote_stopped_data_address)
7779         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
7780         (remote_verify_memory): Refactor as methods of remote_target.
7781         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
7782         parameter.
7783         (remote_xfer_partial, remote_get_memory_xfer_limit)
7784         (remote_search_memory, remote_rcmd, remote_memory_map)
7785         (remote_pid_to_str, remote_get_thread_local_address)
7786         (remote_get_tib_address, remote_read_description): Refactor as
7787         methods of remote_target.
7788         (remote_target::fileio_open, remote_target::fileio_pwrite)
7789         (remote_target::fileio_pread, remote_target::fileio_close): New.
7790         (remote_hostio_readlink, remote_hostio_fstat)
7791         (remote_filesystem_is_local, remote_can_execute_reverse)
7792         (remote_supports_non_stop, remote_supports_disable_randomization)
7793         (remote_supports_multi_process, remote_supports_cond_breakpoints)
7794         (remote_supports_enable_disable_tracepoint)
7795         (remote_supports_string_tracing)
7796         (remote_can_run_breakpoint_commands, remote_trace_init)
7797         (remote_download_tracepoint, remote_can_download_tracepoint)
7798         (remote_download_trace_state_variable, remote_enable_tracepoint)
7799         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
7800         (remote_trace_start, remote_get_trace_status)
7801         (remote_get_tracepoint_status, remote_trace_stop)
7802         (remote_trace_find, remote_get_trace_state_variable_value)
7803         (remote_save_trace_data, remote_get_raw_trace_data)
7804         (remote_set_disconnected_tracing, remote_core_of_thread)
7805         (remote_set_circular_trace_buffer, remote_traceframe_info)
7806         (remote_get_min_fast_tracepoint_insn_len)
7807         (remote_set_trace_buffer_size, remote_set_trace_notes)
7808         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
7809         (remote_disable_btrace, remote_teardown_btrace)
7810         (remote_read_btrace, remote_btrace_conf)
7811         (remote_augmented_libraries_svr4_read, remote_load)
7812         (remote_pid_to_exec_file, remote_can_do_single_step)
7813         (remote_execution_direction, remote_thread_handle_to_thread_info):
7814         Refactor as methods of remote_target.
7815         (init_remote_ops, init_extended_remote_ops): Delete.
7816         (remote_can_async_p, remote_is_async_p, remote_async)
7817         (remote_thread_events, remote_upload_tracepoints)
7818         (remote_upload_trace_state_variables): Refactor as methods of
7819         remote_target.
7820         (_initialize_remote): Remove references to init_remote_ops and
7821         init_extended_remote_ops.
7822
7823         * remote-sim.c (gdbsim_target): New class.
7824         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
7825         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
7826         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
7827         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
7828         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
7829         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
7830         Refactor as methods of gdbsim_target.
7831         (gdbsim_ops): Now a gdbsim_target.
7832         (init_gdbsim_ops): Delete.
7833         (gdbsim_cntrl_c): Adjust.
7834         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
7835
7836         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
7837         (the_amd64_linux_nat_target): New.
7838         (amd64_linux_fetch_inferior_registers)
7839         (amd64_linux_store_inferior_registers): Refactor as methods of
7840         amd64_linux_nat_target.
7841         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
7842         * i386-linux-nat.c: Don't include "linux-nat.h".
7843         (i386_linux_nat_target): New class.
7844         (the_i386_linux_nat_target): New.
7845         (i386_linux_fetch_inferior_registers)
7846         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
7847         as methods of i386_linux_nat_target.
7848         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
7849         * inf-child.c (inf_child_ops): Delete.
7850         (inf_child_fetch_inferior_registers)
7851         (inf_child_store_inferior_registers): Delete.
7852         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
7853         methods of inf_child_target.
7854         (inf_child_target::supports_terminal_ours)
7855         (inf_child_target::terminal_init)
7856         (inf_child_target::terminal_inferior)
7857         (inf_child_target::terminal_ours_for_output)
7858         (inf_child_target::terminal_ours, inf_child_target::interrupt)
7859         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
7860         New.
7861         (inf_child_open, inf_child_disconnect, inf_child_close)
7862         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
7863         (inf_child_post_startup_inferior, inf_child_can_run)
7864         (inf_child_pid_to_exec_file): Refactor as methods of
7865         inf_child_target.
7866         (inf_child_follow_fork): Delete.
7867         (inf_child_target::can_create_inferior)
7868         (inf_child_target::can_attach): New.
7869         (inf_child_target::has_all_memory, inf_child_target::has_memory)
7870         (inf_child_target::has_stack, inf_child_target::has_registers)
7871         (inf_child_target::has_execution): New.
7872         (inf_child_fileio_open, inf_child_fileio_pwrite)
7873         (inf_child_fileio_pread, inf_child_fileio_fstat)
7874         (inf_child_fileio_close, inf_child_fileio_unlink)
7875         (inf_child_fileio_readlink, inf_child_use_agent)
7876         (inf_child_can_use_agent): Refactor as methods of
7877         inf_child_target.
7878         (return_zero, inf_child_target): Delete.
7879         (inf_child_target::inf_child_target): New.
7880         * inf-child.h: Include "target.h".
7881         (inf_child_target): Delete function prototype.
7882         (inf_child_target): New class.
7883         (inf_child_open_target, inf_child_mourn_inferior)
7884         (inf_child_maybe_unpush_target): Delete.
7885         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
7886         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
7887         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
7888         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
7889         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
7890         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
7891         (inf_ptrace_wait, inf_ptrace_xfer_partial)
7892         (inf_ptrace_thread_alive, inf_ptrace_files_info)
7893         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
7894         methods of inf_ptrace_target.
7895         (inf_ptrace_target): Delete function.
7896         * inf-ptrace.h: Include "inf-child.h".
7897         (inf_ptrace_target): Delete function declaration.
7898         (inf_ptrace_target): New class.
7899         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
7900         * linux-nat.c (linux_target): New.
7901         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
7902         (linux_nat_target::~linux_nat_target): New.
7903         (linux_child_post_attach, linux_child_post_startup_inferior)
7904         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
7905         (linux_child_remove_fork_catchpoint)
7906         (linux_child_insert_vfork_catchpoint)
7907         (linux_child_remove_vfork_catchpoint)
7908         (linux_child_insert_exec_catchpoint)
7909         (linux_child_remove_exec_catchpoint)
7910         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
7911         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
7912         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
7913         (linux_nat_stopped_data_address)
7914         (linux_nat_stopped_by_sw_breakpoint)
7915         (linux_nat_supports_stopped_by_sw_breakpoint)
7916         (linux_nat_stopped_by_hw_breakpoint)
7917         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
7918         (linux_nat_kill, linux_nat_mourn_inferior)
7919         (linux_nat_xfer_partial, linux_nat_thread_alive)
7920         (linux_nat_update_thread_list, linux_nat_pid_to_str)
7921         (linux_nat_thread_name, linux_child_pid_to_exec_file)
7922         (linux_child_static_tracepoint_markers_by_strid)
7923         (linux_nat_is_async_p, linux_nat_can_async_p)
7924         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
7925         (linux_nat_supports_multi_process)
7926         (linux_nat_supports_disable_randomization, linux_nat_async)
7927         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
7928         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
7929         (linux_nat_fileio_open, linux_nat_fileio_readlink)
7930         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
7931         methods of linux_nat_target.
7932         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
7933         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
7934         parameter.
7935         (check_stopped_by_watchpoint): Adjust.
7936         (linux_xfer_partial): Delete.
7937         (linux_target_install_ops, linux_target, linux_nat_add_target):
7938         Delete.
7939         (linux_nat_target::linux_nat_target): New.
7940         * linux-nat.h: Include "inf-ptrace.h".
7941         (linux_nat_target): New.
7942         (linux_target, linux_target_install_ops, linux_nat_add_target):
7943         Delete function declarations.
7944         (linux_target): Declare global.
7945         * linux-thread-db.c (thread_db_target): New.
7946         (thread_db_target::thread_db_target): New.
7947         (thread_db_ops): Delete.
7948         (the_thread_db_target): New.
7949         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
7950         (thread_db_update_thread_list, thread_db_pid_to_str)
7951         (thread_db_extra_thread_info)
7952         (thread_db_thread_handle_to_thread_info)
7953         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
7954         (thread_db_resume): Refactor as methods of thread_db_target.
7955         (init_thread_db_ops): Delete.
7956         (_initialize_thread_db): Remove reference to init_thread_db_ops.
7957         * x86-linux-nat.c: Don't include "linux-nat.h".
7958         (super_post_startup_inferior): Delete.
7959         (x86_linux_nat_target::~x86_linux_nat_target): New.
7960         (x86_linux_child_post_startup_inferior)
7961         (x86_linux_read_description, x86_linux_enable_btrace)
7962         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
7963         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
7964         methods of x86_linux_nat_target.
7965         (x86_linux_create_target): Delete.  Bits folded ...
7966         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
7967         pointer.
7968         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
7969         (x86_linux_nat_target): New class.
7970         (x86_linux_create_target): Delete.
7971         (x86_linux_add_target): Now takes a linux_nat_target pointer.
7972         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
7973         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
7974         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
7975         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
7976         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
7977         make extern.
7978         (x86_use_watchpoints): Delete.
7979         * x86-nat.h: Include "breakpoint.h" and "target.h".
7980         (x86_use_watchpoints): Delete.
7981         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
7982         (x86_stopped_by_watchpoint, x86_stopped_data_address)
7983         (x86_insert_watchpoint, x86_remove_watchpoint)
7984         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
7985         (x86_stopped_by_hw_breakpoint): New declarations.
7986         (x86_nat_target): New template class.
7987
7988         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
7989         (the_ppc_linux_nat_target): New.
7990         (ppc_linux_fetch_inferior_registers)
7991         (ppc_linux_can_use_hw_breakpoint)
7992         (ppc_linux_region_ok_for_hw_watchpoint)
7993         (ppc_linux_ranged_break_num_registers)
7994         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
7995         (ppc_linux_insert_mask_watchpoint)
7996         (ppc_linux_remove_mask_watchpoint)
7997         (ppc_linux_can_accel_watchpoint_condition)
7998         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
7999         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
8000         (ppc_linux_watchpoint_addr_within_range)
8001         (ppc_linux_masked_watch_num_registers)
8002         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
8003         (ppc_linux_read_description): Refactor as methods of
8004         ppc_linux_nat_target.
8005         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
8006
8007         * procfs.c (procfs_xfer_partial): Delete forward declaration.
8008         (procfs_target): New class.
8009         (the_procfs_target): New.
8010         (procfs_target): Delete function.
8011         (procfs_auxv_parse, procfs_attach, procfs_detach)
8012         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
8013         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
8014         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
8015         (procfs_create_inferior, procfs_update_thread_list)
8016         (procfs_thread_alive, procfs_pid_to_str)
8017         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
8018         (procfs_stopped_data_address, procfs_insert_watchpoint)
8019         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
8020         (proc_find_memory_regions, procfs_info_proc)
8021         (procfs_make_note_section): Refactor as methods of procfs_target.
8022         (_initialize_procfs): Adjust.
8023         * sol-thread.c (sol_thread_target): New class.
8024         (sol_thread_ops): Now a sol_thread_target.
8025         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
8026         (sol_thread_fetch_registers, sol_thread_store_registers)
8027         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
8028         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
8029         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
8030         (init_sol_thread_ops): Delete.
8031         (_initialize_sol_thread): Adjust.  Remove references to
8032         init_sol_thread_ops and complete_target_initialization.
8033
8034         * windows-nat.c (windows_nat_target): New class.
8035         (windows_fetch_inferior_registers)
8036         (windows_store_inferior_registers, windows_resume, windows_wait)
8037         (windows_attach, windows_detach, windows_pid_to_exec_file)
8038         (windows_files_info, windows_create_inferior)
8039         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
8040         (windows_close, windows_pid_to_str, windows_xfer_partial)
8041         (windows_get_tib_address, windows_get_ada_task_ptid)
8042         (windows_thread_name, windows_thread_alive): Refactor as
8043         windows_nat_target methods.
8044         (do_initial_windows_stuff): Adjust.
8045         (windows_target): Delete function.
8046         (_initialize_windows_nat): Adjust.
8047
8048         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
8049         (darwin_mourn_inferior, darwin_kill_inferior)
8050         (darwin_create_inferior, darwin_attach, darwin_detach)
8051         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
8052         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
8053         (darwin_supports_multi_process): Refactor as darwin_nat_target
8054         methods.
8055         (darwin_resume_to, darwin_files_info): Delete.
8056         (_initialize_darwin_inferior): Rename to ...
8057         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
8058         * darwin-nat.h: Include "inf-child.h".
8059         (darwin_nat_target): New class.
8060         (darwin_complete_target): Delete.
8061         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
8062         (darwin_target): New.
8063         (i386_darwin_fetch_inferior_registers)
8064         (i386_darwin_store_inferior_registers): Refactor as methods of
8065         darwin_nat_target.
8066         (darwin_complete_target): Delete, with ...
8067         (_initialize_i386_darwin_nat): ... bits factored out here.
8068
8069         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
8070         (the_alpha_linux_nat_target): New.
8071         (alpha_linux_register_u_offset): Refactor as
8072         alpha_linux_nat_target method.
8073         (_initialize_alpha_linux_nat): Adjust.
8074         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
8075         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
8076         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
8077         methods of linux_nat_trad_target.
8078         (linux_trad_target): Delete.
8079         * linux-nat-trad.h (linux_trad_target): Delete function.
8080         (linux_nat_trad_target): New class.
8081         * mips-linux-nat.c (mips_linux_nat_target): New class.
8082         (super_fetch_registers, super_store_registers, super_close):
8083         Delete.
8084         (the_mips_linux_nat_target): New.
8085         (mips64_linux_regsets_fetch_registers)
8086         (mips64_linux_regsets_store_registers)
8087         (mips64_linux_fetch_registers, mips64_linux_store_registers)
8088         (mips_linux_register_u_offset, mips_linux_read_description)
8089         (mips_linux_can_use_hw_breakpoint)
8090         (mips_linux_stopped_by_watchpoint)
8091         (mips_linux_stopped_data_address)
8092         (mips_linux_region_ok_for_hw_watchpoint)
8093         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
8094         (mips_linux_close): Refactor as methods of mips_linux_nat.
8095         (_initialize_mips_linux_nat): Adjust to C++ification.
8096
8097         * aix-thread.c (aix_thread_target): New class.
8098         (aix_thread_ops): Now an aix_thread_target.
8099         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
8100         (aix_thread_fetch_registers, aix_thread_store_registers)
8101         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
8102         (aix_thread_thread_alive, aix_thread_pid_to_str)
8103         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
8104         Refactor as methods of aix_thread_target.
8105         (init_aix_thread_ops): Delete.
8106         (_initialize_aix_thread): Remove references to init_aix_thread_ops
8107         and complete_target_initialization.
8108         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
8109         (rs6000_nat_target): New class.
8110         (the_rs6000_nat_target): New.
8111         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
8112         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
8113         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
8114         (super_create_inferior): Delete.
8115         (_initialize_rs6000_nat): Adjust to C++ification.
8116
8117         * arm-linux-nat.c (arm_linux_nat_target): New class.
8118         (the_arm_linux_nat_target): New.
8119         (arm_linux_fetch_inferior_registers)
8120         (arm_linux_store_inferior_registers, arm_linux_read_description)
8121         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
8122         (arm_linux_remove_hw_breakpoint)
8123         (arm_linux_region_ok_for_hw_watchpoint)
8124         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
8125         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
8126         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
8127         arm_linux_nat_target.
8128         (_initialize_arm_linux_nat): Adjust to C++ification.
8129
8130         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
8131         (the_aarch64_linux_nat_target): New.
8132         (aarch64_linux_fetch_inferior_registers)
8133         (aarch64_linux_store_inferior_registers)
8134         (aarch64_linux_child_post_startup_inferior)
8135         (aarch64_linux_read_description)
8136         (aarch64_linux_can_use_hw_breakpoint)
8137         (aarch64_linux_insert_hw_breakpoint)
8138         (aarch64_linux_remove_hw_breakpoint)
8139         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
8140         (aarch64_linux_region_ok_for_hw_watchpoint)
8141         (aarch64_linux_stopped_data_address)
8142         (aarch64_linux_stopped_by_watchpoint)
8143         (aarch64_linux_watchpoint_addr_within_range)
8144         (aarch64_linux_can_do_single_step): Refactor as methods of
8145         aarch64_linux_nat_target.
8146         (super_post_startup_inferior): Delete.
8147         (_initialize_aarch64_linux_nat): Adjust to C++ification.
8148
8149         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
8150         (the_hppa_linux_nat_target): New.
8151         (hppa_linux_fetch_inferior_registers)
8152         (hppa_linux_store_inferior_registers): Refactor as methods of
8153         hppa_linux_nat_target.
8154         (_initialize_hppa_linux_nat): Adjust to C++ification.
8155
8156         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
8157         (the_ia64_linux_nat_target): New.
8158         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
8159         (ia64_linux_stopped_data_address)
8160         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
8161         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
8162         ia64_linux_nat_target methods.
8163         (super_xfer_partial): Delete.
8164         (_initialize_ia64_linux_nat): Adjust to C++ification.
8165
8166         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
8167         (the_m32r_linux_nat_target): New.
8168         (m32r_linux_fetch_inferior_registers)
8169         (m32r_linux_store_inferior_registers): Refactor as
8170         m32r_linux_nat_target methods.
8171         (_initialize_m32r_linux_nat): Adjust to C++ification.
8172
8173         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
8174         (the_m68k_linux_nat_target): New.
8175         (m68k_linux_fetch_inferior_registers)
8176         (m68k_linux_store_inferior_registers): Refactor as
8177         m68k_linux_nat_target methods.
8178         (_initialize_m68k_linux_nat): Adjust to C++ification.
8179
8180         * s390-linux-nat.c (s390_linux_nat_target): New class.
8181         (the_s390_linux_nat_target): New.
8182         (s390_linux_fetch_inferior_registers)
8183         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
8184         (s390_insert_watchpoint, s390_remove_watchpoint)
8185         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
8186         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
8187         (s390_auxv_parse, s390_read_description): Refactor as methods of
8188         s390_linux_nat_target.
8189         (_initialize_s390_nat): Adjust to C++ification.
8190
8191         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
8192         (the_sparc_linux_nat_target): New.
8193         (_initialize_sparc_linux_nat): Adjust to C++ification.
8194         * sparc-nat.c (sparc_fetch_inferior_registers)
8195         (sparc_store_inferior_registers): Remove target_ops parameter.
8196         * sparc-nat.h (sparc_fetch_inferior_registers)
8197         (sparc_store_inferior_registers): Remove target_ops parameter.
8198         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
8199         (the_sparc64_linux_nat_target): New.
8200         (_initialize_sparc64_linux_nat): Adjust to C++ification.
8201
8202         * spu-linux-nat.c (spu_linux_nat_target): New class.
8203         (the_spu_linux_nat_target): New.
8204         (spu_child_post_startup_inferior, spu_child_post_attach)
8205         (spu_child_wait, spu_fetch_inferior_registers)
8206         (spu_store_inferior_registers, spu_xfer_partial)
8207         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
8208         methods.
8209         (_initialize_spu_nat): Adjust to C++ification.
8210
8211         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
8212         (the_tilegx_linux_nat_target): New.
8213         (fetch_inferior_registers, store_inferior_registers):
8214         Refactor as methods.
8215         (_initialize_tile_linux_nat): Adjust to C++ification.
8216
8217         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
8218         (the_xtensa_linux_nat_target): New.
8219         (xtensa_linux_fetch_inferior_registers)
8220         (xtensa_linux_store_inferior_registers): Refactor as
8221         xtensa_linux_nat_target methods.
8222         (_initialize_xtensa_linux_nat): Adjust to C++ification.
8223
8224         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
8225         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
8226         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
8227         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
8228         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
8229         (fbsd_stopped_by_sw_breakpoint)
8230         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
8231         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
8232         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
8233         (fbsd_post_startup_inferior, fbsd_post_attach)
8234         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
8235         (fbsd_set_syscall_catchpoint)
8236         (super_xfer_partial, super_resume, super_wait)
8237         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
8238         (fbsd_handle_debug_trap): Remove target_ops parameter.
8239         (fbsd_nat_add_target): Delete.
8240         * fbsd-nat.h: Include "inf-ptrace.h".
8241         (fbsd_nat_add_target): Delete.
8242         (USE_SIGTRAP_SIGINFO): Define.
8243         (fbsd_nat_target): New class.
8244
8245         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
8246         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
8247         (amd64bsd_target): Delete.
8248         * amd64-bsd-nat.h: New file.
8249         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
8250         "x86-bsd-nat.h".
8251         (amd64_fbsd_nat_target): New class.
8252         (the_amd64_fbsd_nat_target): New.
8253         (amd64fbsd_read_description): Refactor as method of
8254         amd64_fbsd_nat_target.
8255         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
8256         (_initialize_amd64fbsd_nat): Adjust to C++ification.
8257         * amd64-nat.h (amd64bsd_target): Delete function declaration.
8258         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
8259         (i386bsd_store_inferior_registers): Remove target_ops parameter.
8260         (i386bsd_target): Delete.
8261         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
8262         (i386bsd_fetch_inferior_registers)
8263         (i386bsd_store_inferior_registers): Declare.
8264         (i386_bsd_nat_target): New class.
8265         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
8266         (the_i386_fbsd_nat_target): New.
8267         (i386fbsd_resume, i386fbsd_read_description): Refactor as
8268         i386_fbsd_nat_target methods.
8269         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
8270         (_initialize_i386fbsd_nat): Adjust to C++ification.
8271         * x86-bsd-nat.c (super_mourn_inferior): Delete.
8272         (x86bsd_mourn_inferior, x86bsd_target): Delete.
8273         (_initialize_x86_bsd_nat): Adjust to C++ification.
8274         * x86-bsd-nat.h: Include "x86-nat.h".
8275         (x86bsd_target): Delete declaration.
8276         (x86bsd_nat_target): New class.
8277
8278         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
8279         (the_aarch64_fbsd_nat_target): New.
8280         (aarch64_fbsd_fetch_inferior_registers)
8281         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
8282         aarch64_fbsd_nat_target.
8283         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
8284         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
8285         (the_alpha_bsd_nat_target): New.
8286         (alphabsd_fetch_inferior_registers)
8287         (alphabsd_store_inferior_registers): Refactor as
8288         alpha_bsd_nat_target methods.
8289         (_initialize_alphabsd_nat): Refactor as methods of
8290         alpha_bsd_nat_target.
8291         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
8292         (the_amd64_nbsd_nat_target): New.
8293         (_initialize_amd64nbsd_nat): Adjust to C++ification.
8294         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
8295         (the_amd64_obsd_nat_target): New.
8296         (_initialize_amd64obsd_nat): Adjust to C++ification.
8297         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
8298         (the_arm_fbsd_nat_target): New.
8299         (arm_fbsd_fetch_inferior_registers)
8300         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
8301         (_initialize_arm_fbsd_nat): Refactor as methods of
8302         arm_fbsd_nat_target.
8303         (_initialize_arm_fbsd_nat): Adjust to C++ification.
8304         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
8305         (the_arm_netbsd_nat_target): New.
8306         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
8307         arm_netbsd_nat_target.
8308         (_initialize_arm_netbsd_nat): Adjust to C++ification.
8309         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
8310         (the_hppa_nbsd_nat_target): New.
8311         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
8312         hppa_nbsd_nat_target methods.
8313         (_initialize_hppanbsd_nat): Adjust to C++ification.
8314         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
8315         (the_hppa_obsd_nat_target): New.
8316         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
8317         methods of hppa_obsd_nat_target.
8318         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
8319         add_target.
8320         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
8321         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
8322         add_target.
8323         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
8324         (_initialize_i386obsd_nat): Use add_target.
8325         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
8326         (the_m68k_bsd_nat_target): New.
8327         (m68kbsd_fetch_inferior_registers)
8328         (m68kbsd_store_inferior_registers): Refactor as methods of
8329         m68k_bsd_nat_target.
8330         (_initialize_m68kbsd_nat): Adjust to C++ification.
8331         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
8332         (the_mips_fbsd_nat_target): New.
8333         (mips_fbsd_fetch_inferior_registers)
8334         (mips_fbsd_store_inferior_registers): Refactor as methods of
8335         mips_fbsd_nat_target.
8336         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
8337         add_target.
8338         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
8339         (the_mips_nbsd_nat_target): New.
8340         (mipsnbsd_fetch_inferior_registers)
8341         (mipsnbsd_store_inferior_registers): Refactor as methods of
8342         mips_nbsd_nat_target.
8343         (_initialize_mipsnbsd_nat): Adjust to C++ification.
8344         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
8345         (the_mips64_obsd_nat_target): New.
8346         (mips64obsd_fetch_inferior_registers)
8347         (mips64obsd_store_inferior_registers): Refactor as methods of
8348         mips64_obsd_nat_target.
8349         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
8350         add_target.
8351         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
8352         nbsd_nat_target.
8353         * nbsd-nat.h: Include "inf-ptrace.h".
8354         (nbsd_nat_target): New class.
8355         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
8356         (obsd_wait): Refactor as methods of obsd_nat_target.
8357         (obsd_add_target): Delete.
8358         * obsd-nat.h: Include "inf-ptrace.h".
8359         (obsd_nat_target): New class.
8360         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
8361         (the_ppc_fbsd_nat_target): New.
8362         (ppcfbsd_fetch_inferior_registers)
8363         (ppcfbsd_store_inferior_registers): Refactor as methods of
8364         ppc_fbsd_nat_target.
8365         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
8366         add_target.
8367         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
8368         (the_ppc_nbsd_nat_target): New.
8369         (ppcnbsd_fetch_inferior_registers)
8370         (ppcnbsd_store_inferior_registers): Refactor as methods of
8371         ppc_nbsd_nat_target.
8372         (_initialize_ppcnbsd_nat): Adjust to C++ification.
8373         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
8374         (the_ppc_obsd_nat_target): New.
8375         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
8376         methods of ppc_obsd_nat_target.
8377         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
8378         add_target.
8379         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
8380         (the_sh_nbsd_nat_target): New.
8381         (shnbsd_fetch_inferior_registers)
8382         (shnbsd_store_inferior_registers): Refactor as methods of
8383         sh_nbsd_nat_target.
8384         (_initialize_shnbsd_nat): Adjust to C++ification.
8385         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
8386         (inf_ptrace_xfer_partial): Delete.
8387         (sparc_xfer_partial, sparc_target): Delete.
8388         * sparc-nat.h (sparc_fetch_inferior_registers)
8389         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
8390         (sparc_target): Delete function declaration.
8391         (sparc_target): New template class.
8392         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
8393         (_initialize_sparcnbsd_nat): Adjust to C++ification.
8394         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
8395         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
8396         add_target.
8397         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
8398         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
8399         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
8400         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
8401         add_target.
8402         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
8403         (the_vax_bsd_nat_target): New.
8404         (vaxbsd_fetch_inferior_registers)
8405         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
8406         methods.
8407         (_initialize_vaxbsd_nat): Adjust to C++ification.
8408
8409         * bsd-kvm.c (bsd_kvm_target): New class.
8410         (bsd_kvm_ops): Now a bsd_kvm_target.
8411         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
8412         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
8413         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
8414         bsd_kvm_target.
8415         (bsd_kvm_return_one): Delete.
8416         (bsd_kvm_add_target): Adjust to C++ification.
8417
8418         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
8419         (nto_procfs_target_procfs): New classes.
8420         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
8421         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
8422         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
8423         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
8424         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
8425         (procfs_remove_hw_breakpoint, procfs_resume)
8426         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
8427         (procfs_kill_inferior, procfs_store_registers)
8428         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
8429         as methods of nto_procfs_target.
8430         (nto_procfs_ops): Now an nto_procfs_target_procfs.
8431         (nto_native_ops): Delete.
8432         (procfs_open, procfs_native_open): Delete.
8433         (nto_native_ops): Now an nto_procfs_target_native.
8434         (init_procfs_targets): Adjust to C++ification.
8435         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
8436         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
8437         Refactor as methods of nto_procfs_target.
8438
8439         * go32-nat.c (go32_nat_target): New class.
8440         (the_go32_nat_target): New.
8441         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
8442         (go32_store_registers, go32_xfer_partial, go32_files_info)
8443         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
8444         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
8445         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
8446         (go32_pid_to_str): Refactor as methods of go32_nat_target.
8447         (go32_target): Delete.
8448         (_initialize_go32_nat): Adjust to C++ification.
8449
8450         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
8451         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
8452         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
8453         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
8454         gnu_nat_target.
8455         (gnu_target): Delete.
8456         * gnu-nat.h (gnu_target): Delete.
8457         (gnu_nat_target): New class.
8458         * i386-gnu-nat.c (gnu_base_target): New.
8459         (i386_gnu_nat_target): New class.
8460         (the_i386_gnu_nat_target): New.
8461         (_initialize_i386gnu_nat): Adjust to C++ification.
8462
8463 2018-05-02  Pedro Alves  <palves@redhat.com>
8464
8465         * bfd-target.c (target_bfd_xclose): Rename to ...
8466         (target_bfd_close): ... this.
8467         (target_bfd_reopen): Adjust.
8468         * target.c (target_close): Remove references to to_xclose.
8469         * target.h (target_ops::to_xclose): Delete.
8470         (target_ops::to_close): Update comments.
8471
8472 2018-05-02  Pedro Alves  <palves@redhat.com>
8473
8474         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
8475         "linux-nat.h".
8476         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
8477         * inf-ptrace.c (inf_ptrace_register_u_offset)
8478         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
8479         (inf_ptrace_store_register, inf_ptrace_store_registers)
8480         (inf_ptrace_trad_target): Move to ...
8481         * linux-nat-trad.c: ... this new file.
8482         * linux-nat-trad.h: New file.
8483         * linux-nat.c (linux_target_install_ops): Make extern.
8484         (linux_trad_target): Delete.
8485         * linux-nat.h (linux_trad_target): Delete declaration.
8486         (linux_target_install_ops): Declare.
8487         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
8488         "linux-nat.h".
8489
8490 2018-05-02  Pedro Alves  <palves@redhat.com>
8491
8492         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
8493         procfs_target/add_target here.
8494         * procfs.c (procfs_target): Make static.
8495         (_initialize_procfs): Call add_target here.
8496         * procfs.h (struct target_ops): Remove forward declaration.
8497         (procfs_target): Remove declaration.
8498         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
8499
8500 2018-05-02  Pedro Alves  <palves@redhat.com>
8501
8502         * procfs.c (procfs_stopped_by_watchpoint)
8503         (procfs_insert_watchpoint, procfs_remove_watchpoint)
8504         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
8505         Forward declare.
8506         (procfs_use_watchpoints): Delete, move contents...
8507         (procfs_target): ... here.
8508         * procfs.h (procfs_use_watchpoints): Delete declaration.
8509         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
8510         procfs_use_watchpoints.
8511         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
8512         procfs_use_watchpoints.
8513
8514 2018-05-02  Tom Tromey  <tom@tromey.com>
8515
8516         PR python/20084:
8517         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
8518         and var_zuinteger_unlimited.
8519         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
8520         and PARAM_ZUINTEGER_UNLIMITED.
8521         (set_parameter_value): Handle var_zuinteger and
8522         var_zuinteger_unlimited.
8523         (add_setshow_generic): Likewise.
8524         (parmpy_init): Likewise.
8525
8526 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
8527
8528         PR rust/23124
8529         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
8530         pointer is not null before dereferencing it.
8531
8532 2018-04-30  Tom Tromey  <tom@tromey.com>
8533
8534         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
8535         is_mi_like_p.
8536
8537 2018-04-30  Tom Tromey  <tom@tromey.com>
8538
8539         * breakpoint.c (mention): Remove use of is_mi_like_p.
8540         (print_mention_ranged_breakpoint): Likewise.
8541         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
8542         of is_mi_like_p.
8543
8544 2018-04-30  Tom Tromey  <tom@tromey.com>
8545
8546         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
8547
8548 2018-04-30  Tom Tromey  <tom@tromey.com>
8549
8550         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
8551         (info_spu_event_command): Remove some uses of is_mi_like_p.
8552
8553 2018-04-30  Tom Tromey  <tom@tromey.com>
8554
8555         * python/py-framefilter.c (py_print_single_arg)
8556         (enumerate_locals, py_print_args, py_print_frame): Remove some
8557         uses of is_mi_like_p.
8558
8559 2018-04-30  Tom Tromey  <tom@tromey.com>
8560
8561         * ui-out.c: Update.
8562         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
8563         * ui-out.h (ui_out::is_mi_like_p): Now const.
8564         (ui_out::do_is_mi_like_p): Now const.
8565         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
8566
8567 2018-04-30  Tom Tromey  <tom@tromey.com>
8568
8569         * varobj.c (varobj_set_visualizer): Use new_reference.
8570         * python/python.c (gdbpy_decode_line): Use new_reference.
8571         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
8572         new_reference.
8573
8574 2018-04-30  Tom Tromey  <tom@tromey.com>
8575
8576         * varobj.c (install_new_value): Use new_reference.
8577         * value.h (value_incref): Return void.  Swap intro comment with
8578         value_decref.
8579         * value.c (set_value_parent): Use new_reference.
8580         (value_incref): Return void.  Update intro comment.
8581         (release_value): Use new_reference.
8582         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
8583
8584 2018-04-30  Tom Tromey  <tom@tromey.com>
8585
8586         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
8587         * gdb_bfd.h (new_bfd_ref): Remove.
8588         (gdb_bfd_open): Update comment.
8589         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
8590         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
8591         (gdb_bfd_fdopenr): Use new_reference.
8592         * exec.c (exec_file_attach): Use new_reference.
8593
8594 2018-04-30  Tom Tromey  <tom@tromey.com>
8595
8596         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
8597         method.
8598
8599 2018-04-30  Tom Tromey  <tom@tromey.com>
8600
8601         * jit.c (jit_read_code_entry): Use type_align.
8602         * i386-tdep.c (i386_gdbarch_init): Don't call
8603         set_gdbarch_long_long_align_bit.
8604         * gdbarch.sh: Remove long_long_align_bit.
8605         * gdbarch.c, gdbarch.h: Rebuild.
8606         * arc-tdep.c (arc_type_align): New function.
8607         (arc_gdbarch_init): Use arc_type_align.  Don't call
8608         set_gdbarch_long_long_align_bit.
8609
8610 2018-04-30  Tom Tromey  <tom@tromey.com>
8611
8612         * rust-lang.c (rust_type_alignment): Remove.
8613         (rust_composite_type): Use type_align.
8614
8615 2018-04-30  Tom Tromey  <tom@tromey.com>
8616
8617         * NEWS: Mention Type.align.
8618         * python/py-type.c (typy_get_alignof): New function.
8619         (type_object_getset): Add "alignof".
8620
8621 2018-04-30  Tom Tromey  <tom@tromey.com>
8622
8623         PR exp/17095:
8624         * NEWS: Update.
8625         * std-operator.def (UNOP_ALIGNOF): New operator.
8626         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
8627         New.
8628         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
8629         * c-lang.c (c_op_print_tab): Add alignof.
8630         * c-exp.y (ALIGNOF): New token.
8631         (exp): Add "ALIGNOF" production.
8632         (ident_tokens): Add _Alignof and alignof.
8633
8634 2018-04-30  Tom Tromey  <tom@tromey.com>
8635
8636         * i386-tdep.c (i386_type_align): New function.
8637         (i386_gdbarch_init): Update.
8638         * gdbarch.sh (type_align): New method.
8639         * gdbarch.c, gdbarch.h: Rebuild.
8640         * arch-utils.h (default_type_align): Declare.
8641         * arch-utils.c (default_type_align): New function.
8642         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
8643         (struct type) <align_log2>: New field.
8644         <instance_flags>: Now a bitfield.
8645         (TYPE_RAW_ALIGN): New macro.
8646         (type_align, type_raw_align, set_type_align): Declare.
8647         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
8648         functions.
8649         * dwarf2read.c (quirk_rust_enum): Set type alignment.
8650         (get_alignment, maybe_set_alignment): New functions.
8651         (read_structure_type, read_enumeration_type, read_array_type)
8652         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
8653         (read_subrange_type, read_base_type): Set type alignment.
8654
8655 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
8656
8657         * dwarf2read.c (read_index_from_section): Use bool.
8658
8659 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
8660
8661         PR gdb/22950
8662         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
8663         with #ifdef.
8664
8665 2018-04-29  John Reiser  <jreiser@BitWagon.com>
8666
8667         PR build/22873
8668         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
8669         last step, and do it atomically.
8670
8671 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
8672
8673         * compile/compile-c-types.c (convert_int, convert_float):
8674         Update for C FE v1.
8675
8676 2018-04-27  Tom Tromey  <tom@tromey.com>
8677
8678         PR rust/22545:
8679         * rust-lang.c (rust_inclusive_range_type_p): New function.
8680         (rust_range): Handle inclusive ranges.
8681         (rust_compute_range): Likewise.
8682         * rust-exp.y (struct rust_op) <inclusive>: New field.
8683         (DOTDOTEQ): New constant.
8684         (range_expr): Add "..=" productions.
8685         (operator_tokens): Add "..=" token.
8686         (ast_range): Add "inclusive" parameter.
8687         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
8688         ranges.
8689         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
8690         bounds values.
8691         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
8692         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
8693         Update comments.
8694         * expprint.c (print_subexp_standard): Handle new bounds values.
8695         (dump_subexp_body_standard): Likewise.
8696
8697 2018-04-27  Tom Tromey  <tom@tromey.com>
8698
8699         * configure: Rebuild.
8700         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
8701         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
8702         "OVERRIDE".
8703         (class symbol_needs_eval_context): Likewise.
8704         * dwarf2read.c (mock_mapped_index::symbol_name_count)
8705         (mock_mapped_index::symbol_name_at): Use "override".  Remove
8706         "virtual".
8707         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
8708         "override".
8709         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
8710         * aarch64-tdep.c (instruction_reader::read): Use "override".
8711         (instruction_reader_test::read): Likewise.
8712         * arm-tdep.c (instruction_reader::read): Use "override".
8713         (instruction_reader_thumb::read): Likewise.
8714
8715 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
8716
8717         PR remote/9665
8718         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
8719         instead of remote_send.
8720         (remote_send): Remove.
8721
8722 2018-04-26  Pedro Alves  <palves@redhat.com>
8723
8724         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
8725         find_function_start_sal instead of find_pc_line.
8726
8727 2018-04-26  Pedro Alves  <palves@redhat.com>
8728
8729         * breakpoint.c (set_breakpoint_location_function): Handle
8730         mst_data_gnu_ifunc.
8731         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
8732         * elfread.c (elf_symtab_read): Give data symbols with
8733         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
8734         (elf_rel_plt_read): Update comment.
8735         * linespec.c (convert_linespec_to_sals): Handle
8736         mst_data_gnu_ifunc.
8737         (minsym_found): Handle mst_data_gnu_ifunc.
8738         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
8739         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
8740         * parse.c (find_minsym_type_and_address): Handle
8741         mst_data_gnu_ifunc.
8742         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
8743         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
8744         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
8745         comment.
8746         <mst_data_gnu_ifunc>: New enumerator.
8747
8748 2018-04-26  Pedro Alves  <palves@redhat.com>
8749
8750         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
8751         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
8752         'want_trampoline' parameter by a lookup_msym_prefer parameter.
8753         Handle it.
8754         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
8755         (lookup_minimal_symbol_by_pc): Adjust.
8756         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
8757         (lookup_solib_trampoline_symbol_by_pc): Adjust.
8758         * minsyms.h (lookup_msym_prefer): New enum.
8759         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
8760         parameter by a lookup_msym_prefer parameter.
8761
8762 2018-04-26  Pedro Alves  <palves@redhat.com>
8763
8764         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
8765         ends in "@plt" instead of looking at the symbol's section.
8766
8767 2018-04-26  Pedro Alves  <palves@redhat.com>
8768
8769         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
8770         all references.
8771         (find_pc_partial_function_gnu_ifunc): Rename to ...
8772         (find_pc_partial_function): ... this, and remove references to
8773         'is_gnu_ifunc_p'.
8774         (find_pc_partial_function): Delete old implementation.
8775         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
8776
8777 2018-04-26  Pedro Alves  <palves@redhat.com>
8778
8779         * linespec.c (struct bound_minimal_symbol_search_key): New.
8780         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
8781         skip first line if we found a GNU ifunc minimal symbol by name.
8782         (compare_msymbols): Change parameters to work with a destructured
8783         lhs minsym.
8784         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
8785         functions.
8786
8787 2018-04-26  Pedro Alves  <palves@redhat.com>
8788
8789         * breakpoint.c (set_breakpoint_location_function): Don't resolve
8790         ifunc targets here.  Instead, if we have an ifunc minsym, use its
8791         address/name.
8792         (add_location_to_breakpoint): Store the minsym and the objfile in
8793         the breakpoint location.
8794         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
8795         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
8796         Record the minsym in the sal.
8797         * symtab.h (symtab_and_line) <msymbol>: New field.
8798
8799 2018-04-26  Pedro Alves  <palves@redhat.com>
8800
8801         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
8802         unless we actually resolved the ifunc.
8803
8804 2018-04-26  Pedro Alves  <palves@redhat.com>
8805
8806         * c-exp.y (variable production): Prefer ifunc minsyms over
8807         regular function symbols.
8808         * symtab.c (find_gnu_ifunc): New function.
8809         * minsyms.h (lookup_msym_prefer): New enum.
8810         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
8811         parameter by a lookup_msym_prefer parameter.
8812         * symtab.h (find_gnu_ifunc): New declaration.
8813
8814 2018-04-26  Pedro Alves  <palves@redhat.com>
8815
8816         * blockframe.c (find_gnu_ifunc_target_type): New function.
8817         (find_function_type): New.
8818         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
8819         return a value with a memory address.
8820         (eval_call): For calls to GNU ifunc functions, try to find the
8821         type of the target function from the type that the resolver
8822         returns.
8823         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
8824         symbols.
8825         * infcall.c (find_function_return_type): Delete.
8826         (find_function_addr): Add 'function_type' parameter.  For calls to
8827         GNU ifunc functions, try to find the type of the target function
8828         from the type that the resolver returns, and return it via
8829         FUNCTION_TYPE.
8830         (call_function_by_hand_dummy): Adjust to use the function type
8831         returned by find_function_addr.
8832         (find_function_addr): Add 'function_type' parameter and move
8833         description here.
8834         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
8835         declarations.
8836
8837 2018-04-26  Pedro Alves  <palves@redhat.com>
8838
8839         * c-exp.y (variable production): Skip finding an alias for ifunc
8840         symbols.
8841
8842 2018-04-26  Pedro Alves  <palves@redhat.com>
8843
8844         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
8845
8846 2018-04-25  Pedro Alves  <palves@redhat.com>
8847
8848         * infcmd.c (kill_command): Print the pid as string, not the whole
8849         thread's ptid.  Add comment.  s/has been killed/killed/ in output
8850         message.
8851         * remote.c (remote_detach_1): Print the pid as string, not the
8852         whole thread's ptid.
8853
8854 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
8855             Sergio Durigan Junior  <sergiodj@redhat.com>
8856             Pedro Alves  <palves@redhat.com>
8857
8858         * infcmd.c (kill_command): Print message when inferior has
8859         been killed.
8860         * inferior.c (print_inferior_events): Remove 'static'.  Set as
8861         '1'.
8862         (add_inferior): Improve message printed when
8863         'print_inferior_events' is on.
8864         (exit_inferior): Remove message printed when
8865         'print_inferior_events' is on.
8866         (detach_inferior): Improve message printed when
8867         'print_inferior_events' is on.
8868         (initialize_inferiors): Use 'add_inferior_silent' to set
8869         'current_inferior_'.
8870         * inferior.h (print_inferior_events): Declare here as
8871         'extern'.
8872         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
8873         '[Detaching...]' messages when 'print_inferior_events' is on.
8874         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
8875         as prefix/suffix for messages.  Remove periods.  Fix erroneous
8876         'Detaching after fork from child...', replace it by '... from
8877         parent...'.
8878         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
8879         prefix/suffix when printing 'Detaching...' messages.  Print
8880         them when 'print_inferior_events' is on.
8881         * remote.c (remote_detach_1): Print message when detaching
8882         from inferior and '!is_fork_parent'.
8883
8884 2018-04-24  Tom Tromey  <tom@tromey.com>
8885
8886         * cli-out.h: Reindent.
8887
8888 2018-04-24  Tom Tromey  <tom@tromey.com>
8889
8890         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
8891         (cli_ui_out::do_field_string): Use fputs_filtered.
8892         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
8893
8894 2018-04-23  Tom Tromey  <tom@tromey.com>
8895
8896         * guile/scm-frame.c (gdbscm_frame_read_var): Use
8897         gdb::unique_xmalloc_ptr.
8898
8899 2018-04-23  Tom Tromey  <tom@tromey.com>
8900
8901         * configure: Rebuild.
8902
8903 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
8904
8905         PR gdb/23095
8906         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
8907         prepare_for_testing.  Set normal_bp to r_debug_state if target
8908         is bsd.
8909
8910 2018-04-21  Pedro Alves  <palves@redhat.com>
8911             Rajendra SY  <rajendra.sy@gmail.com>
8912
8913         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
8914         * remote.c (extended_remote_attach): In all-stop mode, mark the
8915         thread as executing.
8916
8917 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8918
8919         * thread.c (thread_apply_all_command): Fix comment.
8920         (thread_command): Fix comment.
8921
8922 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
8923
8924         * common/tdesc.h (tdesc_create_feature): Remove xml filename
8925         parameter.
8926         * features/aarch64-core.c (create_feature_aarch64_core):
8927         Regenerate.
8928         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
8929         Likewise.
8930         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
8931         Likewise.
8932         * features/i386/32bit-avx512.c
8933         (create_feature_i386_32bit_avx512): Likewise.
8934         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
8935         Likewise.
8936         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
8937         Likewise.
8938         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
8939         Likewise.
8940         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
8941         Likewise.
8942         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
8943         Likewise.
8944         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
8945         Likewise.
8946         * features/i386/64bit-avx512.c
8947         (create_feature_i386_64bit_avx512): Likewise.
8948         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
8949         Likewise.
8950         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
8951         Likewise.
8952         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
8953         Likewise.
8954         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
8955         Likewise.
8956         * features/i386/64bit-segments.c
8957         (create_feature_i386_64bit_segments): Likewise.
8958         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
8959         Likewise.
8960         * features/i386/x32-core.c
8961         (create_feature_i386_x32_core): Likewise.
8962         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
8963         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
8964         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
8965         * target-descriptions.c: In generated code, don't pass xml
8966         filename.
8967
8968 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8969
8970         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
8971         (print_xml_feature::visit_post): Likewise.
8972         (print_xml_feature::visit): Likewise.
8973         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
8974         (print_xml_feature): Add new class.
8975         * regformats/regdat.sh: Null xmltarget on feature targets.
8976         * target-descriptions.c (struct target_desc): Add xmltarget.
8977         (maintenance_check_tdesc_xml_convert): Add unittest function.
8978         (tdesc_get_features_xml): Add function to get xml.
8979         (maintenance_check_xml_descriptions): Test xml generation.
8980         * xml-tdesc.c (string_read_description_xml): Add function.
8981         * xml-tdesc.h (string_read_description_xml): Add declaration.
8982
8983 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8984
8985         * features/Makefile: Add feature marker to targets with new style
8986         target descriptions.
8987         * regformats/aarch64.dat: Regenerate.
8988         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
8989         * regformats/i386/amd64-avx-linux.dat: Likewise.
8990         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
8991         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
8992         * regformats/i386/amd64-linux.dat: Likewise.
8993         * regformats/i386/amd64-mpx-linux.dat: Likewise.
8994         * regformats/i386/amd64.dat: Likewise.
8995         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
8996         * regformats/i386/i386-avx-linux.dat: Likewise.
8997         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
8998         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
8999         * regformats/i386/i386-linux.dat: Likewise.
9000         * regformats/i386/i386-mmx-linux.dat: Likewise.
9001         * regformats/i386/i386-mpx-linux.dat: Likewise.
9002         * regformats/i386/i386.dat: Likewise.
9003         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
9004         * regformats/i386/x32-avx-linux.dat: Likewise.
9005         * regformats/i386/x32-linux.dat: Likewise.
9006         * regformats/tic6x-c62x-linux.dat: Likewise.
9007         * regformats/tic6x-c64x-linux.dat: Likewise.
9008         * regformats/tic6x-c64xp-linux.dat: Likewise.
9009         * regformats/regdat.sh: Parse feature marker.
9010
9011 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9012
9013         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
9014         (tdesc_osabi_name): Likewise.
9015         * target-descriptions.c (tdesc_architecture_name): Add new
9016         function.
9017         (tdesc_osabi_name): Likewise.
9018
9019 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9020
9021         * common/tdesc.c (tdesc_predefined_type): Move to here.
9022         (tdesc_named_type): Likewise.
9023         (tdesc_create_vector): Likewise.
9024         (tdesc_create_struct): Likewise.
9025         (tdesc_set_struct_size): Likewise.
9026         (tdesc_create_union): Likewise.
9027         (tdesc_create_flags): Likewise.
9028         (tdesc_create_enum): Likewise.
9029         (tdesc_add_field): Likewise.
9030         (tdesc_add_typed_bitfield): Likewise.
9031         (tdesc_add_bitfield): Likewise.
9032         (tdesc_add_flag): Likewise.
9033         (tdesc_add_enum_value): Likewise.
9034         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
9035         (struct tdesc_type_vector): Likewise.
9036         (struct tdesc_type_field): Likewise.
9037         (struct tdesc_type_with_fields): Likewise.
9038         (tdesc_create_enum): Add declaration.
9039         (tdesc_add_typed_bitfield): Likewise.
9040         (tdesc_add_enum_value): Likewise.
9041         * target-descriptions.c (tdesc_type_field): Move from here.
9042         (tdesc_type_builtin): Likewise.
9043         (tdesc_type_vector): Likewise.
9044         (tdesc_type_with_fields): Likewise.
9045         (tdesc_predefined_types): Likewise.
9046         (tdesc_named_type): Likewise.
9047         (tdesc_create_vector): Likewise.
9048         (tdesc_create_struct): Likewise.
9049         (tdesc_set_struct_size): Likewise.
9050         (tdesc_create_union): Likewise.
9051         (tdesc_create_flags): Likewise.
9052         (tdesc_create_enum): Likewise.
9053         (tdesc_add_field): Likewise.
9054         (tdesc_add_typed_bitfield): Likewise.
9055         (tdesc_add_bitfield): Likewise.
9056         (tdesc_add_flag): Likewise.
9057         (tdesc_add_enum_value): Likewise.
9058         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
9059         (tdesc_add_typed_bitfield): Likewise.
9060         (tdesc_add_enum_value): Likewise.
9061
9062 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9063
9064         * common/tdesc.c (tdesc_feature::accept): Move to here.
9065         (tdesc_feature::operator==): Likewise.
9066         (tdesc_create_reg): Likewise.
9067         * common/tdesc.h (tdesc_type_kind): Likewise.
9068         (struct tdesc_type): Likewise.
9069         (struct tdesc_feature): Likewise.
9070         * regformats/regdat.sh: Create a feature.
9071         * target-descriptions.c (tdesc_type_kind): Move from here.
9072         (tdesc_type): Likewise.
9073         (tdesc_type_up): Likewise.
9074         (tdesc_feature): Likewise.
9075         (tdesc_create_reg): Likewise.
9076
9077 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
9078
9079         * Makefile.in: Add arch/tdesc.c
9080         * common/tdesc.c: New file.
9081         * common/tdesc.h (tdesc_element_visitor): Move to here.
9082         (tdesc_element): Likewise.
9083         (tdesc_reg): Likewise.
9084         (tdesc_reg_up): Likewise.
9085         * regformats/regdef.h (reg): Add offset to constructors.
9086         * target-descriptions.c (tdesc_element_visitor): Move from here.
9087         (tdesc_element): Likewise.
9088         (tdesc_reg): Likewise.
9089         (tdesc_reg_up): Likewise.
9090
9091 2018-04-17  Tom Tromey  <tom@tromey.com>
9092
9093         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
9094         discriminant field.
9095
9096 2018-04-17  Tom Tromey  <tom@tromey.com>
9097
9098         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
9099
9100 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
9101
9102         * symtab.c (print_symbol_info): Skip printing filename and line
9103         number when `last' is NULL.
9104         (symtab_symbol_info): Use empty string instead of NULL for first
9105         invocation of print_symbol_info.
9106         (rbreak_command): Pass NULL to `last' parameter of
9107         print_symbol_info.
9108
9109 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
9110
9111         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
9112         instead of nullptr.
9113
9114 2018-04-16  Pedro Alves  <palves@redhat.com>
9115
9116         * MAINTAINERS (sh): Remove.
9117         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
9118         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
9119         (ALLDEPFILES): Remove sh64-tdep.c.
9120         * NEWS: Mentions that support for SH-5/SH64 is removed.
9121         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
9122         (sh*-*-openbsd*): Ditto.
9123         (sh64-*-elf*): Remove.
9124         (sh*): Remove.
9125         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
9126         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
9127         * sh-tdep.c: No longer include "sh64-tdep.h".
9128         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
9129         * sh64-tdep.c, sh64-tdep.h: Remove files.
9130
9131 2018-04-16  Pedro Alves  <palves@redhat.com>
9132
9133         * MAINTAINERS: Remove m88k.
9134         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
9135         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
9136         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
9137         * NEWS: Mention that support for m88k was removed.
9138         * configure.host (m88*-*-*): Remove support.
9139         * configure.nat (m88k-*-*): Remove support.
9140         * configure.tgt (m88*-*-openbsd*): Remove.
9141         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
9142
9143 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
9144
9145         * configure.tgt (x86_tobjs): New variable.
9146         (amd64_tobjs, i386_tobjs): Use it.
9147
9148 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
9149
9150         * symtab.c (print_symbol_info): Precede the symbol definition by
9151         the line number when available.
9152         * NEWS: Advertise this enhancement.
9153
9154 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9155
9156         * NEWS (New options): announce set/show record btrace cpu.
9157         * btrace.c: Include record-btrace.h.
9158         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
9159         the vendor is unknown.
9160         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
9161         Maybe overwrite the btrace configuration's cpu.
9162         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
9163         (btrace_fetch): Add cpu parameter.  Update callers.
9164         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
9165         Maybe overwrite the btrace configuration's cpu.  Skip enabling
9166         errata workarounds if the vendor is unknown.
9167         * python/py-record-btrace.c: Include record-btrace.h.
9168         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
9169         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
9170         * record-btrace.c (record_btrace_cpu_state_kind): New.
9171         (record_btrace_cpu): New.
9172         (set_record_btrace_cpu_cmdlist): New.
9173         (record_btrace_get_cpu): New.
9174         (require_btrace_thread, record_btrace_info)
9175         (record_btrace_resume_thread): Call record_btrace_get_cpu.
9176         (cmd_set_record_btrace_cpu_none): New.
9177         (cmd_set_record_btrace_cpu_auto): New.
9178         (cmd_set_record_btrace_cpu): New.
9179         (cmd_show_record_btrace_cpu): New.
9180         (_initialize_record_btrace): Initialize set/show record btrace cpu
9181         commands.
9182         * record-btrace.h (record_btrace_get_cpu): New.
9183
9184 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9185
9186         * record.c (set_record_command): Fix typo in message.
9187
9188 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9189
9190         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
9191
9192 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9193
9194         * infrun.c (process_event_stop_test): Call
9195         gdbarch_in_indirect_branch_thunk.
9196         * gdbarch.sh (in_indirect_branch_thunk): New.
9197         * gdbarch.c: Regenerated.
9198         * gdbarch.h: Regenerated.
9199         * x86-tdep.h: New.
9200         * x86-tdep.c: New.
9201         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
9202         (HFILES_NO_SRCDIR): Add x86-tdep.h.
9203         (ALLDEPFILES): Add x86-tdep.c.
9204         * arch-utils.h (default_in_indirect_branch_thunk): New.
9205         * arch-utils.c (default_in_indirect_branch_thunk): New.
9206         * i386-tdep: Include x86-tdep.h.
9207         (i386_in_indirect_branch_thunk): New.
9208         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
9209         function.
9210         * amd64-tdep: Include x86-tdep.h.
9211         (amd64_in_indirect_branch_thunk): New.
9212         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
9213
9214 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
9215
9216         PR gdb/23053
9217         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
9218         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
9219         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
9220         regression.
9221
9222 2018-04-12  Tom Tromey  <tom@tromey.com>
9223
9224         * rust-lang.c (rust_print_struct_def): Remove univariant code.
9225         (rust_evaluate_subexp): Likewise.
9226
9227 2018-04-12  Pedro Alves  <palves@redhat.com>
9228
9229         * procfs.c (procfs_detach): Make forward declaration's prototype
9230         match definition's protototype.
9231         (proc_get_LDT_entry): Remove stale do_cleanups call.
9232
9233 2018-04-12  Pedro Alves  <palves@redhat.com>
9234
9235         * target.h (target_ops::to_has_exited): Delete.
9236         (target_has_exited): Delete.
9237         * target-delegates.c: Regenerate.
9238
9239 2018-04-11  Pedro Alves  <palves@redhat.com>
9240
9241         * target.c (fileio_fh_t::t): Add comment.
9242         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
9243         (target_fileio_close): Handle a NULL target.
9244         (invalidate_fileio_fh): New.
9245         (target_close): Call it.
9246         * remote.c (remote_hostio_send_command): No longer check whether
9247         remote_desc is open.
9248
9249 2018-04-11  Pedro Alves  <palves@redhat.com>
9250
9251         * target.c (fileio_fh_t): Make it a named struct instead of a
9252         typedef.
9253         (fileio_fh_t::is_closed): New method.
9254         (DEF_VEC_O (fileio_fh_t)): Remove.
9255         (fileio_fhandles): Now a std::vector.
9256         (is_closed_fileio_fh): Delete.
9257         (acquire_fileio_fd): Adjust.  Rename parameters.
9258         (release_fileio_fd): Adjust.
9259         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
9260         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
9261         (target_fileio_close): Adjust.
9262
9263 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
9264
9265         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
9266         index.
9267
9268 2018-04-10  Pedro Alves  <palves@redhat.com>
9269
9270         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
9271         (scoped_finish_thread_state): New class.
9272         * infcmd.c (run_command_1): Use it instead of finish_thread_state
9273         cleanup.
9274         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
9275         (fetch_inferior_event, normal_stop): Likewise.
9276         * thread.c (finish_thread_state_cleanup): Delete.
9277
9278 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9279             Pedro Alves  <palves@redhat.com>
9280
9281         * value.c: Include "selftest.h" and "common/array-view.h".
9282         (struct range) <operator ==>: New.
9283         (test_ranges_contain): New.
9284         (check_ranges_vector): New.
9285         (test_insert_into_bit_range_vector): New.
9286         (_initialize_values): Register selftests.
9287         * common/array-view.h (operator==, operator!=): New.
9288
9289 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9290
9291         * common/gdb_vecs.h (unordered_remove): Add overload that takes
9292         an iterator.
9293         * inline-frame.c: Include <algorithm>.
9294         (struct inline_state): Add constructor.
9295         (inline_state_s): Remove.
9296         (DEF_VEC_O(inline_state_s)): Remove.
9297         (inline_states): Change type to std::vector.
9298         (find_inline_frame_state): Adjust to std::vector.
9299         (allocate_inline_frame_state): Remove.
9300         (clear_inline_frame_state): Adjust to std::vector.
9301         (skip_inline_frames): Adjust to std::vector.
9302
9303 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9304
9305         * tracepoint.h (struct trace_state_variable): Add constructor.
9306         <name>: Change type to std::string.
9307         * tracepoint.c (tsv_s): Remove.
9308         (DEF_VEC_O(tsv_s)): Remove.
9309         (tvariables): Change to std::vector.
9310         (create_trace_state_variable): Adjust to std::vector.
9311         (find_trace_state_variable): Likewise.
9312         (find_trace_state_variable_by_number): Likewise.
9313         (delete_trace_state_variable): Likewise.
9314         (trace_variable_command): Adjust to std::string.
9315         (delete_trace_variable_command): Likewise.
9316         (tvariables_info_1): Adjust to std::vector.
9317         (save_trace_state_variables): Likewise.
9318         (start_tracing): Likewise.
9319         (merge_uploaded_trace_state_variables): Adjust to std::vector
9320         and std::string.
9321         * target.h (struct target_ops)
9322         <to_download_trace_state_variable>: Pass reference to
9323         trace_state_variable.
9324         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
9325         * target-delegates.c: Re-generate.
9326         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
9327         (mi_tsv_deleted): Likewise.
9328         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
9329         * remote.c (remote_download_trace_state_variable): Change
9330         pointer to reference and adjust.
9331         * make-target-delegates (parse_argtypes): Handle references.
9332         (write_function_header): Likewise.
9333         (munge_type): Likewise.
9334
9335 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9336
9337         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9338         string_view-selftests.c.
9339         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
9340         testsuite.
9341         * unittests/basic_string_view/cons/char/1.cc: Likewise.
9342         * unittests/basic_string_view/cons/char/2.cc: Likewise.
9343         * unittests/basic_string_view/cons/char/3.cc: Likewise.
9344         * unittests/basic_string_view/element_access/char/1.cc:
9345         Likewise.
9346         * unittests/basic_string_view/element_access/char/empty.cc:
9347         Likewise.
9348         * unittests/basic_string_view/element_access/char/front_back.cc:
9349         Likewise.
9350         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
9351         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
9352         Likewise.
9353         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
9354         Likewise.
9355         * unittests/basic_string_view/modifiers/swap/char/1.cc:
9356         Likewise.
9357         * unittests/basic_string_view/operations/compare/char/1.cc:
9358         Likewise.
9359         * unittests/basic_string_view/operations/compare/char/13650.cc:
9360         Likewise.
9361         * unittests/basic_string_view/operations/copy/char/1.cc:
9362         Likewise.
9363         * unittests/basic_string_view/operations/data/char/1.cc:
9364         Likewise.
9365         * unittests/basic_string_view/operations/find/char/1.cc:
9366         Likewise.
9367         * unittests/basic_string_view/operations/find/char/2.cc:
9368         Likewise.
9369         * unittests/basic_string_view/operations/find/char/3.cc:
9370         Likewise.
9371         * unittests/basic_string_view/operations/find/char/4.cc:
9372         Likewise.
9373         * unittests/basic_string_view/operations/rfind/char/1.cc:
9374         Likewise.
9375         * unittests/basic_string_view/operations/rfind/char/2.cc:
9376         Likewise.
9377         * unittests/basic_string_view/operations/rfind/char/3.cc:
9378         Likewise.
9379         * unittests/basic_string_view/operations/substr/char/1.cc:
9380         Likewise.
9381         * unittests/basic_string_view/operators/char/2.cc: Likewise.
9382         * unittests/string_view-selftests.c: New file.
9383
9384 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9385
9386         * unittests/basic_string_view/capacity/1.cc: New file.
9387         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
9388         * unittests/basic_string_view/cons/char/1.cc: New file.
9389         * unittests/basic_string_view/cons/char/2.cc: New file.
9390         * unittests/basic_string_view/cons/char/3.cc: New file.
9391         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
9392         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
9393         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
9394         * unittests/basic_string_view/element_access/char/1.cc: New file.
9395         * unittests/basic_string_view/element_access/char/2.cc: New file.
9396         * unittests/basic_string_view/element_access/char/empty.cc: New file.
9397         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
9398         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
9399         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
9400         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
9401         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
9402         * unittests/basic_string_view/include.cc: New file.
9403         * unittests/basic_string_view/inserters/char/1.cc: New file.
9404         * unittests/basic_string_view/inserters/char/2.cc: New file.
9405         * unittests/basic_string_view/inserters/char/3.cc: New file.
9406         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
9407         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
9408         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
9409         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
9410         * unittests/basic_string_view/literals/types.cc: New file.
9411         * unittests/basic_string_view/literals/values.cc: New file.
9412         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
9413         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
9414         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
9415         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
9416         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
9417         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
9418         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
9419         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
9420         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
9421         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
9422         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
9423         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
9424         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
9425         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
9426         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
9427         * unittests/basic_string_view/operations/data/char/1.cc: New file.
9428         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
9429         * unittests/basic_string_view/operations/find/char/1.cc: New file.
9430         * unittests/basic_string_view/operations/find/char/2.cc: New file.
9431         * unittests/basic_string_view/operations/find/char/3.cc: New file.
9432         * unittests/basic_string_view/operations/find/char/4.cc: New file.
9433         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
9434         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
9435         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
9436         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
9437         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
9438         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
9439         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
9440         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
9441         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
9442         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
9443         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
9444         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
9445         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
9446         * unittests/basic_string_view/operators/char/2.cc: New file.
9447         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
9448         * unittests/basic_string_view/range_access/char/1.cc: New file.
9449         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
9450         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
9451         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
9452         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
9453         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
9454         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
9455         * unittests/basic_string_view/requirements/typedefs.cc: New file.
9456         * unittests/basic_string_view/typedefs.cc: New file.
9457         * unittests/basic_string_view/types/1.cc: New file.
9458
9459 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9460
9461         * common/gdb_string_view.h: Remove libstdc++ implementation
9462         details, adjust to gdb reality.
9463         * common/gdb_string_view.tcc: Likewise.
9464         * cli/cli-script.c (struct string_view): Remove.
9465         (user_args) <m_args>: Change element type to gdb::string_view.
9466         (user_args::insert_args): Adjust.
9467
9468 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9469
9470         * common/gdb_string_view.h: New file.
9471         * common/gdb_string_view.tcc: New file.
9472
9473 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9474
9475         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
9476         * configure: Re-generate.
9477
9478 2018-04-09  Pedro Alves  <palves@redhat.com>
9479
9480         * gdbarch.sh: Include "observable.h" instead of "observer.h".
9481         (set_target_gdbarch): Call
9482         gdb::observers::architecture_changed.notify instead of
9483         observer_notify_architecture_changed.
9484
9485 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9486
9487         * tracepoint.c (struct current_traceframe_cleanup): Remove.
9488         (do_restore_current_traceframe_cleanup): Remove.
9489         (restore_current_traceframe_cleanup_dtor): Remove.
9490         (make_cleanup_restore_current_traceframe): Remove.
9491         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
9492         New.
9493         * tracepoint.h (struct scoped_restore_current_traceframe): New.
9494         * infrun.c (fetch_inferior_event): Use
9495         scoped_restore_current_traceframe.
9496
9497 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9498
9499         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
9500         Remove.
9501         <n_allocated_type_units>: Remove.
9502         <all_type_units>: Change to std::vector.
9503         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
9504         to std::vector change.
9505         (dwarf2_per_objfile::get_cutu): Likewise.
9506         (dwarf2_per_objfile::get_tu): Likewise.
9507         (create_signatured_type_table_from_index): Likewise.
9508         (create_signatured_type_table_from_debug_names): Likewise.
9509         (dw2_symtab_iter_next): Likewise.
9510         (dw2_print_stats): Likewise.
9511         (dw2_expand_all_symtabs): Likewise.
9512         (dw2_expand_marked_cus): Likewise.
9513         (dw2_debug_names_iterator::next): Likewise.
9514         (dwarf2_initialize_objfile): Likewise.
9515         (add_signatured_type_cu_to_table): Likewise.
9516         (create_all_type_units): Likewise.
9517         (add_type_unit): Likewise.
9518         (struct tu_abbrev_offset): Add constructor.
9519         (build_type_psymtabs_1): Adjust to std::vector change.
9520         (print_tu_stats): Likewise.
9521         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
9522         (write_debug_names): Likewise.
9523
9524 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9525
9526         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
9527         Make an std::vector.
9528         <n_comp_units>: Remove.
9529         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
9530         to std::vector change.
9531         (dwarf2_per_objfile::get_cutu): Likewise.
9532         (dwarf2_per_objfile::get_cu): Likewise.
9533         (create_cus_from_index): Likewise.
9534         (create_addrmap_from_index): Likewise.
9535         (create_addrmap_from_aranges): Likewise.
9536         (dwarf2_read_index): Likewise.
9537         (dw2_find_last_source_symtab): Likewise.
9538         (dw2_map_symtabs_matching_filename): Likewise.
9539         (dw2_symtab_iter_next): Likewise.
9540         (dw2_print_stats): Likewise.
9541         (dw2_expand_all_symtabs): Likewise.
9542         (dw2_expand_symtabs_with_fullname): Likewise.
9543         (dw2_expand_marked_cus): Likewise.
9544         (dw2_map_symbol_filenames): Likewise.
9545         (create_cus_from_debug_names): Likewise.
9546         (dwarf2_read_debug_names): Likewise.
9547         (dw2_debug_names_iterator::next): Likewise.
9548         (dwarf2_initialize_objfile): Likewise.
9549         (set_partial_user): Likewise.
9550         (dwarf2_build_psymtabs_hard): Likewise.
9551         (read_comp_units_from_section): Remove arguments, adjust to
9552         std::vector change.
9553         (create_all_comp_units): Adjust to std::vector and
9554         read_comp_units_from_section changes.
9555         (dwarf2_find_containing_comp_unit): Adjust to std::vector
9556         change.
9557         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
9558         (psyms_seen_size): Likewise.
9559         (write_gdbindex): Likewise.
9560         (write_debug_names): Likewise.
9561
9562 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9563
9564         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
9565         with dwarf2_per_objfile.
9566         (create_cus_from_index): Likewise.
9567         (create_signatured_type_table_from_index): Likewise.
9568         (dwarf2_read_index): Likewise.
9569         (dwarf2_initialize_objfile): Likewise.
9570         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
9571         per_cu rather than get_dwarf2_per_objfile.
9572
9573 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9574
9575         * dwarf2read.h (struct signatured_type): Forward declare.
9576         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
9577         New methods.
9578         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
9579         (dw2_get_cutu): ...this.
9580         (dwarf2_per_objfile::get_cu): Rename from...
9581         (dw2_get_cu): ...this.
9582         (dwarf2_per_objfile::get_tu): New.
9583         (create_addrmap_from_index): Adjust.
9584         (create_addrmap_from_aranges): Adjust.
9585         (dw2_find_last_source_symtab): Adjust.
9586         (dw2_map_symtabs_matching_filename): Adjust.
9587         (dw2_symtab_iter_next): Adjust.
9588         (dw2_print_stats): Adjust.
9589         (dw2_expand_all_symtabs): Adjust.
9590         (dw2_expand_symtabs_with_fullname): Adjust.
9591         (dw2_expand_marked_cus): Adjust.
9592         (dw_expand_symtabs_matching_file_matcher): Adjust.
9593         (dw2_map_symbol_filenames): Adjust.
9594         (dw2_debug_names_iterator::next): Adjust.
9595         (dwarf2_initialize_objfile): Adjust.
9596         (set_partial_user): Adjust.
9597         (dwarf2_build_psymtabs_hard): Adjust.
9598
9599 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9600
9601         * dwarf2read.c (create_signatured_type_table_from_debug_names):
9602         Remove unused variables.
9603         (dw2_map_symtabs_matching_filename): Likewise.
9604         (dwarf2_record_block_ranges): Likewise.
9605         (dwarf2_read_addr_index): Likewise.
9606         (follow_die_offset): Likewise.
9607
9608 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9609
9610         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
9611         to symbol_file_add_main.
9612
9613 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9614
9615         PR mi/22299
9616         * mi/mi-console.c (do_fputc_async_safe): New.
9617         (mi_console_file::write_async_safe): New.
9618         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
9619         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
9620         New.
9621         * ui-file.c (ui_file::putstrn): Adjust call to
9622         fputstrn_unfiltered.
9623         * utils.c (printchar): Replace do_fputs and do_fprintf
9624         parameters by do_fputc.
9625         (fputstr_filtered): Adjust call to printchar.
9626         (fputstr_unfiltered): Likewise.
9627         (fputstrn_filtered): Likewise.
9628         (fputstrn_unfiltered): Add do_fputc parameter, pass to
9629         printchar.
9630         * utils.h (do_fputc_ftype): New typedef.
9631         (fputstrn_unfiltered): Add do_fputc parameter.
9632
9633 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9634
9635         * regformats/i386/i386-avx.dat: Remove.
9636
9637 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
9638
9639         PR gdb/22979
9640         * amd64-tdep.c (amd64_none_init_abi): New function.
9641         (amd64_x32_none_init_abi): New function.
9642         (_initialize_amd64_tdep): Register handlers for x86-64 and
9643         x64_32 with GDB_OSABI_NONE.
9644         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
9645         GDB_OSABI_NONE osabi.
9646
9647 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
9648
9649         PR gdb/22980
9650         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
9651         GDB_OSABI_NONE.
9652         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
9653         * osabi.c (gdb_osabi_names): Add "unknown" entry.
9654
9655 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
9656
9657         * common/byte-vector.h (char_vector): New type.
9658         * target.h (target_read_alloc): Return
9659         gdb::optional<byte_vector>.
9660         (target_read_stralloc): Return gdb::optional<char_vector>.
9661         (target_get_osdata): Return gdb::optional<char_vector>.
9662         * target.c (target_read_alloc_1): Templatize.  Replacement
9663         manual memory management with vector.
9664         (target_read_alloc): Change return type, adjust.
9665         (target_read_stralloc): Change return type, adjust.
9666         (target_get_osdata): Change return type, adjust.
9667         * auxv.c (struct auxv_info) <length>: Remove.
9668         <data>: Change type to gdb::optional<byte_vector>.
9669         (auxv_inferior_data_cleanup): Free auxv_info with delete.
9670         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
9671         (target_auxv_search): Adjust.
9672         (fprint_target_auxv): Adjust.
9673         * avr-tdep.c (avr_io_reg_read_command): Adjust.
9674         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
9675         (linux_make_corefile_notes): Adjust.
9676         * osdata.c (get_osdata): Adjust.
9677         * remote.c (remote_get_threads_with_qxfer): Adjust.
9678         (remote_memory_map): Adjust.
9679         (remote_traceframe_info): Adjust.
9680         (btrace_read_config): Adjust.
9681         (remote_read_btrace): Adjust.
9682         (remote_pid_to_exec_file): Adjust.
9683         * solib-aix.c (solib_aix_get_library_list): Adjust.
9684         * solib-dsbt.c (decode_loadmap): Don't free buf.
9685         (dsbt_get_initial_loadmaps): Adjust.
9686         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
9687         * solib-target.c (solib_target_current_sos): Adjust.
9688         * tracepoint.c (sdata_make_value): Adjust.
9689         * xml-support.c (xinclude_start_include): Adjust.
9690         (xml_fetch_content_from_file): Adjust.
9691         * xml-support.h (xml_fetch_another): Change return type.
9692         (xml_fetch_content_from_file): Change return type.
9693         * xml-syscall.c (xml_init_syscalls_info): Adjust.
9694         * xml-tdesc.c (file_read_description_xml): Adjust.
9695         (fetch_available_features_from_target): Change return type.
9696         (target_fetch_description_xml): Adjust.
9697         (target_read_description_xml): Adjust.
9698
9699 2018-04-06  Tom Tromey  <tom@tromey.com>
9700
9701         * value.c (~value): Update.
9702         (struct value) <contents>: Now unique_xmalloc_ptr.
9703         (value_contents_bits_eq, allocate_value_contents)
9704         (value_contents_raw, value_contents_all_raw)
9705         (value_contents_for_printing, value_contents_for_printing_const)
9706         (set_value_enclosing_type): Update.
9707
9708 2018-04-06  Tom Tromey  <tom@tromey.com>
9709
9710         * value.c (range_s): Remove typedef, VEC.
9711         (struct range): Add operator<.
9712         (range_lessthan): Remove.
9713         (ranges_contain): Change type.
9714         (~value): Update.
9715         (struct value) <unavailable, optimized_out>: Now std::vector.
9716         (value_entirely_available)
9717         (value_entirely_covered_by_range_vector)
9718         (value_entirely_unavailable, value_entirely_optimized_out):
9719         Update.
9720         (insert_into_bit_range_vector): Change argument type.
9721         (find_first_range_overlap): Likewise.
9722         (struct ranges_and_idx, value_contents_bits_eq)
9723         (require_not_optimized_out, require_available): Update.
9724         (ranges_copy_adjusted): Change argument types.
9725         (value_optimized_out, value_copy, value_fetch_lazy): Update.
9726
9727 2018-04-06  Tom Tromey  <tom@tromey.com>
9728
9729         * value.c (~value): Update.
9730         (struct value) <parent>: Now a value_ref_ptr.
9731         (value_parent, set_value_parent, value_address, value_copy):
9732         Update.
9733
9734 2018-04-06  Tom Tromey  <tom@tromey.com>
9735
9736         * value.c (struct value): Add constructor, destructor, and member
9737         initializers.
9738         (allocate_value_lazy, value_decref): Update.
9739
9740 2018-04-06  Tom Tromey  <tom@tromey.com>
9741
9742         * value.c (struct value) <released, next>: Remove.
9743         (all_values): Now a std::vector.
9744         (allocate_value_lazy): Update.
9745         (value_next): Remove.
9746         (value_mark, value_free_to_mark, release_value)
9747         (value_release_to_mark): Update.
9748
9749 2018-04-06  Tom Tromey  <tom@tromey.com>
9750
9751         * value.h (fetch_subexp_value, value_release_to_mark): Update.
9752         (free_value_chain): Remove.
9753         * value.c (free_value_chain): Remove.
9754         (value_release_to_mark): Return a std::vector.
9755         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
9756         std::vector.
9757         (check_condition): Update.
9758         * eval.c (fetch_subexp_value): Change "val_chain" to a
9759         std::vector.
9760         * breakpoint.c (update_watchpoint): Update.
9761         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
9762
9763 2018-04-06  Tom Tromey  <tom@tromey.com>
9764
9765         * value.h (free_all_values): Remove.
9766         * value.c (free_all_values): Remove.
9767
9768 2018-04-06  Tom Tromey  <tom@tromey.com>
9769
9770         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
9771         (value_history_chain, value_history_count): Remove.
9772         (value_history): New global.
9773         (record_latest_value, access_value_history, show_values)
9774         (preserve_values): Update.
9775
9776 2018-04-06  Tom Tromey  <tom@tromey.com>
9777
9778         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
9779         * varobj.c (varobj_set_display_format, varobj_set_value)
9780         (install_default_visualizer, construct_visualizer)
9781         (install_new_value, ~varobj, varobj_get_value_type)
9782         (my_value_of_variable, varobj_editable_p): Update.
9783         * c-varobj.c (c_describe_child, c_value_of_variable)
9784         (cplus_number_of_children, cplus_describe_child): Update.
9785         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
9786         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
9787         (ada_value_of_variable, ada_value_is_changeable_p): Update.
9788
9789 2018-04-06  Tom Tromey  <tom@tromey.com>
9790
9791         * printcmd.c (last_examine_address): Change type to
9792         value_ref_ptr.
9793         (do_examine, x_command): Update.
9794
9795 2018-04-06  Tom Tromey  <tom@tromey.com>
9796
9797         * value.c (release_value): Update.
9798         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
9799         (struct bpstats) <val>: Now a value_ref_ptr.
9800         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
9801         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
9802         (~watchpoint, print_it_watchpoint, watch_command_1)
9803         (invalidate_bp_value_on_memory_change): Update.
9804
9805 2018-04-06  Tom Tromey  <tom@tromey.com>
9806
9807         * varobj.c (varobj_clear_saved_item)
9808         (update_dynamic_varobj_children, install_new_value, ~varobj):
9809         Update.
9810         * value.h (value_incref): Move declaration earlier.
9811         (value_decref): Rename from value_free.
9812         (struct value_ref_policy): New.
9813         (value_ref_ptr): New typedef.
9814         (struct value_deleter): Remove.
9815         (gdb_value_up): Remove typedef.
9816         (release_value): Change return type.
9817         (release_value_or_incref): Remove.
9818         * value.c (set_value_parent): Update.
9819         (value_incref): Change return type.
9820         (value_decref): Rename from value_free.
9821         (value_free_to_mark, free_all_values, free_value_chain): Update.
9822         (release_value): Return value_ref_ptr.
9823         (release_value_or_incref): Remove.
9824         (record_latest_value, set_internalvar, clear_internalvar):
9825         Update.
9826         * stack.c (info_frame_command): Don't call value_free.
9827         * python/py-value.c (valpy_dealloc, valpy_new)
9828         (value_to_value_object): Update.
9829         * printcmd.c (do_examine): Update.
9830         * opencl-lang.c (lval_func_free_closure): Update.
9831         * mi/mi-main.c (register_changed_p): Don't call value_free.
9832         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
9833         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
9834         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
9835         value_free.
9836         * guile/scm-value.c (vlscm_free_value_smob)
9837         (vlscm_scm_from_value): Update.
9838         * frame.c (frame_register_unwind, frame_unwind_register_signed)
9839         (frame_unwind_register_unsigned, get_frame_register_bytes)
9840         (put_frame_register_bytes): Don't call value_free.
9841         * findvar.c (address_from_register): Don't call value_free.
9842         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
9843         * dwarf2loc.c (entry_data_value_free_closure)
9844         (value_of_dwarf_reg_entry, free_pieced_value_closure)
9845         (dwarf2_evaluate_loc_desc_full): Update.
9846         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
9847         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
9848         (~watchpoint, watch_command_1)
9849         (invalidate_bp_value_on_memory_change): Update.
9850         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
9851
9852 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
9853
9854         PR gdb/23022
9855         * warning.m4: Add -Wno-error=deprecated-register.
9856         * configure: Re-generate.
9857
9858 2018-04-05  Tom Tromey  <tom@tromey.com>
9859
9860         * linespec.h: Remove include of "vec.h".
9861
9862 2018-04-05  Tom Tromey  <tom@tromey.com>
9863
9864         * linespec.c (typep): Remove typedef.
9865         (find_methods, find_superclass_methods): Take a std::vector.
9866         (find_method): Use std::vector.
9867
9868 2018-04-05  Tom Tromey  <tom@tromey.com>
9869
9870         * utils.c (compare_strings): Remove.
9871         * utils.h (compare_strings): Remove.
9872         * objc-lang.h (find_imps): Update.
9873         * objc-lang.c (find_methods): Take a std::vector.
9874         (uniquify_strings, find_imps): Likewise.
9875         * linespec.c (find_methods): Take a std::vector.
9876         (decode_objc): Use std::vector.
9877         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
9878         a std::vector.
9879         (find_method, find_function_symbols): Use std::vector.
9880
9881 2018-04-05  Tom Tromey  <tom@tromey.com>
9882
9883         * completer.c (completion_tracker::completion_tracker): Remove
9884         cast.
9885         (completion_tracker::discard_completions): Likewise.
9886         * breakpoint.c (ambiguous_names_p): Remove cast.
9887         * ada-lang.c (_initialize_ada_language): Remove cast.
9888         * utils.h (streq): Update.
9889         (streq_hash): Add new declaration.
9890         * utils.c (streq): Return bool.
9891         (streq_hash): New function.
9892
9893 2018-04-05  Tom Tromey  <tom@tromey.com>
9894
9895         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
9896         Remove a string copy.
9897
9898 2018-04-05  Tom Tromey  <tom@tromey.com>
9899
9900         * linespec.c (filter_results): Use std::vector.
9901         (decode_line_2, decode_line_full): Update.
9902
9903 2018-04-05  Tom Tromey  <tom@tromey.com>
9904
9905         * linespec.c (canonical_to_fullform): Return std::string.
9906         (filter_results): Update.
9907         (struct decode_line_2_item): Add constructor.
9908         <fullform, displayform>: Now std::string.
9909         (decode_line_2_compare_items): Now a std::sort comparator.
9910         (decode_line_2): Update.
9911
9912 2018-04-05  Tom Tromey  <tom@tromey.com>
9913
9914         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
9915         (unexpected_linespec_error): Update.
9916         (linespec_parse_basic, parse_linespec): Update.
9917
9918 2018-04-05  Tom Tromey  <tom@tromey.com>
9919
9920         * linespec.c (linespec_parse_basic): Reindent.
9921
9922 2018-04-05  Tom Tromey  <tom@tromey.com>
9923
9924         * minsyms.h (iterate_over_minimal_symbols): Update.
9925         * minsyms.c (iterate_over_minimal_symbols): Take a
9926         gdb::function_view.
9927         * linespec.c (struct collect_minsyms): Remove.
9928         (compare_msyms): Now a std::sort comparator.
9929         (add_minsym): Add parameters.
9930         (search_minsyms_for_name): Update.  Use std::vector.
9931
9932 2018-04-03  Tom Tromey  <tom@tromey.com>
9933
9934         * mipsread.c (read_alphacoff_dynamic_symtab): Use
9935         gdb::byte_vector.
9936
9937 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
9938
9939         * MAINTAINERS (Write After Approval): Add Weimin Pan.
9940
9941 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
9942
9943         PR gdb/16959
9944         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
9945         printing static type.
9946
9947 2018-04-01  Tom Tromey  <tom@tromey.com>
9948
9949         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
9950         (rs6000_xfer_shared_libraries): Update.
9951
9952 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
9953
9954         * common/gdb_vecs.h (char_ptr): Remove.
9955         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
9956
9957 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
9958
9959         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
9960         with std::vector.
9961         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
9962
9963 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
9964
9965         * tracepoint.h (struct uploaded_tp): Initialize fields.
9966         <actions, step_actions, cmd_strings>: Change type to
9967         std::vector<char *>.
9968         * tracepoint.c (get_uploaded_tp): Allocate with new.
9969         (free_uploaded_tps): Free with delete.
9970         (parse_tracepoint_definition): Adjust to std::vector change.
9971         * breakpoint.c (read_uploaded_action): Likewise.
9972         (create_tracepoint_from_upload): Likewise.
9973         * ctf.c (ctf_write_uploaded_tp): Likewise.
9974         (SET_ARRAY_FIELD): Likewise.
9975         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
9976
9977 2018-03-30  Tom Tromey  <tom@tromey.com>
9978
9979         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
9980         std::unique_ptr.
9981         (svr4_keep_data_in_core): Update.
9982         (svr4_read_so_list): Update.
9983
9984 2018-03-30  Tom Tromey  <tom@tromey.com>
9985
9986         * windows-nat.c (handle_output_debug_string, handle_exception):
9987         Update.
9988         * target.h (target_read_string): Update.
9989         * target.c (target_read_string): Change "string" to
9990         unique_xmalloc_ptr.
9991         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
9992         Update.
9993         * solib-frv.c (frv_current_sos): Update.
9994         * solib-dsbt.c (dsbt_current_sos): Update.
9995         * solib-darwin.c (darwin_current_sos): Update.
9996         * linux-thread-db.c (inferior_has_bug): Update.
9997         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
9998         Update.  Remove alloca.
9999         * ada-lang.c (ada_main_name): Update.
10000
10001 2018-03-30  Tom Tromey  <tom@tromey.com>
10002
10003         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
10004         (struct dwo_file_deleter): New.
10005         (dwo_file_up): New typedef.
10006         (open_and_init_dwo_file): Use dwo_file_up.
10007         (free_dwo_file_cleanup): Remove.
10008
10009 2018-03-30  Tom Tromey  <tom@tromey.com>
10010
10011         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
10012         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
10013
10014 2018-03-30  Tom Tromey  <tom@tromey.com>
10015
10016         * dwarf2read.c (class free_cached_comp_units): New class.
10017         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
10018         (free_cached_comp_units): Remove function.
10019
10020 2018-03-30  Tom Tromey  <tom@tromey.com>
10021
10022         * utils.h (make_cleanup_unpush_target): Remove.
10023         * inf-ptrace.c (struct target_unpusher): New.
10024         (target_unpush_up) New typedef.
10025         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
10026         target_unpush_up.
10027         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
10028
10029 2018-03-27  Tom Tromey  <tom@tromey.com>
10030
10031         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
10032
10033 2018-03-27  Pedro Alves  <palves@redhat.com>
10034             Tom Tromey  <tom@tromey.com>
10035
10036         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
10037         destructor.  Now a class.
10038         (gdb_readline_wrapper_cleanup): Remove function.
10039         (gdb_readline_wrapper): Remove cleanups.
10040
10041 2018-03-27  Tom Tromey  <tom@tromey.com>
10042
10043         * typeprint.h (struct type_print_options) <local_typedefs,
10044         global_typedefs>: Remove "struct" keyword.
10045         (class typedef_hash_table): New class.
10046         (recursively_update_typedef_hash, add_template_parameters)
10047         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
10048         (find_typedef_in_hash): Don't declare.
10049         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
10050         (typedef_hash_table::recursively_update): Rename from
10051         recursively_update_typedef_hash.  Now a member.
10052         (typedef_hash_table::add_template_parameters): Rename from
10053         add_template_parameters.  Now a member.
10054         (typedef_hash_table::typedef_hash_table): Now a constructor;
10055         rename from create_typedef_hash.
10056         (typedef_hash_table::~typedef_hash_table): Now a destructor;
10057         rename from free_typedef_hash.
10058         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
10059         (do_free_global_table): Remove.
10060         (typedef_hash_table::typedef_hash_table): New constructor; renamed
10061         from copy_type_recursive.
10062         (create_global_typedef_table): Remove.
10063         (typedef_hash_table::find_global_typedef): Now a member of
10064         typedef_hash_table.
10065         (typedef_hash_table::find_typedef): Rename from
10066         find_typedef_in_hash; now a member.
10067         (whatis_exp): Update.
10068         * extension.h (struct ext_lang_type_printers): Add constructor and
10069         destructor.
10070         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
10071         declare.
10072         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
10073         Now a constructor; rename from start_ext_lang_type_printers.
10074         (ext_lang_type_printers): Now a destructor; rename from
10075         free_ext_lang_type_printers.
10076         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
10077         Update.
10078         (c_type_print_base_struct_union): Update.  Remove cleanups.
10079
10080 2018-03-27  Tom Tromey  <tom@tromey.com>
10081
10082         * dwarf-index-write.c: Include <cmath>.
10083
10084 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
10085
10086         * NEWS: Add entry describing new "set|show varsize-limit" command.
10087         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
10088         command.
10089         * printcmd.c (_initialize_printcmd): Add "set var" alias of
10090         "set variable".
10091
10092 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
10093
10094         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
10095         dwarf-index-write.c
10096         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
10097         * dwarf-index-common.c: New file.
10098         * dwarf-index-common.h: New file.
10099         * dwarf-index-write.c: New file.
10100         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
10101         (struct dwarf2_section_info): Move from here.
10102         (dwarf2_section_info_def): Likewise.
10103         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
10104         (offset_type): Likewise.
10105         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
10106         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
10107         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
10108         (byte_swap): Likewise.
10109         (MAYBE_SWAP): Likewise.
10110         (dwarf2_per_cu_ptr): Likewise.
10111         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
10112         (struct tu_stats): Likewise.
10113         (struct dwarf2_per_objfile): Likewise.
10114         (struct dwarf2_per_cu_data): Likewise.
10115         (struct signatured_type): Likewise.
10116         (sig_type_ptr): Likewise.
10117         (DEF_VEC_P (sig_type_ptr)): Likewise.
10118         (INDEX4_SUFFIX): Likewise.
10119         (INDEX5_SUFFIX): Likewise.
10120         (DEBUG_STR_SUFFIX): Likewise.
10121         (dwarf2_read_section): Make non-static.
10122         (mapped_index_string_hash): Move from here.
10123         (dwarf5_djb_hash): Likewise.
10124         (file_write): Likewise.
10125         (class data_buf): Likewise.
10126         (struct symtab_index_entry): Likewise.
10127         (struct mapped_symtab): Likewise.
10128         (find_slot): Likewise.
10129         (hash_expand): Likewise.
10130         (add_index_entry): Likewise.
10131         (uniquify_cu_indices): Likewise.
10132         (class c_str_view): Likewise.
10133         (class c_str_view_hasher): Likewise.
10134         (class vector_hasher): Likewise.
10135         (write_hash_table): Likewise.
10136         (psym_index_map): Likewise.
10137         (struct addrmap_index_data): Likewise.
10138         (add_address_entry): Likewise.
10139         (add_address_entry_worker): Likewise.
10140         (write_address_map): Likewise.
10141         (symbol_kind): Likewise.
10142         (write_psymbols): Likewise.
10143         (struct signatured_type_index_data): Likewise.
10144         (write_one_signatured_type): Likewise.
10145         (recursively_count_psymbols): Likewise.
10146         (recursively_write_psymbols): Likewise.
10147         (class debug_names): Likewise.
10148         (check_dwarf64_offsets): Likewise.
10149         (psyms_seen_size): Likewise.
10150         (write_gdbindex): Likewise.
10151         (write_debug_names): Likewise.
10152         (assert_file_size): Likewise.
10153         (write_psymtabs_to_index): Likewise.
10154         (save_gdb_index_command): Likewise.
10155         (_initialize_dwarf2_read): Don't register the "save gdb-index"
10156         command.
10157         * dwarf2read.h: New file.
10158
10159 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
10160
10161         PR gdb/22670
10162         * dwarf2read.c (dwarf2_physname): Do not return the demangled
10163         symbol name if the CU's language stores symbol names in linkage
10164         format.
10165         * language.h (struct language_defn)
10166         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
10167         all instances of this struct.
10168
10169 2018-03-26  Tom Tromey  <tom@tromey.com>
10170
10171         * stack.c (backtrace_command_1): Remove verbose code.
10172
10173 2018-03-26  Tom Tromey  <tom@tromey.com>
10174
10175         * python/py-framefilter.c (py_print_type): Don't catch
10176         exceptions.  Return void.
10177         (py_print_value): Likewise.
10178         (py_print_single_arg): Likewise.
10179         (enumerate_args): Don't catch exceptions.
10180         (py_print_args): Likewise.
10181         (py_print_frame): Likewise.
10182         (gdbpy_apply_frame_filter): Catch exceptions here.
10183
10184 2018-03-26  Tom Tromey  <tom@tromey.com>
10185
10186         * stack.c (_initialize_stack): Remove trailing newlines from help
10187         text.  Add "Usage" line to "backtrace" help.
10188
10189 2018-03-26  Tom Tromey  <tom@tromey.com>
10190
10191         PR python/16486:
10192         * python/py-framefilter.c (py_print_args): Call wrap_hint.
10193
10194 2018-03-26  Tom Tromey  <tom@tromey.com>
10195
10196         * python/py-framefilter.c (py_print_single_arg): Return
10197         EXT_LANG_BT_ERROR from catch.
10198
10199 2018-03-26  Tom Tromey  <tom@tromey.com>
10200
10201         PR backtrace/15584:
10202         * stack.c (backtrace_command_1): Move some code into no-filters
10203         "if".
10204
10205 2018-03-26  Tom Tromey  <tom@tromey.com>
10206
10207         * python/py-framefilter.c (throw_quit_or_print_exception): New
10208         function.
10209         (gdbpy_apply_frame_filter): Use it.
10210
10211 2018-03-26  Tom Tromey  <tom@tromey.com>
10212
10213         PR cli/17716:
10214         * python/py-framefilter.c (py_print_type, py_print_value)
10215         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
10216         RETURN_MASK_ERROR.
10217
10218 2018-03-26  Tom Tromey  <tom@tromey.com>
10219
10220         * python/py-framefilter.c (enumerate_args): Use
10221         gdb::unique_xmalloc_ptr.
10222
10223 2018-03-26  Tom Tromey  <tom@tromey.com>
10224
10225         * python/py-framefilter.c (py_print_frame): Return
10226         EXT_LANG_BT_OK.
10227         (gdbpy_apply_frame_filter): Update comment.
10228         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
10229         Remove.
10230         <EXT_LANG_BT_NO_FILTERS>: Change value.
10231
10232 2018-03-26  Tom Tromey  <tom@tromey.com>
10233
10234         PR backtrace/15582:
10235         * stack.c (backtrace_command): Parse "hide" argument.
10236         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
10237         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
10238         constant.
10239
10240 2018-03-26  Tom Tromey  <tom@tromey.com>
10241
10242         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
10243         add "flags".
10244         (backtrace_command): Remove "fulltrace", add "flags".
10245
10246 2018-03-26  Tom Tromey  <tom@tromey.com>
10247
10248         * stack.c (backtrace_command): Rewrite command line parsing.
10249
10250 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
10251
10252         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
10253
10254 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
10255
10256         * filename-seen-cache.h: Add include guard.
10257
10258 2018-03-26  Keith Seitz  <keiths@redhat.com>
10259
10260         * symfile.c (place_section): Remove "struct" from section_addr_info
10261         in comment.
10262         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
10263         "struct" keyword from section_addr_info.
10264
10265 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
10266
10267         * regformats/regdef.h (reg): Add constructors.
10268
10269 2018-03-25  Pedro Alves  <palves@redhat.com>
10270
10271         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
10272         if then/else bodies in var_func_name extraction.
10273
10274 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
10275
10276         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
10277         lookup_minimal_symbol() to find symbol entry.
10278         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
10279
10280 2018-03-23  Keith Seitz  <keiths@redhat.com>
10281
10282         PR c++/22968
10283         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
10284         nested type definitions for C++, too.
10285
10286 2018-03-23  Tom Tromey  <tom@tromey.com>
10287
10288         * machoread.c (struct oso_el): Add a constructor.  Don't define as
10289         a typedef.
10290         (macho_register_oso): Remove.
10291         (macho_symtab_read): Take a std::vector.
10292         (oso_el_compare_name): Now a std::sort comparator.
10293         (macho_symfile_read_all_oso): Take a std::vector.
10294         (macho_symfile_read): Use std::vector.  Remove cleanups.
10295
10296 2018-03-22  Tom Tromey  <tom@tromey.com>
10297
10298         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
10299         (record_full_goto_bookmark): Use std::string.
10300
10301 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10302
10303         PR tdep/18295
10304         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
10305         a single mask.
10306
10307 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10308
10309         * rs6000-tdep.c (store_insn_p): New function.
10310         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
10311         and cr_reg to their unshifted values. Use store_insn_p to
10312         match LR saves using either R1 or fdata->alloca_reg. Use
10313         store_insn_p to match CR saves. Set alloca_reg_offset
10314         when alloca_reg and framep are set. Remove lr_reg shift
10315         when assigning to fdata->lr_register.
10316
10317 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10318
10319         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
10320         command line args instead of emitting a warning.
10321
10322 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
10323
10324         * tracepoint.h (struct static_tracepoint_marker): Initialize
10325         fields, define default constructor, move constructor and move
10326         assignment, disable the rest.
10327         <str_id, extra>: Make std::string.
10328         (release_static_tracepoint_marker): Remove.
10329         (free_current_marker): Remove.
10330         * tracepoint.c (free_current_marker): Remove.
10331         (parse_static_tracepoint_marker_definition): Adjust to
10332         std::string, use new hex2str overload.
10333         (release_static_tracepoint_marker): Remove.
10334         (print_one_static_tracepoint_marker): Get marker by reference
10335         and adjust to std::string.
10336         (info_static_tracepoint_markers_command): Adjust to std::vector
10337         changes
10338         * target.h (static_tracepoint_marker_p): Remove typedef.
10339         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
10340         (struct target_ops) <to_static_tracepoint_marker_at>: Return
10341         bool.
10342         <to_static_tracepoint_markers_by_strid>: Return std::vector.
10343         * target-debug.h
10344         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
10345         (target_debug_print_std_vector_static_tracepoint_marker): New.
10346         (target_debug_print_struct_static_tracepoint_marker_p): Rename
10347         to...
10348         (target_debug_print_static_tracepoint_marker_p): ... this.
10349         * target-delegates.c: Re-generate.
10350         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
10351         Make std::string.
10352         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
10353         (decode_static_tracepoint_spec): Adjust to std::vector.
10354         (tracepoint_print_one_detail): Adjust to std::string.
10355         (strace_marker_decode_location): Adjust to std::string.
10356         (update_static_tracepoint): Adjust to std::string, remove call
10357         to release_static_tracepoint_marker.
10358         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
10359         Adjust to std::vector.
10360         * remote.c (remote_static_tracepoint_marker_at): Return bool.
10361         (remote_static_tracepoint_markers_by_strid): Adjust to
10362         std::vector.
10363         * common/rsp-low.h (hex2str): New overload with explicit count
10364         of bytes.
10365         * common/rsp-low.c (hex2str): New overload with explicit count
10366         of bytes.
10367         * unittests/rsp-low-selftests.c (test_hex2str): New function.
10368         (_initialize_rsp_low_selftests): Add test_hex2str test.
10369         * unittests/tracepoint-selftests.c
10370         (test_parse_static_tracepoint_marker_definition): Adjust to
10371         std::string.
10372
10373 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
10374
10375         * tracepoint.c (parse_static_tracepoint_marker_definition):
10376         Consider case where the definition is followed by more
10377         definitions.
10378         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10379         tracepoint-selftests.c.
10380         * unittests/tracepoint-selftests.c: New.
10381
10382 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10383
10384         * MAINTAINERS (Write After Approval): Add Pedro Franco de
10385         Carvalho.
10386
10387 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
10388
10389         * symtab.c (find_pc_sect_line): fixed indentation.
10390
10391 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
10392
10393         * symtab.c (find_pc_sect_line): now uses binary search.
10394
10395 2018-03-19  Tom Tromey  <tom@tromey.com>
10396
10397         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
10398         "IDENT" production.
10399
10400 2018-03-19  Pedro Alves  <palves@redhat.com>
10401             Tom Tromey  <tom@tromey.com>
10402
10403         * unittests/observable-selftests.c: New file.
10404         * common/observable.h: New file.
10405         * observable.h: New file.
10406         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
10407         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
10408         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
10409         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
10410         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
10411         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
10412         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
10413         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
10414         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
10415         python/py-breakpoint.c, python/py-finishbreakpoint.c,
10416         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
10417         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
10418         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
10419         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
10420         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
10421         tui/tui-interp.c, valops.c: Update all users.
10422         * tui/tui-hooks.c (tui_bp_created_observer)
10423         (tui_bp_deleted_observer, tui_bp_modified_observer)
10424         (tui_inferior_exit_observer, tui_before_prompt_observer)
10425         (tui_normal_stop_observer, tui_register_changed_observer):
10426         Remove.
10427         (tui_observers_token): New global.
10428         (attach_or_detach, tui_attach_detach_observers): New functions.
10429         (tui_install_hooks, tui_remove_hooks): Use
10430         tui_attach_detach_observers.
10431         * record-btrace.c (record_btrace_thread_observer): Remove.
10432         (record_btrace_thread_observer_token): New global.
10433         * observer.sh: Remove.
10434         * observer.c: Rename to observable.c.
10435         * observable.c (namespace gdb_observers): Define new objects.
10436         (observer_debug): Move into gdb_observers namespace.
10437         (struct observer, struct observer_list, xalloc_observer_list_node)
10438         (xfree_observer_list_node, generic_observer_attach)
10439         (generic_observer_detach, generic_observer_notify): Remove.
10440         (_initialize_observer): Update.
10441         Don't include observer.inc.
10442         * Makefile.in (generated_files): Remove observer.h, observer.inc.
10443         (clean mostlyclean): Likewise.
10444         (observer.h, observer.inc): Remove targets.
10445         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
10446         (COMMON_SFILES): Use observable.c, not observer.c.
10447         * .gitignore: Remove observer.h.
10448
10449 2018-03-18  Tom Tromey  <tom@tromey.com>
10450
10451         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
10452         gdb::def_vector.
10453         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
10454
10455 2018-03-17  Tom Tromey  <tom@tromey.com>
10456
10457         * auto-load.c (auto_load_objfile_script_1): Use std::string.
10458
10459 2018-03-17  Tom Tromey  <tom@tromey.com>
10460
10461         * target.c (class scoped_target_fd): New.
10462         (target_fileio_close_cleanup): Remove.
10463         (target_fileio_read_alloc_1): Use scoped_target_fd.
10464
10465 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
10466
10467         * silent-rules.mk: New.
10468         * Makefile.in: Include silent-rules.mk
10469         (srcdir, VPATH, top_srcdir): Move up.
10470         (COMPILE): Add ECHO_CXX.
10471         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
10472         (init.c): Add ECHO_INIT_C.
10473         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
10474         (version.c): Add ECHO_GEN.
10475         (printcmd.o): Add ECHO_CXX.
10476         (target-float.o): Add ECHO_CXX.
10477         (ada-exp.o): Add ECHO_CXX.
10478         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
10479         (insight$(EXEEXT)): Add ECHO_CXXLD.
10480         * gnulib/configure.ac: Add AM_SILENT_RULES.
10481         * gnulib/aclocal.m4: Re-generate.
10482         * gnulib/configure: Re-generate.
10483         * gnulib/import/Makefile.in: Re-generate.
10484
10485 2018-03-16  Tom Tromey  <tom@tromey.com>
10486
10487         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
10488         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
10489         * utils.c (do_free_section_addr_info)
10490         (make_cleanup_free_section_addr_info): Remove.
10491         * symfile.h (struct other_sections): Add constructor.
10492         (struct section_addr_info): Remove.
10493         (section_addr_info): New typedef.
10494         (struct sym_fns) <sym_offsets>: Change type of parameter.
10495         (build_section_addr_info_from_objfile)
10496         (relative_addr_info_to_section_offsets, addr_info_make_relative)
10497         (default_symfile_offsets, symbol_file_add)
10498         (symbol_file_add_from_bfd)
10499         (build_section_addr_info_from_section_table): Update.
10500         (alloc_section_addr_info, free_section_addr_info): Don't declare.
10501         * symfile.c (alloc_section_addr_info): Remove.
10502         (build_section_addr_info_from_section_table): Change return type.
10503         Update.
10504         (build_section_addr_info_from_bfd)
10505         (build_section_addr_info_from_objfile): Likewise.
10506         (free_section_addr_info): Remove.
10507         (relative_addr_info_to_section_offsets): Change type of "addrs".
10508         (addrs_section_compar): Now a std::sort comparator.
10509         (addrs_section_sort): Change return type.
10510         (addr_info_make_relative): Change type of "addrs".  Update.
10511         (default_symfile_offsets, syms_from_objfile_1)
10512         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
10513         (symbol_file_add_separate): Update.
10514         (symbol_file_add): Change type of "addrs".  Update.
10515         (add_symbol_file_command): Update.  Remove cleanups.
10516         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
10517         cleanups.
10518         * symfile-debug.c (debug_sym_offsets): Change type of "info".
10519         * solib.c (solib_read_symbols): Update.
10520         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
10521         * machoread.c (macho_symfile_offsets): Update.
10522         * jit.c (jit_bfd_try_read_symtab): Update.
10523
10524 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
10525
10526         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10527         unittests/utils-selftests.c.
10528         * unittests/utils-selftests.c: New file.
10529
10530 2018-03-14  Tom Tromey  <tom@tromey.com>
10531
10532         PR cli/14977:
10533         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
10534         for NULL.
10535
10536 2018-03-14  Tom Tromey  <tom@tromey.com>
10537
10538         PR cli/19918:
10539         * printcmd.c (printf_pointer): Allow "-" in format.
10540
10541 2018-03-14  Tom Tromey  <tom@tromey.com>
10542
10543         * printcmd.c (_initialize_printcmd): Add usage to printf.
10544
10545 2018-03-14  Yao Qi  <qiyao@sourceware.org>
10546
10547         * MAINTAINERS: Update my email address.
10548
10549 2018-03-13  Tom Tromey  <tom@tromey.com>
10550
10551         * machoread.c (macho_check_dsym): Change filenamep to a
10552         std::string*.
10553         (macho_symfile_read): Update.
10554         * symfile.c (load_command): Use std::string.
10555
10556 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
10557
10558         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
10559         to error message string.
10560         (riscv_register_name): Use xsnprintf instead of sprintf.
10561         (riscv_insn::fetch_instruction): Use gdb_assert instead of
10562         internal_error.
10563         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
10564         error.
10565         (riscv_push_dummy_call): Likewise.
10566
10567 2018-03-12  Tom Tromey  <tom@tromey.com>
10568
10569         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
10570         Use gdb::byte_vector.
10571         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
10572
10573 2018-03-12  Yao Qi  <yao.qi@linaro.org>
10574
10575         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
10576         parameter type to readable_regcache.
10577         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
10578         the declaration.
10579
10580 2018-03-11  Tom Tromey  <tom@tromey.com>
10581
10582         * dwarf2read.c (struct nextfield): Add initializers.
10583         (struct nextfnfield): Remove.
10584         (struct fnfieldlist): Add initializers.  Remove "length" and
10585         "head", use std::vector.
10586         (struct decl_field_list): Remove.
10587         (struct field_info): Add initializers.
10588         <fields, baseclasses>: Now std::vector.
10589         <nbaseclasses, nfnfields, typedef_field_list_count,
10590         nested_types_list_count>: Remove.
10591         (dwarf2_add_field, dwarf2_add_type_defn)
10592         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
10593         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
10594         (process_structure_scope): Update.
10595
10596 2018-03-11  Tom Tromey  <tom@tromey.com>
10597
10598         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
10599         for use by std::sort.
10600         (build_type_psymtabs_1): Use std::vector.
10601
10602 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
10603
10604         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
10605         and LIBMPFR in the printed configuration.
10606
10607 2018-03-08  Tom Tromey  <tom@tromey.com>
10608
10609         * source.c (get_filename_and_charpos): Use scoped_fd.
10610         * nto-procfs.c (procfs_open_1): Use scoped_fd.
10611         (procfs_pidlist): Likewise.
10612         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
10613         (iterate_over_mappings): Likewise.
10614
10615 2018-03-08  Tom Tromey  <tom@tromey.com>
10616
10617         * infcall.c (struct call_return_meta_info)
10618         <stack_temporaries_enabled>: Remove.
10619         (get_call_return_value, call_function_by_hand_dummy): Update.
10620         * thread.c (disable_thread_stack_temporaries): Remove.
10621         (enable_thread_stack_temporaries): Remove.
10622         (thread_stack_temporaries_enabled_p): Return bool.
10623         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
10624         (get_last_thread_stack_temporary): Update.
10625         * eval.c (evaluate_subexp): Update.
10626         * gdbthread.h (class enable_thread_stack_temporaries): Now a
10627         class, not a function.
10628         (value_ptr, value_vec): Remove typedefs.
10629         (class thread_info) <stack_temporaries_enabled>: Now bool.
10630         <stack_temporaries>: Now a std::vector.
10631         (thread_stack_temporaries_enabled_p)
10632         (value_in_thread_stack_temporaries): Return bool.
10633
10634 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
10635
10636         * remote.c (putpkt_binary): Fix omitted bytes reporting.
10637         (getpkt_or_notif_sane_1): Likewise.
10638
10639 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
10640
10641         * build-id.c (build_id_to_debug_bfd): Use std::string.
10642
10643 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
10644
10645         * build-id.c (find_separate_debug_file_by_buildid): Return
10646         std::string.
10647         * build-id.h (find_separate_debug_file_by_buildid): Return
10648         std::string.
10649         * coffread.c (coff_symfile_read): Adjust to std::string.
10650         * elfread.c (elf_symfile_read): Adjust to std::string.
10651         * symfile.c (separate_debug_file_exists): Change parameter to
10652         std::string.
10653         (find_separate_debug_file): Return std::string.
10654         (find_separate_debug_file_by_debuglink): Return std::string.
10655         * symfile.h (find_separate_debug_file_by_debuglink): Return
10656         std::string.
10657
10658 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
10659
10660         * common/xml-utils.c (xml_escape_text): Move code to...
10661         (xml_escape_text_append): ... this new function.
10662         * common/xml-utils.h (xml_escape_text_append): New declaration.
10663         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
10664         New function.
10665         (_initialize_xml_utils): register test_xml_escape_text_append as
10666         a selftest.
10667
10668 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
10669
10670         * defs.h: Remove MAX_REGISTER_SIZE.
10671         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
10672         asserts.
10673         * python/py-unwind.c (pyuw_sniffer): Likewise.
10674
10675 2018-03-07  Tom Tromey  <tom@tromey.com>
10676
10677         * linux-tdep.c (linux_info_proc): Update.
10678         * target.h (struct target_ops) <to_fileio_readlink>: Return
10679         optional<string>.
10680         (target_fileio_readlink): Return optional<string>.
10681         * remote.c (remote_hostio_readlink): Return optional<string>.
10682         * inf-child.c (inf_child_fileio_readlink): Return
10683         optional<string>.
10684         * target.c (target_fileio_readlink): Return optional<string>.
10685
10686 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
10687
10688         * regcache.c (cooked_read_test): Add riscv to the list of
10689         architectures that have a save_reggroup.
10690
10691 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10692
10693         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
10694         value is not a dynamic class object.
10695
10696 2018-03-06  Tom Tromey  <tom@tromey.com>
10697
10698         * rust-exp.y: Formatting fixes.
10699
10700 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10701
10702         * riscv-tdep.c (riscv_register_name): Remove target description
10703         support.
10704         (riscv_gdbarch_init): Remove target description check.
10705
10706 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10707
10708         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
10709         comment.
10710         * riscv-tdep.h: Likewise.
10711
10712 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10713
10714         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
10715         (riscv_pseudo_register_write): Delete.
10716         (riscv_gdbarch_init): Remove all use of pseudo registers.
10717
10718 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10719
10720         * record-btrace.c (btrace_print_lines): Replace cleanup
10721         parameter with RAII equivalents.
10722         (btrace_insn_history): Replace cleanup with RAII equivalents.
10723         * ui-out.h (make_cleanup_ui_out_list_begin_end,
10724         make_cleanup_ui_out_tuple_begin_end): Remove.
10725         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
10726         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
10727         make_cleanup_ui_out_list_begin_end): Remove.
10728
10729 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10730
10731         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
10732         parameter types to std::vector.  Use bool.
10733         (record_btrace_wait): Replace VEC(tp_t) with
10734         std::vector<thread_info *>.
10735         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
10736
10737 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10738
10739         * record-btrace.c (record_btrace_disable_callback): Remove.
10740         (struct scoped_btrace_disable): New.
10741         (record_btrace_open): Use scoped_btrace_disable.
10742
10743 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10744
10745         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
10746         reading values from registers.
10747
10748 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10749
10750         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
10751         where appropriate.
10752
10753 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10754
10755         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
10756         change parameter type.  Use GDB's print functions, and use
10757         core_addr_to_string where appropriate.
10758         (riscv_push_dummy_call): Use core_addr_to_string where
10759         appropriate, update call to riscv_print_arg_location, and reindent
10760         a few lines.
10761         (riscv_return_value): Update call to riscv_print_arg_location.
10762
10763 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10764             Tim Newsome <tim@sifive.com>
10765             Albert Ou <a0u@eecs.berkeley.edu>
10766             Darius Rad <darius@bluespec.com>
10767
10768         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
10769         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
10770         (ALLDEPFILES): Add riscv-tdep.c
10771         * configure.tgt: Add riscv support.
10772         * riscv-tdep.c: New file.
10773         * riscv-tdep.h: New file.
10774         * NEWS: Mention new target.
10775         * MAINTAINERS: Add entry for riscv.
10776
10777 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10778
10779         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
10780         fields within aggregates.
10781
10782 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
10783
10784         * record-btrace.c (btrace_print_lines): Change type of flags to
10785         gdb_disassembly_flags.
10786
10787 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10788
10789         * fbsd-nat.c: Include "inf-ptrace.h".
10790         (USE_SIGTRAP_SIGINFO): Conditionally define.
10791         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
10792         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
10793         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
10794         function.
10795         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
10796         Likewise.
10797         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
10798         Likewise.
10799         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
10800         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
10801         "supports_stopped_by_hw_breakpoint" target methods.
10802
10803 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10804
10805         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
10806         * fbsd-nat.c (debug_fbsd_nat): New variable.
10807         (show_fbsd_nat_debug): New function.
10808         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
10809         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
10810
10811 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10812
10813         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
10814         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
10815         prototype.
10816         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
10817         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
10818         method.
10819
10820 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10821
10822         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
10823         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
10824
10825 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10826
10827         * charset.c (struct charset_vector): New.
10828         (charsets): Change type to charset_vector.
10829         (find_charset_names): Adjust.
10830         (add_one): Adjust.
10831         (_initialize_charset): Adjust.
10832
10833 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10834
10835         * progspace.h (struct program_space) <deleted_solibs>: Change
10836         type to std::vector<std::string>.
10837         * progspace.c (clear_program_space_solib_cache): Adjust.
10838         * breakpoint.c (print_solib_event): Adjust.
10839         (check_status_catch_solib): Adjust.
10840         * solib.c (update_solib_list): Adjust.
10841         * ui-out.h (class ui_out) <field_string>: New overload.
10842         * ui-out.c (ui_out::field_string): New overload.
10843
10844 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10845
10846         * progspace.h (struct program_space): Add constructor and
10847         destructor, initialize fields.
10848         (add_program_space): Remove.
10849         * progspace.c (add_program_space): Rename to...
10850         (program_space::program_space): ... this.
10851         (release_program_space): Rename to...
10852         (program_space::~program_space): ... this.
10853         (delete_program_space): Use delete to delete program_space.
10854         (initialize_progspace): Use new to allocate program_space.
10855         * inferior.c (add_inferior_with_spaces): Likewise.
10856         (clone_inferior_command): Likewise.
10857         * infrun.c (follow_fork_inferior): Likewise.
10858         (handle_vfork_child_exec_or_exit): Likewise.
10859
10860 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10861
10862         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
10863         (delim_string_to_char_ptr_vec): Return std::vector of
10864         gdb::unique_xmalloc_ptr.
10865         (dirnames_to_char_ptr_vec_append): Take std::vector of
10866         gdb::unique_xmalloc_ptr.
10867         (dirnames_to_char_ptr_vec): Return std::vector of
10868         gdb::unique_xmalloc_ptr.
10869         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
10870         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
10871         (delim_string_to_char_ptr_vec): Return an std::vector of
10872         gdb::unique_xmalloc_ptr, adjust the code.
10873         (dirnames_to_char_ptr_vec_append): Take an std::vector of
10874         gdb::unique_xmalloc_ptr, adjust the code.
10875         (dirnames_to_char_ptr_vec): Return an std::vector of
10876         gdb::unique_xmalloc_ptr, adjust the code.
10877         * auto-load.c (auto_load_safe_path_vec): Change type to
10878         std::vector of gdb::unique_xmalloc_ptr.
10879         (auto_load_expand_dir_vars): Return an std::vector of
10880         gdb::unique_xmalloc_ptr, adjust the code.
10881         (auto_load_safe_path_vec_update): Adjust.
10882         (filename_is_in_auto_load_safe_path_vec): Adjust.
10883         (auto_load_objfile_script_1): Adjust.
10884         * build-id.c (build_id_to_debug_bfd): Adjust.
10885         * linux-thread-db.c (thread_db_load_search): Adjust.
10886         * source.c (add_path): Adjust.
10887         (openp): Adjust.
10888         * symfile.c (find_separate_debug_file): Adjust.
10889         * utils.c (do_free_char_ptr_vec): Remove.
10890         (make_cleanup_free_char_ptr_vec): Remove.
10891
10892 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
10893
10894         PR gdb/22907
10895         * common/pathstuff.c: Conditionally include "<windows.h>".
10896
10897 2018-03-01  Georg Sauthoff  <mail@georg.so>
10898
10899         PR gdb/22888
10900         * gcore.in: Quote variables and switch interpreter to bash.
10901
10902 2018-03-01  Tom Tromey  <tom@tromey.com>
10903
10904         * dwarf2read.c (alloc_discriminant_info): Fix default_index
10905         assertion.  Add assertion for discriminant_index.
10906         (quirk_rust_enum): Use correct base type name in univariant case.
10907
10908 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
10909
10910         * record.c (get_call_history_modifiers): Return a
10911         record_print_flags.
10912         (cmd_record_call_history): Adjust.
10913         * record-btrace.c (record_btrace_call_history): Adjust.
10914         (record_btrace_call_history_range): Adjust.
10915         (record_btrace_call_history_from): Adjust.
10916         * target-debug.h (target_debug_print_record_print_flags): New.
10917         * target-delegates.c: Re-generate.
10918         * target.c (target_call_history): Change flags type.
10919         (target_call_history_from): Likewise.
10920         (target_call_history_range): Likewise.
10921         * target.h (struct target_ops) <target_call_history>: Likewise.
10922         (target_call_history_from): Likewise.
10923         (target_call_history_range): Likewise.
10924
10925 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
10926             Simon Marchi  <simon.marchi@polymtl.ca>
10927
10928         * common/common-utils.c: Include "sys/stat.h".
10929         (is_regular_file): Move here from "source.c"; change return
10930         type to "bool".
10931         * common/common-utils.h (is_regular_file): New prototype.
10932         * common/pathstuff.c (contains_dir_separator): New function.
10933         * common/pathstuff.h (contains_dir_separator): New prototype.
10934         * source.c: Don't include "sys/stat.h".
10935         (is_regular_file): Move to "common/common-utils.c".
10936
10937 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
10938
10939         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
10940         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
10941         * auto-load.c: Include "common/pathstuff.h".
10942         * common/common-def.h (current_directory): Move here.
10943         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
10944         function.
10945         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
10946         prototype.
10947         * common/pathstuff.c: New file.
10948         * common/pathstuff.h: New file.
10949         * compile/compile.c: Include "common/pathstuff.h".
10950         * defs.h (current_directory): Move to "common/common-defs.h".
10951         * dwarf2read.c: Include "common/pathstuff.h".
10952         * exec.c: Likewise.
10953         * guile/scm-safe-call.c: Likewise.
10954         * linux-thread-db.c: Likewise.
10955         * main.c: Likewise.
10956         * nto-tdep.c: Likewise.
10957         * objfiles.c: Likewise.
10958         * source.c: Likewise.
10959         * symtab.c: Likewise.
10960         * utils.c: Include "common/pathstuff.h".
10961         (gdb_realpath): Move to "common/pathstuff.c".
10962         (gdb_realpath_keepfile): Likewise.
10963         (gdb_abspath): Likewise.
10964         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
10965         (gdb_realpath_keepfile): Likewise.
10966         (gdb_abspath): Likewise.
10967
10968 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
10969
10970         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
10971         wildcard process pid for super_resume for kernels with a
10972         specific bug.
10973
10974 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
10975
10976         * compile/compile.c (get_args): Add additional comments
10977         explaining function.
10978
10979 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
10980             Tom Tromey  <tom@tromey.com>
10981
10982         * target.h (memory_write_request_s): Remove typedef.  Don't define
10983         VEC.
10984         (target_write_memory_blocks): Change argument to std::vector.
10985         (struct memory_write_request): Add constructor.
10986         * target-memory.c (compare_block_starting_address): Return bool.
10987         Change argument types.
10988         (claim_memory): Change arguments to use std::vector.
10989         (split_regular_and_flash_blocks, blocks_to_erase)
10990         (compute_garbled_blocks): Likewise.
10991         (cleanup_request_data, cleanup_write_requests_vector): Remove.
10992         (target_write_memory_blocks): Change argument to std::vector.
10993         * symfile.c (struct load_section_data): Add constructor and
10994         destructor.  Use std::vector for "requests".
10995         (struct load_progress_data): Add initializers.
10996         (load_section_callback): Update.  Use "new".
10997         (clear_memory_write_data): Remove.
10998         (generic_load): Update.
10999
11000 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
11001
11002         * arch/aarch64.h: Use common/tdesc.h.
11003
11004 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
11005
11006         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
11007         architecture with a 64-bit ABI.
11008
11009 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
11010
11011         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
11012         ahead of target description loading.
11013
11014 2018-02-26  Tom Tromey  <tom@tromey.com>
11015
11016         * stack.c (backtrace_command_1): Update.
11017         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
11018         of "flags".
11019         * python/py-framefilter.c (py_print_frame)
11020         (gdbpy_apply_frame_filter): Change type of "flags".
11021         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
11022         of "flags".
11023         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
11024         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
11025         * extension.h (enum frame_filter_flag): Rename from
11026         frame_filter_flags.
11027         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
11028         (apply_ext_lang_frame_filter): Change type of "flags".
11029         * extension.c (apply_ext_lang_frame_filter): Change type of
11030         "flags".
11031         * extension-priv.h (struct extension_language_ops)
11032         <apply_frame_filter>: Change type of "flags".
11033
11034 2018-02-26  Tom Tromey  <tom@tromey.com>
11035
11036         PR python/16497:
11037         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
11038         off-by-one in py_end computation.
11039         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
11040         PRINT_MORE_FRAMES.
11041         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
11042         constant.
11043
11044 2018-02-26  Tom Tromey  <tom@tromey.com>
11045
11046         * dwarf2read.c (struct variant_field): New.
11047         (struct nextfield) <variant>: New field.
11048         (dwarf2_add_field): Handle DW_TAG_variant_part.
11049         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
11050         discriminated union.
11051         (read_structure_type): Handle DW_TAG_variant_part.
11052         (handle_struct_member_die): New function, extracted from
11053         process_structure_scope.  Handle DW_TAG_variant.
11054         (process_structure_scope): Handle discriminated unions.  Call
11055         handle_struct_member_die.
11056
11057 2018-02-26  Tom Tromey  <tom@tromey.com>
11058
11059         * rust-lang.h (rust_last_path_segment): Declare.
11060         * rust-lang.c (rust_last_path_segment): Now public.  Change
11061         contract.
11062         (struct disr_info): Remove.
11063         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
11064         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
11065         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
11066         (rust_enum_p, rust_enum_variant): New function.
11067         (rust_underscore_fields): Remove "offset" parameter.
11068         (rust_print_enum): New function.
11069         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
11070         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
11071         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
11072         enums.
11073         (rust_internal_print_type): New function, from rust_print_type.
11074         Remove enum code.
11075         (rust_print_type): Call rust_internal_print_type.
11076         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
11077         Update enum handling.
11078         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
11079         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
11080         (rust_union_quirks): New functions.
11081         (process_full_comp_unit, process_full_type_unit): Call
11082         rust_union_quirks.
11083         (process_structure_scope): Update rust_unions if necessary.
11084
11085 2018-02-26  Tom Tromey  <tom@tromey.com>
11086
11087         * value.h (value_union_variant): Declare.
11088         * valops.c (value_union_variant): New function.
11089         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
11090         (struct discriminant_info): New.
11091         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
11092         enumerator.
11093         (struct main_type) <flag_discriminated_union>: New field.
11094
11095 2018-02-26  Tom Tromey  <tom@tromey.com>
11096
11097         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11098         unittests/unpack-selftests.c.
11099         * unittests/unpack-selftests.c: New file.
11100         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
11101
11102 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11103
11104         * dwarf2read.c (struct partial_die_info) <read>: New method.
11105         (read_partial_die): Remove the declaration.
11106         (load_partial_dies): Update.
11107         (partial_die_info::partial_die_info):
11108         (read_partial_die): Change it to partial_die_info::read.
11109
11110 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11111
11112         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
11113         (fixup_partial_die): Remove declaration.
11114         (scan_partial_symbols): Update.
11115         (partial_die_parent_scope): Likewise.
11116         (partial_die_full_name): Likewise.
11117         (fixup_partial_die): Change it to partial_die_info::fixup.
11118
11119 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11120
11121         * dwarf2read.c (read_partial_die): Update the declaration.
11122         (load_partial_dies): Caller update.
11123         (read_partial_die): Remove one argument abbrev_len.
11124
11125 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11126
11127         * dwarf2read.c (struct partial_die_info): Add ctor, delete
11128         assignment operator.
11129         (load_partial_dies): Use ctor and copy ctor.
11130         (read_partial_die): Update.
11131         (dwarf2_cu::find_partial_die): Use ctor.
11132
11133 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11134
11135         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
11136         (find_partial_die_in_comp_unit): Change it to
11137         dwarf2_cu::find_partial_die.
11138         (find_partial_die): Update.
11139
11140 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11141
11142         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
11143         is NULL.
11144
11145 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11146
11147         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
11148
11149 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
11150
11151         * arch/amd64.h: Use common/tdesc.h.
11152         * arch/i386.c: Likewise.
11153         * arch/i386.h: Likewise.
11154         * arch/tic6x.c: Likewise.
11155         * arch/tdesc.h: Move file from here...
11156         * common/tdesc.h: ...to here.
11157         * features/aarch64-core.c: Regenerate.
11158         * features/aarch64-fpu.c: Regenerate.
11159         * features/i386/32bit-avx.c: Regenerate.
11160         * features/i386/32bit-avx512.c: Regenerate.
11161         * features/i386/32bit-core.c: Regenerate.
11162         * features/i386/32bit-linux.c: Regenerate.
11163         * features/i386/32bit-mpx.c: Regenerate.
11164         * features/i386/32bit-pkeys.c: Regenerate.
11165         * features/i386/32bit-sse.c: Regenerate.
11166         * features/i386/64bit-avx.c: Regenerate.
11167         * features/i386/64bit-avx512.c: Regenerate.
11168         * features/i386/64bit-core.c: Regenerate.
11169         * features/i386/64bit-linux.c: Regenerate.
11170         * features/i386/64bit-mpx.c: Regenerate.
11171         * features/i386/64bit-pkeys.c: Regenerate.
11172         * features/i386/64bit-segments.c: Regenerate.
11173         * features/i386/64bit-sse.c: Regenerate.
11174         * features/i386/x32-core.c: Regenerate.
11175         * features/tic6x-c6xp.c: Regenerate.
11176         * features/tic6x-core.c: Regenerate.
11177         * features/tic6x-gp.c: Regenerate.
11178         * target-descriptions.c: Use common/tdesc.h.
11179         * target-descriptions.h: Likewise.
11180
11181 2018-02-24  Tom Tromey  <tom@tromey.com>
11182
11183         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
11184         (try_thread_db_load_from_dir, thread_db_load_search): Use
11185         std::string.
11186         (info_auto_load_libthread_db_compare): Return bool.  Change
11187         argument types.
11188         (info_auto_load_libthread_db): Use std::vector, std::string.
11189         Remove cleanups.
11190
11191 2018-02-24  Tom Tromey  <tom@tromey.com>
11192
11193         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
11194         std::string.
11195         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
11196         std::string*.
11197         * gdbarch.c: Rebuild.
11198         * gdbarch.h: Rebuild.
11199         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
11200         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
11201         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
11202         std::string*.
11203
11204 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
11205
11206         * gdbtypes.h (sect_offset): Change type to uint64_t.
11207         (sect_offset_str): New function.
11208         * dwarf2read.c (create_addrmap_from_aranges): Use
11209         sect_offset_str.
11210         (error_check_comp_unit_head): Likewise.
11211         (create_debug_type_hash_table): Likewise.
11212         (read_cutu_die_from_dwo): Likewise.
11213         (init_cutu_and_read_dies): Likewise.
11214         (init_cutu_and_read_dies_no_follow): Likewise.
11215         (process_psymtab_comp_unit_reader): Likewise.
11216         (partial_die_parent_scope): Likewise.
11217         (peek_die_abbrev): Likewise.
11218         (process_queue): Likewise.
11219         (dwarf2_physname): Likewise.
11220         (read_namespace_alias): Likewise.
11221         (read_import_statement): Likewise.
11222         (create_dwo_cu_reader): Likewise.
11223         (create_cus_hash_table): Likewise.
11224         (lookup_dwo_cutu): Likewise.
11225         (inherit_abstract_dies): Likewise.
11226         (read_func_scope): Likewise.
11227         (read_call_site_scope): Likewise.
11228         (dwarf2_add_member_fn): Likewise.
11229         (read_common_block): Likewise.
11230         (read_module_type): Likewise.
11231         (read_typedef): Likewise.
11232         (read_subrange_type): Likewise.
11233         (load_partial_dies): Likewise.
11234         (read_partial_die): Likewise.
11235         (find_partial_die): Likewise.
11236         (read_str_index): Likewise.
11237         (dwarf2_string_attr): Likewise.
11238         (build_error_marker_type): Likewise.
11239         (lookup_die_type): Likewise.
11240         (dump_die_shallow): Likewise.
11241         (follow_die_ref): Likewise.
11242         (dwarf2_fetch_die_loc_sect_off): Likewise.
11243         (dwarf2_fetch_constant_bytes): Likewise.
11244         (follow_die_sig): Likewise.
11245         (get_signatured_type): Likewise.
11246         (get_DW_AT_signature_type): Likewise.
11247         (dwarf2_find_containing_comp_unit): Likewise.
11248         (set_die_type): Likewise.
11249
11250 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
11251
11252         * arch/aarch64.c: Include "common-defs.h".
11253         * arch/amd64.c: Likewise.
11254         * arch/i386.c: Likewise.
11255
11256 2018-02-21  Tom Tromey  <tom@tromey.com>
11257
11258         * value.h: (extract_field_op): Update.
11259         * eval.c (extract_field_op): Return a const char *.
11260         * expression.h (parse_expression_for_completion): Update.
11261         * completer.c (complete_expression): Update.
11262         (add_struct_fields): Make fieldname const.
11263         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
11264         (mark_completion_tag, parse_exp_in_context_1): Update.
11265         (parse_expression_for_completion): Change "name" to
11266         unique_xmalloc_ptr*.
11267
11268 2018-02-21  Tom Tromey  <tom@tromey.com>
11269
11270         * infcall.c (call_function_by_hand_dummy): Use std::vector.
11271
11272 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11273
11274         * avr-tdep.c (avr_read_pc): Change parameter type to
11275         readable_regcache.
11276         * gdbarch.sh (read_pc): Likewise.
11277         * gdbarch.c: Re-generated.
11278         * gdbarch.h: Re-generated.
11279         * hppa-tdep.c (hppa_read_pc): Change parameter type to
11280         readable_regcache.
11281         * ia64-tdep.c (ia64_read_pc): Likewise.
11282         * mips-tdep.c (mips_read_pc): Likewise.
11283         * spu-tdep.c (spu_read_pc): Likewise.
11284
11285 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11286
11287         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
11288         * regcache-dump.c: New file.
11289         * regcache.c: Move register_dump to regcache-dump.c.
11290         (maintenance_print_registers): Likewise.
11291         (maintenance_print_raw_registers): Likewise.
11292         (maintenance_print_cooked_registers): Likewise.
11293         (maintenance_print_register_groups): Likewise.
11294         (maintenance_print_remote_registers): Likewise.
11295         (_initialize_regcache): Likewise.
11296         * regcache.h (register_dump): Moved from regcache.c.
11297
11298 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11299
11300         * regcache.c (regcache::regcache): Update.
11301         (regcache::invalidate): Move it to detached_regcache::invalidate.
11302         (get_thread_arch_aspace_regcache): Update.
11303         (regcache::raw_update): Update.
11304         (regcache::cooked_read): Remove some code.
11305         (regcache::cooked_read_value): Likewise.
11306         (regcache::raw_write): Remove assert on m_readonly_p.
11307         (regcache::raw_supply_integer): Move it to
11308         detached_regcache::raw_supply_integer.
11309         (regcache::raw_supply_zeroed): Likewise.
11310         * regcache.h (detached_regcache) <raw_supply_integer>: New
11311         declaration.
11312         <raw_supply_zeroed, invalidate>: Likewise.
11313         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
11314         <invalidate>: Likewise.
11315         <m_readonly_p>: Removed.
11316
11317 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11318
11319         * infcmd.c (get_return_value): Let stop_regs point to
11320         get_current_regcache.
11321         * regcache.c (regcache::regcache): Remove.
11322         (register_dump_reg_buffer): New class.
11323         (regcache_print): Adjust.
11324         * regcache.h (regcache): Remove constructors.
11325
11326 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11327
11328         * regcache.c (class register_dump): New class.
11329         (register_dump_regcache, register_dump_none): New class.
11330         (register_dump_remote, register_dump_groups): New class.
11331         (regcache_print): Update.
11332         * regcache.h (regcache_dump_what): Move it to regcache.c.
11333         (regcache) <dump>: Remove.
11334
11335 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11336
11337         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
11338          reg_buffer_rw *.
11339         (jit_unwind_reg_set_impl): Call raw_supply.
11340         (jit_frame_sniffer): Use reg_buffer_rw.
11341         * record-full.c (record_full_core_regbuf): Change its type.
11342         (record_full_core_open_1): Use reg_buffer_rw.
11343         (record_full_close): Likewise.
11344         (record_full_core_fetch_registers): Use regcache->raw_supply.
11345         (record_full_core_store_registers): Likewise.
11346         * regcache.c (regcache::get_register_status): Move it to
11347         reg_buffer.
11348         (regcache_raw_set_cached_value): Remove.
11349         (regcache::raw_set_cached_value): Remove.
11350         (regcache::raw_write): Call raw_supply.
11351         (regcache::raw_supply): Move it to reg_buffer_rw.
11352         * regcache.h (regcache_raw_set_cached_value): Remove.
11353         (reg_buffer_rw): New class.
11354
11355 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11356
11357         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
11358         readonly_detached_regcache.
11359         (dummy_frame_prev_register): Use regcache->cooked_read.
11360         * frame.c (frame_save_as_regcache): Change return type.
11361         (frame_pop): Update.
11362         * frame.h (frame_save_as_regcache): Update declaration.
11363         * inferior.h (get_infcall_suspend_state_regcache): Update
11364         declaration.
11365         * infrun.c (infcall_suspend_state) <registers>: use
11366         readonly_detached_regcache.
11367         (save_infcall_suspend_state): Don't use regcache_dup.
11368         (get_infcall_suspend_state_regcache): Change return type.
11369         * linux-fork.c (struct fork_info) <savedregs>: Change to
11370         readonly_detached_regcache.
11371         <pc>: New field.
11372         (fork_save_infrun_state): Don't use regcache_dup.
11373         (info_checkpoints_command): Adjust.
11374         * mi/mi-main.c (register_changed_p): Update declaration.
11375         (mi_cmd_data_list_changed_registers): Use
11376         readonly_detached_regcache.
11377         (register_changed_p): Change parameter type to
11378         readonly_detached_regcache.
11379         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
11380         readonly_detached_regcache.
11381         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
11382         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
11383         New.
11384         (regcache::save): Move it to reg_buffer.
11385         (regcache::restore): Change parameter type.
11386         (regcache_dup): Remove.
11387         * regcache.h (reg_buffer) <save>: New method.
11388         (readonly_detached_regcache): New class.
11389         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
11390         readonly_detached_regcache.
11391         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
11392
11393 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11394
11395         * frame.c (frame_save_as_regcache): Use regcache method save.
11396         (frame_pop): Use regcache method restore.
11397         * infrun.c (restore_infcall_suspend_state): Likewise.
11398         * linux-fork.c (fork_load_infrun_state): Likewise.
11399         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
11400         save.
11401         * regcache.c (regcache_save): Remove.
11402         (regcache::restore): More asserts.
11403         (regcache_cpy): Remove.
11404         * regcache.h (regcache_save): Remove the declaration.
11405         (regcache::restore): Move from private to public.
11406         Remove the friend declaration of regcache_cpy.
11407         (regcache_cpy): Remove declaration.
11408
11409 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11410
11411         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
11412         parameter type to 'readable_regcache *'.
11413         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
11414         * arm-tdep.c (arm_neon_quad_read): Likewise.
11415         (arm_pseudo_read): Likewise.
11416         * avr-tdep.c (avr_pseudo_register_read): Likewise.
11417         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
11418         * frv-tdep.c (frv_pseudo_register_read): Likewise.
11419         * gdbarch.c: Re-generated.
11420         * gdbarch.h: Re-generated.
11421         * gdbarch.sh (pseudo_register_read): Change parameter type to
11422         'readable_regcache *'.
11423         (pseudo_register_read_value): Likewise.
11424         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
11425         (h8300_pseudo_register_read): Likewise.
11426         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
11427         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
11428         (i386_pseudo_register_read_into_value): Likewise.
11429         (i386_pseudo_register_read_value): Likewise.
11430         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
11431         declaration.
11432         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
11433         * m32c-tdep.c (m32c_raw_read): Likewise.
11434         (m32c_read_flg): Likewise.
11435         (m32c_banked_register): Likewise.
11436         (m32c_banked_read): Likewise.
11437         (m32c_sb_read): Likewise.
11438         (m32c_part_read): Likewise.
11439         (m32c_cat_read): Likewise.
11440         (m32c_r3r2r1r0_read): Likewise.
11441         (m32c_pseudo_register_read): Likewise.
11442         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
11443         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
11444         (mep_pseudo_cr64_read): Likewise.
11445         (mep_pseudo_register_read): Likewise.
11446         * mips-tdep.c (mips_pseudo_register_read): Likewise.
11447         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
11448         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
11449         * regcache.c (regcache::raw_read): Move it to readable_regcache.
11450         (regcache::cooked_read): Likewise.
11451         (regcache::cooked_read_value): Likewise.
11452         (regcache_cooked_read_signed):
11453         (regcache::cooked_read): Likewise.
11454         * regcache.h (readable_regcache): New class.
11455         (regcache): Inherit readable_regcache.  Move some methods to
11456         readable_regcache.
11457         * rl78-tdep.c (rl78_pseudo_register_read): Change
11458         parameter type to 'readable_regcache *'.
11459         * rs6000-tdep.c (do_regcache_raw_read): Remove.
11460         (e500_pseudo_register_read): Change parameter type to
11461         'readable_regcache *'.
11462         (dfp_pseudo_register_read): Likewise.
11463         (vsx_pseudo_register_read): Likewise.
11464         (efpr_pseudo_register_read): Likewise.
11465         * s390-tdep.c (s390_pseudo_register_read): Likewise.
11466         * sh-tdep.c (sh_pseudo_register_read): Likewise.
11467         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
11468         (sh64_pseudo_register_read): Likewise.
11469         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
11470         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
11471         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
11472         (spu_pseudo_register_read): Likewise.
11473         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
11474         (xtensa_pseudo_register_read): Likewise.
11475
11476 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11477
11478         * regcache.c (regcache::regcache): Call reg_buffer ctor.
11479         (regcache::arch): Move it to reg_buffer::arch.
11480         (regcache::register_buffer): Likewise.
11481         (regcache::assert_regnum): Likewise.
11482         (regcache::num_raw_registers): Likewise.
11483         * regcache.h (reg_buffer): New class.
11484         (regcache): Inherit reg_buffer.
11485
11486 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
11487
11488         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
11489         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
11490
11491 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
11492
11493         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
11494
11495 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
11496
11497         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
11498         (SFILES): Remove common/*.c files.
11499         (COMMON_OBS): Remove some *.o files built from common/*.c files.
11500         * common/common.host: Add common reference.
11501         * configure.ac: Likewise.
11502         * configure: Regenerate.
11503
11504 2018-02-16  Yao Qi  <yao.qi@linaro.org>
11505
11506         * block.c (block_namespace_info): Inherit allocate_on_obstack.
11507         (block_initialize_namespace): Use new.
11508         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
11509         (dwarf2_free_objfile): Use delete.
11510         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
11511         (copy_type_recursive): Use new.
11512         * gdb_obstack.h (allocate_on_obstack): New.
11513
11514 2018-02-15  Yao Qi  <yao.qi@linaro.org>
11515
11516         PR gdb/22849
11517         * inferior.c (exit_inferior_1): Reset inf->control.
11518
11519 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
11520
11521         * ada-lang.c (ada_to_fixed_value_create): Delete advance
11522         declaration.
11523
11524 2018-02-14  Pedro Alves  <palves@redhat.com>
11525
11526         * frame-unwind.c (frame_unwind_try_unwinder): Always call
11527         frame_cleanup_after_sniffer on exception.
11528
11529 2018-02-14  Tom Tromey  <tom@tromey.com>
11530
11531         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
11532         const.
11533         (solib_bfd_open): Make pathname const.
11534         * solib.c (solib_bfd_open): Make pathname const.
11535         * solib-spu.c (spu_bfd_fopen): Make name const.
11536         (spu_bfd_open): Make pathname const.
11537         * solib-darwin.c (darwin_bfd_open): Make pathname const.
11538         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
11539
11540 2018-02-14  Tom Tromey  <tom@tromey.com>
11541
11542         * symfile.c (symfile_bfd_open): Update.
11543         * source.h (openp, source_full_path_of, find_and_open_source):
11544         Change argument type to unique_xmalloc_ptr.
11545         * source.c (openp): Take a unique_xmalloc_ptr.
11546         (source_full_path_of, find_and_open_source): Likewise.
11547         (open_source_file, symtab_to_fullname): Update.
11548         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
11549         unique_xmalloc_ptr.
11550         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
11551         (exec_file_find): Update.
11552         * psymtab.c (psymtab_to_fullname): Update.
11553         * nto-tdep.h (nto_find_and_open_solib): Update.
11554         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
11555         unique_xmalloc_ptr.
11556         * exec.c (exec_file_attach): Update.
11557         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
11558         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
11559
11560 2018-02-14  Tom Tromey  <tom@tromey.com>
11561
11562         * solib.c: Include source.h.
11563         * nto-tdep.c: Include source.h.
11564         * mi/mi-cmd-env.c: Include source.h.
11565         * infcmd.c: Include source.h.
11566         * exec.c: Include source.h.
11567         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
11568         (add_path, directory_switch, source_path, init_source_path): Move
11569         declarations...
11570         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
11571         (add_path, directory_switch, source_path, init_source_path):
11572         ...here.
11573
11574 2018-02-14  Tom Tromey  <tom@tromey.com>
11575
11576         * solist.h (exec_file_find, solib_find): Return
11577         unique_xmalloc_ptr.
11578         (solib_bfd_fopen): Take a const char *.
11579         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
11580         (exec_file_find, solib_find): Likewise.
11581         (solib_bfd_fopen): Do not take ownership of "pathname".
11582         (solib_bfd_open): Use unique_xmalloc_ptr.
11583         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
11584         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
11585         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
11586         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
11587
11588 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
11589
11590         * ada-lang.c (name_match_type_from_name): Remove reference to
11591         ada_name_for_lookup in function's documentation.
11592         * ada-lang.h (ada_name_for_lookup): Delete declaration.
11593
11594 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
11595
11596         * defs.h (enum openp_flags): New enum.
11597         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
11598         Move to enum openp_flags.
11599         (openp_flags): New enum flags.
11600         (openp): Change parameter type to openp_flags.
11601         * source.c (openp): Change parameter type to openp_flags.
11602         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
11603         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
11604
11605 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
11606
11607         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
11608         per-command.
11609
11610 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
11611
11612         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
11613         into...
11614         (class dwarf2_queue_guard): ...the destructor of this new class.
11615         (dw2_do_instantiate_symtab): Create instance of the new class
11616         dwarf2_queue_guard, remove cleanup.
11617
11618 2018-02-09  Tom Tromey  <tom@tromey.com>
11619
11620         * source.c (find_source_lines): Don't reference past the end of
11621         the vector.
11622
11623 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11624
11625         * remote.c (remote_btrace_maybe_reopen): Change error message.
11626         * btrace.c (btrace_enable): Likewise.
11627         (parse_xml_btrace): Likewise.
11628         (parse_xml_btrace_conf): Likewise.
11629
11630 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11631
11632         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
11633         (linux_enable_pt, linux_enable_bts): Call
11634         diagnose_perf_event_open_fail.
11635
11636 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11637
11638         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
11639         Remove parameter and change return type.  Update callers.  Move it.
11640         (linux_enable_bts, linux_enable_pt): Improve error message.
11641         (linux_enable_pt): Remove zero buffer size check.
11642         (linux_enable_btrace): Improve error messages.  Remove NULL return
11643         check.
11644
11645 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11646
11647         * btrace.c (btrace_enable): Remove target_supports_btrace call.
11648         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
11649         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
11650         (linux_supports_pt, linux_supports_btrace): Remove.
11651         (linux_enable_bts): Call cpu_supports_bts.
11652         * nat/linux-btrace.h (linux_supports_btrace): Remove.
11653         * remote.c (remote_supports_btrace): Remove.
11654         (init_remote_ops): Remove remote_supports_btrace.
11655         * target-delegates.c: Regenerated.
11656         * target.c (target_supports_btrace): Remove.
11657         * target.h (target_ops) <to_supports_btrace>: Remove
11658         (target_supports_btrace): Remove.
11659         * x86-linux-nat.c (x86_linux_create_target): Remove
11660         linux_supports_btrace.
11661
11662 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11663
11664         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
11665         btrace failed.
11666         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
11667         exception and use message in own exception.
11668
11669 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11670
11671         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
11672         (perf_event_pt_event_type): Use gdb_file_up.
11673         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
11674         scoped_fd, and scoped_mmap.
11675
11676 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11677
11678         * common/scoped_mmap.h: New.
11679         * unittests/scoped_mmap-selftest.c: New.
11680         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11681         unittests/scoped_mmap-selftest.c.
11682
11683 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11684
11685         * common/scoped_fd.h: New.
11686         * unittests/scoped_fd-selftest.c: New.
11687         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11688         unittests/scoped_fd-selftest.c.
11689
11690 2018-02-09  Tom Tromey  <tom@tromey.com>
11691
11692         * auto-load.c (auto_load_section_scripts): Use
11693         gdb::unique_xmalloc_ptr.
11694
11695 2018-02-09  Tom Tromey  <tom@tromey.com>
11696
11697         * auto-load.c (execute_script_contents): Use std::string.
11698
11699 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
11700
11701         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
11702         Python function, rather than a new command.
11703
11704 2018-02-08  Tom Tromey  <tom@tromey.com>
11705
11706         * solib.c (solib_find_1): Use std::string.
11707         (solib_bfd_fopen): Use unique_xmalloc_ptr.
11708
11709 2018-02-08  Tom Tromey  <tom@tromey.com>
11710
11711         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
11712
11713 2018-02-08  Tom Tromey  <tom@tromey.com>
11714
11715         * source.c (find_source_lines): Use gdb::def_vector.
11716
11717 2018-02-08  Tom Tromey  <tom@tromey.com>
11718
11719         * macrocmd.c (struct temporary_macro_definition): New.
11720         (macro_define_command): Use temporary_macro_definition.  Remove
11721         cleanups.
11722         (free_macro_definition_ptr): Remove.
11723
11724 2018-02-08  Tom Tromey  <tom@tromey.com>
11725
11726         * macroexp.c (maybe_expand): Use std::string.
11727
11728 2018-02-08  Tom Tromey  <tom@tromey.com>
11729
11730         * macroexp.c (struct macro_buffer): Add initializers for some
11731         members.
11732         (init_buffer, init_shared_buffer, free_buffer)
11733         (free_buffer_return_text): Remove.
11734         (macro_buffer): New constructors.
11735         (~macro_buffer): New destructor.
11736         (macro_buffer::set_shared): New method.
11737         (macro_buffer::resize_buffer, macro_buffer::appendc)
11738         (macro_buffer::appendmem): Now methods, not free functions.
11739         (set_token, append_tokens_without_splicing, stringify)
11740         (macro_stringify): Update.
11741         (gather_arguments): Change return type.  Remove argc_p argument,
11742         add args_ptr argument.  Use std::vector.
11743         (substitute_args): Remove argc argument.  Accept std::vector.
11744         (expand): Update.  Use std::vector.
11745         (scan, macro_expand, macro_expand_next): Update.
11746
11747 2018-02-08  Tom Tromey  <tom@tromey.com>
11748
11749         * symtab.c (default_collect_symbol_completion_matches_break_on):
11750         Use unique_xmalloc_ptr.
11751         * macroscope.h: (sal_macro_scope, user_macro_scope)
11752         (default_macro_scope): Return unique_xmalloc_ptr.
11753         * macroscope.c (sal_macro_scope, user_macro_scope)
11754         (default_macro_scope): Return unique_xmalloc_ptr.
11755         * macroexp.h (macro_expand, macro_expand_once): Return
11756         unique_xmalloc_ptr.
11757         * macroexp.c (macro_expand, macro_expand_once): Return
11758         unique_xmalloc_ptr.
11759         * macrocmd.c (macro_expand_command, macro_expand_once_command)
11760         (info_macro_command, info_macros_command): Use
11761         unique_xmalloc_ptr.
11762         * compile/compile-c-support.c (write_macro_definitions): Use
11763         unique_xmalloc_ptr.
11764         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
11765
11766 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
11767
11768         * value.c (value_static_field): Assign field type instead of
11769         containing type when returning an optimized out value.
11770
11771 2018-02-06  Yao Qi  <yao.qi@linaro.org>
11772
11773         * ft32-tdep.c (ft32_read_pc): Remove.
11774         (ft32_write_pc): Remove.
11775         (ft32_gdbarch_init): Update.
11776         * m32r-tdep.c (m32r_read_pc): Remove.
11777         (m32r_gdbarch_init): Update.
11778         * mep-tdep.c (mep_read_pc): Remove.
11779         (mep_gdbarch_init): Update.
11780         * microblaze-tdep.c (microblaze_write_pc): Remove.
11781         (microblaze_gdbarch_init): Update.
11782         * mn10300-tdep.c (mn10300_read_pc): Remove.
11783         (mn10300_write_pc): Remove.
11784         (mn10300_gdbarch_init): Update.
11785         * moxie-tdep.c (moxie_read_pc): Remove.
11786         (moxie_write_pc): Remove.
11787         (moxie_gdbarch_init): Update.
11788
11789 2018-02-06  Yao Qi  <yao.qi@linaro.org>
11790
11791         * expprint.c (print_subexp_standard): Handle
11792         OP_F77_UNDETERMINED_ARGLIST.
11793         (dump_subexp_body_standard): Likewise.
11794
11795 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
11796
11797         * target-descriptions.c (tdesc_element_visitor) Add empty
11798         implementations.
11799         (tdesc_type): Move make_gdb_type from here.
11800         (tdesc_type_builtin): Likewise.
11801         (tdesc_type_vector): Likewise.
11802         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
11803         (make_gdb_type_struct): Move from tdesc_type_with_fields.
11804         (make_gdb_type_union): Likewise.
11805         (make_gdb_type_flags): Likewise.
11806         (make_gdb_type_enum): Likewise.
11807         (make_gdb_type): New function.
11808         (tdesc_register_type): Use static make_gdb_type.
11809
11810 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
11811
11812         * infcmd.c (default_print_one_register_info): Align natural-format
11813         column values consistently one under another.
11814         (pad_to_column): New function.
11815
11816 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
11817
11818         * dwarf2read.c (dwarf2_physname): Move commment.
11819
11820 2018-02-01  Leszek Swirski  <leszeks@google.com>
11821
11822         * varobj.c (varobj_formatted_print_options): Allow recursive
11823         pretty printing if pretty printing is enabled.
11824
11825 2018-02-01  Leszek Swirski  <leszeks@google.com>
11826
11827         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
11828         names after a structop as a filename.
11829
11830 2018-02-01  Yao Qi  <yao.qi@linaro.org>
11831
11832         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
11833         (arm_record_coproc_data_proc): Likewise.
11834
11835 2018-02-01  Yao Qi  <yao.qi@linaro.org>
11836
11837         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
11838
11839 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
11840
11841         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
11842         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
11843
11844 2018-01-31  Pedro Alves  <palves@redhat.com>
11845
11846         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
11847         * inflow.c (child_terminal_save_inferior): Wrap reference to
11848         tcgetpgrp in HAVE_TERMIOS_H.
11849         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
11850         _WIN32.
11851         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
11852         always iterate over all inferiors.
11853         (gdbsim_cntrl_c): Adjust.
11854         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
11855
11856 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
11857
11858         * gdbtypes.c (lookup_array_range_type): Make sure the array's
11859         index type is objfile-owned if the element type is as well.
11860
11861 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
11862
11863         GDB 8.1 released.
11864
11865 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11866
11867         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
11868         "features/s390x-linux64.c".
11869         (_initialize_s390_linux_tdep): Remove initialization of tdescs
11870         s390_linux32 and s390x_linux64.
11871         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
11872         default tdesc.
11873         * s390-tdep.c: Include "features/s390-linux32.c" and
11874         "features/s390x-linux64.c".
11875         (s390_tdesc_valid): Add check for tdesc_has_registers.
11876         (s390_gdbarch_init): Make sure there is always a valid tdesc.
11877         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
11878         tdesc_s390x_linux64.
11879         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
11880         tdesc_s390x_linux64 to...
11881         * s390-tdep.h: ...here.
11882
11883 2018-01-30  Pedro Alves  <palves@redhat.com>
11884
11885         PR gdb/13211
11886         * config.in, configure: Regenerate.
11887         * configure.ac: Check for getpgid.
11888         * go32-nat.c (go32_pass_ctrlc): New.
11889         (go32_target): Install it.
11890         * inf-child.c (inf_child_target): Install
11891         child_terminal_save_inferior, child_pass_ctrlc and
11892         child_interrupt.
11893         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
11894         (inf_ptrace_target): No longer install it.
11895         * infcmd.c (interrupt_target_1): Adjust.
11896         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
11897         (child_interrupt): Declare.
11898         (inferior::terminal_state): New.
11899         * inflow.c (struct terminal_info): Update comments.
11900         (inferior_process_group): Delete.
11901         (terminal_is_ours): Delete.
11902         (gdb_tty_state): New.
11903         (child_terminal_init): Adjust.
11904         (is_gdb_terminal, sharing_input_terminal_1)
11905         (sharing_input_terminal): New functions.
11906         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
11907         Set the process's actual process group in the foreground if
11908         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
11909         mark terminal as the inferior's if not sharing GDB's terminal.
11910         Don't check attach_flag.
11911         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
11912         pass down a target_terminal_state.
11913         (child_terminal_save_inferior): New, factored out from ...
11914         (child_terminal_ours_1): ... this.  Handle
11915         target_terminal_state::is_ours_for_output.
11916         (child_interrupt, child_pass_ctrlc): New.
11917         (inflow_inferior_exit): Clear the inferior's terminal_state.
11918         (copy_terminal_info): Copy the inferior's terminal state.
11919         (_initialize_inflow): Remove reference to terminal_is_ours.
11920         * inflow.h (inferior_process_group): Delete.
11921         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
11922         * procfs.c (procfs_target): Don't install procfs_interrupt.
11923         (procfs_interrupt): Delete.
11924         * remote.c (remote_serial_quit_handler): Adjust.
11925         (remote_interrupt): Remove ptid parameter.  Adjust.
11926         * target-delegates.c: Regenerate.
11927         * target.c: Include "terminal.h".
11928         (target_terminal::terminal_state): Rename to ...
11929         (target_terminal::m_terminal_state): ... this.
11930         (target_terminal::init): Adjust.
11931         (target_terminal::inferior): Adjust to per-inferior
11932         terminal_state.
11933         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
11934         (target_terminal::ours, target_terminal::ours_for_output): Use
11935         target_terminal_is_ours_kind.
11936         (target_interrupt): Remove ptid parameter.  Adjust.
11937         (default_target_pass_ctrlc): Adjust.
11938         * target.h (target_ops::to_terminal_save_inferior): New field.
11939         (target_ops::to_interrupt): Remove ptid_t parameter.
11940         (target_interrupt): Remove ptid_t parameter.  Update comment.
11941         (target_pass_ctrlc): Update comment.
11942         * target/target.h (target_terminal_state): New scoped enum,
11943         factored out of ...
11944         (target_terminal::terminal_state): ... here.
11945         (target_terminal::inferior): Update comments.
11946         (target_terminal::restore_inferior): New.
11947         (target_terminal::is_inferior, target_terminal::is_ours)
11948         (target_terminal::is_ours_for_output): Adjust.
11949         (target_terminal::scoped_restore_terminal_state): Adjust to
11950         rename, and call restore_inferior() instead of inferior().
11951         (target_terminal::scoped_restore_terminal_state::m_state): Change
11952         type.
11953         (target_terminal::terminal_state): Rename to ...
11954         (target_terminal::m_terminal_state): ... this and change type.
11955
11956 2018-01-30  Pedro Alves  <palves@redhat.com>
11957
11958         * linux-nat.c (wait_for_signal): New function.
11959         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
11960         directly.
11961         (async_terminal_is_ours)
11962         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
11963         (linux_nat_add_target): Don't override
11964         to_terminal_inferior/to_terminal_ours.
11965
11966 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
11967
11968         * remote.c (remote_follow_fork): Don't call "detach_inferior".
11969
11970 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
11971
11972         * dwarf2read.c (free_dwo_files): Add forward-declaration.
11973         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
11974         dwarf2_per_objfile_free here.
11975         (dwarf2_per_objfile_free): Remove.
11976         (_initialize_dwarf2_read): Don't register
11977         dwarf2_per_objfile_free as a registry cleanup.
11978
11979 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
11980
11981         Avoid compilation errors in MinGW native builds
11982
11983         The error is triggered by including python-internal.h, and the
11984         error message is:
11985
11986              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
11987                       from build-gnulib/import/math.h:27,
11988                       from d:/usr/Python26/include/pyport.h:235,
11989                       from d:/usr/Python26/include/Python.h:58,
11990                       from python/python-internal.h:94,
11991                       from python/py-arch.c:24:
11992              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
11993         using ::hypot;
11994                 ^~~~~
11995
11996         This happens because Python headers define 'hypot' to expand t
11997         '_hypot' in the Windows builds.
11998         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
11999         'hypoth'.  This avoids a compilation error.
12000
12001 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
12002
12003         * MAINTAINERS (Write After Approval): Fix ordering.
12004
12005 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
12006
12007         * MAINTAINERS (Write After Approval): Add Alan Hayward.
12008
12009 2018-01-26  Alan Modra  <amodra@gmail.com>
12010
12011         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
12012         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
12013         Remove nop.  Make const.  Comment.
12014         (powerpc32_plt_stub_so_2): New.
12015         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
12016         Correct count.  Update uses.
12017         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
12018         Move common code reading PLT entry word.  Correct
12019         powerpc32_plt_stub PLT address calculation.
12020         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
12021         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
12022         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
12023         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
12024         (ppc64_standard_linkage8): Likewise.
12025         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
12026         Correct insns description.
12027         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
12028
12029 2018-01-24  Pedro Alves  <palves@redhat.com>
12030
12031         GCC PR libstdc++/83906
12032         * gdbtypes.c (operator==(const dynamic_prop &,
12033         const dynamic_prop &)): New.
12034         (operator==(const range_bounds &, const range_bounds &)): New.
12035         (check_types_equal): Use them instead of memcmp.
12036         * gdbtypes.h (operator==(const dynamic_prop &,
12037         const dynamic_prop &)): Declare.
12038         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
12039         (operator==(const range_bounds &, const range_bounds &)): Declare.
12040         (operator!=(const range_bounds &, const range_bounds &)): Declare.
12041
12042 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12043
12044         * s390-linux-tdep.c (s390_record_address_mask)
12045         (s390_record_calc_disp_common, s390_record_calc_disp)
12046         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
12047         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
12048         (s390_process_record): Move to s390-tdep.c.
12049         (s390_linux_init_abi_any): Adjust.
12050         * s390-tdep.c (s390_record_address_mask)
12051         (s390_record_calc_disp_common, s390_record_calc_disp)
12052         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
12053         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
12054         (s390_process_record): Moved from s390-linux-tdep.c
12055         (s390_gdbarch_init): Adjust.
12056
12057 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12058
12059         * s390-linux-nat.c (s390-tdep.h): New include.
12060         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
12061         (HFILES_NO_SRCDIR): Add s390-tdep.h.
12062         (ALLDEPFILES): Add s390-tdep.c.
12063         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
12064         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
12065         * s390-tdep.h: ...this.  New file.
12066         * s390-linux-tdep.c (s390-tdep.h): New include.
12067         (_initialize_s390_tdep): Rename to...
12068         (_initialize_s390_linux_tdep): ...this and adjust.
12069         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
12070         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
12071         s390-tdep.h.
12072         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
12073         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
12074         (s390_is_partial_instruction, s390_software_single_step)
12075         (is_non_branch_ril, s390_displaced_step_copy_insn)
12076         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
12077         (s390_prologue_data, s390_addr, s390_store, s390_load)
12078         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
12079         (s390_register_call_saved, s390_guess_tracepoint_registers)
12080         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
12081         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
12082         (s390_pseudo_register_name, s390_pseudo_register_type)
12083         (s390_pseudo_register_read, s390_pseudo_register_write)
12084         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
12085         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
12086         (s390_addr_bits_remove, s390_address_class_type_flags)
12087         (s390_address_class_type_flags_to_name)
12088         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
12089         (s390_function_arg_float, s390_function_arg_vector)
12090         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
12091         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
12092         (s390_frame_align, s390_register_return_value, s390_return_value)
12093         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
12094         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
12095         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
12096         (s390_trad_frame_prev_register, s390_unwind_cache)
12097         (s390_prologue_frame_unwind_cache)
12098         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
12099         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
12100         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
12101         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
12102         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
12103         (s390_frame_base_address, s390_local_base_address)
12104         (s390_frame_base, s390_gcc_target_options)
12105         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
12106         (s390_validate_reg_range, s390_tdesc_valid)
12107         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
12108         * s390-tdep.c: ...this.  New file.
12109
12110 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12111
12112         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
12113         (s390_process_record, s390_gdbarch_tdep_alloc)
12114         (s390_linux_init_abi_any): Use/set new hook.
12115
12116 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12117
12118         * s390-linux-tdep.c (osabi.h): New include.
12119         (s390_linux_init_abi_31, s390_linux_init_abi_64)
12120         (s390_linux_init_abi_any): New functions.
12121         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
12122
12123 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12124
12125         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
12126         tdesc_has_registers check
12127
12128 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12129
12130         * s390-linux-tdep.c (s390_tdesc_valid): New function.
12131         (s390_validate_reg_range): New macro.
12132         (s390_gdbarch_init): Adjust.
12133
12134 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12135
12136         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
12137         (s390_gdbarch_tdep_alloc): Adjust.
12138         (s390_gdbarch_init): Adjust.
12139
12140 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12141
12142         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
12143         <have_tdb>: Change type to bool.
12144         (s390_gdbarch_tdep_alloc): Adjust.
12145         (s390_gdbarch_init): Adjust.
12146
12147 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12148
12149         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
12150         (gdbarch_tdep) <have_upper, have_vx>: New fields.
12151         (s390_gdbarch_tdep_alloc): New function.
12152         (s390_gdbarch_init): Allocate tdep at start and use its fields
12153         instead of separate variables.
12154
12155 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12156
12157         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
12158         when looking for cached gdbarch and add comment for remaining.
12159
12160 2018-01-22  Pedro Alves  <palves@redhat.com>
12161             Sergio Durigan Junior  <sergiodj@redhat.com>
12162
12163         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
12164         case.
12165
12166 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
12167
12168         * MAINTAINERS: Update my company e-mail address.
12169
12170 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12171
12172         * regcache.c (cooked_write_test): New function.
12173         (_initialize_regcache): Register the test.
12174
12175 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12176
12177         * ia64-tdep.c (ia64_pseudo_register_read): Call
12178         regcache->cooked_read instead of regcache_cooked_read_unsigned.
12179         * m32c-tdep.c (m32c_cat_read): Likewise.
12180         (m32c_r3r2r1r0_read): Likewise.
12181         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12182         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
12183
12184 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12185
12186         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
12187         method raw_read instead of regcache_raw_read.
12188         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12189         * arm-tdep.c (arm_neon_quad_read): Likewise.
12190         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12191         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12192         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12193         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
12194         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12195         (i386_pseudo_register_read_into_value): Likewise.
12196         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12197         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12198         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12199         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
12200         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
12201         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
12202         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
12203         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
12204         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
12205
12206 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12207
12208         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
12209         * configure.tgt: Remove target mt.
12210         * mt-tdep.c: Remove.
12211         * regcache.c (cooked_read_test): Remove the check for mt.
12212
12213 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12214
12215         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
12216         instead of gdbarch_pseudo_register_read_value.
12217
12218 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
12219
12220         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
12221         language is Ada.
12222
12223 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
12224
12225         * linespec.c (create_sals_line_offset): Remove code that preserved
12226         the symtab_and_line's line number.
12227
12228 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12229
12230         * varobj.c (varobj_create): Don't set valid_block when creating a
12231         floating varobj.
12232
12233 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12234
12235         * varobj.c (varobj_create): Remove out of date comment.
12236
12237 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12238
12239         PR mi/20395
12240         * ada-exp.y (write_var_from_sym): Pass extra parameter when
12241         updating innermost block.
12242         * parse.c (innermost_block_tracker::update): Take extra type
12243         parameter, and check types match before updating innermost block.
12244         (write_dollar_variable): Update innermost block for registers.
12245         * parser-defs.h (enum innermost_block_tracker_type): New enum.
12246         (innermost_block_tracker::innermost_block_tracker): Initialise
12247         m_types member.
12248         (innermost_block_tracker::reset): Take type parameter.
12249         (innermost_block_tracker::update): Take type parameter, and pass
12250         type through as needed.
12251         (innermost_block_tracker::m_types): New member.
12252         * varobj.c (varobj_create): Pass type when reseting innermost
12253         block.
12254
12255 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12256
12257         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
12258         * ada-lang.c (resolve_subexp): Likewise.
12259         * breakpoint.c (set_breakpoint_condition) Likewise.
12260         (watch_command_1) Likewise.
12261         * c-exp.y (variable): Likewise.
12262         * d-exp.y (PrimaryExpression): Likewise.
12263         * f-exp.y (variable): Likewise.
12264         * go-exp.y (variable): Likewise.
12265         * m2-exp.y (variable): Likewise.
12266         * objfiles.c (objfile::~objfile): Likewise.
12267         * p-exp.y (variable): Likewise.
12268         * parse.c (innermost_block): Change type.
12269         * parser-defs.h (class innermost_block_tracker): New.
12270         (innermost_block): Change to innermost_block_tracker.
12271         * printcmd.c (display_command): Switch to innermost_block API.
12272         (do_one_display): Likewise.
12273         * rust-exp.y (do_one_display): Likewise.
12274         * symfile.c (clear_symtab_users): Likewise.
12275         * varobj.c (varobj_create): Switch to innermost_block API, replace
12276         use of innermost_block with block stored on varobj object.
12277
12278 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12279
12280         * expression.h (innermost_block): Remove declaration.
12281         * varobj.c: Add 'parser-defs.h' include.
12282
12283 2018-01-19  Tom Tromey  <tom@tromey.com>
12284
12285         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
12286         symbols in the static and global blocks.
12287
12288 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
12289
12290         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
12291         gdb_ptrace.h, and move including gdb_wait.h ...
12292         * nat/linux-ptrace.h: ... to here.
12293
12294 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
12295
12296         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
12297         inf_ptrace_detach_success.
12298         (inf_ptrace_detach_success): Add inferior parameter, use it
12299         instead of inferior_ptid, pass it to detach_inferior.
12300         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
12301         parameter.
12302         * inferior.c (detach_inferior): Add overload that takes an
12303         inferior object.
12304         * inferior.h (detach_inferior): Likewise.
12305         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
12306         use inferior_ptid, adjust call to inf_ptrace_detach_success.
12307         * linux-thread-db.c (thread_db_detach): Use inf parameter.
12308
12309 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
12310
12311         * target.h (struct target_ops) <to_detach>: Add inferior
12312         parameter.
12313         (target_detach): Likewise.
12314         * target.c (dispose_inferior): Pass inferior down.
12315         (target_detach): Pass inferior down.  Assert that it is equal to
12316         the current inferior.
12317         * aix-thread.c (aix_thread_detach): Pass inferior down.
12318         * corefile.c (core_file_command): Pass current_inferior() down.
12319         * corelow.c (core_detach): Add inferior parameter.
12320         * darwin-nat.c (darwin_detach): Likewise.
12321         * gnu-nat.c (gnu_detach): Likewise.
12322         * inf-ptrace.c (inf_ptrace_detach): Likewise.
12323         * infcmd.c (detach_command): Pass current_inferior() down to
12324         target_detach.
12325         * infrun.c (follow_fork_inferior): Pass parent_inf to
12326         target_detach.
12327         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
12328         target_detach.
12329         * linux-nat.c (linux_nat_detach): Add inferior parameter.
12330         * linux-thread-db.c (thread_db_detach): Likewise.
12331         * nto-procfs.c (procfs_detach): Likewise.
12332         * procfs.c (procfs_detach): Likewise.
12333         * record.c (record_detach): Likewise.
12334         * record.h (struct inferior): Forward-declare.
12335         (record_detach): Add inferior parameter.
12336         * remote-sim.c (gdbsim_detach): Likewise.
12337         * remote.c (remote_detach_1): Likewise.
12338         (remote_detach): Likewise.
12339         (extended_remote_detach): Likewise.
12340         * sol-thread.c (sol_thread_detach): Likewise.
12341         * target-debug.h (target_debug_print_inferior_p): New macro.
12342         * target-delegates.c: Re-generate.
12343         * top.c (kill_or_detach): Pass inferior down to target_detach.
12344         * windows-nat.c (windows_detach): Add inferior parameter.
12345
12346 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
12347
12348         * target.h (struct target_ops) <to_detach>: Remove args
12349         parameter.
12350         (target_detach): Likewise.
12351         * target.c (dispose_inferior): Adjust.
12352         (target_detach): Remove args parameter, adjust.
12353         * aix-thread.c (aix_thread_detach): Adjust.
12354         * corefile.c (core_file_command): Adjust.
12355         * corelow.c (core_detach): Adjust.
12356         * darwin-nat.c (darwin_detach): Adjust.
12357         * gnu-nat.c (gnu_detach): Adjust.
12358         * inf-ptrace.c (inf_ptrace_detach): Adjust.
12359         * infcmd.c (detach_command): Adjust
12360         * infrun.c (follow_fork_inferior): Adjust.
12361         (handle_vfork_child_exec_or_exit): Adjust.
12362         * linux-fork.c (linux_fork_detach): Remove args parameter.
12363         * linux-fork.h (linux_fork_detach): Likewise.
12364         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
12365         * linux-thread-db.c (thread_db_detach): Likewise.
12366         * nto-procfs.c (procfs_detach): Likewise.
12367         * procfs.c (procfs_detach): Likewise.
12368         (do_detach): Remove signo parameter.
12369         * record.c (record_detach): Remove args parameter.
12370         * record.h (record_detach): Likewise.
12371         * remote-sim.c (gdbsim_detach): Likewise.
12372         * remote.c (remote_detach_1): Likewise.
12373         (remote_detach): Likewise.
12374         (extended_remote_detach): Likewise.
12375         * sol-thread.c (sol_thread_detach): Likewise.
12376         * target-delegates.c: Re-generate.
12377         * top.c (struct qt_args) <args>: Remove field.
12378         (kill_or_detach): Don't pass args.
12379         (quit_force): Don't set args.
12380         * windows-nat.c (windows_detach): Remove args parameter.
12381
12382 2018-01-19  Yao Qi  <yao.qi@linaro.org>
12383
12384         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
12385         (arm_linux_init_abi): Install it.
12386
12387 2018-01-19  Yao Qi  <yao.qi@linaro.org>
12388
12389         * osabi.c (gdb_osabi_names): Extend the regexp for
12390         arm-linux-gnueabihf.
12391
12392 2018-01-18  Yao Qi  <yao.qi@linaro.org>
12393
12394         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
12395         m_abbrevs.
12396         (abbrev_table::add_abbrev): Update.
12397         (abbrev_table::lookup_abbrev): Update.
12398
12399 2018-01-18  Yao Qi  <yao.qi@linaro.org>
12400
12401         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
12402
12403 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
12404
12405         * compile/compile.c (compile_to_object): Convert "triplet_rx"
12406         to "std::string".
12407
12408 2018-01-17  Tom Tromey  <tom@tromey.com>
12409
12410         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
12411
12412 2018-01-17  Tom Tromey  <tom@tromey.com>
12413
12414         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
12415         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
12416         (create_array_type_with_stride): Update.
12417         * dwarf2read.c (set_die_type): Update.
12418
12419 2018-01-17  Tom Tromey  <tom@tromey.com>
12420
12421         * dwarf2read.c (delayed_method_info): Remove typedef.
12422         (dwarf2_cu::method_info): Now a std::vector.
12423         (add_to_method_list): Update.
12424         (free_delayed_list): Remove.
12425         (compute_delayed_physnames): Update.
12426         (process_full_comp_unit, process_full_type_unit): Clear the method
12427         list.  Remove cleanups.
12428         (psymtab_include_file_name): Add name_holder parameter.  Use
12429         unique_xmalloc_ptr.
12430         (dwarf_decode_lines): Update.
12431
12432 2018-01-17  Tom Tromey  <tom@tromey.com>
12433             Simon Marchi  <simon.marchi@ericsson.com>
12434
12435         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
12436         (dwarf2_per_objfile::free_cached_comp_units)
12437         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
12438         (init_cutu_and_read_dies_no_follow): Update.
12439         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
12440         (dwarf2_cu::~dwarf2_cu): New.
12441         (free_heap_comp_unit, free_stack_comp_unit): Remove.
12442         (age_cached_comp_units, free_one_cached_comp_unit): Update.
12443
12444 2018-01-17  Tom Tromey  <tom@tromey.com>
12445             Simon Marchi  <simon.marchi@ericsson.com>
12446
12447         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
12448         (struct die_reader_specs) <abbrev_table>: New member.
12449         (struct abbrev_table): Add constructor.
12450         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
12451         <abbrev_obstack>: Now an auto_obstack.
12452         (abbrev_table_up): New typedef.
12453         (init_cu_die_reader): Add abbrev_table parameter.
12454         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
12455         Add result_dwo_abbrev_table.
12456         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
12457         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
12458         Update.
12459         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
12460         parameter.
12461         (skip_children): Update.
12462         (abbrev_table::alloc_abbrev): Rename from
12463         abbrev_table_alloc_abbrev.
12464         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
12465         (abbrev_table::lookup_abbrev): Rename from
12466         abbrev_table_lookup_abbrev.
12467         (abbrev_table_read_table): Return abbrev_table_up.
12468         (abbrev_table_free, abbrev_table_free_cleanup)
12469         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
12470         (load_partial_dies): Update.
12471
12472 2018-01-17  Tom Tromey  <tom@tromey.com>
12473
12474         * dwarf2read.c (dwarf2_compute_name): Update comment.
12475         (read_func_scope, read_variable): Update.
12476         (new_symbol): Remove.
12477         (new_symbol_full): Rename to new_symbol.
12478
12479 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
12480
12481         PR gdb/16577
12482         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
12483         a warning instead of throwing an error, set section size to 0 and return
12484         NULL.
12485         * gdb_bfd.h (gdb_bfd_map_section): Update description.
12486
12487 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
12488
12489         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
12490         std::string.
12491         (linux_ptrace_attach_fail_reason_string): Likewise.
12492         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
12493         Likewise.
12494         (linux_ptrace_attach_fail_reason_string): Likewise.
12495         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
12496
12497 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
12498
12499         * linux-nat.c (linux_nat_attach): Remove xstrdup.
12500
12501 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
12502
12503         PR gdb/21559
12504         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
12505         checking for fs_base/gs_base fields in struct user_regs_struct.
12506         * configure: Regenerate.
12507
12508 2018-01-17  Yao Qi  <yao.qi@linaro.org>
12509
12510         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
12511         function.
12512         (aarch64_linux_init_abi): Install it to gdbarch hook
12513         gcc_target_options.
12514
12515 2018-01-15  Pedro Alves  <palves@redhat.com>
12516
12517         * common/signals-state-save-restore.c
12518         (save_original_signals_state): Fix typos.
12519
12520 2017-01-12  Tom Tromey  <tom@tromey.com>
12521             Sergio Durigan Junior  <sergiodj@redhat.com>
12522
12523         * Makefile.in (install-only): Install gdb-add-index.
12524
12525 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
12526
12527         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
12528
12529 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12530
12531         * infrun.c (keep_going_pass_signal): Clear step-over info when
12532         insert_breakpoints fails.
12533
12534 2018-01-11  Pedro Alves  <palves@redhat.com>
12535
12536         PR gdb/22583
12537         * infrun.c (resume): Rename to ...
12538         (resume_1): ... this.
12539         (resume): Reimplement as wrapper around resume_1.
12540
12541 2018-01-11  Pedro Alves  <palves@redhat.com>
12542
12543         PR remote/22597
12544         * remote.c (remote_parse_stop_reply): Default to the last-set
12545         general thread instead of to 'magic_null_ptid'.
12546
12547 2018-01-10  Pedro Alves  <palves@redhat.com>
12548
12549         * language.h (language_get_symbol_name_matcher): Rename ...
12550         (get_symbol_name_matcher): ... this.
12551         * language.c (language_get_symbol_name_matcher): Ditto.
12552         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
12553         callers adjusted.
12554
12555 2018-01-10  Pedro Alves  <palves@redhat.com>
12556
12557         PR gdb/22670
12558         * dwarf2read.c
12559         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
12560         Adjust to use language_get_symbol_name_matcher instead of
12561         language_defn::la_get_symbol_name_matcher.
12562         * language.c (language_get_symbol_name_matcher): If in Ada mode
12563         and the lookup name is a verbatim match, return Ada's matcher.
12564         * language.h (language_get_symbol_name_matcher): Adjust comment.
12565         (ada_lookup_name_info::verbatim_p):: New method.
12566
12567 2018-01-10  Pedro Alves  <palves@redhat.com>
12568
12569         PR gdb/22670
12570         * ada-lang.c (ada_collect_symbol_completion_matches): If the
12571         minsym's language is language_auto or language_cplus, pass down
12572         language_ada instead.
12573         * symtab.c (compare_symbol_name): Don't frob symbol language here.
12574
12575 2018-01-10  Pedro Alves  <palves@redhat.com>
12576
12577         PR gdb/22670
12578         * minsyms.c (linkage_name_str): New function.
12579         (iterate_over_minimal_symbols): Use it.
12580
12581 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12582
12583         * NEWS: Document that 'info proc' now works on FreeBSD.
12584
12585 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12586
12587         * configure.ac: Check for kinfo_getfile in libutil.
12588         * configure: Regenerate.
12589         * config.in: Regenerate.
12590         * fbsd-nat.c: Include "fbsd-tdep.h".
12591         (fbsd_fetch_cmdline): New.
12592         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
12593         rather than calling error.
12594         (fbsd_info_proc): New.
12595         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
12596         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
12597         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
12598
12599 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12600
12601         * fbsd-nat.c (struct free_deleter): Remove.
12602         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
12603
12604 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12605
12606         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
12607         NULL for an empty pathname.
12608
12609 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12610
12611         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
12612         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
12613         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
12614         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
12615         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
12616         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
12617         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
12618         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
12619         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
12620         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
12621         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
12622         (fbsd_core_fetch_timeval, fbsd_print_sigset)
12623         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
12624         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
12625         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
12626
12627 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
12628
12629         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
12630         (gnu_xfer_auxv): New function.
12631         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
12632         TARGET_OBJECT_AUXV.
12633
12634 2018-01-08  Yao Qi  <yao.qi@linaro.org>
12635             Simon Marchi  <simon.marchi@ericsson.com>
12636
12637         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
12638         common/selftest.c.
12639         (COMMON_OBS): Remove selftest.o.
12640         * configure.ac: Append selftest-arch.c and common/selftest.c to
12641         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
12642         * configure: Re-generated.
12643         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
12644         GDB_SELF_TEST.
12645         (maintenance_info_selftests): Likewise.
12646
12647 2018-01-08  Xavier Roirand  <roirand@adacore.com>
12648
12649         * ada-valprint.c (val_print_packed_array_elements): Use
12650         proper number of elements when printing an array indexed
12651         by an enumeration type.
12652
12653 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
12654
12655         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
12656         (dw2_get_file_names_reader): Adjust.
12657         (lookup_dwo_signatured_type): Adjust.
12658         (lookup_dwp_signatured_type): Adjust.
12659         (lookup_signatured_type): Adjust.
12660         (create_type_unit_group): Adjust.
12661         (get_type_unit_group): Adjust.
12662         (process_psymtab_comp_unit_reader): Adjust.
12663         (build_type_psymtabs_reader): Adjust.
12664         (scan_partial_symbols): Adjust.
12665         (add_partial_symbol): Adjust.
12666         (add_partial_subprogram): Adjust.
12667         (peek_die_abbrev): Adjust.
12668         (fixup_go_packaging): Adjust.
12669         (process_imported_unit_die): Adjust.
12670         (dwarf2_compute_name): Adjust.
12671         (dwarf2_physname): Adjust.
12672         (read_import_statement): Adjust.
12673         (handle_DW_AT_stmt_list): Adjust.
12674         (read_file_scope): Adjust.
12675         (read_func_scope): Adjust.
12676         (read_lexical_block_scope): Adjust.
12677         (read_call_site_scope): Adjust.
12678         (read_variable): Adjust.
12679         (dwarf2_rnglists_process): Adjust.
12680         (dwarf2_ranges_process): Adjust.
12681         (dwarf2_ranges_read): Adjust.
12682         (dwarf2_get_pc_bounds): Adjust.
12683         (dwarf2_record_block_ranges): Adjust.
12684         (dwarf2_add_field): Adjust.
12685         (dwarf2_add_member_fn): Adjust.
12686         (read_structure_type): Adjust.
12687         (process_structure_scope): Adjust.
12688         (read_enumeration_type): Adjust.
12689         (read_array_type): Adjust.
12690         (mark_common_block_symbol_computed): Adjust.
12691         (read_common_block): Adjust.
12692         (read_namespace_type): Adjust.
12693         (read_namespace): Adjust.
12694         (read_module_type): Adjust.
12695         (read_tag_pointer_type): Adjust.
12696         (read_tag_ptr_to_member_type): Adjust.
12697         (read_tag_string_type): Adjust.
12698         (read_subroutine_type): Adjust.
12699         (read_typedef): Adjust.
12700         (read_base_type): Adjust.
12701         (attr_to_dynamic_prop): Adjust.
12702         (read_subrange_type): Adjust.
12703         (read_unspecified_type): Adjust.
12704         (dwarf2_read_abbrevs): Adjust.
12705         (load_partial_dies): Adjust.
12706         (read_partial_die): Adjust.
12707         (find_partial_die): Adjust.
12708         (guess_partial_die_structure_name): Adjust.
12709         (fixup_partial_die): Adjust.
12710         (read_attribute_value): Adjust.
12711         (read_addr_index): Adjust.
12712         (read_addr_index_from_leb128): Adjust.
12713         (read_str_index): Adjust.
12714         (dwarf2_string_attr): Adjust.
12715         (get_debug_line_section): Adjust.
12716         (dwarf_decode_line_header): Adjust.
12717         (lnp_state_machine::check_line_address): Adjust.
12718         (dwarf_decode_lines_1): Adjust.
12719         (dwarf_decode_lines): Adjust.
12720         (dwarf2_start_symtab): Adjust.
12721         (var_decode_location): Adjust.
12722         (new_symbol_full): Adjust.
12723         (dwarf2_const_value_data): Adjust.
12724         (dwarf2_const_value_attr): Adjust.
12725         (dwarf2_const_value): Adjust.
12726         (die_type): Adjust.
12727         (die_containing_type): Adjust.
12728         (build_error_marker_type): Adjust.
12729         (lookup_die_type): Adjust.
12730         (guess_full_die_structure_name): Adjust.
12731         (anonymous_struct_prefix): Adjust.
12732         (determine_prefix): Adjust.
12733         (dwarf2_name): Adjust.
12734         (follow_die_ref_or_sig): Adjust.
12735         (follow_die_offset): Adjust.
12736         (follow_die_ref): Adjust.
12737         (follow_die_sig_1): Adjust.
12738         (follow_die_sig): Adjust.
12739         (get_signatured_type): Adjust.
12740         (get_DW_AT_signature_type): Adjust.
12741         (decode_locdesc): Adjust.
12742         (dwarf_decode_macros): Adjust.
12743         (cu_debug_loc_section): Adjust.
12744         (fill_in_loclist_baton): Adjust.
12745         (dwarf2_symbol_mark_computed): Adjust.
12746         (init_one_comp_unit): Don't assign
12747         dwarf2_cu::dwarf2_per_objfile.
12748         (set_die_type): Adjust.
12749
12750 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
12751
12752         * dwarf2read.c (struct mapped_debug_names): Add constructor.
12753         <dwarf2_per_objfile>: New field.
12754         (dwarf2_per_objfile): Remove global.
12755         (get_dwarf2_per_objfile): New function.
12756         (set_dwarf2_per_objfile): New function.
12757         (dwarf2_build_psymtabs_hard): Change objfile parameter to
12758         dwarf2_per_objfile.
12759         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
12760         (read_abbrev_offset): Likewise.
12761         (read_indirect_string): Likewise.
12762         (read_indirect_line_string): Likewise.
12763         (read_indirect_string_at_offset): Likewise.
12764         (read_indirect_string_from_dwz): Likewise.
12765         (dwarf2_find_containing_comp_unit): Change objfile parameter to
12766         dwarf2_per_objfile.
12767         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
12768         (create_all_comp_units): Change objfile parameter to
12769         dwarf2_per_objfile.
12770         (create_all_type_units): Likewise.
12771         (process_queue): Add dwarf2_per_objfile parameter.
12772         (read_and_check_comp_unit_head): Likewise.
12773         (lookup_dwo_unit_in_dwp): Likewise.
12774         (get_dwp_file): Likewise.
12775         (process_cu_includes): Likewise.
12776         (struct free_dwo_file_cleanup_data): New struct.
12777         (dwarf2_has_info): Use get_dwarf2_per_objfile and
12778         set_dwarf2_per_objfile.
12779         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
12780         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
12781         context, adjust calls.
12782         (dw2_instantiate_symtab): Likewise.
12783         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
12784         (dw2_get_cu): Likewise.
12785         (create_cu_from_index_list): Change objfile parameter to
12786         dwarf2_per_objfile.
12787         (create_cus_from_index_list): Get dwarf2_per_objfile from
12788         context, adjust calls.
12789         (create_cus_from_index): Likewise.
12790         (create_signatured_type_table_from_index): Change objfile
12791         parameter to dwarf2_per_objfile.
12792         (create_signatured_type_table_from_debug_names): Change objfile
12793         parameter to dwarf2_per_objfile.
12794         (create_addrmap_from_index): Likewise.
12795         (create_addrmap_from_aranges): Likewise.
12796         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
12797         (dw2_setup): Remove.
12798         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
12799         context.
12800         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
12801         get_dwarf2_per_objfile.
12802         (dw2_forget_cached_source_info): Likewise.
12803         (dw2_map_symtabs_matching_filename): Likewise.
12804         (struct dw2_symtab_iterator) <index>: Remove.
12805         <dwarf2_per_objfile>: New field.
12806         (dw2_symtab_iter_init): Replace index parameter with
12807         dwarf2_per_objfile.
12808         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
12809         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
12810         (dw2_print_stats): Likewise.
12811         (dw2_dump): Likewise.
12812         (dw2_expand_symtabs_for_function): Likewise.
12813         (dw2_expand_all_symtabs): Likewise.
12814         (dw2_expand_symtabs_with_fullname): Likewise.
12815         (dw2_expand_marked_cus): Replace index and objfile parameters
12816         with dwarf2_per_objfile.
12817         (dw_expand_symtabs_matching_file_matcher): Add
12818         dwarf2_per_objfile parameter and adjust calls.
12819         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
12820         adjust calls.
12821         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
12822         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
12823         adjust calls.
12824         (create_cus_from_debug_names_list): Replace objfile parameter
12825         with dwarf2_per_objfile and adjust calls.
12826         (create_cus_from_debug_names): Likewise.
12827         (dwarf2_read_debug_names): Likewise.
12828         (mapped_debug_names::namei_to_name): Adjust call.
12829         (dw2_debug_names_iterator::next): Likewise.
12830         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
12831         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
12832         (dw2_debug_names_dump): Likewise.
12833         (dw2_debug_names_expand_symtabs_for_function): Likewise.
12834         (dw2_debug_names_expand_symtabs_matching): Likewise.
12835         (dwarf2_initialize_objfile): Likewise.
12836         (dwarf2_build_psymtabs): Likewise.
12837         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
12838         this_cu.
12839         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
12840         (read_and_check_comp_unit_head): Likewise.
12841         (read_abbrev_offset): Likewise.
12842         (create_debug_type_hash_table): Likewise.
12843         (create_debug_types_hash_table): Likewise.
12844         (create_all_type_units): Replace objfile parameter with
12845         dwarf2_per_objfile.
12846         (add_type_unit): Add dwarf2_per_objfile parameter.
12847         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
12848         with dwarf2_per_objfile.
12849         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
12850         (lookup_dwp_signatured_type): Likewise.
12851         (lookup_signatured_type): Likewise.
12852         (read_cutu_die_from_dwo): Likewise.
12853         (init_tu_and_read_dwo_dies): Likewise.
12854         (init_cutu_and_read_dies): Likewise.
12855         (init_cutu_and_read_dies_no_follow): Likewise.
12856         (allocate_type_unit_groups_table): Add objfile parameter.
12857         (create_type_unit_group): Use dwarf2_per_objfile from cu.
12858         (get_type_unit_group): Likewise.
12859         (process_psymtab_comp_unit): Update call.
12860         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
12861         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
12862         (print_tu_stats): Likewise.
12863         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
12864         in void* parameter.
12865         (build_type_psymtabs): Change objfile parameter to
12866         dwarf2_per_objfile.
12867         (process_skeletonless_type_unit): Use dwarf2_per_objfile
12868         passed in void* parameter.
12869         (process_skeletonless_type_units): Change objfile parameter to
12870         dwarf2_per_objfile.
12871         (set_partial_user): Likewise.
12872         (dwarf2_build_psymtabs_hard): Likewise.
12873         (read_comp_units_from_section): Likewise.
12874         (create_all_comp_units): Likewise.
12875         (scan_partial_symbols): Update calls.
12876         (add_partial_symbol): Likewise.
12877         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
12878         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
12879         (process_queue): Add dwarf2_per_objfile parameter.
12880         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
12881         (compute_compunit_symtab_includes): Likewise.
12882         (process_cu_includes): Add dwarf2_per_objfile parameter.
12883         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
12884         (process_full_type_unit): Likewise.
12885         (process_imported_unit_die): Update call.
12886         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
12887         (read_file_scope): Likewise.
12888         (allocate_dwo_file_hash_table): Add objfile parameter.
12889         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
12890         (create_cus_hash_table): Likewise.
12891         (create_dwp_hash_table): Likewise.
12892         (create_dwo_unit_in_dwp_v1): Likewise.
12893         (create_dwp_v2_section): Likewise.
12894         (create_dwo_unit_in_dwp_v2): Likewise.
12895         (lookup_dwo_unit_in_dwp): Likewise.
12896         (try_open_dwop_file): Likewise.
12897         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
12898         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
12899         cleanup to include a reference to dwarf2_per_objfile.
12900         (open_dwp_file): Add dwarf2_per_objfile parameter.
12901         (open_and_init_dwp_file): Likewise.
12902         (get_dwp_file): Likewise.
12903         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
12904         (queue_and_load_all_dwo_tus): Update call.
12905         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
12906         data.
12907         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
12908         (dwarf2_ranges_process): Likewise.
12909         (dwarf2_get_pc_bounds): Likewise.
12910         (mark_common_block_symbol_computed): Likewise.
12911         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
12912         (dwarf2_read_abbrevs): Update call.
12913         (read_partial_die): Use dwarf2_per_objfile from cu.
12914         (find_partial_die): Likewise.
12915         (fixup_partial_die): Likewise.
12916         (read_attribute_value): Likewise.
12917         (read_indirect_string_at_offset_from): Add objfile parameter.
12918         (read_indirect_string_at_offset): Add dwarf2_per_objfile
12919         parameter.
12920         (read_indirect_string_from_dwz): Add objfile parameter.
12921         (read_indirect_string): Add objfile parameter.
12922         (read_addr_index_1): Add dwarf2_per_objfile parameter.
12923         (read_addr_index): Use dwarf2_per_objfile from cu.
12924         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
12925         call dw2_setup.
12926         (read_str_index): Use dwarf2_per_objfile from cu.
12927         (get_debug_line_section): Likewise.
12928         (read_formatted_entries): Add dwarf2_per_objfile parameter.
12929         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
12930         (new_symbol_full): Use dwarf2_per_objfile from cu.
12931         (build_error_marker_type): Likewise.
12932         (lookup_die_type): Likewise.
12933         (determine_prefix): Likewise.
12934         (follow_die_offset): Likewise.
12935         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
12936         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
12937         (dwarf2_fetch_die_type_sect_off): Likewise.
12938         (dwarf2_get_die_type): Likewise.
12939         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
12940         (get_signatured_type): Likewise.
12941         (get_DW_AT_signature_type): Likewise.
12942         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
12943         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
12944         (cu_debug_loc_section): Likewise.
12945         (fill_in_loclist_baton): Likewise.
12946         (dwarf2_symbol_mark_computed): Likewise.
12947         (dwarf2_find_containing_comp_unit): Change objfile parameter to
12948         dwarf2_per_objfile.
12949         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
12950         parameter.
12951         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
12952         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
12953         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
12954         (set_die_type): Use dwarf2_free_objfile from cu.
12955         (get_die_type_at_offset): Likewise.
12956         (dwarf2_per_objfile_free): Don't assign global variable.
12957         (debug_names) <constructor>: Add dwarf2_per_objfile
12958         parameter, update m_debugstrlookup construction.
12959         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
12960         parameter.
12961         <m_dwarf2_per_objfile>: New field.
12962         <lookup>: Use m_dwarf2_per_objfile.
12963         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
12964         (psyms_seen_size): Likewise.
12965         (write_gdbindex): Replace objfile parameter with
12966         dwarf2_per_objfile.
12967         (write_debug_names): Likewise.
12968         (write_psymtabs_to_index): Likewise.
12969         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
12970         calls.
12971
12972 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
12973
12974         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
12975         <dwarf2_per_objfile>: New field.
12976         (struct dwarf2_per_cu_data) <objfile>: Remove.
12977         <dwarf2_per_objfile>: New field.
12978         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
12979         of objfile.
12980         (create_signatured_type_table_from_index): Likewise.
12981         (create_debug_type_hash_table): Likewise.
12982         (fill_in_sig_entry_from_dwo_entry): Likewise.
12983         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
12984         (create_type_unit_group): Assign dwarf2_per_objfile instead of
12985         objfile.
12986         (create_partial_symtab): Access objfile through
12987         dwarf2_per_objfile.
12988         (process_psymtab_comp_unit_reader): Likewise.
12989         (read_comp_units_from_section): Likewise.
12990         (scan_partial_symbols): Likewise.
12991         (add_partial_symbol): Likewise.
12992         (add_partial_subprogram): Likewise.
12993         (peek_die_abbrev): Likewise.
12994         (fixup_go_packaging): Likewise.
12995         (process_full_comp_unit): Likewise.
12996         (process_full_type_unit): Likewise.
12997         (process_imported_unit_die): Likewise.
12998         (dwarf2_compute_name): Likewise.
12999         (dwarf2_physname): Likewise.
13000         (read_import_statement): Likewise.
13001         (create_cus_hash_table): Assign dwarf2_physname instead of
13002         objfile.
13003         (read_func_scope): Access objfile through dwarf2_per_objfile.
13004         (read_lexical_block_scope): Likewise.
13005         (read_call_site_scope): Likewise.
13006         (read_variable): Likewise.
13007         (dwarf2_rnglists_process): Likewise.
13008         (dwarf2_ranges_process): Likewise.
13009         (dwarf2_ranges_read): Likewise.
13010         (dwarf2_record_block_ranges): Likewise.
13011         (dwarf2_add_field): Likewise.
13012         (dwarf2_add_member_fn): Likewise.
13013         (read_structure_type): Likewise.
13014         (process_structure_scope): Likewise.
13015         (read_enumeration_type): Likewise.
13016         (read_array_type): Likewise.
13017         (read_common_block): Likewise.
13018         (read_namespace_type): Likewise.
13019         (read_namespace): Likewise.
13020         (read_module_type): Likewise.
13021         (read_tag_pointer_type): Likewise.
13022         (read_tag_ptr_to_member_type): Likewise.
13023         (read_tag_string_type): Likewise.
13024         (read_subroutine_type): Likewise.
13025         (read_typedef): Likewise.
13026         (read_base_type): Likewise.
13027         (attr_to_dynamic_prop): Likewise.
13028         (read_subrange_type): Likewise.
13029         (read_unspecified_type): Likewise.
13030         (load_partial_dies): Likewise.
13031         (read_partial_die): Likewise.
13032         (find_partial_die): Likewise.
13033         (guess_partial_die_structure_name): Likewise.
13034         (fixup_partial_die): Likewise.
13035         (read_attribute_value): Likewise.
13036         (read_addr_index_from_leb128): Likewise.
13037         (dwarf2_read_addr_index): Likewise.
13038         (dwarf2_string_attr): Likewise.
13039         (lnp_state_machine::check_line_address): Likewise.
13040         (dwarf_decode_lines_1): Likewise.
13041         (dwarf_decode_lines): Likewise.
13042         (dwarf2_start_symtab): Likewise.
13043         (var_decode_location): Likewise.
13044         (new_symbol_full): Likewise.
13045         (dwarf2_const_value_data): Likewise.
13046         (dwarf2_const_value_attr): Likewise.
13047         (dwarf2_const_value): Likewise.
13048         (die_type): Likewise.
13049         (die_containing_type): Likewise.
13050         (lookup_die_type): Likewise.
13051         (guess_full_die_structure_name): Likewise.
13052         (anonymous_struct_prefix): Likewise.
13053         (dwarf2_name): Likewise.
13054         (follow_die_ref_or_sig): Likewise.
13055         (follow_die_offset): Likewise.
13056         (follow_die_ref): Likewise.
13057         (dwarf2_fetch_die_loc_sect_off): Likewise.
13058         (dwarf2_fetch_constant_bytes): Likewise.
13059         (dwarf2_fetch_die_type_sect_off): Likewise.
13060         (dwarf2_get_die_type): Likewise.
13061         (follow_die_sig): Likewise.
13062         (decode_locdesc): Likewise.
13063         (dwarf2_per_cu_objfile): Likewise.
13064         (dwarf2_per_cu_text_offset): Likewise.
13065         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
13066         objfile.
13067         (set_die_type): Access objfile through
13068         dwarf2_per_objfile.
13069
13070 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
13071
13072         * valprint.c (converted_character_d): Remove typedef.
13073         (DEF_VEC_O (converted_character_d)): Remove.
13074         (count_next_character): Use std::vector.
13075         (print_converted_chars_to_obstack): Likewise.
13076         (generic_printstr): Likewise.
13077
13078 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13079
13080         * xml-support.h (struct gdb_xml_value): Add constructor.
13081         <value>: Change type to unique_xmalloc_ptr.
13082         (gdb_xml_value_s): Remove typedef.
13083         (DEF_VEC_O (gdb_xml_value_s)): Remove.
13084         (gdb_xml_element_start_handler): Change parameter type to
13085         std::vector.
13086         (xml_find_attribute): Likewise.
13087         * xml-support.c (xml_find_attribute): Change parameter type to
13088         std::vector and adjust.
13089         (gdb_xml_values_cleanup): Remove.
13090         (gdb_xml_parser::start_element): Adjust to std::vector.
13091         (xinclude_start_include): Change paraeter type to std::vector
13092         and adjust.
13093         * btrace.c (check_xml_btrace_version): Likewise.
13094         (parse_xml_btrace_block): Likewise.
13095         (parse_xml_btrace_pt_config_cpu): Likewise.
13096         (parse_xml_btrace_pt): Likewise.
13097         (parse_xml_btrace_conf_bts): Likewise.
13098         (parse_xml_btrace_conf_pt): Likewise.
13099         * memory-map.c (memory_map_start_memory): Likewise.
13100         (memory_map_start_property): Likewise.
13101         * osdata.c (osdata_start_osdata): Likewise.
13102         (osdata_start_item): Likewise.
13103         (osdata_start_column): Likewise.
13104         * remote.c (start_thread): Likewise.
13105         * solib-aix.c (library_list_start_library): Likewise.
13106         (library_list_start_list): Likewise.
13107         * solib-svr4.c (library_list_start_library): Likewise.
13108         (svr4_library_list_start_list): Likewise.
13109         * solib-target.c (library_list_start_segment): Likewise.
13110         (library_list_start_section): Likewise.
13111         (library_list_start_library): Likewise.
13112         (library_list_start_list): Likewise.
13113         * tracepoint.c (traceframe_info_start_memory): Likewise.
13114         (traceframe_info_start_tvar): Likewise.
13115         * xml-syscall.c (syscall_start_syscall): Likewise.
13116         * xml-tdesc.c (tdesc_start_target): Likewise.
13117         (tdesc_start_feature): Likewise.
13118         (tdesc_start_reg): Likewise.
13119         (tdesc_start_union): Likewise.
13120         (tdesc_start_struct): Likewise.
13121         (tdesc_start_flags): Likewise.
13122         (tdesc_start_enum): Likewise.
13123         (tdesc_start_field): Likewise.
13124         (tdesc_start_enum_value): Likewise.
13125         (tdesc_start_vector): Likewise.
13126
13127 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13128
13129         * extension.h (struct xmethod_worker) <clone>: Remove.
13130         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
13131         Remove.
13132         (python_xmethod_worker::clone): Remove.
13133         * valops.c (find_overload_match): Use std::move instead of
13134         clone.
13135
13136 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13137
13138         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
13139         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
13140         <free_xmethod_worker_data>: Remove.
13141         <get_matching_xmethod_workers>: Chance VEC to std::vector.
13142         <get_xmethod_arg_types>: Remove.
13143         <get_xmethod_result_type>: Remove.
13144         <invoke_xmethod>: Remove.
13145         * extension.c (new_xmethod_worker): Remove.
13146         (clone_xmethod_worker): Remove.
13147         (get_matching_xmethod_workers): Return void, pass std::vector by
13148         pointer.
13149         (get_xmethod_arg_types): Rename to...
13150         (xmethod_worker::get_arg_types): ... this, and adjust.
13151         (get_xmethod_result_type): Rename to...
13152         (xmethod_worker::get_result_type): ... this, and adjust.
13153         (invoke_xmethod): Remove.
13154         (free_xmethod_worker): Remove.
13155         (free_xmethod_worker_vec): Remove.
13156         * extension.h (enum ext_lang_rc): Move here from
13157         extension-priv.h.
13158         (struct xmethod_worker): Add constructor and destructor.
13159         <data>: Remove.
13160         <value>: Remove.
13161         <invoke, clone, do_get_result_type, do_get_arg_types>: New
13162         virtual pure methods.
13163         <get_arg_types, get_result_type>: New methods.
13164         (xmethod_worker_ptr): Remove typedef.
13165         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
13166         (xmethod_worker_vec): Remove typedef.
13167         (xmethod_worker_up): New typedef.
13168         (invoke_xmethod): Remove.
13169         (clone_xmethod_worker): Remove.
13170         (free_xmethod_worker): Remove.
13171         (free_xmethod_worker_vec): Remove.
13172         (get_xmethod_arg_types): Remove.
13173         (get_xmethod_result_type): Remove.
13174         * valops.c (find_method_list): Use std::vector, don't use
13175         intermediate vector.
13176         (value_find_oload_method_list): Use std::vector.
13177         (find_overload_match): Use std::vector.
13178         (find_oload_champ): Use std::vector.
13179         * value.c (value_free): Use operator delete.
13180         (value_of_xmethod): Rename to...
13181         (value_from_xmethod): ... this.  Don't assign
13182         xmethod_worker::value, take rvalue-reference.
13183         (result_type_of_xmethod): Adjust.
13184         (call_xmethod): Adjust.
13185         * value.h: Include extension.h.
13186         (struct xmethod_worker): Don't forward-declare.
13187         (value_of_xmethod): Rename to...
13188         (value_from_xmethod): ... this, take rvalue-reference.
13189         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
13190         (struct python_xmethod_worker): ... this, add constructor and
13191         destructor.
13192         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
13193         (gdbpy_free_xmethod_worker_data): Rename to...
13194         (python_xmethod_worker::~python_xmethod_worker): ... this and
13195         adjust.
13196         (gdbpy_clone_xmethod_worker_data): Rename to...
13197         (python_xmethod_worker::clone): ... this and adjust.
13198         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
13199         temporary vector.
13200         (gdbpy_get_xmethod_arg_types): Rename to...
13201         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
13202         (gdbpy_get_xmethod_result_type): Rename to...
13203         (python_xmethod_worker::do_get_result_type): ... this and
13204         adjust.
13205         (gdbpy_invoke_xmethod): Rename to...
13206         (python_xmethod_worker::invoke): ... this and adjust.
13207         (new_python_xmethod_worker): Rename to...
13208         (python_xmethod_worker::python_xmethod_worker): ... this and
13209         adjust.
13210         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
13211         Remove.
13212         (gdbpy_free_xmethod_worker_data): Remove.
13213         (gdbpy_get_matching_xmethod_workers): Use std::vector.
13214         (gdbpy_get_xmethod_arg_types): Remove.
13215         (gdbpy_get_xmethod_result_type): Remove.
13216         (gdbpy_invoke_xmethod): Remove.
13217         * python/python.c (python_extension_ops): Remove obsolete
13218         callbacks.
13219
13220 2018-01-05  Pedro Alves  <palves@redhat.com>
13221
13222         PR gdb/18653
13223         * common/signals-state-save-restore.c
13224         (save_original_signals_state): New parameter 'quiet'.  Warn if we
13225         find a custom handler preinstalled, instead of internal erroring.
13226         But only warn if !quiet.
13227         * common/signals-state-save-restore.h
13228         (save_original_signals_state): New parameter 'quiet'.
13229         * main.c (captured_main_1): Move save_original_signals_state call
13230         after option handling, and pass QUIET.
13231
13232 2018-01-05  Pedro Alves  <palves@redhat.com>
13233
13234         * spu-tdep.c (spu_catch_start): Pass
13235         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
13236
13237 2018-01-05  Pedro Alves  <palves@redhat.com>
13238
13239         PR gdb/22670
13240         * ada-lang.c (literal_symbol_name_matcher): New function.
13241         (ada_get_symbol_name_matcher): Use it for
13242         symbol_name_match_type::SEARCH_NAME.
13243         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
13244         it down instead of assuming symbol_name_match_type::FULL.
13245         * block.h (block_lookup_symbol): New parameter 'match_type'.
13246         * c-valprint.c (print_unpacked_pointer): Use
13247         lookup_symbol_search_name instead of lookup_symbol.
13248         * compile/compile-object-load.c (get_out_value_type): Pass down
13249         symbol_name_match_type::SEARCH_NAME.
13250         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
13251         symbol_name_match_type::FULL.
13252         * cp-support.c (cp_get_symbol_name_matcher): Handle
13253         symbol_name_match_type::SEARCH_NAME.
13254         * infrun.c (insert_exception_resume_breakpoint): Use
13255         lookup_symbol_search_name.
13256         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
13257         * psymtab.c (maintenance_check_psymtabs): Use
13258         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
13259         * stack.c (print_frame_args): Use lookup_symbol_search_name and
13260         SYMBOL_SEARCH_NAME.
13261         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
13262         if symbol_name_match_type::SEARCH_NAME.
13263         (lookup_symbol_in_language): Pass down
13264         symbol_name_match_type::FULL.
13265         (lookup_symbol_search_name): New.
13266         (lookup_language_this): Pass down
13267         symbol_name_match_type::SEARCH_NAME.
13268         (lookup_symbol_aux, lookup_local_symbol): New parameter
13269         'match_type'.  Pass it down.
13270         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
13271         (lookup_symbol_search_name): New declaration.
13272         (lookup_symbol_in_block): New 'match_type' parameter.
13273
13274 2018-01-05  Pedro Alves  <palves@redhat.com>
13275
13276         PR gdb/22670
13277         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
13278         ada_lookup_symbol.
13279         (ada_lookup_symbol): Reimplement in terms of
13280         ada_lookup_symbol_list, bits factored out from
13281         ada_lookup_encoded_symbol.
13282
13283 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13284
13285         * ada-exp.y (write_object_renaming): When subscripting an array
13286         using a symbol as the index, pass the block in call to
13287         ada_lookup_encoded_symbol when looking that symbol up.
13288
13289 2018-01-05  Jerome Guitton  <guitton@adacore.com>
13290
13291         * ada-lang.c (ada_array_length): Use ada_index_type instead of
13292         TYPE_INDEX_TYPE.
13293
13294 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13295
13296         * ada-lang.c (ada_to_fixed_value_create): Add handling of
13297         the case where VALUE_LVAL (val0) is not lval_memory.
13298
13299 2018-01-05  Xavier Roirand  <roirand@adacore.com>
13300
13301         * ada-valprint.c (print_optional_low_bound): Handle
13302         character-indexed array printing like boolean-indexed array
13303         printing.
13304
13305 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13306
13307         * NEWS: Create a new section for the next release branch.
13308         Rename the section of the current branch, now that it has
13309         been cut.
13310
13311 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13312
13313         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
13314         * version.in: Bump version to 8.1.50.DATE-git.
13315
13316 2018-01-03  Xavier Roirand  <roirand@adacore.com>
13317
13318         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
13319         Add field.
13320         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
13321         Add field.
13322         (default_exception_support_info) <catch_handlers_sym>: Add field.
13323         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
13324         (ada_exception_name_addr_1): Add "catch handlers" handling.
13325         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
13326         Update all callers.
13327         (create_excep_cond_exprs) <ex>: Add parameter.
13328         (re_set_exception): Update create_excep_cond_exprs call.
13329         (print_it_exception, print_one_exception, print_mention_exception)
13330         (print_recreate_exception): Add "catch handler" handling.
13331         (allocate_location_catch_handlers, re_set_catch_handlers)
13332         (check_status_catch_handlers, print_it_catch_handlers)
13333         (print_one_catch_handlers, print_mention_catch_handlers)
13334         (print_recreate_catch_handlers): New function.
13335         (catch_handlers_breakpoint_ops): New variable.
13336         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
13337         Add parameter.  Add "catch handler" handling.
13338         (ada_exception_sym_name, ada_exception_breakpoint_ops):
13339         Add "catch handler" handling.
13340         (ada_exception_catchpoint_cond_string): Add "catch handler"
13341         handling.
13342         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
13343         call.
13344         (catch_ada_handlers_command): New function.
13345         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
13346         operations structure.
13347         (_initialize_ada_language): Add "catch handlers" command entry.
13348         * NEWS: Document "catch handlers" feature.
13349
13350 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
13351
13352         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
13353         account when creating the array type of the slice.
13354         (ada_value_slice): Likewise.
13355
13356 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
13357
13358         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
13359         New enum value.
13360         (create_array_type_with_stride): Add byte_stride_prop parameter.
13361         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
13362         New parameter.  Update all callers in this file.
13363         (array_type_has_dynamic_stride): New function.
13364         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
13365         of arrays with dynamic byte strides.
13366         * dwarf2read.c (read_array_type): Add support for dynamic
13367         DW_AT_byte_stride attributes.
13368
13369 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
13370
13371         * dwarf2read.c (read_unspecified_type): Treat
13372         DW_TAG_enumeration_type DIEs from Ada units as stubs.
13373
13374 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13375
13376         Update copyright year range in all GDB files.
13377
13378 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13379
13380         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
13381         and gdb/testsuite/gdb.base/step-line.c.
13382
13383 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13384
13385         * copyright.py (main): Dump the contents of
13386         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
13387         even if BY_HAND is empty.
13388
13389 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13390
13391         * top.c (print_gdb_version): Update Copyright year in version
13392         message.
13393
13394 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13395
13396         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
13397
13398 For older changes see ChangeLog-2017.
13399 \f
13400 Local Variables:
13401 mode: change-log
13402 left-margin: 8
13403 fill-column: 74
13404 version-control: never
13405 coding: utf-8
13406 End: