Fix PR gdb/23558: Use system's 'getcwd' when cross-compiling GDB
[external/binutils.git] / gdb / ChangeLog
1 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2
3         PR gdb/23555
4         PR gdb/23558
5         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
6         guesses.
7
8 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
9
10         Revert:
11         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
12
13         PR gdb/23555
14         PR gdb/23558
15         * gnulib/aclocal.m4: Regenerate.
16         * gnulib/config.in: Regenerate.
17         * gnulib/configure: Regenerate.
18         * gnulib/import/Makefile.am: Update.
19         * gnulib/import/Makefile.in: Update.
20         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
21         * gnulib/import/_Noreturn.h: ... this.
22         * gnulib/import/alloca.in.h: Update.
23         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
24         * gnulib/import/arg-nonnull.h: ... this.
25         * gnulib/import/assure.h: Update.
26         * gnulib/import/at-func.c: Update.
27         * gnulib/import/basename-lgpl.c: Update.
28         * gnulib/import/extra/snippet/c++defs.h: Rename to...
29         * gnulib/import/c++defs.h: ... this.
30         * gnulib/import/canonicalize-lgpl.c: Update.
31         * gnulib/import/cdefs.h: Update.
32         * gnulib/import/chdir-long.c: Update.
33         * gnulib/import/chdir-long.h: Update.
34         * gnulib/import/cloexec.c: Update.
35         * gnulib/import/cloexec.h: Update.
36         * gnulib/import/close.c: Update.
37         * gnulib/import/closedir.c: Update.
38         * gnulib/import/config.charset: Update.
39         * gnulib/import/dirent-private.h: Update.
40         * gnulib/import/dirent.in.h: Update.
41         * gnulib/import/dirfd.c: Update.
42         * gnulib/import/dirname-lgpl.c: Update.
43         * gnulib/import/dirname.h: Update.
44         * gnulib/import/dosname.h: Update.
45         * gnulib/import/dup-safer-flag.c: Update.
46         * gnulib/import/dup-safer.c: Update.
47         * gnulib/import/dup.c: Update.
48         * gnulib/import/dup2.c: Update.
49         * gnulib/import/errno.in.h: Update.
50         * gnulib/import/error.c: Update.
51         * gnulib/import/error.h: Update.
52         * gnulib/import/exitfail.c: Update.
53         * gnulib/import/exitfail.h: Update.
54         * gnulib/import/extra/update-copyright: Update.
55         * gnulib/import/fchdir.c: Update.
56         * gnulib/import/fcntl.c: Update.
57         * gnulib/import/fcntl.in.h: Update.
58         * gnulib/import/fd-hook.c: Update.
59         * gnulib/import/fd-hook.h: Update.
60         * gnulib/import/fd-safer-flag.c: Update.
61         * gnulib/import/fd-safer.c: Update.
62         * gnulib/import/fdopendir.c: Update.
63         * gnulib/import/filename.h: Update.
64         * gnulib/import/filenamecat-lgpl.c: Update.
65         * gnulib/import/filenamecat.h: Update.
66         * gnulib/import/flexmember.h: Update.
67         * gnulib/import/float+.h: Update.
68         * gnulib/import/float.c: Update.
69         * gnulib/import/float.in.h: Update.
70         * gnulib/import/fnmatch.c: Update.
71         * gnulib/import/fnmatch.in.h: Update.
72         * gnulib/import/fnmatch_loop.c: Update.
73         * gnulib/import/fpucw.h: Update.
74         * gnulib/import/frexp.c: Update.
75         * gnulib/import/frexpl.c: Update.
76         * gnulib/import/fstat.c: Update.
77         * gnulib/import/fstatat.c: Update.
78         * gnulib/import/getcwd-lgpl.c: Update.
79         * gnulib/import/getcwd.c: Update.
80         * gnulib/import/getdtablesize.c: Update.
81         * gnulib/import/getlogin_r.c: Update.
82         * gnulib/import/getprogname.c: Update.
83         * gnulib/import/getprogname.h: Update.
84         * gnulib/import/gettext.h: Update.
85         * gnulib/import/gettimeofday.c: Update.
86         * gnulib/import/glob-libc.h: Update.
87         * gnulib/import/glob.c: Update.
88         * gnulib/import/glob.in.h: Update.
89         * gnulib/import/glob_internal.h: Update.
90         * gnulib/import/glob_pattern_p.c: Update.
91         * gnulib/import/globfree.c: Update.
92         * gnulib/import/hard-locale.c: Update.
93         * gnulib/import/hard-locale.h: Update.
94         * gnulib/import/intprops.h: Update.
95         * gnulib/import/inttypes.in.h: Update.
96         * gnulib/import/isnan.c: Update.
97         * gnulib/import/isnand-nolibm.h: Update.
98         * gnulib/import/isnand.c: Update.
99         * gnulib/import/isnanl-nolibm.h: Update.
100         * gnulib/import/isnanl.c: Update.
101         * gnulib/import/itold.c: Update.
102         * gnulib/import/libc-config.h: Update.
103         * gnulib/import/limits.in.h: Update.
104         * gnulib/import/localcharset.c: Update.
105         * gnulib/import/localcharset.h: Update.
106         * gnulib/import/localtime-buffer.c: Update.
107         * gnulib/import/localtime-buffer.h: Update.
108         * gnulib/import/lstat.c: Update.
109         * gnulib/import/m4/00gnulib.m4: Update.
110         * gnulib/import/m4/__inline.m4: Update.
111         * gnulib/import/m4/absolute-header.m4: Update.
112         * gnulib/import/m4/alloca.m4: Update.
113         * gnulib/import/m4/builtin-expect.m4: Update.
114         * gnulib/import/m4/canonicalize.m4: Update.
115         * gnulib/import/m4/chdir-long.m4: Update.
116         * gnulib/import/m4/close.m4: Update.
117         * gnulib/import/m4/closedir.m4: Update.
118         * gnulib/import/m4/configmake.m4: Update.
119         * gnulib/import/m4/d-ino.m4: Update.
120         * gnulib/import/m4/d-type.m4: Update.
121         * gnulib/import/m4/dirent_h.m4: Update.
122         * gnulib/import/m4/dirfd.m4: Update.
123         * gnulib/import/m4/dirname.m4: Update.
124         * gnulib/import/m4/double-slash-root.m4: Update.
125         * gnulib/import/m4/dup.m4: Update.
126         * gnulib/import/m4/dup2.m4: Update.
127         * gnulib/import/m4/eealloc.m4: Update.
128         * gnulib/import/m4/environ.m4: Update.
129         * gnulib/import/m4/errno_h.m4: Update.
130         * gnulib/import/m4/error.m4: Update.
131         * gnulib/import/m4/exponentd.m4: Update.
132         * gnulib/import/m4/exponentl.m4: Update.
133         * gnulib/import/m4/extensions.m4: Update.
134         * gnulib/import/m4/extern-inline.m4: Update.
135         * gnulib/import/m4/fchdir.m4: Update.
136         * gnulib/import/m4/fcntl-o.m4: Update.
137         * gnulib/import/m4/fcntl.m4: Update.
138         * gnulib/import/m4/fcntl_h.m4: Update.
139         * gnulib/import/m4/fdopendir.m4: Update.
140         * gnulib/import/m4/filenamecat.m4: Update.
141         * gnulib/import/m4/flexmember.m4: Update.
142         * gnulib/import/m4/float_h.m4: Update.
143         * gnulib/import/m4/fnmatch.m4: Update.
144         * gnulib/import/m4/fnmatch_h.m4: Update.
145         * gnulib/import/m4/fpieee.m4: Update.
146         * gnulib/import/m4/frexp.m4: Update.
147         * gnulib/import/m4/frexpl.m4: Update.
148         * gnulib/import/m4/fstat.m4: Update.
149         * gnulib/import/m4/fstatat.m4: Update.
150         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
151         * gnulib/import/m4/getcwd-path-max.m4: Update.
152         * gnulib/import/m4/getcwd.m4: Update.
153         * gnulib/import/m4/getdtablesize.m4: Update.
154         * gnulib/import/m4/getlogin.m4: Update.
155         * gnulib/import/m4/getlogin_r.m4: Update.
156         * gnulib/import/m4/getpagesize.m4: Update.
157         * gnulib/import/m4/getprogname.m4: Update.
158         * gnulib/import/m4/gettimeofday.m4: Update.
159         * gnulib/import/m4/glibc21.m4: Update.
160         * gnulib/import/m4/glob.m4: Update.
161         * gnulib/import/m4/glob_h.m4: Update.
162         * gnulib/import/m4/gnulib-cache.m4: Update.
163         * gnulib/import/m4/gnulib-common.m4: Update.
164         * gnulib/import/m4/gnulib-comp.m4: Update.
165         * gnulib/import/m4/gnulib-tool.m4: Update.
166         * gnulib/import/m4/hard-locale.m4: Update.
167         * gnulib/import/m4/include_next.m4: Update.
168         * gnulib/import/m4/inttypes-pri.m4: Update.
169         * gnulib/import/m4/inttypes.m4: Update.
170         * gnulib/import/m4/isnand.m4: Update.
171         * gnulib/import/m4/isnanl.m4: Update.
172         * gnulib/import/m4/largefile.m4: Update.
173         * gnulib/import/m4/limits-h.m4: Update.
174         * gnulib/import/m4/localcharset.m4: Update.
175         * gnulib/import/m4/locale-fr.m4: Update.
176         * gnulib/import/m4/locale-ja.m4: Update.
177         * gnulib/import/m4/locale-zh.m4: Update.
178         * gnulib/import/m4/localtime-buffer.m4: Update.
179         * gnulib/import/m4/longlong.m4: Update.
180         * gnulib/import/m4/lstat.m4: Update.
181         * gnulib/import/m4/malloc.m4: Update.
182         * gnulib/import/m4/malloca.m4: Update.
183         * gnulib/import/m4/math_h.m4: Update.
184         * gnulib/import/m4/mbrtowc.m4: Update.
185         * gnulib/import/m4/mbsinit.m4: Update.
186         * gnulib/import/m4/mbsrtowcs.m4: Update.
187         * gnulib/import/m4/mbstate_t.m4: Update.
188         * gnulib/import/m4/memchr.m4: Update.
189         * gnulib/import/m4/memmem.m4: Update.
190         * gnulib/import/m4/mempcpy.m4: Update.
191         * gnulib/import/m4/memrchr.m4: Update.
192         * gnulib/import/m4/mkdir.m4: Update.
193         * gnulib/import/m4/mkstemp.m4: Update.
194         * gnulib/import/m4/mmap-anon.m4: Update.
195         * gnulib/import/m4/mode_t.m4: Update.
196         * gnulib/import/m4/msvc-inval.m4: Update.
197         * gnulib/import/m4/msvc-nothrow.m4: Update.
198         * gnulib/import/m4/multiarch.m4: Update.
199         * gnulib/import/m4/nocrash.m4: Update.
200         * gnulib/import/m4/off_t.m4: Update.
201         * gnulib/import/m4/onceonly.m4: Update.
202         * gnulib/import/m4/open-cloexec.m4: Update.
203         * gnulib/import/m4/open.m4: Update.
204         * gnulib/import/m4/openat.m4: Update.
205         * gnulib/import/m4/opendir.m4: Update.
206         * gnulib/import/m4/pathmax.m4: Update.
207         * gnulib/import/m4/rawmemchr.m4: Update.
208         * gnulib/import/m4/readdir.m4: Update.
209         * gnulib/import/m4/readlink.m4: Update.
210         * gnulib/import/m4/realloc.m4: Update.
211         * gnulib/import/m4/rename.m4: Update.
212         * gnulib/import/m4/rewinddir.m4: Update.
213         * gnulib/import/m4/rmdir.m4: Update.
214         * gnulib/import/m4/save-cwd.m4: Update.
215         * gnulib/import/m4/secure_getenv.m4: Update.
216         * gnulib/import/m4/setenv.m4: Update.
217         * gnulib/import/m4/signal_h.m4: Update.
218         * gnulib/import/m4/ssize_t.m4: Update.
219         * gnulib/import/m4/stat-time.m4: Update.
220         * gnulib/import/m4/stat.m4: Update.
221         * gnulib/import/m4/std-gnu11.m4: Update.
222         * gnulib/import/m4/stdbool.m4: Update.
223         * gnulib/import/m4/stddef_h.m4: Update.
224         * gnulib/import/m4/stdint.m4: Update.
225         * gnulib/import/m4/stdio_h.m4: Update.
226         * gnulib/import/m4/stdlib_h.m4: Update.
227         * gnulib/import/m4/strchrnul.m4: Update.
228         * gnulib/import/m4/strdup.m4: Update.
229         * gnulib/import/m4/strerror.m4: Update.
230         * gnulib/import/m4/string_h.m4: Update.
231         * gnulib/import/m4/strstr.m4: Update.
232         * gnulib/import/m4/strtok_r.m4: Update.
233         * gnulib/import/m4/sys_socket_h.m4: Update.
234         * gnulib/import/m4/sys_stat_h.m4: Update.
235         * gnulib/import/m4/sys_time_h.m4: Update.
236         * gnulib/import/m4/sys_types_h.m4: Update.
237         * gnulib/import/m4/tempname.m4: Update.
238         * gnulib/import/m4/time_h.m4: Update.
239         * gnulib/import/m4/unistd-safer.m4: Update.
240         * gnulib/import/m4/unistd_h.m4: Update.
241         * gnulib/import/m4/warn-on-use.m4: Update.
242         * gnulib/import/m4/wchar_h.m4: Update.
243         * gnulib/import/m4/wchar_t.m4: Update.
244         * gnulib/import/m4/wctype_h.m4: Update.
245         * gnulib/import/m4/wint_t.m4: Update.
246         * gnulib/import/malloc.c: Update.
247         * gnulib/import/malloc/scratch_buffer.h: Update.
248         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
249         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
250         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
251         * gnulib/import/malloca.c: Update.
252         * gnulib/import/malloca.h: Update.
253         * gnulib/import/malloca.valgrind: Update.
254         * gnulib/import/math.in.h: Update.
255         * gnulib/import/mbrtowc.c: Update.
256         * gnulib/import/mbsinit.c: Update.
257         * gnulib/import/mbsrtowcs-impl.h: Update.
258         * gnulib/import/mbsrtowcs-state.c: Update.
259         * gnulib/import/mbsrtowcs.c: Update.
260         * gnulib/import/memchr.c: Update.
261         * gnulib/import/memmem.c: Update.
262         * gnulib/import/mempcpy.c: Update.
263         * gnulib/import/memrchr.c: Update.
264         * gnulib/import/mkdir.c: Update.
265         * gnulib/import/mkstemp.c: Update.
266         * gnulib/import/msvc-inval.c: Update.
267         * gnulib/import/msvc-inval.h: Update.
268         * gnulib/import/msvc-nothrow.c: Update.
269         * gnulib/import/msvc-nothrow.h: Update.
270         * gnulib/import/open.c: Update.
271         * gnulib/import/openat-die.c: Update.
272         * gnulib/import/openat-priv.h: Update.
273         * gnulib/import/openat-proc.c: Update.
274         * gnulib/import/openat.c: Update.
275         * gnulib/import/openat.h: Update.
276         * gnulib/import/opendir.c: Update.
277         * gnulib/import/pathmax.h: Update.
278         * gnulib/import/pipe-safer.c: Update.
279         * gnulib/import/rawmemchr.c: Update.
280         * gnulib/import/readdir.c: Update.
281         * gnulib/import/readlink.c: Update.
282         * gnulib/import/realloc.c: Update.
283         * gnulib/import/ref-add.sin: Update.
284         * gnulib/import/ref-del.sin: Update.
285         * gnulib/import/rename.c: Update.
286         * gnulib/import/rewinddir.c: Update.
287         * gnulib/import/rmdir.c: Update.
288         * gnulib/import/same-inode.h: Update.
289         * gnulib/import/save-cwd.c: Update.
290         * gnulib/import/save-cwd.h: Update.
291         * gnulib/import/scratch_buffer.h: Update.
292         * gnulib/import/secure_getenv.c: Update.
293         * gnulib/import/setenv.c: Update.
294         * gnulib/import/signal.in.h: Update.
295         * gnulib/import/stat-time.c: Update.
296         * gnulib/import/stat-time.h: Update.
297         * gnulib/import/stat-w32.c: Update.
298         * gnulib/import/stat-w32.h: Update.
299         * gnulib/import/stat.c: Update.
300         * gnulib/import/stdbool.in.h: Update.
301         * gnulib/import/stddef.in.h: Update.
302         * gnulib/import/stdint.in.h: Update.
303         * gnulib/import/stdio.in.h: Update.
304         * gnulib/import/stdlib.in.h: Update.
305         * gnulib/import/str-two-way.h: Update.
306         * gnulib/import/strchrnul.c: Update.
307         * gnulib/import/strdup.c: Update.
308         * gnulib/import/streq.h: Update.
309         * gnulib/import/strerror-override.c: Update.
310         * gnulib/import/strerror-override.h: Update.
311         * gnulib/import/strerror.c: Update.
312         * gnulib/import/string.in.h: Update.
313         * gnulib/import/stripslash.c: Update.
314         * gnulib/import/strnlen1.c: Update.
315         * gnulib/import/strnlen1.h: Update.
316         * gnulib/import/strstr.c: Update.
317         * gnulib/import/strtok_r.c: Update.
318         * gnulib/import/sys_stat.in.h: Update.
319         * gnulib/import/sys_time.in.h: Update.
320         * gnulib/import/sys_types.in.h: Update.
321         * gnulib/import/tempname.c: Update.
322         * gnulib/import/tempname.h: Update.
323         * gnulib/import/time.in.h: Update.
324         * gnulib/import/unistd--.h: Update.
325         * gnulib/import/unistd-safer.h: Update.
326         * gnulib/import/unistd.in.h: Update.
327         * gnulib/import/unsetenv.c: Update.
328         * gnulib/import/verify.h: Update.
329         * gnulib/import/extra/snippet/warn-on-use.h: Update.
330         * gnulib/import/wchar.in.h: Update.
331         * gnulib/import/wctype.in.h: Update.
332         * gnulib/import/xalloc-oversized.h: Update.
333         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
334         "53e2c179f26a890fa6685af4b6c1397ee370433b".
335
336 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
337
338         * record-btrace.c (get_thread_current_frame): Remove
339         old_inferior_ptid.
340
341 2018-09-10  Jerome Guitton  <guitton@adacore.com>
342
343         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
344         with check_tag to 1 if and only if the type is tagged and the
345         component being searched cannot been found in the current
346         view. Otherwise, always call ada_to_fixed_type with
347         check_tag to 0.
348
349 2018-09-10  Xavier Roirand  <roirand@adacore.com>
350
351         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
352         declaration.
353         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
354         * ada-varobj.c (ada_varobj_get_number_of_children,
355         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
356
357 2018-09-10  Xavier Roirand  <roirand@adacore.com>
358
359         * ada-valprint.c (ada_value_print): Use type instead of
360         enclosing type.
361
362 2018-09-10  Xavier Roirand  <roirand@adacore.com>
363
364         * ada-lang.c (ada_value_subscript): Handle case when parameter is
365         an array of access to unconstrained array.
366
367 2018-09-10  Xavier Roirand  <roirand@adacore.com>
368
369         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
370         (ada_check_typedef): Use it.
371
372 2018-09-10  Xavier Roirand  <roirand@adacore.com>
373
374         * ada-varobj.c (ada_varobj_describe_struct_child)
375         (ada_varobj_describe_child): Handle union case like struct one.
376
377 2018-09-10  Tom Tromey  <tom@tromey.com>
378
379         PR python/18380:
380         * python/python.c (_initialize_python): Make example in "python"
381         help work in Python 3.
382
383 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
384
385         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
386         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
387         $(EXEEXT) to the script, as it is not a program.
388
389 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
390
391         * python/py-prettyprint.c (pretty_print_one_value): Return
392         gdbpy_ref<>.
393         (print_string_repr): Adjust.
394         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
395         * python/python-internal.h (apply_varobj_pretty_printer): Return
396         gdbpy_ref<>.
397         * varobj.c (varobj_value_get_print_value): Adjust.
398
399 2018-09-08  Tom Tromey  <tom@tromey.com>
400
401         PR python/16047:
402         * python/py-prettyprint.c (pretty_print_one_value): Check for
403         to_string method.
404
405 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
406
407         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
408         replace_operator_with_call.
409
410 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
411
412         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
413
414 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
415
416         * ada-typeprint.c (print_range): Print the bounds using TYPE
417         rather than its TYPE_TARGET_TYPE.
418
419 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
420
421         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
422         call to ada_to_fixed_value_create.
423
424 2018-09-08  Jerome Guitton  <guitton@adacore.com>
425
426         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
427
428 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
429
430         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
431         by calls to error.
432
433 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
434
435         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
436         Move update of loop variable "fi".
437
438 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
439
440         * ada-lang.c (value_assign_to_component): In the case of
441         big-endian targets, extract the bits of the given VAL
442         using an src_offset of zero if container is not a scalar.
443
444 2018-09-06  Simon Ser  <contact@emersion.fr>
445
446         PR gdb/23105
447         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
448         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
449         * fbsd-tdep.c (fbsd_make_note_desc): New.
450         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
451         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
452         * target.h (enum target_object) Add FreeBSD-specific
453         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
454
455 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
456
457         * compile/compile-c.h (generate_c_for_variable_locations):
458         Change reference to pointer.
459         * compile/compile-c-support.c (compile_program) <compute>:
460         Likewise.
461         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
462         (generate_c_for_for_one_variable): Likewise
463         (generate_c_for_variable_locations): Likewise
464         * compile/compile-c-types.c (compile_c_instance::convert_type):
465         Likewise
466         * compile/compile-cplus-symbols.c (convert_one_symbol):
467         std::move the scope passed to enter_scope.
468         * compile/compile-cplus-types.c
469         (compile_cplus_instance::enter_scope): Make parameter
470         rvalue-reference.
471         (compile_cplus_instance::new_scope): Change reference to
472         pointer.
473         (compile_cplus_instance::convert_type): Likewise
474         (compile_cplus_convert_typedef): std::move the scope passed to
475         enter_scope.
476         (compile_cplus_convert_struct_or_union): Likewise.
477         (compile_cplus_convert_enum): Likewise.
478         (compile_cplus_convert_namespace): Likewise.
479         * compile/compile-cplus.h (compile_cplus_instance)
480         <enter_scope>: Make parameter rvalue-reference.
481         * compile/compile-internal.h (compile_instance)
482         <get_cached_type>: Likewise
483         * compile/compile-loc2c.c (push): Likewise
484         (pushf): Likewise
485         (unary): Likewise
486         (binary): Likewise
487         (print_label): Likewise
488         (pushf_register_address): Likewise
489         (pushf_register): Likewise
490         (do_compile_dwarf_expr_to_c): Likewise
491         (compile_dwarf_expr_to_c): Likewise
492         (compile_dwarf_bounds_to_c): Likewise
493         * compile/compile.c (compile_instance::get_cached_type):
494         Likewise
495         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
496         (compile_dwarf_bounds_to_c): Likewise
497         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
498         (dwarf2_compile_property_to_c): Likewise
499         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
500         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
501         Likewise
502
503 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
504
505         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
506         * tui/tui-data.c (init_content_element): Don't initialize it.
507
508 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
509
510         * tui/tui-data.h (struct tui_win_info)
511         <detail::opaque>: Remove.
512         * tui/tui-data.c (init_win_info): Remove assignment.
513
514 2018-09-05  Tom Tromey  <tom@tromey.com>
515
516         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
517         -Wformat-nonliteral.
518         * target-float.c (host_float_ops<T>::to_string)
519         (host_float_ops<T>::from_string): Use
520         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
521         * configure: Rebuild.
522
523 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
524
525         * printcmd.c (printf_c_string): Use
526         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
527         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
528
529 2018-09-05  Tom Tromey  <tom@tromey.com>
530
531         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
532
533 2018-09-05  Tom de Vries  <tdevries@suse.de>
534
535         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
536         with resolve_abstract_p == true.
537         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
538         defaulting to false. Propagate resolve_abstract_p to
539         dwarf2_fetch_die_loc_sect_off.
540         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
541         parameter, defaulting to false.
542         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
543         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
544         parameter.
545         * dwarf2read.h (struct die_info): Forward-declare.
546         (die_info_ptr): New typedef.
547         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
548
549 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
550
551         GDB 8.2 released.
552
553 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
554             Pedro Alves  <palves@redhat.com>
555
556         * gnulib/Makefile.in (aclocal_m4_deps): Move to
557         "aclocal-m4-deps.mk".  Include file here.
558         $(srcdir)/aclocal.m4: Add "configure.ac".
559         * gnulib/aclocal-m4-deps.mk: New file.
560         * gnulib/update-gnulib.sh: Automatically update
561         "aclocal-m4-deps.mk".
562
563 2018-09-04  Tom Tromey  <tom@tromey.com>
564
565         * configure: Rebuild.
566         * configure.ac: Remove multi-ice code.
567
568 2018-09-04  Tom Tromey  <tom@tromey.com>
569
570         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
571         (ada-exp.o): Update.
572
573 2018-09-04  Tom Tromey  <tom@tromey.com>
574
575         * Makefile.in (printcmd.o, target-float.o): Remove.
576         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
577
578 2018-09-04  Tom Tromey  <tom@tromey.com>
579
580         * gnulib/Makefile.in: Remove obsolete comment.
581         * Makefile.in: Remove obsolete comment.
582
583 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
584
585         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
586         line with '+'.
587
588 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
589
590         * riscv-tdep.c: Add 'prologue-value.h' include.
591         (struct riscv_unwind_cache): New struct.
592         (riscv_debug_unwinder): New global.
593         (riscv_scan_prologue): Update arguments, capture register details
594         from prologue scan.
595         (riscv_skip_prologue): Reformat arguments line, move end of
596         prologue calculation into riscv_scan_prologue.
597         (riscv_frame_cache): Update return type, create
598         riscv_unwind_cache, scan the prologue, and fill in remaining cache
599         details.
600         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
601         (riscv_frame_prev_register): Use the trad_frame within the
602         riscv_unwind_cache.
603         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
604         flag.
605
606 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
607
608         * trad-frame.h (trad_frame_set_realreg): Declare.
609         (trad_frame_set_addr): Declare.
610         * trad-frame.c (trad_frame_set_realreg): Define new function.
611         (trad_frame_set_addr): Define new function.
612         (trad_frame_set_reg_realreg): Use new function.
613         (trad_frame_set_reg_addr): Use new function.
614
615 2018-09-01  Keith Seitz  <keiths@redhat.com>
616
617         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
618         pulongest instead of "%lld".
619         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
620         ATTRIBUTE_UNUSED.
621
622 2018-08-31  Tom Tromey  <tom@tromey.com>
623
624         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
625         variant part type.
626
627 2018-08-31  Pedro Alves  <palves@redhat.com>
628
629         * gdbarch.h: Regenerate.
630
631 2018-08-31  Pedro Alves  <palves@redhat.com>
632
633         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
634         * target.h (Hardware watchpoint interfaces): Describe
635         continuable/steppable/non-steppable watchpoints.
636         * gdbarch.h, gdbarch.c: Regenerate.
637
638 2018-08-31  Pedro Alves  <palves@redhat.com>
639
640         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
641         Delete.
642         * s390-linux-nat.c
643         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
644         * target.h (target_ops::have_continuable_watchpoint): Delete.
645         (target_have_continuable_watchpoint): Delete.
646         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
647         * target-delegates.c: Regenerate.
648
649 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
650
651         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
652         the files present in "gnulib/import/m4/".
653
654 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
655
656         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
657         c.sw, c.swsp, and c.sdsp.
658
659 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
660
661         * riscv-tdep.c (struct riscv_inferior_data): Delete.
662         (riscv_read_misa_reg): Don't cache value read into inferior data.
663         (riscv_new_inferior_data): Delete.
664         (riscv_inferior_data_cleanup): Delete.
665         (riscv_inferior_data): Delete.
666         (riscv_invalidate_inferior_data): Delete.
667         (_initialize_riscv_tdep): Remove initialisation of inferior data.
668
669 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
670
671         * compile/compile-cplus-types.c
672         (compile_cplus_instance::leave_scope): Take the address of scope
673         object.
674         (compile_cplus_instance::convert_qualified_base): Compare quals
675         to 0.
676
677 2018-08-30  Keith Seitz  <keiths@redhat.com>
678
679         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
680         Use "%s" and host_address_to_string instead of "%p" in printf.
681
682 2018-08-29  Keith Seitz  <keiths@redhat.com>
683
684         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
685         and compile-cplus-types.c.
686         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
687         * c-lang.c (cplus_language_defn): Set C++ compile functions.
688         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
689         Declare.
690         * compile/compile-c-support.c: Include compile-cplus.h.
691         (load_libcompile): Templatize.
692         (get_compile_context): "New" function.
693         (c_get_compile_context): Use get_compile_context.
694         (cplus_get_compile_context): New function.
695         (cplus_push_user_expression, cplus_pop_user_expression)
696         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
697         (cplus_compute_program): Define new structs/functions.
698         * compile/compile-cplus-symmbols.c: New file.
699         * compile/compile-cplus-types.c: New file.
700         * compile/compile-cplus.h: New file.
701         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
702         Declare.
703         * compile/compile-object-load.c (get_out_value_type): Use
704         strncmp_iw when comparing symbol names.
705         (compile_object_load): Add mst_bss and mst_data.
706         * compile/compile.c (_initialize_compile): Remove
707         -Wno-implicit-function-declaration from `compile_args'.
708         * compile/gcc-cp-plugin.h: New file.
709         * NEWS: Mention C++ compile support and new debug options.
710
711 2018-08-29  Keith Seitz  <keiths@redhat.com>
712
713         * linespec.c (collect_info::add_symbol): Make virtual.
714         (struct symbol_searcher_collect_info): New struct.
715         (symbol_searcher::find_all_symbols): New method.
716         * symtab.h (class symbol_searcher): New class.
717
718 2018-08-29  Keith Seitz  <keiths@redhat.com>
719
720         * linespec.c (struct linespec) <function_symbols, label_symbols>:
721         Change to vector of block_symbol.  Update all users.
722         (struct collect_info) <symbols>: Likewise.
723         (collect_info::add_symbol): Take block_symbol as argument.
724         Update all callers.
725         (decode_compound_collector) <m_symbols>: Change type to vector
726         of block_symbol.  Update all users.
727         (decode_compound_collector::operator ()): Change parameter type
728         to block_symbol.
729         (find_method, find_function_symbols, find_linespec_symbols)
730         (find_label_symbols_in_block, find_label_symbols): Change symbol
731         vectors to block_symbol vectors.
732         * symtab.h (symbol_found_callback_ftype): Change parameter type to
733         block_symbol.
734
735 2018-08-29  Keith Seitz  <keiths@redhat.com>
736
737         * linespec.c (symbolp): Remove typedef and VEC definitions.
738         (bound_minimal_symbol_d): Likewise.
739
740 2018-08-29  Keith Seitz  <keiths@redhat.com>
741
742         * linespec.c (decode_compound_collector::decode_compound_collector):
743         Remove initialization for `m_symtabs'.
744         (decode_compound_collector::release_symbols): Change return type
745         to std::vector.  Update all callers.
746         (class decode_compound_collector) <m_symbols>: Change type to
747         std::vector.
748         (lookup_prefix_sym): Change return type to std::vector.  Update all
749         callers.
750         (compare_symbols): Remove.
751         (std_compare_symbols): Rename to `compare_symbols'.
752         (find_method): Change `sym_classes' parameter to std::vector.
753         Update all callers.  Use std::sort to sort sym_classes.
754         (find_linespec_symbols): Remove cleanup.
755
756 2018-08-29  Keith Seitz  <keiths@redhat.com>
757
758         * linespec.c (struct linespec) <minimal_symbols>: Change type to
759         std::vector.  Update all users.
760         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
761         (struct collect_info) <minimal_symbols>: Likewise.
762         (compare_msymbols): Return bool.  Change parameters to const
763         bound_minimal_symbol references.
764         (find_method, find_function_symbols, find_linespec_symbols): Change
765         `minsyms' parameter to std::vector.  Update all callers.
766
767 2018-08-29  Keith Seitz  <keiths@redhat.com>
768
769         * linespec.c (struct linespec) <label_symbols>: Change type to
770         std::vector.  Update all users.
771         (find_label_symbols_in_block): Change `result' parameter to
772         std::vector.  Update all callers.
773         (find_label_symbols): Return std::vector.  Update all callers.
774
775 2018-08-29  Keith Seitz  <keiths@redhat.com>
776
777         * linespec.c (struct linespec) <function_symbols>: Change type to
778         std::vector.  Update all users.
779         (struct collect_info) <function_symbols>: Likewise.
780         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
781         (std_compare_symbols): New function.
782         (find_method, find_function_symbols, find_linespec_symbols)
783         (find_label_symbols_in_block): Change `symbols' parameter to
784         std::vector.  Update all callers.
785         (find_label_symbols): Likewise for `function_symbols' and
786         `label_funcs_ret'.
787
788 2018-08-29  Keith Seitz  <keiths@redhat.com>
789
790         * linespec.c (symtab_vector_up): Define.
791         (struct linespec) <file_symtabs>: Change type to std::vector *.
792         Update all uses.
793         (struct collect_info) <file_symtabs>: Likewise.
794         (collect_symtabs_from_filename): Return symtab_vector_up.
795         Update all callers.
796         (decode_objc): Remove cleanup.
797         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
798         (symtab_collector::release_symtabs): Return symtab_vector_up.
799         Update all callers.
800         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
801         Update all users.
802         (collect_symtabs_from_filename, symtabs_from_filename): Return
803         symtab_vector_up.  Update all callers.
804
805 2018-08-29  Tom Tromey  <tom@tromey.com>
806
807         * csky-tdep.c (csky_analyze_prologue): Use
808         core_addr_to_string_nz.
809
810 2018-08-29  Tom Tromey  <tom@tromey.com>
811
812         * windows-nat.c (struct xlate_exception) <them>: Change type to
813         DWORD.
814         (xlate): Fix formatting.  Remove last entry.
815         (struct xlate_exception, xlate): Comment out.
816         (windows_nat_target::resume): Use ranged for.
817
818 2018-08-29  Jim Wilson  <jimw@sifive.com>
819
820         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
821         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
822         of NT_PRFPREG.
823         (riscv_linux_nat_target::store_registers): Likewise.
824
825 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
826
827         PR gdb/23555
828         PR gdb/23558
829         * gnulib/aclocal.m4: Regenerate.
830         * gnulib/config.in: Regenerate.
831         * gnulib/configure: Regenerate.
832         * gnulib/import/Makefile.am: Update.
833         * gnulib/import/Makefile.in: Update.
834         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
835         * gnulib/import/_Noreturn.h: ... this.
836         * gnulib/import/alloca.in.h: Update.
837         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
838         * gnulib/import/arg-nonnull.h: ... this.
839         * gnulib/import/assure.h: Update.
840         * gnulib/import/at-func.c: Update.
841         * gnulib/import/basename-lgpl.c: Update.
842         * gnulib/import/extra/snippet/c++defs.h: Rename to...
843         * gnulib/import/c++defs.h: ... this.
844         * gnulib/import/canonicalize-lgpl.c: Update.
845         * gnulib/import/cdefs.h: Update.
846         * gnulib/import/chdir-long.c: Update.
847         * gnulib/import/chdir-long.h: Update.
848         * gnulib/import/cloexec.c: Update.
849         * gnulib/import/cloexec.h: Update.
850         * gnulib/import/close.c: Update.
851         * gnulib/import/closedir.c: Update.
852         * gnulib/import/config.charset: Update.
853         * gnulib/import/dirent-private.h: Update.
854         * gnulib/import/dirent.in.h: Update.
855         * gnulib/import/dirfd.c: Update.
856         * gnulib/import/dirname-lgpl.c: Update.
857         * gnulib/import/dirname.h: Update.
858         * gnulib/import/dosname.h: Update.
859         * gnulib/import/dup-safer-flag.c: Update.
860         * gnulib/import/dup-safer.c: Update.
861         * gnulib/import/dup.c: Update.
862         * gnulib/import/dup2.c: Update.
863         * gnulib/import/errno.in.h: Update.
864         * gnulib/import/error.c: Update.
865         * gnulib/import/error.h: Update.
866         * gnulib/import/exitfail.c: Update.
867         * gnulib/import/exitfail.h: Update.
868         * gnulib/import/extra/update-copyright: Update.
869         * gnulib/import/fchdir.c: Update.
870         * gnulib/import/fcntl.c: Update.
871         * gnulib/import/fcntl.in.h: Update.
872         * gnulib/import/fd-hook.c: Update.
873         * gnulib/import/fd-hook.h: Update.
874         * gnulib/import/fd-safer-flag.c: Update.
875         * gnulib/import/fd-safer.c: Update.
876         * gnulib/import/fdopendir.c: Update.
877         * gnulib/import/filename.h: Update.
878         * gnulib/import/filenamecat-lgpl.c: Update.
879         * gnulib/import/filenamecat.h: Update.
880         * gnulib/import/flexmember.h: Update.
881         * gnulib/import/float+.h: Update.
882         * gnulib/import/float.c: Update.
883         * gnulib/import/float.in.h: Update.
884         * gnulib/import/fnmatch.c: Update.
885         * gnulib/import/fnmatch.in.h: Update.
886         * gnulib/import/fnmatch_loop.c: Update.
887         * gnulib/import/fpucw.h: Update.
888         * gnulib/import/frexp.c: Update.
889         * gnulib/import/frexpl.c: Update.
890         * gnulib/import/fstat.c: Update.
891         * gnulib/import/fstatat.c: Update.
892         * gnulib/import/getcwd-lgpl.c: Update.
893         * gnulib/import/getcwd.c: Update.
894         * gnulib/import/getdtablesize.c: Update.
895         * gnulib/import/getlogin_r.c: Update.
896         * gnulib/import/getprogname.c: Update.
897         * gnulib/import/getprogname.h: Update.
898         * gnulib/import/gettext.h: Update.
899         * gnulib/import/gettimeofday.c: Update.
900         * gnulib/import/glob-libc.h: Update.
901         * gnulib/import/glob.c: Update.
902         * gnulib/import/glob.in.h: Update.
903         * gnulib/import/glob_internal.h: Update.
904         * gnulib/import/glob_pattern_p.c: Update.
905         * gnulib/import/globfree.c: Update.
906         * gnulib/import/hard-locale.c: Update.
907         * gnulib/import/hard-locale.h: Update.
908         * gnulib/import/intprops.h: Update.
909         * gnulib/import/inttypes.in.h: Update.
910         * gnulib/import/isnan.c: Update.
911         * gnulib/import/isnand-nolibm.h: Update.
912         * gnulib/import/isnand.c: Update.
913         * gnulib/import/isnanl-nolibm.h: Update.
914         * gnulib/import/isnanl.c: Update.
915         * gnulib/import/itold.c: Update.
916         * gnulib/import/libc-config.h: Update.
917         * gnulib/import/limits.in.h: Update.
918         * gnulib/import/localcharset.c: Update.
919         * gnulib/import/localcharset.h: Update.
920         * gnulib/import/localtime-buffer.c: Update.
921         * gnulib/import/localtime-buffer.h: Update.
922         * gnulib/import/lstat.c: Update.
923         * gnulib/import/m4/00gnulib.m4: Update.
924         * gnulib/import/m4/__inline.m4: Update.
925         * gnulib/import/m4/absolute-header.m4: Update.
926         * gnulib/import/m4/alloca.m4: Update.
927         * gnulib/import/m4/builtin-expect.m4: Update.
928         * gnulib/import/m4/canonicalize.m4: Update.
929         * gnulib/import/m4/chdir-long.m4: Update.
930         * gnulib/import/m4/close.m4: Update.
931         * gnulib/import/m4/closedir.m4: Update.
932         * gnulib/import/m4/configmake.m4: Update.
933         * gnulib/import/m4/d-ino.m4: Update.
934         * gnulib/import/m4/d-type.m4: Update.
935         * gnulib/import/m4/dirent_h.m4: Update.
936         * gnulib/import/m4/dirfd.m4: Update.
937         * gnulib/import/m4/dirname.m4: Update.
938         * gnulib/import/m4/double-slash-root.m4: Update.
939         * gnulib/import/m4/dup.m4: Update.
940         * gnulib/import/m4/dup2.m4: Update.
941         * gnulib/import/m4/eealloc.m4: Update.
942         * gnulib/import/m4/environ.m4: Update.
943         * gnulib/import/m4/errno_h.m4: Update.
944         * gnulib/import/m4/error.m4: Update.
945         * gnulib/import/m4/exponentd.m4: Update.
946         * gnulib/import/m4/exponentl.m4: Update.
947         * gnulib/import/m4/extensions.m4: Update.
948         * gnulib/import/m4/extern-inline.m4: Update.
949         * gnulib/import/m4/fchdir.m4: Update.
950         * gnulib/import/m4/fcntl-o.m4: Update.
951         * gnulib/import/m4/fcntl.m4: Update.
952         * gnulib/import/m4/fcntl_h.m4: Update.
953         * gnulib/import/m4/fdopendir.m4: Update.
954         * gnulib/import/m4/filenamecat.m4: Update.
955         * gnulib/import/m4/flexmember.m4: Update.
956         * gnulib/import/m4/float_h.m4: Update.
957         * gnulib/import/m4/fnmatch.m4: Update.
958         * gnulib/import/m4/fnmatch_h.m4: Update.
959         * gnulib/import/m4/fpieee.m4: Update.
960         * gnulib/import/m4/frexp.m4: Update.
961         * gnulib/import/m4/frexpl.m4: Update.
962         * gnulib/import/m4/fstat.m4: Update.
963         * gnulib/import/m4/fstatat.m4: Update.
964         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
965         * gnulib/import/m4/getcwd-path-max.m4: Update.
966         * gnulib/import/m4/getcwd.m4: Update.
967         * gnulib/import/m4/getdtablesize.m4: Update.
968         * gnulib/import/m4/getlogin.m4: Update.
969         * gnulib/import/m4/getlogin_r.m4: Update.
970         * gnulib/import/m4/getpagesize.m4: Update.
971         * gnulib/import/m4/getprogname.m4: Update.
972         * gnulib/import/m4/gettimeofday.m4: Update.
973         * gnulib/import/m4/glibc21.m4: Update.
974         * gnulib/import/m4/glob.m4: Update.
975         * gnulib/import/m4/glob_h.m4: Update.
976         * gnulib/import/m4/gnulib-cache.m4: Update.
977         * gnulib/import/m4/gnulib-common.m4: Update.
978         * gnulib/import/m4/gnulib-comp.m4: Update.
979         * gnulib/import/m4/gnulib-tool.m4: Update.
980         * gnulib/import/m4/hard-locale.m4: Update.
981         * gnulib/import/m4/include_next.m4: Update.
982         * gnulib/import/m4/inttypes-pri.m4: Update.
983         * gnulib/import/m4/inttypes.m4: Update.
984         * gnulib/import/m4/isnand.m4: Update.
985         * gnulib/import/m4/isnanl.m4: Update.
986         * gnulib/import/m4/largefile.m4: Update.
987         * gnulib/import/m4/limits-h.m4: Update.
988         * gnulib/import/m4/localcharset.m4: Update.
989         * gnulib/import/m4/locale-fr.m4: Update.
990         * gnulib/import/m4/locale-ja.m4: Update.
991         * gnulib/import/m4/locale-zh.m4: Update.
992         * gnulib/import/m4/localtime-buffer.m4: Update.
993         * gnulib/import/m4/longlong.m4: Update.
994         * gnulib/import/m4/lstat.m4: Update.
995         * gnulib/import/m4/malloc.m4: Update.
996         * gnulib/import/m4/malloca.m4: Update.
997         * gnulib/import/m4/math_h.m4: Update.
998         * gnulib/import/m4/mbrtowc.m4: Update.
999         * gnulib/import/m4/mbsinit.m4: Update.
1000         * gnulib/import/m4/mbsrtowcs.m4: Update.
1001         * gnulib/import/m4/mbstate_t.m4: Update.
1002         * gnulib/import/m4/memchr.m4: Update.
1003         * gnulib/import/m4/memmem.m4: Update.
1004         * gnulib/import/m4/mempcpy.m4: Update.
1005         * gnulib/import/m4/memrchr.m4: Update.
1006         * gnulib/import/m4/mkdir.m4: Update.
1007         * gnulib/import/m4/mkstemp.m4: Update.
1008         * gnulib/import/m4/mmap-anon.m4: Update.
1009         * gnulib/import/m4/mode_t.m4: Update.
1010         * gnulib/import/m4/msvc-inval.m4: Update.
1011         * gnulib/import/m4/msvc-nothrow.m4: Update.
1012         * gnulib/import/m4/multiarch.m4: Update.
1013         * gnulib/import/m4/nocrash.m4: Update.
1014         * gnulib/import/m4/off_t.m4: Update.
1015         * gnulib/import/m4/onceonly.m4: Update.
1016         * gnulib/import/m4/open-cloexec.m4: Update.
1017         * gnulib/import/m4/open.m4: Update.
1018         * gnulib/import/m4/openat.m4: Update.
1019         * gnulib/import/m4/opendir.m4: Update.
1020         * gnulib/import/m4/pathmax.m4: Update.
1021         * gnulib/import/m4/rawmemchr.m4: Update.
1022         * gnulib/import/m4/readdir.m4: Update.
1023         * gnulib/import/m4/readlink.m4: Update.
1024         * gnulib/import/m4/realloc.m4: Update.
1025         * gnulib/import/m4/rename.m4: Update.
1026         * gnulib/import/m4/rewinddir.m4: Update.
1027         * gnulib/import/m4/rmdir.m4: Update.
1028         * gnulib/import/m4/save-cwd.m4: Update.
1029         * gnulib/import/m4/secure_getenv.m4: Update.
1030         * gnulib/import/m4/setenv.m4: Update.
1031         * gnulib/import/m4/signal_h.m4: Update.
1032         * gnulib/import/m4/ssize_t.m4: Update.
1033         * gnulib/import/m4/stat-time.m4: Update.
1034         * gnulib/import/m4/stat.m4: Update.
1035         * gnulib/import/m4/std-gnu11.m4: Update.
1036         * gnulib/import/m4/stdbool.m4: Update.
1037         * gnulib/import/m4/stddef_h.m4: Update.
1038         * gnulib/import/m4/stdint.m4: Update.
1039         * gnulib/import/m4/stdio_h.m4: Update.
1040         * gnulib/import/m4/stdlib_h.m4: Update.
1041         * gnulib/import/m4/strchrnul.m4: Update.
1042         * gnulib/import/m4/strdup.m4: Update.
1043         * gnulib/import/m4/strerror.m4: Update.
1044         * gnulib/import/m4/string_h.m4: Update.
1045         * gnulib/import/m4/strstr.m4: Update.
1046         * gnulib/import/m4/strtok_r.m4: Update.
1047         * gnulib/import/m4/sys_socket_h.m4: Update.
1048         * gnulib/import/m4/sys_stat_h.m4: Update.
1049         * gnulib/import/m4/sys_time_h.m4: Update.
1050         * gnulib/import/m4/sys_types_h.m4: Update.
1051         * gnulib/import/m4/tempname.m4: Update.
1052         * gnulib/import/m4/time_h.m4: Update.
1053         * gnulib/import/m4/unistd-safer.m4: Update.
1054         * gnulib/import/m4/unistd_h.m4: Update.
1055         * gnulib/import/m4/warn-on-use.m4: Update.
1056         * gnulib/import/m4/wchar_h.m4: Update.
1057         * gnulib/import/m4/wchar_t.m4: Update.
1058         * gnulib/import/m4/wctype_h.m4: Update.
1059         * gnulib/import/m4/wint_t.m4: Update.
1060         * gnulib/import/malloc.c: Update.
1061         * gnulib/import/malloc/scratch_buffer.h: Update.
1062         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1063         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1064         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1065         * gnulib/import/malloca.c: Update.
1066         * gnulib/import/malloca.h: Update.
1067         * gnulib/import/malloca.valgrind: Update.
1068         * gnulib/import/math.in.h: Update.
1069         * gnulib/import/mbrtowc.c: Update.
1070         * gnulib/import/mbsinit.c: Update.
1071         * gnulib/import/mbsrtowcs-impl.h: Update.
1072         * gnulib/import/mbsrtowcs-state.c: Update.
1073         * gnulib/import/mbsrtowcs.c: Update.
1074         * gnulib/import/memchr.c: Update.
1075         * gnulib/import/memmem.c: Update.
1076         * gnulib/import/mempcpy.c: Update.
1077         * gnulib/import/memrchr.c: Update.
1078         * gnulib/import/mkdir.c: Update.
1079         * gnulib/import/mkstemp.c: Update.
1080         * gnulib/import/msvc-inval.c: Update.
1081         * gnulib/import/msvc-inval.h: Update.
1082         * gnulib/import/msvc-nothrow.c: Update.
1083         * gnulib/import/msvc-nothrow.h: Update.
1084         * gnulib/import/open.c: Update.
1085         * gnulib/import/openat-die.c: Update.
1086         * gnulib/import/openat-priv.h: Update.
1087         * gnulib/import/openat-proc.c: Update.
1088         * gnulib/import/openat.c: Update.
1089         * gnulib/import/openat.h: Update.
1090         * gnulib/import/opendir.c: Update.
1091         * gnulib/import/pathmax.h: Update.
1092         * gnulib/import/pipe-safer.c: Update.
1093         * gnulib/import/rawmemchr.c: Update.
1094         * gnulib/import/readdir.c: Update.
1095         * gnulib/import/readlink.c: Update.
1096         * gnulib/import/realloc.c: Update.
1097         * gnulib/import/ref-add.sin: Update.
1098         * gnulib/import/ref-del.sin: Update.
1099         * gnulib/import/rename.c: Update.
1100         * gnulib/import/rewinddir.c: Update.
1101         * gnulib/import/rmdir.c: Update.
1102         * gnulib/import/same-inode.h: Update.
1103         * gnulib/import/save-cwd.c: Update.
1104         * gnulib/import/save-cwd.h: Update.
1105         * gnulib/import/scratch_buffer.h: Update.
1106         * gnulib/import/secure_getenv.c: Update.
1107         * gnulib/import/setenv.c: Update.
1108         * gnulib/import/signal.in.h: Update.
1109         * gnulib/import/stat-time.c: Update.
1110         * gnulib/import/stat-time.h: Update.
1111         * gnulib/import/stat-w32.c: Update.
1112         * gnulib/import/stat-w32.h: Update.
1113         * gnulib/import/stat.c: Update.
1114         * gnulib/import/stdbool.in.h: Update.
1115         * gnulib/import/stddef.in.h: Update.
1116         * gnulib/import/stdint.in.h: Update.
1117         * gnulib/import/stdio.in.h: Update.
1118         * gnulib/import/stdlib.in.h: Update.
1119         * gnulib/import/str-two-way.h: Update.
1120         * gnulib/import/strchrnul.c: Update.
1121         * gnulib/import/strdup.c: Update.
1122         * gnulib/import/streq.h: Update.
1123         * gnulib/import/strerror-override.c: Update.
1124         * gnulib/import/strerror-override.h: Update.
1125         * gnulib/import/strerror.c: Update.
1126         * gnulib/import/string.in.h: Update.
1127         * gnulib/import/stripslash.c: Update.
1128         * gnulib/import/strnlen1.c: Update.
1129         * gnulib/import/strnlen1.h: Update.
1130         * gnulib/import/strstr.c: Update.
1131         * gnulib/import/strtok_r.c: Update.
1132         * gnulib/import/sys_stat.in.h: Update.
1133         * gnulib/import/sys_time.in.h: Update.
1134         * gnulib/import/sys_types.in.h: Update.
1135         * gnulib/import/tempname.c: Update.
1136         * gnulib/import/tempname.h: Update.
1137         * gnulib/import/time.in.h: Update.
1138         * gnulib/import/unistd--.h: Update.
1139         * gnulib/import/unistd-safer.h: Update.
1140         * gnulib/import/unistd.in.h: Update.
1141         * gnulib/import/unsetenv.c: Update.
1142         * gnulib/import/verify.h: Update.
1143         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1144         * gnulib/import/wchar.in.h: Update.
1145         * gnulib/import/wctype.in.h: Update.
1146         * gnulib/import/xalloc-oversized.h: Update.
1147         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1148         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1149
1150 2018-08-16  Gary Benson <gbenson@redhat.com>
1151
1152         PR gdb/13000:
1153         * gdb/main.c (captured_main_1): Exit with nonzero status
1154         in batch mode if the last command to be executed failed.
1155         * NEWS: Mention the above.
1156
1157 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
1158
1159         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
1160         end of warning message.
1161
1162 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
1163
1164         PR gdb/22943:
1165         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
1166         (aarch64_extract_return_value): Use
1167         aapcs_is_vfp_call_or_return_candidate.
1168         (aarch64_return_in_memory): Likewise.
1169         (aarch64_store_return_value): Likewise.
1170
1171 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
1172
1173         * aarch64-tdep.c
1174         (aapcs_is_vfp_call_or_return_candidate): Make static
1175         (pass_in_v_or_stack): Remove function.
1176         (pass_in_v_vfp_candidate): New function.
1177         (aarch64_push_dummy_call): Check for float register candidates.
1178
1179 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
1180
1181         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
1182         (aapcs_is_vfp_call_or_return_candidate_1): New function.
1183         (aapcs_is_vfp_call_or_return_candidate): Likewise.
1184
1185 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
1186
1187         PR build/23399
1188         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
1189         (struct ipa_sym_addresses): Rename to...
1190         (struct ipa_sym_addresses_common): ... this.
1191         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
1192
1193 2018-08-28  Tom Tromey  <tom@tromey.com>
1194
1195         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
1196         (token_fifo): Now a std::vector.
1197         (yylex, c_parse): Update.
1198         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
1199         (token_fifo): Now a std::vector.
1200         (yylex, d_parse): Update.
1201         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
1202         (token_fifo): Now a std::vector.
1203         (yylex, go_parse): Update.
1204
1205 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
1206
1207         * parser-defs.h (struct type_stack) <elements>: Change type to
1208         std::vector<union type_stack_elt>.
1209         <depth, size>: Remove.
1210         * parse.c (parse_exp_in_context_1): Adjust.
1211         (type_stack_reserve): Remove.
1212         (check_type_stack_depth): Remove.
1213         (insert_into_type_stack): Adjust to std::vector.
1214         (insert_type): Likewise.
1215         (push_type): Likewise.
1216         (push_type_int): Likewise.
1217         (insert_type_address_space): Likewise.
1218         (pop_type): Likewise.
1219         (pop_type_int): Likewise.
1220         (pop_typelist): Likewise.
1221         (pop_type_stack): Likewise.
1222         (append_type_stack): Likewise.
1223         (push_type_stack): Likewise.
1224         (get_type_stack): Likewise.
1225         (type_stack_cleanup): Likewise.
1226         (push_typelist): Likewise.
1227         (follow_types): Likewise.
1228         (_initialize_parse): Likewise.
1229
1230 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1231
1232         * NEWS: Mention csky target.
1233
1234 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
1235             Hafiz Abid Qadeer  <abidh@codesourcery.com>
1236             Don Breazeal  <donb@codesourcery.com>
1237
1238         * csky-linux-tdep.c: New file.
1239         * csky-tdep.c: Likewise.
1240         * csky-tdep.h: Likewise.
1241         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
1242         csky-tdep.o.
1243         (HFILES_NO_SRCDIR): Add csky-tdep.h.
1244         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
1245         * configure.tgt: Add csky support.
1246
1247 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
1248
1249         * python/py-framefilter.c (py_print_frame): Print frame architecture
1250         when printing on an MI output.
1251
1252 2018-08-27  Tom Tromey  <tom@tromey.com>
1253
1254         PR build/23087:
1255         * configure: Rebuild.
1256         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
1257
1258 2018-08-27  Tom Tromey  <tom@tromey.com>
1259
1260         * aarch64-linux-tdep.c
1261         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
1262         casts to int.
1263
1264 2018-08-27  Tom Tromey  <tom@tromey.com>
1265
1266         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
1267         unsigned.
1268         (ppc64_standard_linkage1, ppc64_standard_linkage2)
1269         (ppc64_standard_linkage3, ppc64_standard_linkage4)
1270         (ppc64_standard_linkage5, ppc64_standard_linkage6)
1271         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
1272         unsigned.
1273
1274 2018-08-27  Tom Tromey  <tom@tromey.com>
1275
1276         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
1277         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
1278
1279 2018-08-27  Tom Tromey  <tom@tromey.com>
1280
1281         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
1282         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
1283         ULONGEST_MAX.
1284         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
1285         ULONGEST_MAX.
1286         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
1287         ULONGEST_MAX.
1288         * sparc-linux-tdep.c (sparc32_linux_sigframe)
1289         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
1290         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
1291         ULONGEST_MAX.
1292         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
1293         (ppc64_linux_sigaction_tramp_frame)
1294         (ppc32_linux_sighandler_tramp_frame)
1295         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
1296         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
1297         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
1298         * mn10300-linux-tdep.c (am33_linux_sigframe)
1299         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
1300         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
1301         * mips-linux-tdep.c (mips_linux_o32_sigframe)
1302         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
1303         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
1304         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
1305         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
1306         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
1307         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
1308         * microblaze-linux-tdep.c
1309         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
1310         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
1311         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
1312         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
1313         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
1314         * common/common-types.h (ULONGEST_MAX): New define.
1315         (CORE_ADDR_MAX): Fix formatting.
1316         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
1317         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
1318         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
1319         (arm_linux_rt_sigreturn_tramp_frame)
1320         (arm_eabi_linux_sigreturn_tramp_frame)
1321         (arm_eabi_linux_rt_sigreturn_tramp_frame)
1322         (thumb2_eabi_linux_sigreturn_tramp_frame)
1323         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
1324         (arm_linux_restart_syscall_tramp_frame)
1325         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
1326         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
1327         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
1328         ULONGEST_MAX.
1329         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
1330
1331 2018-08-27  Tom Tromey  <tom@tromey.com>
1332
1333         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
1334         CORE_ADDR_MAX.
1335         * mips-tdep.c (mips_deal_with_atomic_sequence)
1336         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
1337         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
1338         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
1339         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
1340         CORE_ADDR_MAX.
1341         * aarch64-tdep.c (aarch64_software_single_step): Use
1342         CORE_ADDR_MAX.
1343
1344 2018-08-27  Tom Tromey  <tom@tromey.com>
1345
1346         * linespec.c (complete_linespec_component): Add cast to "char".
1347         * completer.c (completion_tracker::build_completion_result): Add
1348         cast to "char".
1349
1350 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
1351
1352         * solist.h (struct solist, struct target_so_ops): Fix
1353         indentation.
1354
1355 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
1356
1357         * ada-tasks.c (ada_task_info_s): Remove typedef.
1358         (DEF_VEC_O(ada_task_info_s)): Remove.
1359         (struct ada_tasks_inferior_data): Initialize fields.
1360         <task_list>: Make an std::vector.
1361         (get_ada_tasks_inferior_data): Allocate with new.
1362         (ada_get_task_number): Adjust.
1363         (get_task_number_from_id): Likewise.
1364         (valid_task_id): Likewise.
1365         (ada_get_task_info_from_ptid): Likewise.
1366         (iterate_over_live_ada_tasks): Likewise.
1367         (add_ada_task): Likewise.
1368         (read_known_tasks): Likewise.
1369         (ada_build_task_list): Likewise.
1370         (print_ada_task_info): Likewise.
1371         (info_task): Likewise.
1372         (task_command_1): Likewise.
1373
1374 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
1375
1376         * ada-lang.c (add_angle_brackets): Return std::string.
1377
1378 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
1379
1380         * python/py-threadevent.c (py_get_event_thread): Initialize
1381         pythread.
1382
1383 2018-08-24  Pedro Alves  <palves@redhat.com>
1384
1385         * python/py-bpevent.c (create_breakpoint_event_object): Use
1386         copy-initialization.
1387         * python/py-continueevent.c (emit_continue_event): Use
1388         copy-initialization.
1389         * python/py-exitedevent.c (create_exited_event_object): Return a
1390         gdbpy_ref<>.
1391         (emit_exited_event): Use copy-initialization.
1392         * python/py-inferior.c (python_new_inferior)
1393         (python_inferior_deleted, add_thread_object): Use
1394         copy-initialization.
1395         * python/py-infevents.c (create_inferior_call_event_object)
1396         (create_register_changed_event_object)
1397         (create_memory_changed_event_object): Return a gdbpy_ref<>.
1398         (emit_inferior_call_event, emit_memory_changed_event)
1399         (emit_register_changed_event): Use copy-initialization.
1400         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1401         Return a gdbpy_ref<>.
1402         (emit_new_objfile_event): Use copy-initialization.
1403         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
1404         (emit_clear_objfiles_event): Use copy-initialization.
1405         * python/py-signalevent.c (create_signal_event_object): Use
1406         copy-initialization.
1407         * python/py-threadevent.c (create_thread_event_object): Use
1408         copy-initialization.
1409
1410 2018-08-24  Pedro Alves  <palves@redhat.com>
1411             Simon Marchi  <simon.marchi@ericsson.com>
1412
1413         PR gdb/23379
1414         * python/py-continueevent.c: Include "gdbthread.h".
1415         (create_continue_event_object): Add intro comment.  Add 'ptid'
1416         parameter.  Use it to find thread to pass to
1417         create_thread_event_object.
1418         (emit_continue_event): Pass PTID down to
1419         create_continue_event_object.
1420         * python/py-event.h (py_get_event_thread): Declare.
1421         (create_thread_event_object): Remove default from 'thread'
1422         parameter.
1423         * python/py-stopevent.c (create_stop_event_object): Use
1424         py_get_event_thread.
1425         * python/py-threadevent.c (get_event_thread): Rename to ...
1426         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
1427         and use it to find the thread.
1428         (create_thread_event_object): Assert that THREAD isn't null.
1429         Don't find the event thread here.
1430
1431 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
1432
1433         * block.h (blockrange, blockranges): New struct declarations.
1434         (struct block): Add new field named `ranges'.
1435         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
1436         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
1437         macros for accessing ranges in struct block.
1438         (make_blockranges): New declaration.
1439         block.c (make_blockranges): New function.
1440         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
1441         for block.
1442         * symtab.h (find_pc_partial_function): Add new parameter `block'.
1443         * blockframe.c (cache_pc_function_block): New static global.
1444         (clear_pc_function_cache): Clear cache_pc_function_block.
1445         (find_pc_partial_function): Move comment to symtab.h.  Add
1446         support for non-contiguous blocks.
1447         * cli/cli-cmds.c (block.h): Include.
1448         (print_disassembly): Handle printing of non-contiguous blocks.
1449         (disassemble_current_function): Likewise.
1450         (disassemble_command): Likewise.
1451
1452         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
1453         BLOCK_START.
1454         * blockframe.c (get_pc_function_start): Likewise.
1455         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
1456         (gcc_symbol_address): Likewise.
1457         * compile/compile-object-run.c (compile_object_run): Likewise.
1458         * compile/compile.c (get_expr_block_and_pc): Likewise.
1459         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
1460         (func_addr_to_tail_call_list): Likewise.
1461         * findvar.c (default_read_var_value): Likewise.
1462         * inline-frame.c (inline_frame_this_id): Likewise.
1463         (skip-inline_frames): Likewise.
1464         * infcmd.c (until_next_command): Likewise.
1465         * linespec.c (convert_linespec_to_sals): Likewise.
1466         * parse.c (parse_exp_in_context_1): Likewise.
1467         * printcmd.c (build_address_symbolic): likewise.
1468         (info_address_command): Likewise.
1469         symtab.c (find_function_start_sal): Likewise.
1470         (skip_prologue_sal): Likewise.
1471         (find_function_alias_target): Likewise.
1472         (find_gnu_ifunc): Likewise.
1473         * stack.c (find_frame_funname): Likewise.
1474         * symtab.c (fixup_symbol_section): Likewise.
1475         (find_function_start_sal): Likewise.
1476         (skip_prologue_sal): Likewsie.
1477         (find_function_alias_target): Likewise.
1478         (find_gnu_ifunc): Likewise.
1479         * tracepoint.c (info_scope_command): Likewise.
1480         * value.c (value_fn_field): Likewise.
1481
1482         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
1483         in place of find_pc_partial_function.
1484         * blockframe.c (find_function_entry_range_from_pc): New function.
1485         * symtab.h (find_function_entry_range_from_pc): Declare and document.
1486         * objfiles.c (objfile_relocate1): Relocate start and end addresses
1487         for each range in a block.
1488
1489
1490 2018-08-23  Xavier Roirand  <roirand@adacore.com>
1491
1492         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
1493         incrementation.
1494
1495 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1496
1497         * solib-svr4.c (read_program_headers_from_bfd): Return
1498         gdb::optional<gdb::byte_vector>.
1499         (svr4_exec_displacement): Adjust.
1500
1501 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1502
1503         * solib-svr4.c (read_program_header): Return
1504         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
1505         (find_program_interpreter): Return
1506         gdb::optional<gdb::byte_vector>.
1507         (scan_dyntag_auxv): Adjust.
1508         (enable_break): Adjust.
1509         (svr4_exec_displacement): Adjust.
1510
1511 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1512
1513         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
1514         * inf-child.c (inf_child_target::terminal_save_inferior): New.
1515
1516 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1517
1518         * guile/scm-string.c (gdbscm_scm_from_printf): Use
1519         string_vprintf.
1520         * guile/scm-utils.c (gdbscm_printf): Likewise.
1521         * serial.c (serial_printf): Likewise.
1522         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
1523
1524 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
1525
1526         * stack.c (print_frame): Print frame architecture when printing on
1527         an MI output.
1528         * NEWS: Mention new "arch" attribute in frame output.
1529
1530 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
1531
1532         * arch/aarch64.h (aarch64_regnum): Update comment.
1533
1534 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
1535
1536         * NEWS: Add SVE to 8.2 section.
1537
1538 2018-08-21  Pedro Alves  <palves@redhat.com>
1539
1540         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
1541         out from gdbscm_parse_function_args.
1542         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
1543         gdbscm_parse_function_args_1.
1544
1545 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
1546
1547         PR gdb/17816
1548         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
1549         operator.
1550
1551 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
1552
1553         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
1554
1555 2018-08-19  Michael Spang  <spang@google.com>
1556
1557         PR gdb/11786
1558         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
1559         for PT_TLS segments.
1560
1561 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
1562
1563         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
1564         dwarf_variable_value.
1565         * dwarf2-frame.c (class dwarf_expr_executor):
1566         Add override for dwarf_variable_value.
1567         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
1568         (class symbol_needs_eval_context): Likewise.
1569         (indirect_synthetic_pointer): Add forward declaration.
1570         (sect_variable_value): New function.
1571         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
1572         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
1573         for DW_OP_GNU_variable_value.
1574
1575 2018-08-16  Tom Tromey  <tom@tromey.com>
1576
1577         * top.c (read_command_file): Update.
1578         (command_line_input): Remove "repeat" argument.
1579         * ada-lang.c (get_selections): Update.
1580         * linespec.c (decode_line_2): Update.
1581         * defs.h (command_line_input): Remove argument.
1582         * cli/cli-script.c (read_next_line): Update.
1583         * python/py-gdb-readline.c: Update.
1584
1585 2018-08-17  Tom Tromey  <tom@tromey.com>
1586
1587         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
1588         command_line_input.
1589
1590 2018-08-15  Tom Tromey  <tom@tromey.com>
1591
1592         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
1593
1594 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
1595
1596         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
1597         If used, use find_pc_partial_function to find address range
1598         to disassemble.
1599         * mi/mi-main.c (mi_cmd_list_features): Report
1600         "data-disassemble-a-option" feature.
1601         * NEWS: Mention new -data-disassemble option -a.
1602
1603 2018-08-13  Tom Tromey  <tom@tromey.com>
1604
1605         * common/common-defs.h (_FORTIFY_SOURCE): Define.
1606
1607 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1608
1609         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
1610         (aarch64_linux_collect_sve_regset): Likewise.
1611         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
1612         * regcache.h (regcache_map_entry_size): New function.
1613
1614 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1615
1616         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
1617         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
1618         (SVE_HEADER_VL_LENGTH): Likewise.
1619         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
1620         (SVE_HEADER_FLAGS_LENGTH): Likewise.
1621         (SVE_HEADER_RESERVED_LENGTH): Likewise.
1622         (SVE_HEADER_SIZE_OFFSET): Likewise.
1623         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
1624         (SVE_HEADER_VL_OFFSET): Likewise.
1625         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
1626         (SVE_HEADER_FLAGS_OFFSET): Likewise.
1627         (SVE_HEADER_RESERVED_OFFSET): Likewise.
1628         (SVE_HEADER_SIZE): Likewise.
1629         (aarch64_linux_core_read_vq): Add function.
1630         (aarch64_linux_core_read_description): Check for SVE section.
1631
1632 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1633
1634         * aarch64-fbsd-tdep.c
1635         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
1636         collect_size.
1637         * aarch64-linux-tdep.c
1638         (aarch64_linux_iterate_over_regset_sections): Likewise.
1639         * alpha-linux-tdep.c
1640         (alpha_linux_iterate_over_regset_sections):
1641         * alpha-nbsd-tdep.c
1642         (alphanbsd_iterate_over_regset_sections): Likewise.
1643         * amd64-fbsd-tdep.c
1644         (amd64fbsd_iterate_over_regset_sections): Likewise.
1645         * amd64-linux-tdep.c
1646         (amd64_linux_iterate_over_regset_sections): Likewise.
1647         * arm-bsd-tdep.c
1648         (armbsd_iterate_over_regset_sections): Likewise.
1649         * arm-fbsd-tdep.c
1650         (arm_fbsd_iterate_over_regset_sections): Likewise.
1651         * arm-linux-tdep.c
1652         (arm_linux_iterate_over_regset_sections): Likewise.
1653         * corelow.c (get_core_registers_cb): Likewise.
1654         (core_target::fetch_registers): Likewise.
1655         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
1656         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
1657         * gdbarch.h (void): Regenerate.
1658         * gdbarch.sh: Add supply_size and collect_size.
1659         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
1660         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
1661         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
1662         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
1663         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
1664         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
1665         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
1666         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
1667         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
1668         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
1669         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
1670         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
1671         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
1672         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
1673         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
1674         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
1675         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
1676         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
1677         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
1678         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
1679         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
1680         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
1681         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
1682         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
1683         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
1684         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
1685         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
1686         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
1687         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
1688         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
1689
1690 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
1691
1692         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
1693         with string_printf.
1694
1695 2018-08-10  Keith Seitz  <keiths@redhat.com>
1696
1697         * compile/compile-c-support.c (add_code_header, add_code_footer):
1698         Move into policy class.
1699         (c_push_user_expression, pop_user_expression_nop)
1700         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
1701         (compile_program): New host class.
1702         (c_compile_program): New typedef.
1703         (c_compute_porgram): Use c_compile_program.
1704
1705 2018-08-10  Keith Seitz  <keiths@redhat.com>
1706
1707         * compile/compile-internal.h (compile_instance::~compile_instance):
1708         Remove calls to htab_delete.
1709         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
1710         * compile.c (compile_instance::compile_instance): Initialize
1711         htab unique pointers.
1712         (compile_instance::get_cached_type, compile_instance::insert_type)
1713         (compile_instance::error_symbol_once): Update for unique_ptr.
1714
1715 2018-08-10  Keith Seitz  <keiths@redhat.com>
1716
1717         * compile/compile-c-symbols.c (struct symbol_error)
1718         (hash_symbol_error, eq_symbol_error, del_symbol_error)
1719         (compile_instance::insert_symbol_error)
1720         (compile_instance::error_symbol_once): Move to ...
1721         * compile/compile.c: ... here.
1722
1723 2018-08-10  Keith Seitz  <keiths@redhat.com>
1724
1725         * compile/compile-c-support.c (c_get_compile_context): Use `new'
1726         instead of `new_compile_instance'.
1727         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
1728         Update description.
1729         If the symbol error map is not initialized, create it.
1730         (generate_c_for_for_one_symbol): Do not check/initialize
1731         the symbol error map.
1732         * compile/compile-c-types.c (compile_c_instance): Make a class.
1733         Update all callers.
1734         (compile_instance::compile_instance): Initialize the type cache.
1735         (get_cached_type): New function.
1736         (insert_type): Update description.
1737         (compile_c_instance::m_default_cflags): Define.
1738         (convert_type): Update description.  Use get_cached_type.
1739         (delete_instance): Moved to destructor.
1740         (new_compile_instance): Moved to constructor.
1741         * compile/compile-c.h (compile_c_instance): Make class inheriting
1742         from compile_instance.
1743         <base>: Remove field.
1744         <type_map, symbol_err_map>: Move to base class.
1745         <c_plugin>: Rename to `m_plugin' and remove pointer type.
1746         * compile/compile-internal.h (compile_instance): Make class.
1747         <type_map_t, symbol_err_map_t>: Define.
1748         <fe>: Rename to `m_gcc_fe'.
1749         <scope, block, gcc_target_options>: Add `m_' prefix.
1750         <m_type_map, m_symbol_err_map>: New fields, moved from
1751         compile_c_instance.
1752         <destroy>: Remove.
1753         (convert_type, new_compile_instance): Remove.
1754         * compile/compile.c (cleanup_compile_instance): Remove.
1755         (compile_to_object): Use unique_ptr to eliminate cleanups.
1756         (compile_instance::set_print_callback, compile_instance::version)
1757         (compile_instance::set_verbose)
1758         (compile_instance::set_driver_filename)
1759         (compile_instance::set_triplet_regexp)
1760         (compile_instance::set_arguments)
1761         (compile_instance::set_source_file)
1762         (compile_instance::compile): Define.
1763
1764 2018-08-10  Keith Seitz  <keiths@redhat.com>
1765
1766         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
1767         * compile/compile-c-types.c: Define GCC_METHODN macros and include
1768         gcc-c-fe.def to define C plugin.
1769         (delete_instance): Delete `c_plugin'.
1770         (new_compile_instance): Initialize `c_plugin'.
1771         * compile/compile-c.h: Include gcc_c_plugin.h.
1772         (struct compile_c_instance) <c_plugin>: New member.
1773         * gcc-c-plugin.h: New file.
1774         Update all callers with API change.
1775
1776 2018-08-10  Keith Seitz  <keiths@redhat.com>
1777
1778         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
1779         (HFILES_NO_SRCDIR): ... to here.
1780         Add compile-internal.h and compile-c.h.
1781         * compile/compile-c-support.c: Include compile-c.h.
1782         * compile/compile-c-symbols.c: Include compile-c.h.
1783         (generate_c_for_variable_locations): Update comment.
1784         * compile/compile-c-types.c: Include compile-c.h.
1785         * compile/compile-c.h: New file -- moved C language declarations
1786         from other files here.
1787         * compile/compile-internal.h: Do not include hashtab.h or
1788         common/enum-flags.h.
1789         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
1790         (gcc_convert_symbol, gcc_symbol_address)
1791         (generate_c_for_variable_locations, c_get_mode_for_size)
1792         (c_get_range_decl_name): Definitions moved to compile-c.h.
1793         * compile/compile-loc2c.c: Include compile-c.h.
1794
1795 2018-08-10  Keith Seitz  <keiths@redhat.com>
1796
1797         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
1798         (c_symbol_substitution_name): ... this.
1799         Update all callers.
1800
1801 2018-08-10  Keith Seitz  <keiths@redhat.com>
1802
1803         * compile/compile-c-support.c (c_compute_program): Use
1804         unique_xmalloc_ptr to eliminate cleanup.
1805         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
1806         Return a unique_xmalloc_ptr and eliminate cleanup.
1807         * compile/compile-internal.h (generate_c_for_variable_locations):
1808         Return unique_xmalloc_ptr and update description.
1809
1810 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
1811
1812         * corelow.c (core_target::get_core_register_section): Rename
1813         min_size to section_min_size.
1814
1815 2018-08-09  Jim Wilson  <jimw@sifive.com>
1816
1817         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
1818         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
1819         * NEWS: Mention new GNU/Linux RISC-V target.
1820         * configure.host: Add riscv*-*-linux*.
1821         * configure.nat: Add riscv*.
1822         * configure.tgt: Add riscv*-*-linux*.
1823         * riscv-linux-nat.c: New file.
1824         * riscv-linux-tdep.c: New file.
1825
1826 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
1827
1828         * infrun.c (resume): Make static, add forward declaration.
1829         (proceed): Update header comment.
1830         * infrun.h (resume): Delete declaration.
1831
1832 2018-08-09  Tom Tromey  <tom@tromey.com>
1833
1834         * riscv-tdep.h: Minor formatting fixes.
1835
1836 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
1837
1838         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
1839         * dwarf-index-cache.c (create_dir_and_check): Likewise.
1840         (test_mkdir_recursive): Likewise.
1841         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
1842
1843 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
1844
1845         * valarith.c (value_subscripted_rvalue): If an array is not in
1846         memory, and we don't know the upper bound, then we can't know that
1847         the requested element exists or not.
1848
1849 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
1850
1851         * target.c (str_comma_list_concat_elem): Fix typo in comment.
1852         (target_options_to_string): Add comment.
1853
1854 2018-08-08  Tom Tromey  <tom@tromey.com>
1855
1856         * unittests/scoped_mmap-selftests.c: Check result of "write".
1857
1858 2018-08-08  Jim Wilson  <jimw@sifive.com>
1859
1860         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
1861         (decode_register_index_short): New.
1862         (decode_j_type_insn, decode_cj_type_insn): New.
1863         (decode_b_type_insn, decode_cb_type_insn): New.
1864         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
1865         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
1866         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
1867         is_c_sw_insn instead of is_sw_insn.
1868         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
1869         (riscv_software_single_step): New.
1870         * riscv-tdep.h (riscv_software_single_step): Declare.
1871
1872         * riscv-tdep.c (riscv_isa_xlen): Drop static.
1873         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
1874
1875 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
1876
1877         PR gdb/18050:
1878         * target.c (dispose_inferior): Don't dispose of inferiors that are
1879         already killed.
1880
1881 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
1882
1883         * remote.c (remote_target::download_tracepoint): Change char* to
1884         const char*.
1885
1886 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
1887
1888         * target.h (target_options_to_string): Return an std::string.
1889         * target.c (str_comma_list_concat_elem): Return void, use
1890         std::string.
1891         (do_option): Likewise.
1892         (target_options_to_string): Return an std::string.
1893         * linux-nat.c (linux_nat_target::wait): Adjust.
1894         * target-debug.h (target_debug_print_options): Adjust.
1895
1896 2018-08-07  Tom Tromey  <tom@tromey.com>
1897
1898         * Makefile.in (CPPFLAGS): New variable.
1899         (INTERNAL_CPPFLAGS): Use it.
1900
1901 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1902
1903         * NEWS: Mention the index cache.
1904
1905 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1906
1907         * common/pathstuff.h (get_standard_cache_dir): New.
1908         * common/pathstuff.c (get_standard_cache_dir): New.
1909         * build-id.h (build_id_to_string): New.
1910         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
1911         DEBUG_STR_SUFFIX): Move to here.
1912         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
1913         DEBUG_STR_SUFFIX): Move from there.
1914         (write_psymtabs_to_index): Make non-static, add basename
1915         parameter.  Write to temporary files, rename when done.
1916         (save_gdb_index_command): Adjust call to
1917         write_psymtabs_to_index.
1918         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
1919         field.
1920         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
1921         (get_gdb_index_contents_from_cache): New.
1922         (get_gdb_index_contents_from_cache_dwz): New.
1923         (dwarf2_initialize_objfile): Read index from cache.
1924         (dwarf2_build_psymtabs): Save to index.
1925         * dwarf-index-cache.h: New file.
1926         * dwarf-index-cache.c: New file.
1927         * dwarf-index-write.h: New file.
1928
1929 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1930
1931         * gnulib/aclocal.m4: Re-generate.
1932         * gnulib/config.in: Re-generate.
1933         * gnulib/configure: Re-generate.
1934         * gnulib/import/Makefile.am: Re-generate.
1935         * gnulib/import/Makefile.in: Re-generate.
1936         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1937         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1938         * gnulib/import/m4/mkdir.m4: New file.
1939         * gnulib/import/mkdir.c: New file.
1940         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
1941         module.
1942
1943 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1944
1945         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
1946         * common/scoped_mmap.c: New file.
1947         * common/scoped_mmap.h (destroy): New method.
1948         (~scoped_mmap, reset): Use destroy.
1949         (scoped_mmap): New move constructor.
1950         (mmap_file): New declaration.
1951         * unittests/scoped_mmap-selftests.c (test_normal,
1952         test_invalid_filename, run_tests): New functions.
1953         (_initialize_scoped_mmap_selftests): Register selftest.
1954
1955 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1956
1957         * dwarf2read.c (read_gdb_index_from_section): Rename to...
1958         (read_gdb_index_from_buffer): ... this.  Remove section
1959         parameter, add buffer parameter.
1960         (get_gdb_index_contents_ftype,
1961         get_gdb_index_contents_dwz_ftype): New typedefs.
1962         (dwarf2_read_gdb_index): Add callback parameters to get the
1963         index contents.
1964         (get_gdb_index_contents_from_section): New.
1965         (dwarf2_initialize_objfile): Update call to
1966         dwarf2_read_gdb_index.
1967
1968 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1969
1970         * common/filestuff.h (gdb_fopen_cloexec): New overload.
1971         (gdb_open_cloexec): Likewise.
1972         * nat/linux-osdata.c (command_from_pid): Use string_printf.
1973         (commandline_from_pid): Likewise.
1974         (linux_xfer_osdata_threads): Likewise.
1975         (linux_xfer_osdata_fds): Likewise.
1976         * ada-lang.c (is_package_name): Likewise.
1977         * auxv.c (procfs_xfer_auxv): Likewise.
1978         * breakpoint.c (print_one_breakpoint_location): Use
1979         uiout::field_fmt.
1980         (print_one_catch_solib): Use string_printf.
1981         * coff-pe-read.c (add_pe_exported_sym): Likewise.
1982         (add_pe_forwarded_sym): Likewise.
1983         * dwarf2read.c (create_type_unit_group): Likewise.
1984         (build_error_marker_type): Likewise.
1985         * infcall.c (get_function_name): Likewise.
1986         * valprint.c (print_converted_chars_to_obstack): Likewise.
1987         * xtensa-tdep.c (xtensa_register_type): Likewise.
1988
1989 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
1990
1991         * remote.c (remote_target::download_tracepoint): Fix format
1992         string errors.
1993
1994 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1995
1996         * tracefile.c: Include common/byte-vector.h.
1997         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
1998         with trace_regblock_size if needed.  Update uses of buf.
1999
2000 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2001
2002         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
2003         std::vector<unsigned char>.
2004         * tracepoint.c (collection_list::collection_list): Remove
2005         m_regs_mask initializer from initializer list.  Resize
2006         m_regs_mask using the largest remote register number.
2007         (collection_list::add_remote_register): Remove size check on
2008         m_regs_mask.  Use at to access element.
2009         (collection_list::stringify): Change type of temp_buf to
2010         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
2011         stringify the register mask.  Use pack_hex_byte for the register
2012         mask.
2013
2014 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2015
2016         * tracepoint.h (class collection_list) <add_register>: Remove.
2017         <add_remote_register, add_ax_registers, add_local_register>:
2018         Declare.
2019         <add_memrange>: Add scope parameter.
2020         * tracepoint.c (encode_actions_1): Likewise.
2021         (collection_list::add_register): Rename to ...
2022         (collection_list::add_remote_register): ... this.  Update
2023         comment.
2024         (collection_list::add_ax_registers, add_local_register): New
2025         methods.
2026         (collection_list::add_memrange): Add scope parameter.  Call
2027         add_local_register instead of add_register.
2028         (finalize_tracepoint_aexpr): New function.
2029         (collection_list::collect_symbol): Update calls to add_memrange.
2030         Call add_local_register instead of add_register.  Call
2031         add_ax_registers.  Call finalize_tracepoint_aexpr.
2032         (encode_actions_1): Get remote regnos for $reg action.  Call
2033         add_remote_register, add_ax_registers, and add_local_register.
2034         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
2035         (validate_actionline): Call finalize_tracepoint_aexpr.
2036
2037 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2038
2039         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
2040         Replace array buf with gdb::char_vector buf, of size
2041         get_remote_packet_size ().  Replace references to buf and
2042         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
2043         and xsnprintf with snprintf.  Raise errors if the buffer is too
2044         small.
2045
2046 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2047
2048         * remote.c (remote_target::download_tracepoint): Fix the has_more
2049         predicate in the QTDP action list iteration.
2050
2051 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2052
2053         * remote.c (remote_target::download_tracepoint): Fix indentation
2054         in for block.
2055
2056 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2057
2058         * proc-api.c (_initialize_proc_api): Remove c, unused.
2059         * procfs.c (procfs_init_inferior): Remove signals, unused.
2060         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
2061         unused.
2062
2063 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
2064             Andrew Burgess  <andrew.burgess@embecosm.com>
2065
2066         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
2067         'W_STOPCODE (0)' as this could be ambiguous.
2068
2069 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
2070
2071         * ser-tcp.c (net_open): Fix thinko when deciding whether to
2072         disable TCP's Nagle algorithm (use "ai_protocol" instead of
2073         "ai_socktype").
2074
2075 2018-08-02  Tom Tromey  <tom@tromey.com>
2076
2077         PR symtab/16842.
2078         * dwarf2read.c (read_func_scope): Set symtab on template parameter
2079         symbols.
2080         (process_structure_scope): Likewise.
2081
2082 2018-08-02  Xavier Roirand  <roirand@adacore.com>
2083
2084         PR gdb/22629:
2085         * darwin-nat.c (darwin_kill_inferior): Fix handling of
2086         kill inferior.
2087
2088 2018-08-02  Tom Tromey  <tom@tromey.com>
2089
2090         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
2091         (darwin_suspend_inferior, darwin_resume_inferior)
2092         (darwin_decode_notify_message, darwin_resume_inferior_threads)
2093         (darwin_check_new_threads): Check result of get_darwin_inferior.
2094
2095 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
2096
2097         GDB 8.1.1 released.
2098
2099 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
2100
2101         * varobj.c (varobj_get_path_expr_parent): Report an error if
2102         parent is a dynamic varobj.
2103
2104 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
2105
2106         * gnulib/aclocal.m4: Re-generate.
2107         * gnulib/config.in: Re-generate.
2108         * gnulib/configure: Re-generate.
2109         * gnulib/import/Makefile.in: Re-generate.
2110         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2111         * gnulib/import/m4/onceonly.m4: Re-generate.
2112
2113 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
2114
2115         * target-descriptions.c (struct xml_test_tdesc): New.
2116         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
2117         (record_xml_tdesc): Update.
2118         (maintenance_check_xml_descriptions): Update.
2119         * target-descriptions.h (record_xml_tdesc): Update comment.
2120
2121 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2122
2123         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
2124         checking array bounds are defined.
2125
2126 2018-07-30  Tom Tromey  <tom@tromey.com>
2127
2128         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
2129         irreflexivity violation.
2130
2131 2018-07-30  Tom Tromey  <tom@tromey.com>
2132
2133         * cli/cli-decode.c (lookup_cmd): Remove lint code.
2134         * value.c (unpack_long): Remove lint code.
2135         * valops.c (value_ind): Remove lint code.
2136         * valarith.c (value_x_binop, value_x_unop, value_equal)
2137         (value_pos): Remove lint code.
2138
2139 2018-07-28  Tom de Vries  <tdevries@suse.de>
2140
2141         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
2142         with undefined upper bound as <optimized out>.
2143
2144 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
2145
2146         * gcore.in: Rename variable "name" to "prefix".  Expand
2147         "usage" text.
2148
2149 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
2150
2151         * windows-nat.c (windows_nat_target::create_inferior): Update to
2152         call close() in global namespace.
2153
2154 2018-07-26  Tom Tromey  <tom@tromey.com>
2155
2156         * dwarf-index-write.c (add_address_entry): Don't add objfile
2157         offsets.
2158         * dbxread.c (find_stab_function): Rename from
2159         find_stab_function_addr.  Return a bound_minimal_symbol.
2160         (read_dbx_symtab): Use raw_text_low, raw_text_high.
2161         Don't add objfile offsets.
2162         (end_psymtab): Use raw_text_low, raw_text_high,
2163         MSYMBOL_VALUE_RAW_ADDRESS.
2164         (read_ofile_symtab): Update.
2165         (process_one_symbol): Update.
2166         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
2167         offsets.
2168         (dw2_relocate): Remove.
2169         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
2170         searching addrmap.
2171         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
2172         Update.
2173         (process_psymtab_comp_unit_reader, add_partial_symbol)
2174         (add_partial_subprogram, dwarf2_ranges_read): Update.
2175         (load_partial_dies): Update.
2176         (add_address_entry): Don't add objfile offsets.
2177         (dwarf2_build_include_psymtabs): Update.
2178         (create_addrmap_from_aranges): Don't add objfile offsets.
2179         (dw2_find_pc_sect_compunit_symtab): Update.
2180         * mdebugread.c (parse_symbol): Don't add objfile offsets.
2181         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
2182         Update.
2183         (parse_partial_symbols): Don't add objfile offsets.  Use
2184         raw_text_low, raw_text_high.  Update.
2185         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
2186         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
2187         or call 'relocate' quick function.  Clear psymbol_map.
2188         * psympriv.h (struct partial_symbol) <address>: Add section
2189         offset.
2190         <set_unrelocated_address>: Rename from set_address.
2191         <raw_text_low, raw_text_high>: New methods.
2192         <text_low, text_high>: Add objfile parameter.
2193         (add_psymbol_to_bcache): Add 'section' parameter.  Call
2194         set_unrelocated_address.
2195         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
2196         (find_pc_psymbol): Update.
2197         (fixup_psymbol_section, relocate_psymtabs): Remove.
2198         (dump_psymtab, psym_functions): Update.
2199         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
2200         parameter.
2201         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
2202         (start_psymtab_common): Update.
2203         * symfile-debug.c (debug_qf_relocate): Remove.
2204         (debug_sym_quick_functions): Update.
2205         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
2206         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
2207         Update.
2208
2209 2018-07-26  Tom Tromey  <tromey@redhat.com>
2210
2211         * dbxread.c (end_psymtab): Use text_high_valid and
2212         text_low_valid.
2213         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
2214         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
2215         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
2216         Update comment.
2217         <text_low_valid, text_high_valid>: New fields.
2218         <set_text_low, set_text_high>: Update.
2219         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
2220
2221 2018-07-26  Tom Tromey  <tom@tromey.com>
2222
2223         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
2224         Update.
2225         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
2226         textlow and texthigh fields.
2227         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
2228         Update.
2229         * mdebugread.c (parse_lines, parse_partial_symbols)
2230         (psymtab_to_symtab_1): Update.
2231         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
2232         Rename fields.  Update comment.  Now private.
2233         <text_low, text_high, set_text_low, set_text_high>: New methods.
2234         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
2235         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
2236         (start_psymtab_common, maintenance_info_psymtabs)
2237         (maintenance_check_psymtabs): Update.
2238         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
2239         texthigh fields.
2240         (scan_xcoff_symtab): Update.
2241
2242 2018-07-26  Tom Tromey  <tromey@redhat.com>
2243
2244         * psympriv.h (struct partial_symbol) <unrelocated_address,
2245         address, set_address>: New methods.
2246         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
2247         (fixup_psymbol_section, relocate_psymtabs): Update.
2248         (print_partial_symbols): Add 'objfile' parameter.  Update.
2249         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
2250         Update.
2251
2252 2018-07-26  Tom Tromey  <tom@tromey.com>
2253
2254         * dwarf-index-write.c (write_psymbols, debug_names::insert)
2255         (debug_names::write_psymbols): Update.
2256         * psympriv.h (struct partial_symbol): Derive from
2257         general_symbol_info.
2258         <obj_section>: New method.
2259         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
2260         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
2261         (find_pc_sect_psymbol, fixup_psymbol_section)
2262         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
2263         (print_partial_symbols, recursively_search_psymtabs)
2264         (compare_psymbols, psymbol_hash, psymbol_compare)
2265         (add_psymbol_to_bcache, maintenance_check_psymtabs)
2266         (psymbol_name_matches, psym_fill_psymbol_map): Update.
2267
2268 2018-07-26  Tom Tromey  <tromey@redhat.com>
2269
2270         * dbxread.c (end_psymtab): Remove dead code.
2271
2272 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2273
2274         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
2275         DWARF unwinders are disabled.
2276         * dwarf2-frame.c: Add dwarf2read.h include.
2277         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
2278         disabled.
2279         (dwarf2_frame_unwinders_enabled_p): Define.
2280         (show_dwarf_unwinders_enabled_p): New function.
2281         (_initialize_dwarf2_frame): Register switch to control DWARF
2282         unwinder use.
2283         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
2284         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
2285         (show_dwarf_cmdlist): Remove static keyword.
2286         * dwarf2read.h (set_dwarf_cmdlist): Declare.
2287         (show_dwarf_cmdlist): Declare.
2288         * NEWS: Document new feature.
2289
2290 2018-07-26  Tom de Vries  <tdevries@suse.de>
2291
2292         PR breakpoints/23366
2293         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
2294
2295 2018-07-26  Tom de Vries  <tdevries@suse.de>
2296
2297         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
2298         DW_AT_count can't be translated to a dynamic prop.
2299
2300 2018-07-25  Tom de Vries  <tdevries@suse.de>
2301
2302         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
2303         try/catch.
2304
2305 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
2306
2307         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
2308
2309 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
2310
2311         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
2312
2313 2018-07-24  Keith Seitz  <keiths@redhat.comt
2314
2315         PR symtab/23010
2316         * dwarf2read.c (dw2_add_symbol_to_list): New function.
2317         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
2318         instead of add_symbol_to_list.
2319         (read_file_scope): Call prepare_one_comp_unit before reading
2320         any other DIEs.
2321
2322 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
2323
2324         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
2325
2326 2018-07-24  Tom Tromey  <tom@tromey.com>
2327
2328         * utils.c (malloc, realloc, free): Don't declare.
2329         * configure, config.in: Rebuild.
2330         * configure.ac: Don't check for declarations of free, malloc, or
2331         realloc.
2332
2333 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
2334
2335         * aarch64-linux-nat.c
2336         (aarch64_linux_nat_target::stopped_data_address): Remove unused
2337         variable.
2338         * arm-linux-nat.c (fetch_regs): Likewise.
2339         (store_regs): Likewise.
2340         (fetch_vfp_regs): Likewise.
2341         (store_vfp_regs): Likewise.
2342         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
2343         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
2344         (arm_linux_nat_target::insert_watchpoint): Likewise.
2345         (arm_linux_nat_target::remove_watchpoint): Likewise.
2346         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
2347         Likewise.
2348         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
2349         Likewise.
2350         * ppc-linux-nat.c (fetch_register): Likewise.
2351         (fetch_all_gp_regs): Likewise.
2352         (fetch_ppc_registers): Likewise.
2353         (store_all_gp_regs): Likewise.
2354         (store_ppc_registers): Likewise.
2355         (hwdebug_insert_point): Likewise.
2356         (can_use_watchpoint_cond_accel): Likewise.
2357         * remote-sim.c (gdb_os_write_stdout): Likewise.
2358
2359 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
2360             Tom Tromey  <tom@tromey.com>
2361
2362         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
2363         test for it.
2364         * configure: Rebuild.
2365
2366 2018-07-22  Tom Tromey  <tom@tromey.com>
2367
2368         * regformats/regdat.sh: Define xmltarget_${name} inside
2369         #ifndef IN_PROCESS_AGENT.
2370
2371 2018-07-22  Tom Tromey  <tom@tromey.com>
2372
2373         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
2374
2375 2018-07-22  Tom Tromey  <tom@tromey.com>
2376
2377         * symfile.c (reread_symbols): Notify iter, not objfile.
2378
2379 2018-07-22  Tom Tromey  <tom@tromey.com>
2380
2381         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
2382         Use arch_ops.
2383         (ravenscar_thread_target::prepare_to_store): Likewise.
2384
2385 2018-07-22  Tom Tromey  <tom@tromey.com>
2386
2387         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
2388         unused variable.  Call value_fetch_lazy when needed.
2389         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
2390         Remove unused variable.  Call value_fetch_lazy when needed.
2391
2392 2018-07-22  Tom Tromey  <tom@tromey.com>
2393
2394         * m32c-tdep.c (mark_dma): Return void.
2395         (make_regs): Remove unused declarations.
2396
2397 2018-07-22  Tom Tromey  <tom@tromey.com>
2398
2399         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
2400         cmdscm_get_valid_command_smob_arg_unsafe for effect.
2401         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
2402         bkscm_get_valid_block_smob_arg_unsafe for effect.
2403
2404 2018-07-22  Tom Tromey  <tom@tromey.com>
2405
2406         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
2407         value_type.
2408
2409 2018-07-22  Tom Tromey  <tom@tromey.com>
2410
2411         * windows-nat.c (saved_context): Conditionally define.
2412         * remote.c (remote_target::remote_btrace_maybe_reopen):
2413         Conditionally declare "warned".
2414         * inflow.c (sigquit_ours): Conditionally define.
2415         (new_tty): Move "tty" declaration inside #if.
2416         * guile/guile.c (guile_datadir): Conditionally define.
2417         * charset.c (set_be_le_names): Move some declarations inside #if.
2418         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
2419         #if.
2420         (parse_xml_btrace_conf): Likewise.
2421
2422 2018-07-22  Tom Tromey  <tom@tromey.com>
2423
2424         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
2425
2426 2018-07-22  Tom Tromey  <tom@tromey.com>
2427
2428         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
2429         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
2430         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
2431         * buildsym-legacy.c (get_macro_table): Remove unused variable.
2432         * stack.c (frame_apply_level_command): Remove unused variable.
2433         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
2434         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
2435         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
2436         unused variable.
2437         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
2438         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
2439         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
2440         variable.
2441         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
2442         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
2443         variable.
2444         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
2445         Remove unused variable.
2446         * cli/cli-script.c (recurse_read_control_structure): Remove unused
2447         variable.
2448         * common/tdesc.c (print_xml_feature::visit): Remove unused
2449         variable.
2450         * compile/compile-object-load.c (store_regs): Remove unused
2451         variables.
2452         * complaints.c (clear_complaints): Remove unused variable.
2453         * corelow.c (core_target_open): Remove unused variable.
2454         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
2455         variable.
2456         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
2457         variable.
2458         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
2459         variable.
2460         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
2461         variable.
2462         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
2463         variable.
2464         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
2465         variable.
2466         * ia64-tdep.c (examine_prologue): Remove unused variable.
2467         * infcall.c (run_inferior_call): Remove unused variable.
2468         * inferior.c (exit_inferior): Remove unused variable.
2469         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
2470         * linespec.c (decode_line_2): Remove unused variable.
2471         * linux-nat.c (super_close): Remove.
2472         * linux-tdep.c (linux_info_proc): Remove unused variable.
2473         * mi/mi-main.c (mi_execute_command): Remove unused variable.
2474         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
2475         Remove unused variable.
2476         * parse.c (find_minsym_type_and_address): Remove unused variable.
2477         * printcmd.c (info_symbol_command, printf_floating): Remove unused
2478         variable.
2479         * python/py-breakpoint.c (bppy_set_commands): Remove unused
2480         variable.
2481         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
2482         variables.
2483         * record-btrace.c (record_btrace_target::store_registers): Remove
2484         unused variable.
2485         (cmd_show_record_btrace_cpu): Remove unused variable.
2486         * riscv-tdep.c (riscv_register_reggroup_p)
2487         (riscv_push_dummy_call, riscv_return_value): Remove unused
2488         variable.
2489         * rust-exp.y (literal): Remove unused variable.
2490         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
2491         unused variable.
2492         <STRUCTOP_ANONYMOUS>: Likewise.
2493         * s390-linux-tdep.c (s390_linux_init_abi_31)
2494         (s390_linux_init_abi_64): Remove unused variable.
2495         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
2496         (file_select_thread, net_windows_open, _initialize_ser_windows):
2497         Remove unused variables.
2498         * symtab.c (find_pc_sect_line): Remove unused variable.
2499         * target-memory.c (compute_garbled_blocks): Remove unused
2500         variable.
2501         (target_write_memory_blocks): Remove unused variable.
2502         * target.c (target_stack::unpush): Remove unused variables.
2503         * tracepoint.c (start_tracing, all_tracepoint_actions)
2504         (merge_uploaded_trace_state_variables)
2505         (print_one_static_tracepoint_marker): Remove unused variable.
2506         * unittests/basic_string_view/element_access/char/1.cc (test01):
2507         Remove unused variable.
2508         * windows-nat.c (windows_continue, windows_add_all_dlls)
2509         (do_initial_windows_stuff, windows_nat_target::create_inferior):
2510         Remove unused variables.
2511
2512 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
2513
2514         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
2515         attr_profile in HAVE_ELF.
2516         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
2517         HAVE_ELF.
2518
2519 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
2520
2521         * frame.c (frame_register_unwind): Change parameter name.
2522         (frame_unwind_register): Likewise.
2523         (frame_unwind_register_value): Likewise.
2524         (frame_unwind_register_signed): Likewise.
2525         (frame_unwind_register_unsigned): Likewise.
2526         * frame.h (frame_register_unwind): Likewise.
2527         (frame_unwind_register): Likewise.
2528         (frame_unwind_register_value): Likewise.
2529         (frame_unwind_register_signed): Likewise.
2530         (frame_unwind_register_unsigned): Likewise.
2531         (frame_unwind_arch): Likewise.
2532
2533 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
2534
2535         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
2536         ISA maintenance.
2537
2538 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
2539
2540         * mips-linux-nat.c (mips_linux_nat_target::read_description):
2541         Call `get_ptrace_pid' rather than extracting the ptrace PID by
2542         hand.
2543
2544 2018-07-20  Keith Seitz  <keiths@redhat.com>
2545
2546         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
2547         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
2548         m_compunit_symtab, m_language>: Add "m_" prefix.
2549         Update all uses.
2550         * buildsym.c: Update all uses.
2551
2552 2018-07-20  Tom Tromey  <tom@tromey.com>
2553
2554         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
2555         * buildsym.h (record_line_ftype): Remove typedef.
2556
2557 2018-07-20  Tom Tromey  <tom@tromey.com>
2558
2559         * buildsym-legacy.h (augment_type_symtab): Don't declare.
2560         (end_expandable_symtab): Likewise.
2561         (end_symtab_get_static_block): Likewise.
2562         (end_symtab_from_static_block): Likewise.
2563         * buildsym-legacy.c (augment_type_symtab): Remove.
2564         (end_expandable_symtab): Remove.
2565         (end_symtab_get_static_block): Remove.
2566         (end_symtab_from_static_block): Remove.
2567
2568 2018-07-20  Tom Tromey  <tom@tromey.com>
2569
2570         * dwarf2read.c: Include buildsym.h.
2571         (struct dwarf2_cu) <builder>: New method.
2572         (fixup_go_packaging): Update.
2573         (process_full_comp_unit, process_full_type_unit): Update.  Don't
2574         use scoped_free_pendings.
2575         (using_directives): Add "cu" parameter, remove "language".
2576         (read_import_statement, setup_type_unit_groups, )
2577         (read_func_scope, read_lexical_block_scope)
2578         (dwarf2_record_block_ranges, read_namespace): Update.
2579         (lnp_state_machine::lnp_state_machine): Add cu parameter.
2580         (lnp_state_machine::handle_end_sequence): Update.
2581         (class lnp_state_machine) <m_cu>: New member.
2582         <m_record_line_callback>: Remove.
2583         <m_currently_recording_lines>: New member.
2584         (lnp_state_machine::handle_set_file): Update.
2585         (noop_record_line): Remove.
2586         (dwarf_record_line_p): Add cu parameter.
2587         (dwarf_record_line_1, dwarf_finish_line): Likewise.
2588         (lnp_state_machine::record_line)
2589         (lnp_state_machine::lnp_state_machine)
2590         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
2591         (dwarf_decode_lines): Update.
2592         (dwarf2_start_subfile): Add cu parameter.
2593         (dwarf2_start_symtab, new_symbol): Update.
2594         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
2595         Remove dwarf2_per_objfile parameter.
2596         (dwarf_decode_macros): Update.
2597
2598 2018-07-20  Tom Tromey  <tom@tromey.com>
2599
2600         * stabsread.c (define_symbol): Update.
2601         * buildsym-legacy.h (get_buildsym_compunit): Declare.
2602         * dwarf2read.c (new_symbol): Update.
2603         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
2604         * cp-namespace.c: Include buildsym.h.
2605         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
2606         * buildsym-legacy.c (get_buildsym_compunit): New function.
2607
2608 2018-07-20  Tom Tromey  <tom@tromey.com>
2609
2610         * xcoffread.c: Include buildsym-legacy.h.
2611         * windows-nat.c: Include buildsym-legacy.h.
2612         * stabsread.c: Include buildsym-legacy.h.
2613         * mdebugread.c: Include buildsym-legacy.h.
2614         * buildsym-legacy.h: New file.
2615         * buildsym-legacy.c: New file, from buildsym.c.
2616         * go32-nat.c: Include buildsym-legacy.h.
2617         * dwarf2read.c: Include buildsym-legacy.h.
2618         * dbxread.c: Include buildsym-legacy.h.
2619         * cp-namespace.c: Include buildsym-legacy.h.
2620         * coffread.c: Include buildsym-legacy.h.
2621         * buildsym.h: Move some contents to buildsym-legacy.h.
2622         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
2623         buildsym-legacy.c.
2624         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
2625
2626 2018-07-20  Tom Tromey  <tom@tromey.com>
2627
2628         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
2629         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
2630         (buildsym_compunit::buildsym_compunit)
2631         (buildsym_compunit::~buildsym_compunit)
2632         (buildsym_compunit::get_macro_table): Define.
2633
2634 2018-07-20  Tom Tromey  <tom@tromey.com>
2635
2636         * buildsym.c (reset_symtab_globals): Remove.
2637         (buildsym_compunit::end_symtab_from_static_block): Update.
2638         (buildsym_compunit::augment_type_symtab): Update.
2639         (end_symtab_from_static_block): Call free_buildsym_compunit.
2640         (augment_type_symtab, end_symtab, end_expandable_symtab):
2641         Likewise.
2642
2643 2018-07-20  Tom Tromey  <tom@tromey.com>
2644
2645         * arch-utils.c: Do not include buildsym.h.
2646         * mipsread.c: Do not include buildsym.h.
2647         * machoread.c: Do not include buildsym.h.
2648         * elfread.c: Do not include buildsym.h.
2649
2650 2018-07-20  Tom Tromey  <tom@tromey.com>
2651
2652         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
2653         initialization.
2654         (buildsym_compunit): Add new constructor.
2655         (struct buildsym_compunit) <get_last_source_file, finish_block,
2656         record_block_range, start_subfile, patch_subfile_names,
2657         push_subfile, pop_subfile, record_line, get_compunit_symtab,
2658         set_last_source_start_addr, get_last_source_start_addr,
2659         get_local_using_directives, set_local_using_directives,
2660         get_global_using_directives, outermost_context_p,
2661         get_current_context_stack, get_context_stack_depth,
2662         get_current_subfile, get_local_symbols, get_file_symbols,
2663         get_global_symbols, record_debugformat, record_producer,
2664         push_context, pop_context, end_symtab_get_static_block,
2665         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
2666         New public methods.
2667         <record_pending_block, finish_block_internal, make_blockvector,
2668         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
2669         private methods.
2670         Update all users.
2671
2672 2018-05-22  Tom Tromey  <tom@tromey.com>
2673
2674         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
2675         parameter.
2676         (finish_block_internal): Update.
2677
2678 2018-07-20  Tom Tromey  <tom@tromey.com>
2679
2680         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
2681         parameter.
2682         (finish_block_internal): Update.
2683
2684 2018-07-20  Tom Tromey  <tom@tromey.com>
2685
2686         * buildsym.h (EXTERN): Don't define or undef.
2687         * buildsym.c (EXTERN): Don't define.
2688
2689 2018-07-20  Tom Tromey  <tom@tromey.com>
2690
2691         * buildsym.c: Remove TODO comment.
2692
2693 2018-07-20  Tom Tromey  <tom@tromey.com>
2694
2695         * coffread.c (coff_symtab_read): Update.
2696         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
2697         (xcoff_new_init): Update.
2698         * mipsread.c (mipscoff_new_init): Update.
2699         * mdebugread.c (mdebug_build_psymtabs): Update.
2700         * elfread.c (elf_new_init): Update.
2701         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
2702         Update.
2703         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
2704         (coffstab_build_psymtabs, elfstab_build_psymtabs)
2705         (stabsect_build_psymtabs): Update.
2706         * buildsym.h (buildsym_init): Don't declare.
2707         * buildsym.c: Update comment.
2708         (prepare_for_building): Remove.
2709         (start_symtab, restart_symtab): Update.
2710         (reset_symtab_globals): Update comment.
2711         (buildsym_init): Remove.
2712
2713 2018-07-20  Tom Tromey  <tom@tromey.com>
2714
2715         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
2716         * stabsread.c (patch_block_stabs, define_symbol, read_type)
2717         (read_enum_type, common_block_start, common_block_end)
2718         (cleanup_undefined_types_1, finish_global_stabs): Update.
2719         * mdebugread.c (psymtab_to_symtab_1): Update.
2720         * dwarf2read.c (fixup_go_packaging, read_func_scope)
2721         (read_lexical_block_scope, new_symbol): Update.
2722         * dbxread.c (process_one_symbol): Update.
2723         * coffread.c (coff_symtab_read, process_coff_symbol)
2724         (coff_read_enum_type): Update.
2725         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
2726         declare.
2727         (get_local_symbols, get_file_symbols, get_global_symbols): New
2728         functions.
2729         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
2730         m_global_symbols.
2731         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
2732         (~scoped_free_pendings): Update.
2733         (finish_block, prepare_for_building, reset_symtab_globals)
2734         (end_symtab_get_static_block, end_symtab_with_blockvector)
2735         (augment_type_symtab, push_context): Update.
2736         (get_local_symbols, get_file_symbols, get_global_symbols): New
2737         functions.
2738         (buildsym_init): Update.
2739
2740 2018-07-20  Tom Tromey  <tom@tromey.com>
2741
2742         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
2743         (process_full_type_unit): Likewise.
2744         (dwarf2_start_symtab): Set list_in_scope.
2745
2746 2018-07-20  Tom Tromey  <tom@tromey.com>
2747
2748         * dwarf2read.c (process_psymtab_comp_unit_reader)
2749         (build_type_psymtabs_reader): Do not set list_in_scope.
2750
2751 2018-07-20  Tom Tromey  <tom@tromey.com>
2752
2753         * buildsym.c (free_pendings): Remove.
2754         (add_symbol_to_list, scoped_free_pendings)
2755         (finish_block_internal, buildsym_init): Update.
2756
2757 2018-07-20  Tom Tromey  <tom@tromey.com>
2758
2759         * xcoffread.c (read_xcoff_symtab): Update.
2760         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
2761         Update.
2762         * dbxread.c (process_one_symbol): Update.
2763         * coffread.c (coff_symtab_read): Update.
2764         * buildsym.h (finish_block): Update.
2765         * buildsym.c (finish_block): Remove "listhead" argument.
2766         (end_symtab_get_static_block): Update.
2767
2768 2018-07-20  Tom Tromey  <tom@tromey.com>
2769
2770         * buildsym.h (class scoped_free_pendings): Remove constructor.
2771         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
2772         method.
2773         <m_pending_block_obstack, m_pending_blocks>: New members.
2774         (pending_block_obstack, pending_blocks): Remove.
2775         (scoped_free_pendings::scoped_free_pendings): Default.
2776         (~scoped_free_pendings): Update.
2777         (free_pending_blocks): Remove.
2778         (finish_block_internal, record_pending_block, make_blockvector)
2779         (end_symtab_get_static_block, augment_type_symtab, push_context)
2780         (buildsym_init): Update.
2781
2782 2018-07-20  Tom Tromey  <tom@tromey.com>
2783
2784         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
2785         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
2786         members.
2787         (pending_addrmap, pending_addrmap_obstack)
2788         (pending_addrmap_interesting): Remove.
2789         (scoped_free_pendings, record_block_range, make_blockvector)
2790         (prepare_for_building, reset_symtab_globals, buildsym_init):
2791         Update.
2792
2793 2018-07-20  Tom Tromey  <tom@tromey.com>
2794
2795         * xcoffread.c (process_linenos): Update.
2796         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
2797         * mdebugread.c (psymtab_to_symtab_1): Update.
2798         * dwarf2read.c (setup_type_unit_groups)
2799         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
2800         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
2801         * dbxread.c (process_one_symbol): Update.
2802         * coffread.c (coff_symtab_read, enter_linenos)
2803         (process_coff_symbol): Update.
2804         * buildsym.h (current_subfile): Don't declare.
2805         (get_current_subfile): Declare.
2806         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
2807         member.
2808         (start_subfile, free_buildsym_compunit, push_subfile)
2809         (prepare_for_building, start_symtab): Update.
2810         (get_current_subfile): New function.
2811
2812 2018-07-20  Tom Tromey  <tom@tromey.com>
2813
2814         * coffread.c (coff_symtab_read): Update.
2815         * xcoffread.c (read_xcoff_symtab): Update.
2816         * dwarf2read.c (new_symbol): Update.
2817         (read_func_scope, read_lexical_block_scope): Update.
2818         * dbxread.c (process_one_symbol): Update.
2819         * buildsym.h (context_stack, context_stack_depth): Don't declare.
2820         (outermost_context_p): Remove macro.
2821         (outermost_context_p, get_current_context_stack)
2822         (get_context_stack_depth): Declare.
2823         (pop_context): Return struct context_stack.
2824         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
2825         member.
2826         (context_stack_size): Remove.
2827         (INITIAL_CONTEXT_STACK_SIZE): Remove.
2828         (prepare_for_building, end_symtab_get_static_block)
2829         (augment_type_symtab, push_context): Update.
2830         (pop_context): Return struct context_stack.
2831         (outermost_context_p, get_current_context_stack)
2832         (get_context_stack_depth): New functions.
2833         (buildsym_init): Update.
2834
2835 2018-07-20  Tom Tromey  <tom@tromey.com>
2836
2837         * rust-exp.y: Now a pure parser.  Update all rules.
2838         (%union): Move earlier.
2839         (current_parser, work_obstack): Remove globals.
2840         (rust_parser, ~rust_parser): Update.
2841         (class rust_parser) <copy_name, concat3, crate_name, super_name,
2842         lex_character, lex_number, lex_string, lex_identifier,
2843         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
2844         convert_name, convert_params_to_expression,
2845         convert_ast_to_expression, ast_basic_type, ast_operation,
2846         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
2847         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
2848         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
2849         ast_array_type, ast_slice_type, ast_reference_type,
2850         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
2851         (rust_parse): Update.
2852         (rustyyerror, rustyylex): Add parser parameter.
2853         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
2854         (rust_lex_stringish_test, rust_lex_test_sequence)
2855         (rust_lex_test_trailing_dot, rust_lex_test_completion)
2856         (rust_lex_test_push_back, rust_lex_tests): Update.
2857
2858 2018-07-19  Pedro Alves  <palves@redhat.com>
2859
2860         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
2861         gdb::unique_xmalloc_ptr.
2862         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
2863         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
2864         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
2865         copy-initialization.
2866         * guile/scm-pretty-print.c (ppscm_print_children): Use
2867         gdb::unique_xmalloc_ptr instead of cleanups.
2868         (gdbscm_apply_val_pretty_printer): Remove cleanups.
2869         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
2870         gdb::unique_xmalloc_ptr.
2871         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
2872         Adjust to use gdb::unique_xmalloc_ptr.
2873         * guile/scm-utils.c (extract_arg): Adjust.
2874         * guile/scm-value.c (gdbscm_value_field): Adjust to use
2875         gdb::unique_xmalloc_ptr instead of a cleanup.
2876
2877 2018-07-19  Tom Tromey  <tom@tromey.com>
2878
2879         * utils.c (do_value_free_to_mark)
2880         (make_cleanup_value_free_to_mark): Remove.
2881         * utils.h (make_cleanup_value_free_to_mark): Remove.
2882
2883 2018-07-19  Pedro Alves  <palves@redhat.com>
2884
2885         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
2886         forwarding reference.
2887
2888 2018-07-18  Pedro Alves  <palves@redhat.com>
2889
2890         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
2891         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
2892         cleanup.
2893
2894 2018-07-18  Pedro Alves  <palves@redhat.com>
2895
2896         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
2897         exceptions.
2898         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
2899         (gdbscm_wrap): New.
2900         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
2901         directly instead of a cleanup.
2902         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
2903         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
2904         (vlscm_binop_gdbthrow): New, factored out from ...
2905         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
2906         (vlscm_rich_compare): Use gdbscm_wrap.
2907         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
2908         instead of a cleanup.
2909         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
2910         cleanup.
2911         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
2912         Use xfree directly instead of a cleanup.
2913         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
2914         Adjust to use gdbscm_wrap and scoped_value_mark.
2915         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
2916         (gdbscm_value_address, gdbscm_value_dereference)
2917         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
2918         scoped_value_mark.
2919         (gdbscm_value_dynamic_type): Use scoped_value_mark.
2920         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
2921         scoped_value_mark.
2922         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
2923         gdbscm_wrap and scoped_value_mark.
2924         (gdbscm_value_to_string): Use xfree directly instead of a
2925         cleanup.  Move 'buffer' unique_ptr to TRY scope.
2926         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
2927         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
2928         scoped_value_mark.
2929         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
2930         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
2931         scoped_value_mark.
2932         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
2933         gdbscm_wrap.
2934
2935 2018-07-18  Tom de Vries  <tdevries@suse.de>
2936
2937         * findvar.c (default_read_var_value): Also resolve dynamic type for
2938         LOC_OPTIMIZED_OUT vars.
2939
2940 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
2941
2942         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
2943         decoding.
2944
2945 2018-07-17  Tom Tromey  <tom@tromey.com>
2946
2947         * guile/scm-param.c (pascm_set_func, pascm_show_func)
2948         (compute_enum_list, pascm_set_param_value_x)
2949         (gdbscm_parameter_value): Update.
2950         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
2951         (gdbscm_scm_to_host_string): Update.
2952         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
2953         Update.
2954         * guile/scm-cmd.c (cmdscm_add_completion): Update.
2955         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
2956         * guile/scm-string.c (gdbscm_scm_to_string): Return
2957         unique_xmalloc_ptr.
2958         (gdbscm_scm_to_host_string): Likewise.
2959
2960 2018-07-17  Tom Tromey  <tom@tromey.com>
2961
2962         * guile/guile.c (gdbscm_eval_from_control_command): Update.
2963         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
2964         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
2965         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
2966         unique_xmalloc_ptr.
2967
2968 2018-07-17  Tom Tromey  <tom@tromey.com>
2969
2970         * guile/scm-param.c (pascm_signal_setshow_error): Update.
2971         * guile/guile-internal.h (gdbscm_exception_message_to_string):
2972         Update.
2973         * guile/scm-cmd.c (cmdscm_function): Update.
2974         * guile/scm-pretty-print.c
2975         (ppscm_print_exception_unless_memory_error): Update.
2976         * guile/scm-exception.c (gdbscm_exception_message_to_string):
2977         Return unique_xmalloc_ptr.
2978
2979 2018-07-17  Tom Tromey  <tom@tromey.com>
2980
2981         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
2982         Use string_printf.
2983
2984 2018-07-17  Jim Wilson  <jimw@sifive.com>
2985
2986         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
2987         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
2988         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
2989         unecessary braces after EF_RISCV_RVC test.  Delete call to
2990         set_gdbarch_decr_pc_after_break.
2991
2992         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
2993         RISCV_LAST_FP_REGNUM + 1.
2994         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
2995
2996 2018-07-17  Tom Tromey  <tom@tromey.com>
2997
2998         * configure.ac: Remove --disable-gdbcli.
2999         * configure: Rebuild.
3000         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
3001         (SUBDIR_CLI_CFLAGS): Remove.
3002         (SFILES): Use SUBDIR_CLI_SRCS.
3003         (COMMON_OBS): Use SUBDIR_CLI_OBS.
3004
3005 2018-07-17  Tom Tromey  <tom@tromey.com>
3006
3007         PR gdb/18624:
3008         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
3009
3010 2018-07-16  Jim Wilson  <jimw@sifive.com>
3011
3012         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
3013
3014 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3015
3016         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
3017         variable.
3018         (libunwind_frame_sniffer): Likewise.
3019         (libunwind_frame_prev_register): Likewise.
3020         (libunwind_sigtramp_frame_sniffer): Likewise.
3021         * ia64-tdep.c (ia64_access_reg): Likewise.
3022         (ia64_access_rse_reg): Likewise.
3023         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
3024         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
3025
3026 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3027
3028         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
3029
3030 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3031
3032         * remote-sim.c (gdbsim_target::close,
3033         gdbsim_target::mourn_inferior): Remove unused variables.
3034
3035 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
3036
3037         * ia64-tdep.c (ktab_buf): New global.
3038         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
3039         (get_kernel_table): Adjust.
3040
3041 2018-07-16  Tom Tromey  <tom@tromey.com>
3042
3043         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
3044         * dwarf2read.c (using_directives, new_symbol): Use
3045         outermost_context_p.
3046         * dbxread.c (process_one_symbol): Use outermost_context_p.
3047         * coffread.c (coff_symtab_read): Use outermost_context_p.
3048
3049 2018-07-16  Tom Tromey  <tom@tromey.com>
3050
3051         * dwarf2read.c (using_directives, read_func_scope)
3052         (read_lexical_block_scope): Update.
3053         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
3054         * buildsym.h (local_using_directives, global_using_directives):
3055         Don't declare.
3056         (get_local_using_directives, set_local_using_directives)
3057         (get_global_using_directives): Declare.
3058         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
3059         m_global_using_directives>: New members.
3060         (finish_block_internal, prepare_for_building)
3061         (reset_symtab_globals, end_symtab_get_static_block)
3062         (push_context): Update.
3063         (get_local_using_directives, set_local_using_directives)
3064         (get_global_using_directives): New functions.
3065         (buildsym_init): Update.
3066
3067 2018-07-16  Tom Tromey  <tom@tromey.com>
3068
3069         * xcoffread.c (xcoff_initial_scan): Don't call
3070         free_pending_blocks.
3071         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
3072         * buildsym.h (class scoped_free_pendings): Add constructor.
3073         (free_pending_blocks): Don't declare.
3074         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
3075         (free_pending_blocks): Now static.
3076
3077 2018-07-16  Tom Tromey  <tom@tromey.com>
3078
3079         * buildsym.h (push_subfile, pop_subfile): Update declarations.
3080         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
3081         member.
3082         (struct subfile_stack): Remove.
3083         (subfile_stack): Remove.
3084         (push_subfile, pop_subfile, buildsym_init): Update.
3085
3086 2018-07-16  Tom Tromey  <tom@tromey.com>
3087
3088         * buildsym.c (push_subfile): Use gdb_assert.
3089         (pop_subfile): Use gdb_assert.
3090
3091 2018-07-16  Tom Tromey  <tom@tromey.com>
3092
3093         * buildsym.h (merge_symbol_lists): Remove.
3094         * buildsym.c (merge_symbol_lists): Remove.
3095
3096 2018-07-16  Tom Tromey  <tom@tromey.com>
3097
3098         * stabsread.c (scan_file_globals): Update comment.
3099         * stabsread.h (scan_file_globals): Move from buildsym.h.
3100         * buildsym.h (scan_file_globals): Move to stabsread.h.
3101
3102 2018-07-16  Tom Tromey  <tom@tromey.com>
3103
3104         * xcoffread.c (xcoff_new_init): Update.
3105         * mipsread.c (mipscoff_new_init): Update.
3106         * mdebugread.c (mdebug_build_psymtabs): Update.
3107         * elfread.c (elf_new_init): Update.
3108         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
3109         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
3110         * buildsym.h (buildsym_new_init): Don't declare.
3111         * buildsym.c (buildsym_new_init): Remove.
3112
3113 2018-07-16  Tom Tromey  <tom@tromey.com>
3114
3115         * stabsread.h (within_function): Move from buildsym.h.
3116         * stabsread.c (start_stabs): Clear within_function.
3117         * coffread.c (coff_start_symtab): Clear within_function.
3118         * buildsym.h (within_function): Move to stabsread.h.
3119         * buildsym.c (prepare_for_building): Update.
3120
3121 2018-07-16  Tom Tromey  <tom@tromey.com>
3122
3123         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
3124         * dwarf2read.c (dwarf2_start_symtab): Don't set
3125         processing_gcc_compilation.
3126         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
3127
3128 2018-07-16  Tom Tromey  <tom@tromey.com>
3129
3130         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
3131         (next_symbol_text_func): Move from buildsym.h.
3132         * stabsread.c (hashname): Move from buildsym.c.
3133         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
3134         (next_symbol_text_func, hashname): Move to stabsread.h.
3135         * buildsym.c: Don't include bcache.h
3136         (hashname): Move to stasbread.c.
3137
3138 2018-07-16  Tom Tromey  <tom@tromey.com>
3139
3140         * buildsym.h (context_stack_size): Don't declare.
3141         * buildsym.c (context_stack_size): New global.
3142
3143 2018-07-16  Tom Tromey  <tom@tromey.com>
3144
3145         * dbxread.c (processing_acc_compilation): New global.
3146         * buildsym.h (processing_acc_compilation): Don't declare.
3147
3148 2018-07-16  Tom Tromey  <tom@tromey.com>
3149
3150         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
3151         * dbxread.c (read_ofile_symtab): Update.
3152         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
3153         * buildsym.h (last_source_start_addr): Remove.
3154         (set_last_source_start_addr, get_last_source_start_addr):
3155         Declare.
3156         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
3157         parameter.
3158         (struct buildsym_compunit) <m_last_source_start_addr>: New
3159         member.
3160         (prepare_for_building): Remove start_addr parameter.
3161         (start_symtab, restart_symtab, end_symtab_get_static_block)
3162         (end_symtab_with_blockvector): Update.
3163         (set_last_source_start_addr, get_last_source_start_addr): New
3164         functions.
3165
3166 2018-07-16  Tom Tromey  <tom@tromey.com>
3167
3168         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
3169         member.
3170         (have_line_numbers): Remove.
3171         (record_line, prepare_for_building, end_symtab_get_static_block)
3172         (augment_type_symtab): Update.
3173
3174 2018-07-16  Tom Tromey  <tom@tromey.com>
3175
3176         * buildsym.c (~buildsym_compunit): Free the macro table.
3177         (struct buildsym_compunit) <get_macro_table, release_macros>: New
3178         methods.
3179         <m_pending_macros>: New member.
3180         (pending_macros): Remove.
3181         (~scoped_free_pendings, get_macro_table, prepare_for_building)
3182         (reset_symtab_globals, end_symtab_get_static_block)
3183         (end_symtab_with_blockvector, augment_type_symtab)
3184         (buildsym_init): Update.
3185
3186 2018-07-16  Tom Tromey  <tom@tromey.com>
3187
3188         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
3189         parameter.
3190         (buildsym_compunit::set_last_source_file): New method.
3191         <m_last_source_file>: New member.
3192         (prepare_for_building): Remove "name" parameter.
3193         (start_symtab, restart_symtab, reset_symtab_globals): Update.
3194         (last_source_file): Remove.
3195         (set_last_source_file, get_last_source_file): Update.
3196
3197 2018-07-16  Tom Tromey  <tom@tromey.com>
3198
3199         * buildsym.c (prepare_for_building): Add assert.
3200
3201 2018-07-16  Tom Tromey  <tom@tromey.com>
3202
3203         * buildsym.c (~buildsym_compunit): Update.
3204         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
3205         (start_subfile, patch_subfile_names)
3206         (end_symtab_with_blockvector): Update.
3207
3208 2018-07-16  Tom Tromey  <tom@tromey.com>
3209
3210         * buildsym.c (struct buildsym_compunit): Add constructor,
3211         destructor, initializers.
3212         (start_buildsym_compunit): Remove.
3213         (free_buildsym_compunit): Use "delete".
3214         (start_symtab, restart_symtab): Use "new".
3215
3216 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
3217
3218         * symfile.c (set_objfile_default_section_offset): Remove struct
3219         keyword.
3220
3221 2018-07-14  Stafford Horne  <shorne@gmail.com>
3222
3223         * (Responsible Maintainers): Add myself as or1k maintainer.
3224
3225 2018-07-13  Tom Tromey  <tom@tromey.com>
3226
3227         * symfile.c (set_objfile_default_section_offset): Use extra braces
3228         around initializer.
3229
3230 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
3231
3232         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
3233         non-branching basr.
3234
3235 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3236
3237         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
3238         unittests/cli-utils-selftests.c
3239         * unittests/cli-utils-selftests.c: New file.
3240
3241 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3242
3243         * NEWS: Mention new commands. Mention change to 'thread apply'.
3244
3245 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3246
3247         * thread.c (thr_try_catch_cmd): New function.
3248         (thread_apply_all_command): Handle qcs flags.
3249         (thread_apply_command): Handle qcs flags.
3250         (taas_command): New function.
3251         (tfaas_command): New function.
3252         (_initialize_thread): Update to setup the new commands 'taas
3253         and 'tfaas'. Change doc string for 'thread apply'.
3254
3255 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3256
3257         * stack.c: (trailing_outermost_frame): New function, mostly
3258         extracted from backtrace_command_1.
3259         (leading_innermost_frame): New function.
3260         (backtrace_command_1): Update to call trailing_outermost_frame.
3261         (frame_apply_command_count): New function.
3262         (frame_apply_level_command): New function.
3263         (frame_apply_all_command): New function.
3264         (frame_apply_command): New function.
3265         (faas_command): New function.
3266         (frame_cmd_list): New variable.
3267         (_initialize_stack): Update to setup the new commands 'frame apply'
3268         and 'faas'.
3269
3270 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3271
3272         * cli-utils.c (number_or_range_parser::get_number): Only handle
3273         numbers or convenience var as numbers.
3274         (parse_flags): New function.
3275         (parse_flags_qcs): New function.
3276         (number_or_range_parser::finished): Ensure parsing end is detected
3277         before end of string.
3278         * cli-utils.h (parse_flags): New function.
3279         (parse_flags_qcs): New function.
3280         (number_or_range_parser): Remove m_finished bool.
3281         (number_or_range_parser::skip_range): Set m_in_range to false.
3282
3283 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3284
3285         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
3286         on Windows.
3287
3288 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
3289             Jan Kratochvil  <jan.kratochvil@redhat.com>
3290             Paul Fertser  <fercerpav@gmail.com>
3291             Tsutomu Seki  <sekiriki@gmail.com>
3292             Pedro Alves  <palves@redhat.com>
3293
3294         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
3295         'unittests/parse-connection-spec-selftests.c'.
3296         (COMMON_SFILES): Add 'common/netstuff.c'.
3297         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
3298         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
3299         * common/netstuff.c: New file.
3300         * common/netstuff.h: New file.
3301         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
3302         (wait_for_connect): Update comment.  New parameter
3303         'gdb::optional<int> sock' instead of 'struct serial *scb'.
3304         Use 'sock' directly instead of 'scb->fd'.
3305         (try_connect): New function, with code from 'net_open'.
3306         (net_open): Rewrite main loop to deal with multiple
3307         sockets/addresses.  Handle IPv6-style hostnames; implement
3308         support for IPv6 connections.
3309         * unittests/parse-connection-spec-selftests.c: New file.
3310
3311 2018-07-11  Pedro Alves  <palves@redhat.com>
3312
3313         PR gdb/23377
3314         * remote.c (remote_target::remote_detach_pid): Call
3315         set_current_process.
3316
3317 2018-07-11  Pedro Alves  <palves@redhat.com>
3318
3319         * h8300-tdep.c (h8300_gdbarch_init): Remove
3320         set_gdbarch_ecoff_reg_to_regnum calls.
3321
3322 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
3323
3324         PR c++/23373
3325         * c-typeprint.c (c_type_print_base_struct_union): Don't print
3326         offsets/sizes for static members of a class/struct.
3327
3328 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
3329
3330         * target-descriptions.c (tdesc_register_bitsize): Rename.
3331         * target-descriptions.h (tdesc_register_bitsize): Likewise.
3332         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
3333         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
3334
3335 2018-07-10  Tom Tromey  <tom@tromey.com>
3336
3337         * breakpoint.c (moribund_locations): Now static and a
3338         std::vector.
3339         (breakpoint_init_inferior, moribund_breakpoint_here_p)
3340         (build_bpstat_chain, update_global_location_list)
3341         (breakpoint_retire_moribund): Update.
3342         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
3343         VEC.
3344
3345 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3346
3347         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
3348         (riscv_register_reggroup_p): Use new function, remove unneeded
3349         parenthesis.
3350         (riscv_push_dummy_call): Extend assert to compare against xlen or
3351         flen based on register type.
3352
3353 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3354
3355         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
3356
3357 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3358
3359         * remote.c (show_hardware_watchpoint_limit): New function.
3360         (show_hardware_watchpoint_length_limit): New function.
3361         (show_hardware_breakpoint_limit): New function.
3362         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
3363         where appropriate, update help text.
3364
3365 2018-07-09  Tom Tromey  <tom@tromey.com>
3366
3367         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
3368         (CLIBS): Don't mention NAT_CLIBS.
3369
3370 2018-07-09  Tom Tromey  <tom@tromey.com>
3371
3372         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
3373         (LIBGDB_OBS, clean mostlyclean): Update.
3374         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
3375
3376 2018-07-09  Tom Tromey  <tom@tromey.com>
3377
3378         * Makefile.in (%.c: %.y): Use ECHO_YACC.
3379         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
3380         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
3381
3382 2018-07-09  Tom Tromey  <tom@tromey.com>
3383
3384         * Makefile.in (ALLDEPFILES): Remove exec.c.
3385         (COMMON_OBS): Remove exec.o.
3386         (COMMON_SFILES): Add exec.c.
3387
3388 2018-07-09  Tom Tromey  <tom@tromey.com>
3389
3390         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
3391
3392 2018-07-09  Tom Tromey  <tom@tromey.com>
3393
3394         * Makefile.in (clean mostlyclean): Remove stamp-version.
3395         (version.c): Depend on stamp-version.
3396         (stamp-version): New rule, from version.c rule.
3397
3398 2018-07-09  Tom Tromey  <tom@tromey.com>
3399
3400         * Makefile.in (init.c): Depend on stamp-init.
3401         (stamp-init): New rule, from init.c rule.
3402         (clean mostlyclean): Remove stamp-init.
3403
3404 2018-07-09  Tom Tromey  <tom@tromey.com>
3405
3406         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
3407         SUBDIR_GCC_COMPILE_SRCS.
3408
3409 2018-07-09  Tom Tromey  <tom@tromey.com>
3410
3411         * Makefile.in (init.c): Remove some unused sed rules.
3412
3413 2018-07-09  Tom Tromey  <tom@tromey.com>
3414
3415         * Makefile.in (TSOBS): Remove.
3416         (INIT_FILES): Update.
3417         (LIBGDB_OBS): Update.
3418         (COMMON_SFILES): Add inflow.c.
3419         (SFILES): Remove inflow.c.
3420
3421 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
3422
3423         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
3424
3425 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
3426
3427         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
3428         get_saveloc_name, is_signal_frame_name, step_name,
3429         init_remote_name, create_addr_space_name,
3430         destroy_addr_space_name, search_unwind_table_name,
3431         find_dyn_list_name): Constify.
3432
3433 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
3434
3435         * darwin-nat.c (darwin_pthread_kill): New function.
3436         (darwin_resume_thread): Use darwin_pthread_kill.
3437
3438 2018-07-05  Tom de Vries  <tdevries@suse.de>
3439
3440         * macroexp.c (macro_buffer) <operator=>: New member function.
3441
3442 2018-07-04  Tom Tromey  <tom@tromey.com>
3443
3444         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
3445
3446 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
3447
3448         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
3449         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
3450         * maint.c: Likewise.
3451         * top.c: Likewise.
3452
3453 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
3454
3455         * NEWS: Create a new section for the next release branch.
3456         Rename the section of the current branch, now that it has
3457         been cut.
3458
3459 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
3460
3461         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
3462         * version.in: Bump version to 8.2.50.DATE-git.
3463
3464 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
3465             Pedro Alves  <palves@redhat.com>
3466
3467         * linux-nat.c (linux_init_ptrace): Rename to ...
3468         (linux_init_ptrace_procfs): ... this.  Call
3469         linux_proc_init_warnings.
3470         (linux_nat_target::post_attach)
3471         (linux_nat_target::post_startup_inferior): Adjust.
3472         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
3473         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
3474
3475 2018-07-04  Tom de Vries  <tdevries@suse.de>
3476
3477         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
3478         check ...
3479         (read_comp_unit_head): ... here.
3480
3481 2018-07-03  Tom Tromey  <tom@tromey.com>
3482
3483         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
3484         (stop_tracing, tstatus_command)
3485         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
3486         (print_one_static_tracepoint_marker): Update.
3487         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
3488         std::vector.
3489         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
3490         VEC.
3491         (all_tracepoints, static_tracepoints_here): Return std::vector.
3492
3493 2018-07-03  Tom Tromey  <tom@tromey.com>
3494
3495         * common/ptid.c (ptid_equal): Remove.
3496         * common/ptid.h (ptid_equal): Don't declare.
3497         * ada-tasks.c: Update.
3498         * breakpoint.c: Update.
3499         * common/agent.c: Update.
3500         * corelow.c: Update.
3501         * darwin-nat-info.c: Update.
3502         * darwin-nat.c: Update.
3503         * dcache.c: Update.
3504         * dtrace-probe.c: Update.
3505         * dummy-frame.c: Update.
3506         * fbsd-nat.c: Update.
3507         * frame.c: Update.
3508         * gdbthread.h: Update.
3509         * gnu-nat.c: Update.
3510         * go32-nat.c: Update.
3511         * inf-loop.c: Update.
3512         * inf-ptrace.c: Update.
3513         * infcall.c: Update.
3514         * infcmd.c: Update.
3515         * inflow.c: Update.
3516         * infrun.c: Update.
3517         * linux-fork.c: Update.
3518         * linux-nat.c: Update.
3519         * linux-thread-db.c: Update.
3520         * mi/mi-cmd-var.c: Update.
3521         * mi/mi-interp.c: Update.
3522         * mi/mi-main.c: Update.
3523         * nto-procfs.c: Update.
3524         * ppc-linux-tdep.c: Update.
3525         * procfs.c: Update.
3526         * python/py-inferior.c: Update.
3527         * python/py-record-btrace.c: Update.
3528         * python/py-record.c: Update.
3529         * ravenscar-thread.c: Update.
3530         * regcache.c: Update.
3531         * remote-sim.c: Update.
3532         * remote.c: Update.
3533         * sol-thread.c: Update.
3534         * solib.c: Update.
3535         * target.c: Update.
3536         * tui/tui-stack.c: Update.
3537         * varobj.c: Update.
3538         * windows-nat.c: Update.
3539         * windows-tdep.c: Update.
3540
3541 2018-07-03  Tom Tromey  <tom@tromey.com>
3542
3543         * common/ptid.c (ptid_match): Remove.
3544         * common/ptid.h (ptid_match): Don't declare.
3545         * fbsd-nat.c: Update.
3546         * infcmd.c: Update.
3547         * infrun.c: Update.
3548         * linux-nat.c: Update.
3549         * record-btrace.c: Update.
3550         * regcache.c: Update.
3551         * remote.c: Update.
3552
3553 2018-07-03  Tom Tromey  <tom@tromey.com>
3554
3555         * common/ptid.c (ptid_tid_p): Remove.
3556         * common/ptid.h (ptid_tid_p): Don't declare.
3557         * sol-thread.c: Update.
3558
3559 2018-07-03  Tom Tromey  <tom@tromey.com>
3560
3561         * common/ptid.c (ptid_lwp_p): Remove.
3562         * common/ptid.h (ptid_lwp_p): Don't declare.
3563         * fbsd-nat.c: Update.
3564         * linux-nat.c: Update.
3565         * nat/linux-procfs.c: Update.
3566         * nat/x86-linux-dregs.c: Update.
3567         * sol-thread.c: Update.
3568
3569 2018-07-03  Tom Tromey  <tom@tromey.com>
3570
3571         * common/ptid.c (ptid_is_pid): Remove.
3572         * common/ptid.h (ptid_is_pid): Don't declare.
3573         * infrun.c: Update.
3574         * linux-nat.c: Update.
3575         * mi/mi-interp.c: Update.
3576         * remote.c: Update.
3577         * thread.c: Update.
3578
3579 2018-07-03  Tom Tromey  <tom@tromey.com>
3580
3581         * common/ptid.c (ptid_get_tid): Remove.
3582         * common/ptid.h (ptid_get_tid): Don't declare.
3583         * ada-tasks.c: Update.
3584         * aix-thread.c: Update.
3585         * bsd-uthread.c: Update.
3586         * darwin-nat.c: Update.
3587         * fbsd-nat.c: Update.
3588         * i386-darwin-nat.c: Update.
3589         * infrun.c: Update.
3590         * linux-tdep.c: Update.
3591         * nto-procfs.c: Update.
3592         * ppc-ravenscar-thread.c: Update.
3593         * python/py-infthread.c: Update.
3594         * ravenscar-thread.c: Update.
3595         * sol-thread.c: Update.
3596         * sparc-ravenscar-thread.c: Update.
3597         * windows-nat.c: Update.
3598
3599 2018-07-03  Tom Tromey  <tom@tromey.com>
3600
3601         * common/ptid.c (ptid_get_lwp): Remove.
3602         * common/ptid.h (ptid_get_lwp): Don't declare.
3603         * aarch64-linux-nat.c: Update.
3604         * ada-tasks.c: Update.
3605         * aix-thread.c: Update.
3606         * amd64-linux-nat.c: Update.
3607         * arm-linux-nat.c: Update.
3608         * corelow.c: Update.
3609         * fbsd-nat.c: Update.
3610         * fbsd-tdep.c: Update.
3611         * gnu-nat.c: Update.
3612         * i386-cygwin-tdep.c: Update.
3613         * i386-gnu-nat.c: Update.
3614         * i386-linux-nat.c: Update.
3615         * ia64-linux-nat.c: Update.
3616         * inf-ptrace.c: Update.
3617         * infrun.c: Update.
3618         * linux-fork.c: Update.
3619         * linux-nat.c: Update.
3620         * linux-tdep.c: Update.
3621         * linux-thread-db.c: Update.
3622         * mips-linux-nat.c: Update.
3623         * nat/aarch64-linux-hw-point.c: Update.
3624         * nat/aarch64-linux.c: Update.
3625         * nat/linux-btrace.c: Update.
3626         * nat/linux-osdata.c: Update.
3627         * nat/linux-procfs.c: Update.
3628         * nat/x86-linux-dregs.c: Update.
3629         * obsd-nat.c: Update.
3630         * ppc-fbsd-nat.c: Update.
3631         * ppc-linux-nat.c: Update.
3632         * procfs.c: Update.
3633         * python/py-infthread.c: Update.
3634         * ravenscar-thread.c: Update.
3635         * remote.c: Update.
3636         * s390-linux-nat.c: Update.
3637         * sol-thread.c: Update.
3638         * sol2-tdep.c: Update.
3639         * spu-linux-nat.c: Update.
3640         * x86-linux-nat.c: Update.
3641         * xtensa-linux-nat.c: Update.
3642
3643 2018-07-03  Tom Tromey  <tom@tromey.com>
3644
3645         * common/ptid.c (ptid_get_pid): Remove.
3646         * common/ptid.h (ptid_get_pid): Don't declare.
3647         * aarch64-linux-nat.c: Update.
3648         * ada-lang.c: Update.
3649         * aix-thread.c: Update.
3650         * alpha-bsd-nat.c: Update.
3651         * amd64-fbsd-nat.c: Update.
3652         * amd64-linux-nat.c: Update.
3653         * arm-linux-nat.c: Update.
3654         * arm-nbsd-nat.c: Update.
3655         * auxv.c: Update.
3656         * break-catch-syscall.c: Update.
3657         * breakpoint.c: Update.
3658         * bsd-uthread.c: Update.
3659         * corelow.c: Update.
3660         * ctf.c: Update.
3661         * darwin-nat.c: Update.
3662         * fbsd-nat.c: Update.
3663         * fbsd-tdep.c: Update.
3664         * gcore.c: Update.
3665         * gnu-nat.c: Update.
3666         * hppa-nbsd-nat.c: Update.
3667         * hppa-obsd-nat.c: Update.
3668         * i386-fbsd-nat.c: Update.
3669         * ia64-linux-nat.c: Update.
3670         * inf-ptrace.c: Update.
3671         * infcmd.c: Update.
3672         * inferior.c: Update.
3673         * inferior.h: Update.
3674         * inflow.c: Update.
3675         * infrun.c: Update.
3676         * linux-fork.c: Update.
3677         * linux-nat.c: Update.
3678         * linux-tdep.c: Update.
3679         * linux-thread-db.c: Update.
3680         * m68k-bsd-nat.c: Update.
3681         * mi/mi-interp.c: Update.
3682         * mi/mi-main.c: Update.
3683         * mips-linux-nat.c: Update.
3684         * mips-nbsd-nat.c: Update.
3685         * mips64-obsd-nat.c: Update.
3686         * nat/aarch64-linux-hw-point.c: Update.
3687         * nat/aarch64-linux.c: Update.
3688         * nat/linux-btrace.c: Update.
3689         * nat/linux-osdata.c: Update.
3690         * nat/linux-procfs.c: Update.
3691         * nat/x86-linux-dregs.c: Update.
3692         * nto-procfs.c: Update.
3693         * obsd-nat.c: Update.
3694         * ppc-linux-nat.c: Update.
3695         * ppc-nbsd-nat.c: Update.
3696         * ppc-obsd-nat.c: Update.
3697         * proc-service.c: Update.
3698         * procfs.c: Update.
3699         * python/py-inferior.c: Update.
3700         * python/py-infthread.c: Update.
3701         * ravenscar-thread.c: Update.
3702         * record.c: Update.
3703         * remote-sim.c: Update.
3704         * remote.c: Update.
3705         * rs6000-nat.c: Update.
3706         * s390-linux-nat.c: Update.
3707         * sh-nbsd-nat.c: Update.
3708         * sol-thread.c: Update.
3709         * sparc-nat.c: Update.
3710         * sparc64-tdep.c: Update.
3711         * spu-linux-nat.c: Update.
3712         * spu-tdep.c: Update.
3713         * target-debug.h: Update.
3714         * target.c: Update.
3715         * thread.c: Update.
3716         * tid-parse.c: Update.
3717         * tracefile-tfile.c: Update.
3718         * vax-bsd-nat.c: Update.
3719         * windows-nat.c: Update.
3720         * x86-linux-nat.c: Update.
3721         * x86-nat.c: Update.
3722
3723 2018-07-03  Tom Tromey  <tom@tromey.com>
3724
3725         * common/ptid.c (pid_to_ptid): Remove.
3726         * common/ptid.h (pid_to_ptid): Don't declare.
3727         * aix-thread.c: Update.
3728         * arm-linux-nat.c: Update.
3729         * common/ptid.c: Update.
3730         * common/ptid.h: Update.
3731         * corelow.c: Update.
3732         * ctf.c: Update.
3733         * darwin-nat.c: Update.
3734         * fbsd-nat.c: Update.
3735         * fork-child.c: Update.
3736         * gnu-nat.c: Update.
3737         * go32-nat.c: Update.
3738         * inf-ptrace.c: Update.
3739         * infcmd.c: Update.
3740         * inferior.c: Update.
3741         * infrun.c: Update.
3742         * linux-fork.c: Update.
3743         * linux-nat.c: Update.
3744         * nat/aarch64-linux-hw-point.c: Update.
3745         * nat/fork-inferior.c: Update.
3746         * nat/x86-linux-dregs.c: Update.
3747         * nto-procfs.c: Update.
3748         * obsd-nat.c: Update.
3749         * procfs.c: Update.
3750         * progspace.c: Update.
3751         * remote.c: Update.
3752         * rs6000-nat.c: Update.
3753         * s390-linux-nat.c: Update.
3754         * sol-thread.c: Update.
3755         * spu-linux-nat.c: Update.
3756         * target.c: Update.
3757         * top.c: Update.
3758         * tracefile-tfile.c: Update.
3759         * windows-nat.c: Update.
3760
3761 2018-07-03  Tom Tromey  <tom@tromey.com>
3762
3763         * common/ptid.h (ptid_build): Don't declare.
3764         * common/ptid.c (ptid_build): Remove.
3765         * aix-thread.c: Update.
3766         * bsd-kvm.c: Update.
3767         * bsd-uthread.c: Update.
3768         * common/agent.c: Update.
3769         * common/ptid.c: Update.
3770         * common/ptid.h: Update.
3771         * corelow.c: Update.
3772         * darwin-nat.c: Update.
3773         * fbsd-nat.c: Update.
3774         * gnu-nat.c: Update.
3775         * linux-fork.c: Update.
3776         * linux-nat.c: Update.
3777         * linux-thread-db.c: Update.
3778         * nat/linux-osdata.c: Update.
3779         * nat/linux-procfs.c: Update.
3780         * nto-procfs.c: Update.
3781         * obsd-nat.c: Update.
3782         * proc-service.c: Update.
3783         * procfs.c: Update.
3784         * ravenscar-thread.c: Update.
3785         * remote-sim.c: Update.
3786         * remote.c: Update.
3787         * sol-thread.c: Update.
3788         * target.c: Update.
3789         * windows-nat.c: Update.
3790
3791 2018-07-03  Tom Tromey  <tom@tromey.com>
3792
3793         * infrun.c (follow_exec): Use exit_inferior_silent.
3794         * inferior.c (exit_inferior_num_silent): Remove.
3795         * inferior.h (exit_inferior_num_silent): Don't declare.
3796
3797 2018-07-03  Tom Tromey  <tom@tromey.com>
3798
3799         PR cli/23340:
3800         * darwin-nat.c (darwin_attach_pid): Reset inferior and
3801         inferior_ptid on error.
3802
3803 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
3804             Simon Marchi  <simon.marchi@polymtl.ca>
3805
3806         PR tdep/8282
3807         * disasm.h (gdb_disassembler): Add
3808         `m_disassembler_options_holder'. member
3809         * disasm.c (get_all_disassembler_options): New function.
3810         (gdb_disassembler::gdb_disassembler): Use it.
3811         (gdb_buffered_insn_length_init_dis): Likewise.
3812         (gdb_buffered_insn_length): Adjust accordingly.
3813         (set_disassembler_options): Handle options with arguments.
3814         (show_disassembler_options_sfunc): Likewise.  Add a leading new
3815         line if showing options with descriptions.
3816         (disassembler_options_completer): Adapt to using the
3817         `disasm_options_and_args_t' structure.
3818         * mips-tdep.c (mips_disassembler_options): New variable.
3819         (mips_disassembler_options_o32): Likewise.
3820         (mips_disassembler_options_n32): Likewise.
3821         (mips_disassembler_options_n64): Likewise.
3822         (gdb_print_insn_mips): Don't set `disassembler_options'.
3823         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
3824         functions.
3825         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
3826         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
3827         `gdbarch_disassembler_options_implicit' and
3828         `gdbarch_valid_disassembler_options'.
3829         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
3830         `disasm_options_and_args_t' structure.
3831         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
3832         method.
3833         (valid_disassembler_options): Switch from `disasm_options_t' to
3834         the `disasm_options_and_args_t' structure.
3835         * NEWS: Document `set disassembler-options' support for the MIPS
3836         target.
3837         * gdbarch.h: Regenerate.
3838         * gdbarch.c: Regenerate.
3839
3840 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
3841
3842         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
3843
3844 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
3845
3846         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
3847         parameter in call to amd64_target_description.
3848         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
3849         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
3850         (amd64fbsd_init_abi): Likewise.
3851         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
3852         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
3853         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
3854         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
3855
3856 2018-06-29  Pedro Alves  <palves@redhat.com>
3857
3858         * gdb/amd64-tdep.h (amd64_create_target_description): Add
3859         "segments" parameter.
3860         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
3861         (_initialize_amd64_tdep): Update call to
3862         amd64_create_target_description.
3863         (amd64_target_description): Add "segments" parameter.  Adjust
3864         the implementation to use it.
3865         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
3866         call to amd64_create_target_description.
3867         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
3868         * gdb/arch/amd64.h (amd64_create_target_description): Add
3869         "segments" register.
3870         * gdb/arch/amd64.c (amd64_create_target_description): Add
3871         "segments" parameter.  Call create_feature_i386_64bit_segments
3872         only if SEGMENTS is true.
3873         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
3874         call to amd64_create_target_description.
3875
3876 2018-06-29  Pedro Alves  <palves@redhat.com>
3877
3878         * thread.c (thread_target_id_str): New, factored out from ...
3879         (print_thread_info_1): ... here.  Use it to compute the max
3880         "Target Id" column width.
3881
3882 2018-06-29  Pedro Alves  <palves@redhat.com>
3883
3884         * remote.c (remote_target::extra_thread_info): Delete
3885         'display_buf' and 'n' locals.  from the cache, regardless of
3886         packet mechanims is in use.  Use cache for qThreadExtra and qP
3887         methods too.
3888
3889 2018-06-29  Pedro Alves  <palves@redhat.com>
3890
3891         * blockframe.c (find_pc_sect_containing_function): New function.
3892         * breakpoint.c (print_breakpoint_location): Don't call
3893         find_pc_sect_function.
3894         * linespec.c (create_sals_line_offset): Record the location's
3895         symbol in the sal.
3896         * linespec.c (convert_address_location_to_sals): Fill in sal's
3897         symbol with find_pc_sect_containing_function.
3898         * symtab.c (find_function_start_sal): Rename to ...
3899         (find_function_start_sal_1): ... this.
3900         (find_function_start_sal): Reimplement as wrapper around
3901         find_function_start_sal_1, and use
3902         find_pc_sect_containing_function to fill in the sal's symbol.
3903         (find_function_start_sal(symbol*, bool)): Adjust.
3904         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
3905         comments.
3906         (find_pc_sect_containing_function): Declare.
3907
3908 2018-06-29  Pedro Alves  <palves@redhat.com>
3909
3910         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
3911         true if the the location has no symbol.
3912
3913 2018-06-28  Tom Tromey  <tom@tromey.com>
3914
3915         * NEWS: Mention --enable-codesign.
3916         * silent-rules.mk (ECHO_SIGN): New variable.
3917         * configure.ac: Add --enable-codesign.
3918         * configure: Rebuild.
3919         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
3920         (gdb$(EXEEXT)): Optionally invoke codesign.
3921
3922 2018-06-28  Pedro Alves  <palves@redhat.com>
3923
3924         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
3925         comments.
3926         (switch_to_thread_no_regs): Adjust comment.
3927         * infcmd.c (stop_pc): Delete.
3928         (post_create_inferior, info_program_command): Replace references
3929         to stop_pc with references to thread_info->suspend.stop_pc.
3930         * inferior.h (stop_pc): Delete declaration.
3931         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
3932         (handle_inferior_event_1, handle_signal_stop)
3933         (process_event_stop_test, keep_going_stepped_thread)
3934         (handle_step_into_function, handle_step_into_function_backward)
3935         (print_stop_location): Replace references to stop_pc with
3936         references to thread_info->suspend.stop_pc.
3937         (struct infcall_suspend_state) <stop_pc>: Delete field.
3938         (save_infcall_suspend_state, restore_infcall_suspend_state):
3939         Remove references to inf_stat->stop_pc.
3940         * linux-fork.c (fork_load_infrun_state): Likewise.
3941         * record-btrace.c (record_btrace_set_replay): Likewise.
3942         * record-full.c (record_full_goto_entry): Likewise.
3943         * remote.c (print_one_stopped_thread): Likewise.
3944         * target.c (target_resume): Extend comment.
3945         * thread.c (set_executing_thread): New.
3946         (set_executing): Use it.
3947         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
3948         Remove references to stop_pc.
3949
3950 2018-06-28  Pedro Alves  <palves@redhat.com>
3951
3952         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
3953         Moving fetching stop_pc until after ecs->event_thread is refreshed.
3954
3955 2018-06-28  Tom Tromey  <tom@tromey.com>
3956
3957         * coffread.c (coff_symfile_finish): Update.
3958         * xcoffread.c (xcoff_symfile_finish): Update.
3959         * elfread.c (elf_symfile_finish): Update.
3960         * symfile.h (dwarf2_free_objfile): Don't declare.
3961         * dwarf2read.c (_initialize_dwarf2_read): Use
3962         register_objfile_data_with_cleanup.
3963         (dwarf2_free_objfile): Now static.  Change signature.
3964
3965 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3966
3967         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
3968         option "-o" to add-symbol-file-load to add an offset to each
3969         section's load address.
3970         * symfile.c (set_objfile_default_section_offset): New function.
3971
3972 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3973
3974         * symfile.c (add_symbol_file_command): Make sure that sections
3975         with the same name are sorted in the same order.
3976
3977 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3978
3979         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
3980         require the second argument.  If omitted, load sections at the
3981         addresses specified in the file.
3982
3983 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3984
3985         * symfile.c (symbol_file_command, symbol_file_add_main_1)
3986         (_initialize_symfile): Add option "-o" to symbol-file to add an
3987         offset to each section of the symbol file.
3988
3989 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3990
3991         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
3992
3993 2018-06-27  Tom Tromey  <tom@tromey.com>
3994
3995         * stack.c (_initialize_stack): Update "func" help text.
3996
3997 2018-06-27  Tom Tromey  <tom@tromey.com>
3998
3999         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
4000         std::vector.
4001         (unwind_infopy_str, pyuw_create_unwind_info)
4002         (unwind_infopy_add_saved_register, pyuw_sniffer)
4003         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
4004         Update.
4005         (struct saved_reg): Add constructor.
4006         <value>: Now a gdbpy_ref<>.
4007
4008 2018-06-27  Tom Tromey  <tom@tromey.com>
4009
4010         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
4011
4012 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4013
4014         * gdb-gdb.py.in: Format using autopep8.
4015
4016 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4017
4018         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
4019         (type_lookup_function): Recognize CORE_ADDR values.
4020
4021 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4022
4023         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
4024         print tag_name.
4025
4026 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4027
4028         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
4029         <__lt__>: Add.
4030
4031 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4032
4033         * gdb-gdb.py: Move to...
4034         * gdb-gdb.py.in: ... here.
4035         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
4036         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
4037         dependencies.
4038         (distclean): Remove gdb-gdb.py when cleaning.
4039         (gdb-gdb.py, gdb-gdb.gdb): New rules.
4040         * configure: Re-generate.
4041
4042 2018-06-27  Pedro Alves  <palves@redhat.com>
4043
4044         * proc-service.c (get_ps_regcache): New.
4045         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
4046         (ps_lsetfpregs): Use it.
4047
4048 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
4049
4050         PR gdb/21695
4051         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
4052         (dwarf_decode_lines_1): Adjust.
4053
4054 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4055
4056         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
4057         override.
4058         <info_proc>: Likewise.
4059
4060 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
4061
4062         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
4063         to windows_fetch_one_register, and only handle the case of
4064         fetching one register.  Move the code that reloads the context
4065         and iterates over all registers if R is negative to...
4066         (windows_nat_target::fetch_registers): ... here.
4067         (do_windows_store_inferior_registers): Rename to
4068         windows_store_one_register, and only handle the case of storing
4069         one register.  Move the code that handles the case where r is
4070         negative to...
4071         (windows_nat_target::store_registers) ... here.
4072
4073 2018-06-26  Tom Tromey  <tom@tromey.com>
4074
4075         PR rust/22574:
4076         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
4077         * rust-lang.c (rust_print_struct_def): Add podata parameter.
4078         Update.
4079         (rust_internal_print_type): Add podata parameter.
4080         (rust_print_type): Update.
4081
4082 2018-06-26  Tom Tromey  <tom@tromey.com>
4083
4084         * typeprint.h (struct print_offset_data) <update, finish,
4085         maybe_print_hole>: New methods.
4086         <indentation>: New constant.
4087         * typeprint.c (print_offset_data::indentation): Define.
4088         (print_offset_data::maybe_print_hole, print_offset_data::update)
4089         (print_offset_data::finish): Move from c-typeprint.c and rename.
4090         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
4091         (print_spaces_filtered_with_print_options): Update.
4092         (c_print_type_union_field_offset, maybe_print_hole)
4093         (c_print_type_struct_field_offset): Move to typeprint.c and
4094         rename.
4095         (c_type_print_base_struct_union): Update.
4096
4097 2018-06-25  Pedro Alves  <palves@redhat.com>
4098
4099         * gdbthread.h (thread_info_ref, delete_thread)
4100         (delete_thread_silent, first_thread_of_inferior)
4101         (any_thread_of_inferior, switch_to_thread)
4102         (enable_thread_stack_temporaries)
4103         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
4104         (get_last_thread_stack_temporary)
4105         (value_in_thread_stack_temporaries, can_access_registers_thread):
4106         Spell out "struct thread_info" instead of just "thread_info".
4107         * inferior.h (notice_new_inferior): Likewise.
4108
4109 2018-06-25  Pedro Alves  <palves@redhat.com>
4110
4111         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
4112         pass thread_info pointer to delete_thread.
4113         (windows_nat_target::detach): Pass inferior pointer to
4114         detach_inferior.
4115         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
4116         delete_thread.
4117         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
4118         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
4119         and pass a thread_info pointer to delete_thread.
4120         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
4121         pass thread_info pointer to delete_thread.
4122         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
4123         delete_thread_silent call.
4124         * procfs.c (procfs_target::detach): Pass inferior pointer to
4125         detach_inferior.
4126         (procfs_target::wait): Pass thread_info pointer to delete_thread.
4127         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
4128         delete_thread_silent call.
4129         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
4130         pass thread_info pointer to delete_thread.
4131         (windows_nat_target::detach): Pass inferior pointer to
4132         delete_inferior.
4133
4134 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
4135
4136         * regcache.c (readable_regcache::read_part): Fix asserts.
4137         (reg_buffer::raw_collect_part): New function.
4138         (regcache::write_part): Fix asserts.
4139         (reg_buffer::raw_supply_part): New function.
4140         (regcache::transfer_regset_register): New helper function.
4141         (regcache::transfer_regset): Call new functions.
4142         (regcache_supply_regset): Use gdb_byte*.
4143         (regcache::supply_regset): Likewise.
4144         (regcache_collect_regset): Likewise.
4145         (regcache::collect_regset): Likewise.
4146         * regcache.h (reg_buffer::raw_collect_part): New declaration.
4147         (reg_buffer::raw_supply_part): Likewise.
4148         (regcache::transfer_regset_register): Likewise.
4149         (regcache::transfer_regset): Use gdb_byte*.
4150
4151 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
4152
4153         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
4154
4155 2018-06-21  Pedro Alves  <palves@redhat.com>
4156
4157         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
4158         instead of a ptid_t.  All callers adjusted.
4159         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
4160         adjusted.
4161         (print_ada_task_info, display_current_task_id, task_command_1):
4162         Adjust.
4163         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
4164         inferior_thread.
4165         (breakpoint_kind): Adjust.
4166         (remove_breakpoints_pid): Rename to ...
4167         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
4168         pointer.  All callers adjusted.
4169         (bpstat_clear_actions): Use inferior_thread.
4170         (get_bpstat_thread): New.
4171         (bpstat_do_actions): Use it.
4172         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
4173         to take a thread_info pointer.  All callers adjusted.
4174         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
4175         (breakpoint_re_set_thread): Use inferior_thread.
4176         * breakpoint.h (struct inferior): Forward declare.
4177         (bpstat_stop_status): Update.
4178         (remove_breakpoints_pid): Delete.
4179         (remove_breakpoints_inf): New.
4180         * bsd-uthread.c (bsd_uthread_target::wait)
4181         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
4182         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
4183         (maint_btrace_packet_history_cmd)
4184         (maint_btrace_clear_packet_history_cmd): Adjust.
4185         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
4186         inferior_thread.
4187         * cli/cli-interp.c: Include "inferior.h".
4188         * common/refcounted-object.h (struct
4189         refcounted_object_ref_policy): New.
4190         * compile/compile-object-load.c: Include gdbthread.h.
4191         (store_regs): Use inferior_thread.
4192         * corelow.c (core_target::close): Use current_inferior.
4193         (core_target_open): Adjust to use first_thread_of_inferior and use
4194         the current inferior.
4195         * ctf.c (ctf_target::close): Adjust to use current_inferior.
4196         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
4197         <thread>: ... this new field.  All references adjusted.
4198         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
4199         Take a thread_info pointer instead of a ptid_t.
4200         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
4201         (dummy_frame_discard, register_dummy_frame_dtor): Take a
4202         thread_info pointer instead of a ptid_t.
4203         * elfread.c: Include "inferior.h".
4204         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
4205         Use inferior_thread.
4206         * eval.c (evaluate_subexp): Likewise.
4207         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
4208         inferior_thread.
4209         * gdb_proc_service.h (struct thread_info): Forward declare.
4210         (struct ps_prochandle) <ptid>: Delete, replaced by ...
4211         <thread>: ... this new field.  All references adjusted.
4212         * gdbarch.h, gdbarch.c: Regenerate.
4213         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
4214         'thread' parameter.  All implementations and callers adjusted.
4215         * gdbthread.h (thread_info) <set_running>: New method.
4216         (delete_thread, delete_thread_silent): Take a thread_info pointer
4217         instead of a ptid.
4218         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
4219         (first_thread_of_process): Delete, replaced by ...
4220         (first_thread_of_inferior): ... this new function.  All callers
4221         adjusted.
4222         (any_live_thread_of_process): Delete, replaced by ...
4223         (any_live_thread_of_inferior): ... this new function.  All callers
4224         adjusted.
4225         (switch_to_thread, switch_to_no_thread): Declare.
4226         (is_executing): Delete.
4227         (enable_thread_stack_temporaries): Update comment.
4228         <enable_thread_stack_temporaries>: Take a thread_info pointer
4229         instead of a ptid_t.  Incref the thread.
4230         <~enable_thread_stack_temporaries>: Decref the thread.
4231         <m_ptid>: Delete
4232         <m_thr>: New.
4233         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
4234         (get_last_thread_stack_temporary)
4235         (value_in_thread_stack_temporaries, can_access_registers_thread):
4236         Take a thread_info pointer instead of a ptid_t.  All callers
4237         adjusted.
4238         * infcall.c (get_call_return_value): Use inferior_thread.
4239         (run_inferior_call): Work with thread pointers instead of ptid_t.
4240         (call_function_by_hand_dummy): Work with thread pointers instead
4241         of ptid_t.  Use thread_info_ref.
4242         * infcmd.c (proceed_thread_callback): Access thread's state
4243         directly.
4244         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
4245         access thread's state directly.
4246         (continue_command): Use inferior_thread.
4247         (info_program_command): Use find_thread_ptid and access thread
4248         state directly.
4249         (proceed_after_attach_callback): Use thread state directly.
4250         (notice_new_inferior): Take a thread_info pointer instead of a
4251         ptid_t.  All callers adjusted.
4252         (exit_inferior): Take an inferior pointer instead of a pid.  All
4253         callers adjusted.
4254         (exit_inferior_silent): New.
4255         (detach_inferior): Delete.
4256         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
4257         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
4258         (detach_inferior_command, kill_inferior_command): Use
4259         find_inferior_id instead of valid_gdb_inferior_id and
4260         gdb_inferior_id_to_pid.
4261         (inferior_command): Use inferior and thread pointers.
4262         * inferior.h (struct thread_info): Forward declare.
4263         (notice_new_inferior): Take a thread_info pointer instead of a
4264         ptid_t.  All callers adjusted.
4265         (detach_inferior): Delete declaration.
4266         (exit_inferior, exit_inferior_silent): Take an inferior pointer
4267         instead of a pid.  All callers adjusted.
4268         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
4269         (valid_gdb_inferior_id): Delete.
4270         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
4271         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
4272         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
4273         ...
4274         <inf>: ... this new field.
4275         <step_ptid>: Delete, replaced by ...
4276         <step_thread>: ... this new field.
4277         (get_displaced_stepping_state): Take an inferior pointer instead
4278         of a pid.  All callers adjusted.
4279         (displaced_step_in_progress_any_inferior): Adjust.
4280         (displaced_step_in_progress_thread): Take a thread pointer instead
4281         of a ptid_t.  All callers adjusted.
4282         (displaced_step_in_progress, add_displaced_stepping_state): Take
4283         an inferior pointer instead of a pid.  All callers adjusted.
4284         (get_displaced_step_closure_by_addr): Adjust.
4285         (remove_displaced_stepping_state): Take an inferior pointer
4286         instead of a pid.  All callers adjusted.
4287         (displaced_step_prepare_throw, displaced_step_prepare)
4288         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
4289         All callers adjusted.
4290         (start_step_over): Adjust.
4291         (infrun_thread_ptid_changed): Remove bit updating ptids in the
4292         displaced step queue.
4293         (do_target_resume): Adjust.
4294         (fetch_inferior_event): Use inferior_thread.
4295         (context_switch, get_inferior_stop_soon): Take an
4296         execution_control_state pointer instead of a ptid_t.  All callers
4297         adjusted.
4298         (switch_to_thread_cleanup): Delete.
4299         (stop_all_threads): Use scoped_restore_current_thread.
4300         * inline-frame.c: Include "gdbthread.h".
4301         (inline_state) <inline_state>: Take a thread pointer instead of a
4302         ptid_t.  All callers adjusted.
4303         <ptid>: Delete, replaced by ...
4304         <thread>: ... this new field.
4305         (find_inline_frame_state): Take a thread pointer instead of a
4306         ptid_t.  All callers adjusted.
4307         (skip_inline_frames, step_into_inline_frame)
4308         (inline_skipped_frames, inline_skipped_symbol): Take a thread
4309         pointer instead of a ptid_t.  All callers adjusted.
4310         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
4311         (inline_skipped_frames, inline_skipped_symbol): Likewise.
4312         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
4313         pointers directly.
4314         * linux-nat.c (get_detach_signal): Likewise.
4315         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
4316         (thread_db_notice_clone): Adjust.
4317         (thread_db_find_new_threads_silently)
4318         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
4319         a thread pointer instead of a ptid_t.  All callers adjusted.
4320         * mi/mi-cmd-var.c: Include "inferior.h".
4321         (mi_cmd_var_update_iter): Update to use thread pointers.
4322         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
4323         inferior directly.
4324         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
4325         out to ...
4326         (mi_output_running): ... this new function.
4327         (mi_on_resume_1): Adjust to use it.
4328         (mi_user_selected_context_changed): Adjust to use inferior_thread.
4329         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
4330         directly.
4331         (interrupt_thread_callback): : Adjust to use thread and inferior
4332         pointers.
4333         * proc-service.c: Include "gdbthread.h".
4334         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
4335         * progspace-and-thread.c: Include "inferior.h".
4336         * progspace.c: Include "inferior.h".
4337         * python/py-exitedevent.c (create_exited_event_object): Adjust to
4338         hold a reference to an inferior_object.
4339         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
4340         inferior_thread.
4341         * python/py-inferior.c (struct inferior_object): Give the type a
4342         tag name instead of a typedef.
4343         (python_on_normal_stop): No need to check if the current thread is
4344         listed.
4345         (inferior_to_inferior_object): Change return type to
4346         inferior_object.  All callers adjusted.
4347         (find_thread_object): Delete, bits factored out to ...
4348         (thread_to_thread_object): ... this new function.
4349         * python/py-infthread.c (create_thread_object): Use
4350         inferior_to_inferior_object.
4351         (thpy_is_stopped): Use thread pointer directly.
4352         (gdbpy_selected_thread): Use inferior_thread.
4353         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
4354         field, replaced with ...
4355         <thread>: ... this new field.  All users adjusted.
4356         (btpy_insn_or_gap_new): Drop const.
4357         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
4358         callers adjusted.
4359         * python/py-record.c: Include "gdbthread.h".
4360         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
4361         a ptid_t.  All callers adjusted.
4362         (gdbpy_current_recording): Use inferior_thread.
4363         * python/py-record.h (recpy_record_object) <ptid>: Delete
4364         field, replaced with ...
4365         <thread>: ... this new field.  All users adjusted.
4366         (recpy_element_object) <ptid>: Delete
4367         field, replaced with ...
4368         <thread>: ... this new field.  All users adjusted.
4369         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
4370         a ptid_t.  All callers adjusted.
4371         * python/py-threadevent.c: Include "gdbthread.h".
4372         (get_event_thread): Use thread_to_thread_object.
4373         * python/python-internal.h (struct inferior_object): Forward
4374         declare.
4375         (find_thread_object, find_inferior_object): Delete declarations.
4376         (thread_to_thread_object, inferior_to_inferior_object): New
4377         declarations.
4378         * record-btrace.c: Include "inferior.h".
4379         (require_btrace_thread): Use inferior_thread.
4380         (record_btrace_frame_sniffer)
4381         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
4382         (get_thread_current_frame): Use scoped_restore_current_thread and
4383         switch_to_thread.
4384         (get_thread_current_frame): Use thread pointer directly.
4385         (record_btrace_replay_at_breakpoint): Use thread's inferior
4386         pointer directly.
4387         * record-full.c: Include "inferior.h".
4388         * regcache.c: Include "gdbthread.h".
4389         (get_thread_arch_regcache): Use the inferior's address space
4390         directly.
4391         (get_thread_regcache, registers_changed_thread): New.
4392         * regcache.h (get_thread_regcache(thread_info *thread)): New
4393         overload.
4394         (registers_changed_thread): New.
4395         (remote_target) <remote_detach_1>: Swap order of parameters.
4396         (remote_add_thread): <remote_add_thread>: Return the new thread.
4397         (get_remote_thread_info(ptid_t)): New overload.
4398         (remote_target::remote_notice_new_inferior): Use thread pointers
4399         directly.
4400         (remote_target::process_initial_stop_replies): Use
4401         thread_info::set_running.
4402         (remote_target::remote_detach_1, remote_target::detach)
4403         (extended_remote_target::detach): Adjust.
4404         * stack.c (frame_show_address): Use inferior_thread.
4405         * target-debug.h (target_debug_print_thread_info_pp): New.
4406         * target-delegates.c: Regenerate.
4407         * target.c (default_thread_address_space): Delete.
4408         (memory_xfer_partial_1): Use current_inferior.
4409         (target_detach): Use current_inferior.
4410         (target_thread_address_space): Delete.
4411         (generic_mourn_inferior): Use current_inferior.
4412         * target.h (struct target_ops) <thread_address_space>: Delete.
4413         (target_thread_address_space): Delete.
4414         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
4415         pointers directly.
4416         (delete_thread_1, delete_thread, delete_thread_silent): Take a
4417         thread pointer instead of a ptid_t.  Adjust all callers.
4418         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
4419         (first_thread_of_process): Delete, replaced by ...
4420         (first_thread_of_inferior): ... this new function.  All callers
4421         adjusted.
4422         (any_thread_of_process): Rename to ...
4423         (any_thread_of_inferior): ... this, and take an inferior pointer.
4424         (any_live_thread_of_process): Rename to ...
4425         (any_live_thread_of_inferior): ... this, and take an inferior
4426         pointer.
4427         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
4428         (value_in_thread_stack_temporaries)
4429         (get_last_thread_stack_temporary): Take a thread pointer instead
4430         of a ptid_t.  Adjust all callers.
4431         (thread_info::set_running): New.
4432         (validate_registers_access): Use inferior_thread.
4433         (can_access_registers_ptid): Rename to ...
4434         (can_access_registers_thread): ... this, and take a thread
4435         pointer.
4436         (print_thread_info_1): Adjust to compare thread pointers instead
4437         of ptids.
4438         (switch_to_no_thread, switch_to_thread): Make extern.
4439         (scoped_restore_current_thread::~scoped_restore_current_thread):
4440         Use m_thread pointer directly.
4441         (scoped_restore_current_thread::scoped_restore_current_thread):
4442         Use inferior_thread.
4443         (thread_command): Use thread pointer directly.
4444         (thread_num_make_value_helper): Use inferior_thread.
4445         * top.c (execute_command): Use inferior_thread.
4446         * tui/tui-interp.c: Include "inferior.h".
4447         * varobj.c (varobj_create): Use inferior_thread.
4448         (value_of_root_1): Use find_thread_global_id instead of
4449         global_thread_id_to_ptid.
4450
4451 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
4452
4453         * regcache.c (readable_regcache::read_part): Avoid memcpy when
4454         possible.
4455         (regcache::write_part): Likewise.
4456         (readable_regcache::cooked_read_part): Update comment.
4457         (readable_regcache::cooked_write_part): Likewise.
4458         * regcache.h: (readable_regcache::read_part): Likewise.
4459         (regcache::write_part): Likewise.
4460
4461 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
4462             Dirk Schubert  <dirk.schubert@arm.com>
4463
4464         * aarch64-linux-nat.c (post_attach): New.
4465         (aarch64_linux_nat_target::post_attach): Override post_attach to
4466         record the number of hardware debug registers.
4467
4468 2018-06-20  Tom Tromey  <tom@tromey.com>
4469
4470         * python/py-param.c (add_setshow_generic): Make parameters const.
4471         (parmpy_init): Update.
4472
4473 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
4474
4475         * regcache.h (regcache_cooked_read_ftype): Rename to...
4476         (register_read_ftype): ...this, change type to function_view.
4477         (class reg_buffer) <save>: Remove src parameter.
4478         (readonly_detached_regcache) <readonly_detached_regcache>: Make
4479         parameter non-const in first overload.  Remove src parameter in
4480         second overload.
4481         * regcache.c (do_cooked_read): Remove.
4482         (readonly_detached_regcache::readonly_detached_regcache): Make
4483         parameter non-const, adjust call to other constructor.
4484         (reg_buffer::save): Remove src parameter.
4485         * frame.c (do_frame_register_read): Remove.
4486         (frame_save_as_regcache): Use lambda function.
4487         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
4488         parameter to ppu2spu_data *.
4489         (ppu2spu_sniffer): Use lambda function.
4490
4491 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
4492
4493         * record-full.c (record_full_target::insert_breakpoint): Remove
4494         "struct" keyword, add const.
4495
4496 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
4497
4498         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
4499         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
4500         * configure.ac: Remove AC_PREREQ, add missing quoting.
4501         * gnulib/configure.ac: Modernize usage of
4502         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
4503         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
4504         (AUTOMAKE_VERSION): Bump to 1.15.1.
4505         * configure: Re-generate.
4506         * config.in: Re-generate.
4507         * aclocal.m4: Re-generate.
4508         * gnulib/aclocal.m4: Re-generate.
4509         * gnulib/config.in: Re-generate.
4510         * gnulib/configure: Re-generate.
4511         * gnulib/import/Makefile.in: Re-generate.
4512
4513 2018-06-19  Pedro Alves  <palves@redhat.com>
4514
4515         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
4516         (lookup_minimal_symbol_by_pc_section): ... here with
4517         gdb_assert_not_reached added.
4518
4519 2018-06-19  Pedro Alves  <palves@redhat.com>
4520
4521         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
4522         parameter with a block parameter.  Compare location's block symbol
4523         with the frame's block instead of addresses.
4524         (skip_inline_frames): Pass the current block instead of the
4525         frame's address.  Break out as soon as we determine the frame
4526         should not be skipped.
4527
4528 2018-06-18  Tom Tromey  <tom@tromey.com>
4529
4530         * solib-aix.c (solib_aix_get_section_offsets): Return
4531         unique_xmalloc_ptr.
4532         (solib_aix_solib_create_inferior_hook): Update.
4533
4534 2018-06-18  Tom Tromey  <tom@tromey.com>
4535
4536         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
4537
4538 2018-06-18  Tom Tromey  <tom@tromey.com>
4539
4540         * solib-frv.c (frv_relocate_main_executable): Use
4541         unique_xmalloc_ptr.
4542         * solib-dsbt.c (dsbt_relocate_main_executable): Use
4543         unique_xmalloc_ptr.
4544
4545 2018-06-18  Tom Tromey  <tom@tromey.com>
4546
4547         * objfiles.h (inhibit_section_map_updates): Update.
4548         (resume_section_map_updates, resume_section_map_updates_cleanup):
4549         Remove.
4550         * solib-svr4.c (svr4_handle_solib_event): Update.
4551         * objfiles.c (inhibit_section_map_updates): Return
4552         scoped_restore_tmpl<int>.
4553         (resume_section_map_updates, resume_section_map_updates_cleanup):
4554         Remove.
4555
4556 2018-06-18  Tom Tromey  <tom@tromey.com>
4557
4558         * valprint.h (read_string): Update.
4559         * valprint.c (read_string): Change type of "buffer".
4560         (val_print_string): Update.
4561         * python/py-value.c (valpy_string): Update.
4562         * language.h (struct language_defn) <la_get_string>: Change
4563         type of "buffer".
4564         (default_get_string, c_get_string): Update.
4565         * language.c (default_get_string): Change type of "buffer".
4566         * guile/scm-value.c (gdbscm_value_to_string): Update.
4567         * c-lang.c (c_get_string): Change type of "buffer".
4568
4569 2018-06-18  Tom Tromey  <tom@tromey.com>
4570
4571         * ser-mingw.c (struct pipe_state_destroyer): New.
4572         (pipe_state_up): New typedef.
4573         (cleanup_pipe_state): Remove.
4574         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
4575
4576 2018-06-18  Tom Tromey  <tom@tromey.com>
4577
4578         * rust-lang.h (rust_yyerror): Don't declare.
4579         * rust-lang.c (rust_language_defn): Update.
4580         * rust-exp.y (yyerror): Now static.
4581         * parse.c (parse_exp_in_context_1): Update.
4582         * p-lang.h (p_yyerror): Don't declare.
4583         * p-lang.c (p_language_defn): Update.
4584         * p-exp.y (yyerror): Now static.
4585         * opencl-lang.c (opencl_language_defn): Update.
4586         * objc-lang.c (objc_language_defn): Update.
4587         * m2-lang.h (m2_yyerror): Don't declare.
4588         * m2-lang.c (m2_language_defn): Update.
4589         * m2-exp.y (yyerror): Now static.
4590         * language.h (struct language_defn) <la_error>: Remove.
4591         * language.c (unk_lang_error): Remove.
4592         (unknown_language_defn, auto_language_defn): Remove.
4593         * go-lang.h (go_yyerror): Don't declare.
4594         * go-lang.c (go_language_defn): Update.
4595         * go-exp.y (yyerror): Now static.
4596         * f-lang.h (f_yyerror): Don't declare.
4597         * f-lang.c (f_language_defn): Update.
4598         * f-exp.y (yyerror): Now static.
4599         * d-lang.h (d_yyerror): Don't declare.
4600         * d-lang.c (d_language_defn): Update.
4601         * d-exp.y (yyerror): Now static.
4602         * c-lang.h (c_yyerror): Don't declare.
4603         * c-lang.c (c_language_defn, cplus_language_defn)
4604         (asm_language_defn, minimal_language_defn): Update.
4605         * c-exp.y (yyerror): Now static.
4606         * ada-lang.h (ada_yyerror): Don't declare.
4607         * ada-lang.c (ada_language_defn): Update.
4608         * ada-exp.y (yyerror): Now static.
4609
4610 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
4611
4612         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
4613         (store_sveregs_to_thread): Likewise.
4614         (aarch64_linux_fetch_inferior_registers): Check for SVE.
4615         (aarch64_linux_store_inferior_registers): Likewise.
4616         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
4617         function.
4618         (aarch64_sve_regs_copy_to_regcache): Likewise.
4619         (aarch64_sve_regs_copy_from_regcache): Likewise.
4620         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
4621         declaration.
4622         (aarch64_sve_regs_copy_to_regcache): Likewise.
4623         (aarch64_sve_regs_copy_from_regcache): Likewise.
4624         (sve_context): Structure from Linux headers.
4625         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
4626         (SVE_SIG_ZREG_SIZE): Likewise.
4627         (SVE_SIG_PREG_SIZE): Likewise.
4628         (SVE_SIG_FFR_SIZE): Likewise.
4629         (SVE_SIG_REGS_OFFSET): Likewise.
4630         (SVE_SIG_ZREGS_OFFSET): Likewise.
4631         (SVE_SIG_ZREG_OFFSET): Likewise.
4632         (SVE_SIG_ZREGS_SIZE): Likewise.
4633         (SVE_SIG_PREGS_OFFSET): Likewise.
4634         (SVE_SIG_PREG_OFFSET): Likewise.
4635         (SVE_SIG_PREGS_SIZE): Likewise.
4636         (SVE_SIG_FFR_OFFSET): Likewise.
4637         (SVE_SIG_REGS_SIZE): Likewise.
4638         (SVE_SIG_CONTEXT_SIZE): Likewise.
4639         (SVE_PT_REGS_MASK): Likewise.
4640         (SVE_PT_REGS_FPSIMD): Likewise.
4641         (SVE_PT_REGS_SVE): Likewise.
4642         (SVE_PT_VL_INHERIT): Likewise.
4643         (SVE_PT_VL_ONEXEC): Likewise.
4644         (SVE_PT_REGS_OFFSET): Likewise.
4645         (SVE_PT_FPSIMD_OFFSET): Likewise.
4646         (SVE_PT_FPSIMD_SIZE): Likewise.
4647         (SVE_PT_SVE_ZREG_SIZE): Likewise.
4648         (SVE_PT_SVE_PREG_SIZE): Likewise.
4649         (SVE_PT_SVE_FFR_SIZE): Likewise.
4650         (SVE_PT_SVE_FPSR_SIZE): Likewise.
4651         (SVE_PT_SVE_FPCR_SIZE): Likewise.
4652         (__SVE_SIG_TO_PT): Likewise.
4653         (SVE_PT_SVE_OFFSET): Likewise.
4654         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
4655         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
4656         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
4657         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
4658         (SVE_PT_SVE_PREG_OFFSET): Likewise.
4659         (SVE_PT_SVE_PREGS_SIZE): Likewise.
4660         (SVE_PT_SVE_FFR_OFFSET): Likewise.
4661         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
4662         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
4663         (SVE_PT_SVE_SIZE): Likewise.
4664         (SVE_PT_SIZE): Likewise.
4665         (HAS_SVE_STATE): New define.
4666
4667 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
4668
4669         * nat/aarch64-sve-linux-sigcontext.h: New file.
4670         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
4671         new files.
4672         (SVE_VQ_MIN): Likewise.
4673         (SVE_VQ_MAX): Likewise.
4674         (SVE_VL_MIN): Likewise.
4675         (SVE_VL_MAX): Likewise.
4676         (SVE_NUM_ZREGS): Likewise.
4677         (SVE_NUM_PREGS): Likewise.
4678         (sve_vl_valid): Likewise.
4679         (struct user_sve_header): Likewise.
4680
4681 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
4682             Richard Bunt <Richard.Bunt@arm.com>
4683
4684         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
4685         was requested by GDB.
4686
4687 2018-06-15  Tom de Vries  <tdevries@suse.de>
4688
4689         * MAINTAINERS (Write After Approval): Add Tom de Vries.
4690
4691 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
4692
4693         * gnulib/update-gnulib.sh: Print expected versions of
4694         autoconf/aclocal.
4695
4696 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
4697
4698         * arch-utils.c (default_type_align): Use type_length_units.
4699         * gdbtypes.c (type_align): Use type_length_units.
4700
4701 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4702
4703         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
4704         of 'define' command.
4705
4706 2018-06-14  Tom de Vries  <tdevries@suse.de>
4707
4708         PR cli/22573
4709         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
4710         get_no_prettyformat_print_options.
4711
4712 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
4713
4714         * sparc-nat.h: Include target.h.
4715         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
4716         <fetch_registers>: Remove this argument in function call.
4717         <store_registers>: Remove this argument in function call, remove
4718         extra semicolon.
4719         <low_forget_process>: Call sparc64_forget_process instead of
4720         sparc_forget_process.
4721
4722 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4723
4724         * procfs.c (_initialize_procfs): Use add_inf_child_target.
4725         (procfs_target::make_corefile_notes): Adjust to new
4726         target_read_alloc return type.
4727
4728 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4729             Stephen Roberts  <stephen.roberts@arm.com>
4730
4731         PR gdb/22882
4732         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
4733         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
4734         Move should_notify_stop local into more inner scope.
4735
4736 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4737             Stephen Roberts  <stephen.roberts@arm.com>
4738
4739         PR gdb/22882
4740         * infrun.c (resume_1): Add call to mark_async_event_handler.
4741
4742 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4743
4744         * infrun.c (do_target_wait): Change old version of $pc printed.
4745
4746 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
4747
4748         * dwarf2read.c (read_index_from_section): Rename to...
4749         (read_gdb_index_from_section): ... this, update all callers.
4750         (dwarf2_read_index): Rename to...
4751         (dwarf2_read_gdb_index): ... this, update all callers.
4752
4753 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
4754
4755         * gdb/hppa-linux-nat.c
4756         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
4757         hppa_linux_nat_target::fetch_registers.
4758
4759 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4760
4761         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
4762         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
4763         (AARCH64_DWARF_SVE_FFR): Likewise.
4764         (AARCH64_DWARF_SVE_P0): Likewise.
4765         (AARCH64_DWARF_SVE_Z0): Likewise.
4766
4767 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4768
4769         * common/common-regcache.h (raw_compare): New function.
4770         * regcache.c (regcache::raw_compare): Likewise.
4771         * regcache.h (regcache::raw_compare): New declaration.
4772
4773 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4774
4775         * common/common-regcache.h (reg_buffer_common): New structure.
4776         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
4777         (reg_buffer::raw_supply): Likewise.
4778         (reg_buffer::raw_supply_integer): Likewise.
4779         (reg_buffer::raw_supply_zeroed): Likewise.
4780         (reg_buffer::raw_collect): Likewise.
4781         (reg_buffer::raw_collect_integer): Likewise.
4782         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
4783         (reg_buffer::raw_supply): Likewise.
4784         (reg_buffer::raw_supply_integer): Likewise.
4785         (reg_buffer::raw_supply_zeroed): Likewise.
4786         (reg_buffer::raw_collect): Likewise.
4787         (reg_buffer::raw_collect_integer): Likewise.
4788
4789 2018-06-10  Tom Tromey  <tom@tromey.com>
4790
4791         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
4792         (class remote_state) <stop_reply_queue>: Now std::vector.
4793         (remote_state::~remote_state)
4794         (remote_target::stop_reply_queue_length): Update.
4795         (struct queue_iter_param, remove_child_of_pending_fork)
4796         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
4797         (check_pending_event_prevents_wildcard_vcont_callback)
4798         (remove_stop_reply_for_inferior)
4799         (remove_stop_reply_of_remote_state)
4800         (remote_notif_remove_once_on_match)
4801         (stop_reply_match_ptid_and_ws)
4802         (remote_kill_child_of_pending_fork): Remove.
4803         (remote_target::remove_new_fork_children)
4804         (remote_target::check_pending_events_prevent_wildcard_vcont)
4805         (remote_target::discard_pending_stop_replies)
4806         (remote_target::discard_pending_stop_replies_in_queue)
4807         (remote_target::remote_notif_remove_queued_reply)
4808         (remote_target::queued_stop_reply)
4809         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
4810         (remote_target::wait, remote_target::kill_new_fork_children)
4811         (remote_target::async): Update.
4812
4813 2018-06-10  Tom Tromey  <tom@tromey.com>
4814
4815         * record-full.c (record_full_arch_list_cleanups): Remove.
4816         (record_full_message): Use try/catch.
4817         (record_full_wait_cleanups): Remove.
4818         (record_full_wait_1): Use try/catch.
4819         (record_full_restore): Likewise.
4820
4821 2018-06-10  Tom Tromey  <tom@tromey.com>
4822
4823         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
4824         declare VEC.  Add constructor.
4825         <in_target_beneath>: Now bool.
4826         (record_full_breakpoints): Now a std::vector, static.
4827         (record_full_sync_record_breakpoints)
4828         (record_full_init_record_breakpoints)
4829         (record_full_target::insert_breakpoint)
4830         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
4831
4832 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
4833
4834         * dwarf2read.c (process_cu_includes): Remove struct keyword.
4835         * serial.c (serial_interface_lookup): Remove struct keyword.
4836
4837 2018-06-10  Tom Tromey  <tom@tromey.com>
4838
4839         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
4840         method.
4841         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
4842         a method.
4843         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
4844         method.
4845         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
4846         "beneath" as a method.
4847         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
4848         Use "beneath" as a method.
4849
4850 2018-06-10  Tom Tromey  <tom@tromey.com>
4851
4852         * tracefile.c (struct trace_file_writer_deleter): New.
4853         <operator()>: Rename from trace_file_writer_xfree.
4854         (trace_file_writer_up): New typedef.
4855         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
4856
4857 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
4858
4859         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
4860         <m_registers, m_register_status>: Change type to
4861         std::unique_ptr.
4862         * regcache.c (reg_buffer::reg_buffer): Use new instead of
4863         XCNEWVEC.
4864
4865 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
4866
4867         * common/common-regcache.h (enum register_status): Add
4868         underlying type "signed char".
4869         * regcache.h (reg_buffer) <m_register_status>: Change type to
4870         register_status *.
4871         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
4872         register_status instead of signed char.
4873         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
4874         (reg_buffer::get_register_status): Remove cast.
4875         (readable_regcache::raw_read): Remove cast.
4876         (readable_regcache::cooked_read): Remove cast.
4877
4878 2018-06-09  Tom Tromey  <tom@tromey.com>
4879
4880         * source.c (reverse_search_command, forward_search_command): Use
4881         scoped_fd.
4882
4883 2018-06-09  Tom Tromey  <tom@tromey.com>
4884
4885         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
4886         (serial_ops_list): Now static, std::vector.
4887         (serial_interface_lookup, serial_add_interface): Update.
4888
4889 2018-06-09  Tom Tromey  <tom@tromey.com>
4890
4891         * dwarf2read.c (process_cu_includes): Update.
4892         (process_full_comp_unit): Update.
4893         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
4894         std::vector.
4895
4896 2018-06-08  Paul Koning  <paul_koning@dell.com>
4897
4898         PR gdb/23252
4899
4900         * python/python.c (do_start_initialization):
4901         Avoid call to internal Python API.
4902         (init__gdb_module): New function.
4903
4904 2018-06-08  Gary Benson <gbenson@redhat.com>
4905
4906         * linux-thread-db.c (valprint.h): New include.
4907         (struct check_thread_db_info): New structure.
4908         (check_thread_db_on_load, tdb_testinfo): New static globals.
4909         (check_thread_db, check_thread_db_callback): New functions.
4910         (try_thread_db_load_1): Run integrity checks if requested.
4911         (maintenance_check_libthread_db): New function.
4912         (_initialize_thread_db): Register "maint check libthread-db"
4913         and "maint set/show check-libthread-db".
4914         * NEWS: Mention the above new commands.
4915
4916 2018-06-08  Tom Tromey  <tom@tromey.com>
4917
4918         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
4919         now a method.
4920
4921 2018-06-08  Tom Tromey  <tom@tromey.com>
4922
4923         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
4924
4925 2018-06-08  Tom Tromey  <tom@tromey.com>
4926
4927         * common/btrace-common.h (struct btrace_data): Add constructor,
4928         destructor, move assignment operator.
4929         <empty, clear, fini>: New methods.
4930         <format>: Initialize.
4931         (btrace_data_init, btrace_data_fini, btrace_data_clear)
4932         (btrace_data_empty): Don't declare.
4933         * common/btrace-common.c (btrace_data_init): Remove.
4934         (btrace_data::fini): Rename from btrace_data_fini.
4935         (btrace_data::empty): Rename from btrace_data_empty.
4936         (btrace_data::clear): Rename from btrace_data_clear.  Return
4937         bool.
4938         * btrace.h (make_cleanup_btrace_data): Don't declare.
4939         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
4940         (parse_xml_btrace): Update.
4941         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
4942         (maint_btrace_clear_packet_history_cmd): Update.
4943
4944 2018-06-07  Pedro Alves  <palves@redhat.com>
4945
4946         * target.h (target_ops) <beneath>: Now a method.  All references
4947         updated.
4948         (class target_stack): New.
4949         * target.c (g_target_stack): New.
4950         (g_current_top_target): Delete.
4951         (current_top_target): Get the top target out of g_target_stack.
4952         (target_stack::push, target_stack::unpush): New.
4953         (push_target, unpush_target): Reimplement.
4954         (target_is_pushed): Reimplement in terms of g_target_stack.
4955         (target_ops::beneath, target_stack::find_beneath): New.
4956
4957 2018-06-07  Pedro Alves  <palves@redhat.com>
4958
4959         * target.h (find_target_beneath): Delete declaration.
4960         * target.c (find_target_beneath): Delete definition.
4961         * aix-thread.c: All callers of find_target_beneath adjusted to
4962         call target_ops::beneath instead.
4963         * bsd-uthread.c: Likewise.
4964         * linux-thread-db.c: Likewise.
4965         * ravenscar-thread.c: Likewise.
4966         * sol-thread.c: Likewise.
4967         * spu-multiarch.c: Likewise.
4968
4969 2018-06-07  Pedro Alves  <palves@redhat.com>
4970
4971         * target.h (target_ops) <beneath>: Now a method.  All references
4972         updated.
4973         (target_ops) <m_beneath>: New.
4974         * target.c (target_ops::beneath): New.
4975         * corelow.c: Adjust all references to target_ops::beneath.
4976         * linux-thread-db.c: Likewise.
4977         * make-target-delegates: Likewise.
4978         * record-btrace.c: Likewise.
4979         * record-full.c: Likewise.
4980         * remote.c: Likewise.
4981         * target.c: Likewise.
4982         * target-delegates.c: Regenerate.
4983
4984 2018-06-07  Pedro Alves  <palves@redhat.com>
4985
4986         * target.h (target_stack): Delete.
4987         (current_top_target): Declare function.
4988         * target.c (target_stack): Delete.
4989         (g_current_top_target): New.
4990         (current_top_target): New function.
4991         * auxv.c: Use current_top_target instead of target_stack
4992         throughout.
4993         * avr-tdep.c: Likewise.
4994         * breakpoint.c: Likewise.
4995         * corefile.c: Likewise.
4996         * elfread.c: Likewise.
4997         * eval.c: Likewise.
4998         * exceptions.c: Likewise.
4999         * frame.c: Likewise.
5000         * gdbarch-selftests.c: Likewise.
5001         * gnu-v3-abi.c: Likewise.
5002         * ia64-tdep.c: Likewise.
5003         * ia64-vms-tdep.c: Likewise.
5004         * infcall.c: Likewise.
5005         * infcmd.c: Likewise.
5006         * infrun.c: Likewise.
5007         * linespec.c: Likewise.
5008         * linux-tdep.c: Likewise.
5009         * minsyms.c: Likewise.
5010         * ppc-linux-nat.c: Likewise.
5011         * ppc-linux-tdep.c: Likewise.
5012         * procfs.c: Likewise.
5013         * regcache.c: Likewise.
5014         * remote.c: Likewise.
5015         * rs6000-tdep.c: Likewise.
5016         * s390-linux-nat.c: Likewise.
5017         * s390-tdep.c: Likewise.
5018         * solib-aix.c: Likewise.
5019         * solib-darwin.c: Likewise.
5020         * solib-dsbt.c: Likewise.
5021         * solib-spu.c: Likewise.
5022         * solib-svr4.c: Likewise.
5023         * solib-target.c: Likewise.
5024         * sparc-tdep.c: Likewise.
5025         * sparc64-tdep.c: Likewise.
5026         * spu-tdep.c: Likewise.
5027         * symfile.c: Likewise.
5028         * symtab.c: Likewise.
5029         * target-descriptions.c: Likewise.
5030         * target-memory.c: Likewise.
5031         * target.c: Likewise.
5032         * target.h: Likewise.
5033         * tracefile-tfile.c: Likewise.
5034         * tracepoint.c: Likewise.
5035         * valops.c: Likewise.
5036         * valprint.c: Likewise.
5037         * value.c: Likewise.
5038         * windows-tdep.c: Likewise.
5039         * mi/mi-main.c: Likewise.
5040
5041 2018-06-07  Tom Tromey  <tom@tromey.com>
5042
5043         * valprint.h (build_address_symbolic): Declare.
5044         * printcmd.c (print_address_symbolic): Update.
5045         (build_address_symbolic): Change "name" and "filename" to
5046         std::string.
5047         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
5048         Update.
5049         * defs.h (build_address_symbolic): Remove declaration.
5050
5051 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
5052
5053         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
5054         (aarch64_vnv_type): Add function.
5055         (aarch64_pseudo_register_name): Add V regs for SVE.
5056         (aarch64_pseudo_register_type): Likewise.
5057         (aarch64_pseudo_register_reggroup_p): Likewise.
5058         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
5059         (aarch64_pseudo_read_value): Add V regs for SVE.
5060         (aarch64_pseudo_write_2): Use V0 offset for SVE
5061         (aarch64_pseudo_write): Add V regs for SVE.
5062         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
5063
5064 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
5065
5066         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
5067         (sve_vl_from_vq): Likewise.
5068
5069 2018-06-05  Tom Tromey  <tom@tromey.com>
5070
5071         * cli/cli-cmds.c (show_version): Update.
5072         * top.c (print_gdb_version): Add "interactive" parameter.
5073         Update.
5074         * main.c (captured_main_1): Update.
5075         * top.h (print_gdb_version): Add "interactive" parameter and a
5076         comment.
5077
5078 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
5079
5080         * common/enum-flags.h: Add trailing semicolon to example in
5081         comment.
5082
5083 2018-06-05  Tom Tromey  <tom@tromey.com>
5084
5085         PR cli/12326:
5086         * NEWS: Add entry about pager.
5087         * utils.c (pagination_disabled_for_command): New global.
5088         (prompt_for_continue): Allow "c" response to prompt.
5089         (reinitialize_more_filter): Clear
5090         pagination_disabled_for_command.
5091         (fputs_maybe_filtered): Check pagination_disabled_for_command.
5092
5093 2018-06-04  Tom Tromey  <tom@tromey.com>
5094
5095         * ada-lang.h (ada_lookup_symbol_list): Update.
5096         * ada-lang.c (resolve_subexp): Update.
5097         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
5098         parameter.
5099         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
5100         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
5101         results parameter to std::vector.
5102         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
5103         Update.
5104         * ada-exp.y (block_lookup): Update.
5105         (select_possible_type_sym): Change type of syms.  Remove nsyms
5106         parameter.
5107         (write_var_or_type, write_name_assoc): Update.
5108
5109 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
5110
5111         * windows-nat.c (windows_nat_target::xfer_partial): Return
5112         TARGET_XFER_E_IO if we need to delegate to the target beneath
5113         but BENEATH is NULL.
5114
5115 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
5116
5117         * Makefile.in (config.status): Add configure.nat as a
5118         dependency.
5119
5120 2018-06-04  Tom Tromey  <tom@tromey.com>
5121
5122         * cp-name-parser.y (cpname_state): Add method declarations.
5123         (HANDLE_QUAL): Update.
5124         (cpname_state::d_grab, cpname_state::fill_comp)
5125         (cpname_state::make_operator, cpname_state::make_dtor)
5126         (cpname_state::make_builtin_type, cpname_state::make_name)
5127         (cpname_state::d_qualify, cpname_state::d_int_type)
5128         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
5129         (%union): Move earlier.
5130
5131 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5132
5133         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
5134
5135 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5136
5137         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
5138         (aarch64_pseudo_write_1): Likewise.
5139         (aarch64_pseudo_read_value): Use helper.
5140         (aarch64_pseudo_write): Likewise.
5141
5142 2018-06-04  Pedro Alves  <palves@redhat.com>
5143
5144         * darwin-nat.c (darwin_ops): Delete.
5145         (darwin_attach_pid): Use get_native_target.
5146
5147 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5148
5149         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
5150         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
5151
5152 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5153
5154         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
5155         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
5156         (aarch64_gdbarch_init): Check for SVE.
5157         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
5158
5159 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5160
5161         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
5162         * aarch64-tdep.h (aarch64_read_description): Likewise.
5163         * arch/aarch64.c (aarch64_create_target_description): Likewise.
5164         * arch/aarch64.h (aarch64_create_target_description): Likewise.
5165         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
5166         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
5167         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
5168
5169 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
5170
5171         * value.c (value_fetch_lazy_bitfield): New.
5172         (value_fetch_lazy_memory): New.
5173         (value_fetch_lazy_register): New.
5174         (value_fetch_lazy): Factor out to smaller functions.
5175
5176 2018-06-01  Tom Tromey  <tom@tromey.com>
5177
5178         * cp-name-parser.y (backslashable, represented): Now const.
5179
5180 2018-06-01  Tom Tromey  <tom@tromey.com>
5181
5182         * cp-name-parser.y: Include parser-defs.h.
5183         (parser_fprintf): Remove declaration.
5184
5185 2018-06-01  Tom Tromey  <tom@tromey.com>
5186
5187         * cp-name-parser.y: Use %pure-parser, %lex-param, and
5188         %parse-param.
5189         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
5190         (global_result): Remove globals.
5191         (struct cpname_state): New.
5192         (yyparse): Don't declare.
5193         (yylex, yyerror): Move declarations after %union.
5194         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
5195         (make_name): Add state parameter.
5196         Update all callers.
5197         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
5198         parameter.
5199         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
5200         Update.
5201         (yylex): Add lvalp, state parameters.
5202         (yyerror): Add state parameter.
5203         (cp_demangled_name_to_comp): Update.
5204
5205 2018-06-01  Tom Tromey  <tom@tromey.com>
5206
5207         * cp-name-parser.y (parser_fprintf): Declare.
5208         (GDB_YY_REMAP_PREFIX): Define.
5209         Include yy-remap.h.  Don't redefine yy* identifiers.
5210
5211 2018-06-01  Tom Tromey  <tom@tromey.com>
5212
5213         * python/py-type.c (typy_legacy_template_argument): Update.
5214         * cp-support.h (cp_demangled_name_to_comp): Update.
5215         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
5216         parameter to be a "std::string *".
5217         (main): Update.
5218
5219 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
5220
5221         * ada-lex.l: Include "diagnostics.h" instead of
5222         "common/diagnostics.h".
5223         * unittests/environ-selftests.c: Likewise.
5224         * common/diagnostics.h: Moved to ../include.
5225
5226 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
5227
5228         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
5229         to language_mode_manual while calling breakpoint_re_set_one.
5230
5231 2018-06-01  Tom Tromey  <tom@tromey.com>
5232
5233         * valops.c (value_cast_structs, destructor_name_p): Update.
5234         * symtab.c (gdb_mangle_name): Update.
5235         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
5236         Update.
5237         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
5238         (pascal_object_print_value_fields, pascal_object_print_value):
5239         Update.
5240         * p-typeprint.c (pascal_type_print_derivation_info): Update.
5241         * linespec.c (find_methods): Update.
5242         * gdbtypes.h (type_name_no_tag): Remove.
5243         (type_name_or_error): Rename from type_name_no_tag_or_error.
5244         * gdbtypes.c (type_name_no_tag): Remove.
5245         (type_name_or_error): Rename from type_name_no_tag_or_error.
5246         (lookup_struct_elt_type, check_typedef): Update.
5247         * expprint.c (print_subexp_standard): Update.
5248         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
5249         * d-namespace.c (d_lookup_nested_symbol): Update.
5250         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
5251         (cp_print_class_member): Update.
5252         * cp-namespace.c (cp_lookup_nested_symbol): Update.
5253         * completer.c (add_struct_fields): Update.
5254         * c-typeprint.c (cp_type_print_derivation_info)
5255         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
5256         Update.
5257         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
5258         (ada_prefer_type, ada_is_exception_sym): Update.
5259
5260 2018-06-01  Tom Tromey  <tom@tromey.com>
5261
5262         * valops.c (enum_constant_from_type, value_namespace_elt)
5263         (value_maybe_namespace_elt): Update.
5264         * valarith.c (find_size_for_pointer_math): Update.
5265         * target-descriptions.c (make_gdb_type): Update.
5266         * symmisc.c (print_symbol): Update.
5267         * stabsread.c (define_symbol, read_type)
5268         (complain_about_struct_wipeout, add_undefined_type)
5269         (cleanup_undefined_types_1): Update.
5270         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
5271         (rust_range_type_p, val_print_struct, rust_print_struct_def)
5272         (rust_internal_print_type, rust_composite_type)
5273         (rust_evaluate_funcall, rust_evaluate_subexp)
5274         (rust_inclusive_range_type_p): Update.
5275         * python/py-type.c (typy_get_tag): Update.
5276         * p-typeprint.c (pascal_type_print_base): Update.
5277         * mdebugread.c (parse_symbol, parse_type): Update.
5278         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
5279         Update.
5280         * guile/scm-type.c (gdbscm_type_tag): Update.
5281         * go-lang.c (sixg_string_p): Update.
5282         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
5283         Update.
5284         * gdbtypes.h (struct main_type) <tag_name>: Remove.
5285         (TYPE_TAG_NAME): Remove.
5286         * gdbtypes.c (type_name_no_tag): Simplify.
5287         (check_typedef, check_types_equal, recursive_dump_type)
5288         (copy_type_recursive, arch_composite_type): Update.
5289         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
5290         in summary mode when needed.
5291         * eval.c (evaluate_funcall): Update.
5292         * dwarf2read.c (fixup_go_packaging, read_structure_type)
5293         (process_structure_scope, read_enumeration_type)
5294         (read_namespace_type, read_module_type, determine_prefix): Update.
5295         * cp-support.c (inspect_type): Update.
5296         * coffread.c (process_coff_symbol, decode_base_type): Update.
5297         * c-varobj.c (c_is_path_expr_parent): Update.
5298         * c-typeprint.c (c_type_print_base_struct_union): Update.
5299         (c_type_print_base_1): Update.  Print struct/class/union/enum in
5300         summary when using C language.
5301         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
5302         (gen_maybe_namespace_elt): Update.
5303         * ada-lang.c (ada_type_name): Simplify.
5304         (empty_record, ada_template_to_fixed_record_type_1)
5305         (template_to_static_fixed_type)
5306         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
5307
5308 2018-06-01  Tom Tromey  <tom@tromey.com>
5309
5310         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
5311         c_print_type.
5312         * c-typeprint.c (c_print_type_1): Add "language" parameter.
5313         (c_print_type): Update.
5314         (c_print_type): New overload.
5315         (c_type_print_varspec_prefix, c_type_print_args)
5316         (c_type_print_varspec_suffix, c_print_type_no_offsets)
5317         (c_type_print_base_struct_union, c_type_print_base_1)
5318         (cp_type_print_method_args): Add "language" parameter.
5319         (c_type_print_base): Update.
5320         * c-lang.h (c_print_type): Add new overload.
5321
5322 2018-06-01  Tom Tromey  <tom@tromey.com>
5323
5324         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
5325         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
5326
5327 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
5328
5329         * aarch64-tdep.c (aarch64_sve_register_names): New const
5330         var.
5331         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
5332         (AARCH64_SVE_Z_REGS_NUM): New define.
5333         (AARCH64_SVE_P_REGS_NUM): Likewise.
5334         (AARCH64_SVE_NUM_REGS): Likewise.
5335
5336 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
5337
5338         * nat/linux-ptrace.h [__alpha__]
5339         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
5340         definitions.
5341
5342 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
5343
5344         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
5345         the endianness selected.
5346         * NEWS: Document `set endian auto' mode operation update.
5347
5348 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
5349
5350         * Makefile.in: Add new header.
5351         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
5352         (sve_vl_from_vg): Likewise.
5353         (sve_vq_from_vl): Likewise.
5354         (sve_vl_from_vq): Likewise.
5355         (sve_vq_from_vg): Likewise.
5356         (sve_vg_from_vq): Likewise.
5357         * configure.nat: Add new c file.
5358         * nat/aarch64-sve-linux-ptrace.c: New file.
5359         * nat/aarch64-sve-linux-ptrace.h: New file.
5360
5361 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
5362
5363         * aarch64-linux-nat.c (aarch64_linux_read_description):
5364         Add parmeter zero.
5365         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
5366         Likewise.
5367         * aarch64-tdep.c (tdesc_aarch64_list): Add.
5368         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
5369         (aarch64_gdbarch_init): Add parmeter zero.
5370         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
5371         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
5372         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
5373         parmeter.
5374         * doc/gdb.texinfo: Describe SVE feature
5375         * features/aarch64-sve.c: New file.
5376
5377 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
5378
5379         PR gdb/23210
5380         * gdbarch.sh (significant_addr_bit): Default to zero when
5381         not set by target architecture.
5382         * gdbarch.c: Re-generated.
5383         * utils.c (address_significant): Update.
5384
5385 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
5386
5387         * stack.c (func_command): Remove trailing newline in call to error.
5388
5389 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5390
5391         * regcache.h (regcache_raw_collect): Remove, update callers to
5392         use regcache::raw_collect.
5393         * regcache.c (regcache_raw_collect): Remove.
5394
5395 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5396
5397         * regcache.h (regcache_raw_supply): Remove, update callers to
5398         use detached_regcache::raw_supply.
5399         * regcache.c (regcache_raw_supply): Remove.
5400
5401 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5402
5403         * regcache.h (regcache_cooked_write_part): Remove, update
5404         callers to use regcache::cooked_write_part.
5405         * regcache.c (regcache_cooked_write_part): Remove.
5406
5407 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5408
5409         * regcache.h (regcache_cooked_read_part): Remove, update callers
5410         to use readable_regcache::cooked_read_part.
5411         * regcache.c (regcache_cooked_read_part): Remove.
5412
5413 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5414
5415         * regcache.h (regcache_cooked_read_value): Remove, update
5416         callers to use readable_regcache::cooked_read_value.
5417         * regcache.c (regcache_cooked_read_value): Remove.
5418
5419 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5420
5421         * regcache.h (regcache_cooked_write): Remove, update callers to
5422         use regcache::cooked_write.
5423         * regcache.c (regcache_cooked_write): Remove.
5424
5425 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5426
5427         * regcache.h (regcache_invalidate): Remove, update callers to
5428         use detached_regcache::invalidate instead.
5429         * regcache.c (regcache_invalidate): Remove.
5430
5431 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5432
5433         * regcache.h (regcache_raw_write_part): Remove, update callers
5434         to use regcache::raw_write_part instead.
5435         * regcache.c (regcache_raw_write_part): Remove.
5436
5437 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5438
5439         * regcache.h (regcache_raw_read_part): Remove, update callers to
5440         use readable_regcache::raw_read_part instead.
5441         * regcache.c (regcache_raw_read_part): Remove.
5442
5443 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5444
5445         * regcache.h (regcache_cooked_read): Remove, update callers to
5446         use readable_regcache::cooked_read instead.
5447         * regcache.c (regcache_cooked_read): Remove.
5448
5449 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5450
5451         * regcache.h (regcache_raw_write): Remove, update callers to use
5452         regcache::raw_write instead.
5453         * regcache.c (regcache_raw_write): Remove.
5454
5455 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5456
5457         * regcache.h (regcache_raw_read): Remove, update callers to use
5458         readable_regcache::raw_read instead.
5459         * regcache.c (regcache_raw_read): Remove.
5460
5461 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5462
5463         * regcache.h (regcache_raw_update): Remove, update callers to
5464         use readable_regcache::raw_update instead.
5465         * regcache.c (regcache_raw_update): Remove.
5466
5467 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5468
5469         * regcache.h (regcache_register_status): Remove, update callers
5470         to use reg_buffer::get_register_status directly instead.
5471         * regcache.c (regcache_register_status): Remove.
5472
5473 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5474
5475         * regcache.h (regcache_get_ptid): Remove, update all callers to
5476         call regcache::ptid instead.
5477         * regcache.c (regcache_get_ptid): Remove.
5478
5479 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5480
5481         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
5482
5483 2018-05-30  Pedro Alves  <palves@redhat.com>
5484
5485         * common/common-exceptions.h (exception_rethrow): Use
5486         ATTRIBUTE_NORETURN.
5487
5488 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
5489
5490         * breakpoint.c (print_solib_event, check_status_catch_solib):
5491         Remove struct keyword in range-based for loops.
5492         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
5493         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
5494         Likewise.
5495         * linespec.c (find_superclass_methods, search_minsyms_for_name):
5496         Likewise.
5497         * symfile.c (addr_info_make_relative): Likewise.
5498         * thread.c (value_in_thread_stack_temporaries): Likewise.
5499
5500 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
5501
5502         PR gdb/16841
5503         * valops.c (value_struct_elt_for_reference): Call check_typedef on
5504         aggregate type to get its real type before accessing it.
5505
5506 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
5507
5508         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
5509         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
5510         * coff-pe-read.c (add_pe_forwarded_sym): Replace
5511         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
5512         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
5513         * jit.c (jit_breakpoint_re_set_internal): Likewise.
5514         * printcmd.c (info_address_command): Likewise.
5515
5516 2018-05-29  Tom Tromey  <tom@tromey.com>
5517
5518         * windows-nat.c (handle_exception): Update fall-through comment.
5519
5520 2018-05-29  Tom Tromey  <tom@tromey.com>
5521
5522         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
5523         (struct program_space) <added_solibs>: Now a std::vector.
5524         * breakpoint.c (print_solib_event): Update.
5525         (check_status_catch_solib): Update.
5526         * progspace.c (clear_program_space_solib_cache): Update.
5527         * solib.c (update_solib_list): Update.
5528
5529 2018-05-29  Tom Tromey  <tom@tromey.com>
5530
5531         * python/py-type.c (typy_richcompare): Update.
5532         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
5533         * gdbtypes.h (types_deeply_equal): Return bool.
5534         (types_equal): Likewise.
5535         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
5536         declare VEC.
5537         (check_types_equal): Change worklist to std::vector.  Return
5538         bool.
5539         (struct type_equality_entry): Add constructor.
5540         (compare_maybe_null_strings): Return bool.
5541         (check_types_worklist): Return bool.  Change worklist to
5542         std::vector.
5543         (types_deeply_equal): Use std::vector.
5544         (types_equal): Return bool.
5545         (compare_maybe_null_strings): Simplify.
5546
5547 2018-05-29  Tom Tromey  <tom@tromey.com>
5548
5549         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
5550
5551 2018-05-29  Tom Tromey  <tom@tromey.com>
5552
5553         * objc-lang.h: Don't include cp-support.h.
5554         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
5555         declare VEC.
5556
5557 2018-05-27  Tom Tromey  <tom@tromey.com>
5558
5559         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
5560
5561 2018-05-25  Tom Tromey  <tom@tromey.com>
5562
5563         * value.c (value::location): Initialize.
5564
5565 2018-05-25  Tom Tromey  <tom@tromey.com>
5566
5567         * dbxread.c (init_bincl_list): Remove.
5568         (bincl_list): Now a std::vector.
5569         (bincls_allocated, next_bincl): Remove.
5570         (free_bincl_list, do_free_bincl_list_cleanup)
5571         (make_cleanup_free_bincl_list): Remove.
5572         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
5573         unique_xmalloc_ptr.
5574         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
5575         (struct header_file_location): Add constructor.
5576         (add_bincl_to_list): Remove.
5577
5578 2018-05-25  Tom Tromey  <tom@tromey.com>
5579
5580         * tui/tui.c (tui_enable): Update.
5581         * mi/mi-interp.c (mi_interp::init): Update.
5582         * interps.h (class interp) <name>: New method.
5583         <m_name>: Rename from name.
5584         (~scoped_restore_interp): Update.
5585         * interps.c (interp::interp): Update.
5586         (interp_add, interp_set, interp_lookup_existing)
5587         (current_interp_named_p): Update.
5588
5589 2018-05-25  Tom Tromey  <tom@tromey.com>
5590
5591         * interps.c (interp_name): Remove.
5592         * mi/mi-interp.c (mi_interp::init): Update.
5593         * interps.h (interp_name): Remove.
5594         (~scoped_restore_interp): Update.
5595         * tui/tui.c (tui_enable): Update.
5596
5597 2018-05-25  Tom Tromey  <tom@tromey.com>
5598
5599         * utils.c (fputs_maybe_filtered): Update.
5600         * linespec.c (decode_line_full): Update.
5601         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
5602         (mi_print_breakpoint_for_event, mi_solib_loaded)
5603         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
5604         (mi_user_selected_context_changed): Update.
5605         * mi/mi-main.c (mi_execute_command): Update.
5606         * cli/cli-script.c (execute_control_command): Update.
5607         * python/python.c (execute_gdb_command): Update.
5608         * solib.c (info_sharedlibrary_command): Update.
5609         * interps.c (interp_ui_out): Remove.
5610         * interps.h (interp_ui_out): Remove.
5611
5612 2018-05-25  Tom Tromey  <tom@tromey.com>
5613
5614         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
5615         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
5616         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
5617
5618 2018-05-25  Tom Tromey  <tom@tromey.com>
5619
5620         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
5621         * interps.c (interp_exec): Use scoped_restore.
5622
5623 2018-05-25  Tom Tromey  <tom@tromey.com>
5624
5625         * remote.c (remote_target::remote_file_get): Use
5626         gdb::byte_vector.
5627         (remote_target::remote_file_put): Likewise.
5628
5629 2018-05-25  Tom Tromey  <tom@tromey.com>
5630
5631         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
5632         a std::string.
5633         (get_pe_section_index, add_pe_exported_sym): Update.
5634         (read_pe_exported_syms): Use gdb::def_vector.
5635
5636 2018-05-25  Tom Tromey  <tom@tromey.com>
5637
5638         * frame.c (remove_prev_frame): Remove.
5639         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
5640
5641 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
5642
5643         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
5644         Remove prototypes.
5645         * mips-linux-nat.c (supply_fpregset): Always call
5646         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
5647         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
5648         `mips_fill_fpregset'.
5649         * mips-linux-tdep.c (mips_supply_fpregset)
5650         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
5651         (mips_fill_fpregset_wrapper): Remove functions.
5652         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
5653         (mips_linux_fpregset): Remove variable.
5654         (mips_linux_iterate_over_regset_sections): Use
5655         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
5656         (mips_linux_o32_sigframe_init): Remove comment.
5657
5658 2018-05-25  Pedro Alves  <palves@redhat.com>
5659
5660         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
5661         (struct readahead_cache, struct packet_reg, struct
5662         remote_arch_state, class remote_state): Move higher up in the
5663         file.
5664         (remote_target::m_remote_state): Now an object instead of a pointer.
5665         (remote_target::get_remote_state): Adjust.
5666
5667 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
5668
5669         * stack.c (select_and_print_frame): Delete.
5670         (struct function_bounds): Move struct within function.
5671         (func_command): Most content moved into new function
5672         find_frame_for_function, use new function, print result, add
5673         function comment.
5674         (find_frame_for_function): New function, now returns a result.
5675
5676 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5677
5678         * stack.c (iterate_over_block_arg_vars): Fix comment.
5679         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
5680
5681 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
5682
5683         PR gdb/23203
5684         * frame.c
5685         (scoped_restore_selected_frame::scoped_restore_selected_frame):
5686         Define.
5687         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
5688         Define.
5689         * frame.h (class scoped_restore_selected_frame): New class.
5690         * stack.c (print_frame_local_vars): Remove catching and rethrowing
5691         of any exception, use scoped_restore_selected_frame to restore the
5692         frame instead.
5693
5694 2018-05-24  Pedro Alves  <palves@redhat.com>
5695
5696         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
5697         override.
5698
5699 2018-05-23  Tom Tromey  <tom@tromey.com>
5700
5701         * complaints.c (struct complaints): Remove.
5702         (symfile_complaint_book): Remove.
5703         (series): New global.
5704         (complaint_internal): Update.
5705         (clear_complaints): Update.
5706
5707 2018-05-23  Tom Tromey  <tom@tromey.com>
5708
5709         * complaints.c (counters): New global.
5710         (struct complain): Remove.
5711         (struct complaints) <root>: Remove.
5712         (complaint_sentinel): Remove.
5713         (symfile_complaint_book): Update.
5714         (find_complaint) Remove.
5715         (complaint_internal, clear_complaints): Update.
5716
5717 2018-05-23  Tom Tromey  <tom@tromey.com>
5718
5719         * complaints.c (struct complain) <file, line>: Remove.
5720         (find_complaint): Remove file, line parameters.
5721         (complaint_internal): Update.
5722
5723 2018-05-23  Tom Tromey  <tom@tromey.com>
5724
5725         * complaints.c (vcomplaint): Remove.
5726         (complaint_internal) Merge in contents of vcomplaint.
5727
5728 2018-05-23  Tom Tromey  <tom@tromey.com>
5729
5730         * complaints.c (struct complaints) <explanation>: Remove.
5731         (symfile_explanations): Remove.
5732         (symfile_complaint_book): Update.
5733         (vcomplaint): Update.
5734         (struct explanation): Remove.
5735
5736 2018-05-23  Tom Tromey  <tom@tromey.com>
5737
5738         * complaints.c (symfile_complaints): Remove.
5739         (complaint_internal): Remove "complaints" parameter.
5740         (clear_complaints, vcomplaint): Remove "c" parameter.
5741         (get_complaints): Remove.
5742         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
5743         (dwarf2_debug_line_missing_file_complaint)
5744         (dwarf2_debug_line_missing_end_sequence_complaint)
5745         (dwarf2_complex_location_expr_complaint)
5746         (dwarf2_const_value_length_mismatch_complaint)
5747         (dwarf2_section_buffer_overflow_complaint)
5748         (dwarf2_macro_malformed_definition_complaint)
5749         (dwarf2_invalid_attrib_class_complaint)
5750         (create_addrmap_from_index, dw2_symtab_iter_next)
5751         (dw2_expand_marked_cus)
5752         (dw2_debug_names_iterator::find_vec_in_debug_names)
5753         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
5754         (create_debug_type_hash_table, init_cutu_and_read_dies)
5755         (partial_die_parent_scope, add_partial_enumeration)
5756         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
5757         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
5758         (read_import_statement, read_file_scope, create_dwo_cu_reader)
5759         (create_cus_hash_table, create_dwp_hash_table)
5760         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
5761         (dwarf2_rnglists_process, dwarf2_ranges_process)
5762         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
5763         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
5764         (handle_struct_member_die, process_structure_scope)
5765         (read_array_type, read_common_block, read_module_type)
5766         (read_tag_pointer_type, read_typedef, read_base_type)
5767         (read_subrange_type, load_partial_dies, partial_die_info::read)
5768         (partial_die_info::read, partial_die_info::read)
5769         (partial_die_info::read, read_checked_initial_length_and_offset)
5770         (dwarf2_string_attr, read_formatted_entries)
5771         (dwarf_decode_line_header)
5772         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5773         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
5774         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
5775         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
5776         (get_signatured_type, get_DW_AT_signature_type)
5777         (decode_locdesc, file_file_name, consume_improper_spaces)
5778         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
5779         (dwarf_decode_macro_bytes, dwarf_decode_macros)
5780         (dwarf2_symbol_mark_computed, set_die_type)
5781         (read_attribute_value): Update.
5782         * stap-probe.c (handle_stap_probe, get_stap_base_address):
5783         Update.
5784         * dbxread.c (unknown_symtype_complaint)
5785         (lbrac_mismatch_complaint, repeated_header_complaint)
5786         (set_namestring, function_outside_compilation_unit_complaint)
5787         (read_dbx_symtab, process_one_symbol): Update.
5788         * gdbtypes.c (stub_noname_complaint): Update.
5789         * windows-nat.c (handle_unload_dll): Update.
5790         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
5791         (decode_base_type): Update.
5792         * xcoffread.c (bf_notfound_complaint, ef_complaint)
5793         (eb_complaint, record_include_begin, record_include_end)
5794         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
5795         (process_xcoff_symbol, read_symbol)
5796         (function_outside_compilation_unit_complaint)
5797         (scan_xcoff_symtab): Update.
5798         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
5799         * buildsym.c (finish_block_internal, make_blockvector)
5800         (end_symtab_get_static_block, augment_type_symtab): Update.
5801         * dtrace-probe.c (dtrace_process_dof)
5802         (dtrace_static_probe_ops::get_probes): Update.
5803         * complaints.h (struct complaint): Don't declare.
5804         (symfile_complaints): Remove.
5805         (complaint_internal): Remove "complaints" parameter.
5806         (complaint): Likewise.
5807         (clear_complaints): Likewise.
5808         * symfile.c (syms_from_objfile_1, finish_new_objfile)
5809         (reread_symbols): Update.
5810         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
5811         (dwarf2_frame_cache, decode_frame_entry): Update.
5812         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
5813         * objc-lang.c (lookup_objc_class, lookup_child_selector)
5814         (info_selectors_command): Update.
5815         * macrotab.c (macro_include, check_for_redefinition)
5816         (macro_undef): Update.
5817         * objfiles.c (filter_overlapping_sections): Update.
5818         * stabsread.c (invalid_cpp_abbrev_complaint)
5819         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
5820         (define_symbol, error_type, read_type, rs6000_builtin_type)
5821         (stabs_method_name_from_physname, read_member_functions)
5822         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
5823         (attach_fields_to_type, complain_about_struct_wipeout)
5824         (read_range_type, read_args, common_block_start)
5825         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
5826         Update.
5827         * mdebugread.c (index_complaint, unknown_ext_complaint)
5828         (basic_type_complaint, bad_tag_guess_complaint)
5829         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
5830         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
5831         (parse_procedure, parse_lines)
5832         (function_outside_compilation_unit_complaint)
5833         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
5834         (bad_tag_guess_complaint, reg_value_complaint): Update.
5835         * cp-support.c (demangled_name_complaint): Update.
5836         * macroscope.c (sal_macro_scope): Update.
5837         * dwarf-index-write.c (class debug_names): Update.
5838
5839 2018-05-23  Tom Tromey  <tom@tromey.com>
5840
5841         * complaints.c (clear_complaints): Remove "noisy" parameter.
5842         * complaints.h (clear_complaints): Update.
5843         * symfile.c (syms_from_objfile_1, finish_new_objfile)
5844         (reread_symbols): Update.
5845
5846 2018-05-23  Tom Tromey  <tom@tromey.com>
5847
5848         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
5849         SUBSEQUENT_MESSAGE.
5850         (vcomplaint, clear_complaints): Update.
5851         (symfile_explanations): Remove some messages.
5852
5853 2018-05-23  Tom Tromey  <tom@tromey.com>
5854
5855         * complaints.c (internal_complaint): Remove.
5856         * complaints.h (internal_complaint): Remove.
5857
5858 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
5859
5860         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
5861
5862 2018-05-22  Pedro Alves  <palves@redhat.com>
5863
5864         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
5865         (remote_fileio_badfd, remote_fileio_return_errno)
5866         (remote_fileio_return_success, remote_fileio_func_open)
5867         (remote_fileio_func_open, remote_fileio_func_close)
5868         (remote_fileio_func_read, remote_fileio_func_write)
5869         (remote_fileio_func_lseek, remote_fileio_func_rename)
5870         (remote_fileio_func_unlink, remote_fileio_func_stat)
5871         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
5872         (remote_fileio_func_isatty, remote_fileio_func_system): Add
5873         remote_target parameter.
5874         (remote_fio_func_map) <func>: Add remote_target parameter.
5875         (do_remote_fileio_request, remote_fileio_request):
5876         * remote-fileio.h (remote_fileio_request):
5877         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
5878         remote_target parameter.
5879         (remote_notif_process, handle_notification): Adjust to pass down
5880         the remote.
5881         (remote_notif_state_allocate): Add remote_target parameter.  Save
5882         it.
5883         * remote-notif.h (struct remote_target): Forward declare.
5884         (struct notif_client) <parse, ack, can_get_pending_events>: Add
5885         remote_target parameter.
5886         (struct remote_notif_state) <remote>: New field.
5887         (remote_notif_ack, remote_notif_parse): Add remote_target
5888         parameter.
5889         (remote_notif_state_allocate, remote_notif_state_allocate): Add
5890         remote_target parameter.
5891         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
5892         (threads_listing_context, rmt_thread_action, protocol_feature)
5893         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
5894         (packet_result, struct threads_listing_context, remote_state):
5895         Move definitions and declarations higher up.
5896         (remote_target) <~remote_target>: Declare.
5897         (remote_download_command_source, remote_file_put, remote_file_get)
5898         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
5899         (remote_hostio_pread_vFile, remote_hostio_send_command)
5900         (remote_hostio_set_filesystem, remote_hostio_open)
5901         (remote_hostio_close, remote_hostio_unlink, remote_state)
5902         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
5903         (get_memory_write_packet_size, get_memory_read_packet_size)
5904         (append_pending_thread_resumptions, remote_detach_1)
5905         (append_resumption, remote_resume_with_vcont)
5906         (add_current_inferior_and_thread, wait_ns, wait_as)
5907         (process_stop_reply, remote_notice_new_inferior)
5908         (process_initial_stop_replies, remote_add_thread)
5909         (btrace_sync_conf, remote_btrace_maybe_reopen)
5910         (remove_new_fork_children, kill_new_fork_children)
5911         (discard_pending_stop_replies, stop_reply_queue_length)
5912         (check_pending_events_prevent_wildcard_vcont)
5913         (discard_pending_stop_replies_in_queue, stop_reply)
5914         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
5915         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
5916         (remote_interrupt_as, remote_interrupt_ns)
5917         (remote_get_noisy_reply, remote_query_attached)
5918         (remote_add_inferior, remote_current_thread, get_current_thread)
5919         (set_thread, set_general_thread, set_continue_thread)
5920         (set_general_process, write_ptid)
5921         (remote_unpack_thread_info_response, remote_get_threadinfo)
5922         (parse_threadlist_response, remote_get_threadlist)
5923         (remote_threadlist_iterator, remote_get_threads_with_ql)
5924         (remote_get_threads_with_qxfer)
5925         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
5926         (get_offsets, remote_check_symbols, remote_supported_packet)
5927         (remote_query_supported, remote_packet_size)
5928         (remote_serial_quit_handler, remote_detach_pid)
5929         (remote_vcont_probe, remote_resume_with_hc)
5930         (send_interrupt_sequence, interrupt_query)
5931         (remote_notif_get_pending_events, fetch_register_using_p)
5932         (send_g_packet, process_g_packet, fetch_registers_using_g)
5933         (store_register_using_P, store_registers_using_G)
5934         (set_remote_traceframe, check_binary_download)
5935         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
5936         (remote_xfer_live_readonly_partial, remote_read_bytes)
5937         (remote_send_printf, remote_flash_write, readchar)
5938         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
5939         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
5940         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
5941         (extended_remote_disable_randomization, extended_remote_run)
5942         (send_environment_packet, extended_remote_environment_support)
5943         (extended_remote_set_inferior_cwd, remote_write_qxfer)
5944         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
5945         (packet_command): Now methods of ...
5946         (remote_target): ... this class.
5947         (m_remote_state) <remote_target>: New field.
5948         (struct remote_state) <stop_reply_queue,
5949         remote_async_inferior_event_token, wait_forever_enabled_p>: New
5950         fields.
5951         (remote_state::remote_state): Allocate stop_reply_queue.
5952         (remote_state): Delete global.
5953         (get_remote_state_raw): Delete.
5954         (remote_target::get_remote_state): Allocate m_remote_state on
5955         demand.
5956         (get_current_remote_target): New.
5957         (remote_ops, extended_remote_ops): Delete.
5958         (wait_forever_enabled_p, remote_async_inferior_event_token):
5959         Delete, moved to struct remote_state.
5960         (remote_target::close): Delete self.  Destruction bits split to
5961         ...
5962         (remote_target::~remote_target): ... this.
5963         (show_memory_packet_size): Adjust to use
5964         get_current_remote_target.
5965         (struct protocol_feature) <func>: Add remote_target parameter.
5966         All callers adjusted.
5967         (curr_quit_handler_target): New.
5968         (remote_serial_quit_handler): Reimplement.
5969         (remote_target::open_1): Adjust to use get_current_remote_target.
5970         Heap-allocate remote_target/extended_remote_target instances.
5971         (vcont_builder::vcont_builder): Add remote_target parameter, and
5972         save it in m_remote.  All callers adjusted.
5973         (vcont_builder::m_remote): New field.
5974         (vcont_builder::restart, vcont_builder::flush)
5975         (vcont_builder::push_action): Use it.
5976         (remote_target::commit_resume): Use it.
5977         (struct queue_iter_param) <remote>: New field.
5978         (remote_target::remove_new_fork_children): Fill in 'remote' field.
5979         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
5980         (check_pending_event_prevents_wildcard_vcont_callback)
5981         (remote_target::check_pending_events_prevent_wildcard_vcont)
5982         (remote_target::discard_pending_stop_replies)
5983         (remote_target::discard_pending_stop_replies_in_queue)
5984         (remote_target::remote_notif_remove_queued_reply): Fill in
5985         'remote' field.
5986         (remote_notif_get_pending_events): New.
5987         (remote_target::readchar, remote_target::remote_serial_write):
5988         Save/restore curr_quit_handler_target.
5989         (putpkt): New.
5990         (kill_new_fork_children): Fill in 'remote' field.
5991         (packet_command): Use get_current_remote_target, defer to
5992         remote_target method of same name.
5993         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
5994         parameter, and save it in m_remote.  All callers adjusted.
5995         (scoped_remote_fd::release): Use m_remote.
5996         (scoped_remote_fd::m_remote): New field.
5997         (remote_file_put, remote_file_get, remote_file_delete): Use
5998         get_current_remote_target, defer to remote_target method of same
5999         name.
6000         (remote_btrace_reset): Add remote_state paremeter.  Update all
6001         callers.
6002         (remote_async_inferior_event_handler). Pass down 'data'.
6003         (remote_new_objfile): Use get_current_remote_target.
6004         (remote_target::vcont_r_supported): New.
6005         (set_range_stepping): Use get_current_remote_target and
6006         remote_target::vcont_r_supported.
6007         (_initialize_remote): Don't allocate 'remote_state' and
6008         'stop_reply_queue' globals.
6009         * remote.h (struct remote_target): Forward declare.
6010         (getpkt, putpkt, remote_notif_get_pending_events): Add
6011         'remote_target' parameter.
6012
6013 2018-05-22  Pedro Alves  <palves@redhat.com>
6014
6015         * remote.c (vcont_builder): Now a class.  Make all data members
6016         private.
6017         (vcont_builder) <vcont_builder, restart, flush, push_action>:
6018         Declare methods.
6019         (vcont_builder_restart): Rename to ...
6020         (vcont_builder::restart): ... this.
6021         (vcont_builder_flush): Rename to ...
6022         (vcont_builder::flush): ... this.
6023         (vcont_builder_push_action): Rename to ...
6024         (vcont_builder::push_action): ... this.
6025         (remote_target::commit_resume): Adjust.
6026
6027 2018-05-22  Pedro Alves  <palves@redhat.com>
6028
6029         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
6030         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
6031         (get_fixed_memory_packet_size): New.
6032         (get_memory_packet_size): Use it.
6033         (set_memory_packet_size): Don't override the config size with
6034         DEFAULT_MAX_MEMORY_PACKET_SIZE.
6035         (show_memory_packet_size): Use get_fixed_memory_packet_size.
6036         Don't refer to get_memory_packet_size if not connected to a remote
6037         target.  Show "(default)" if configured size is 0.
6038
6039 2018-05-22  Pedro Alves  <palves@redhat.com>
6040
6041         * remote.c (remote_target::mourn_inferior): Move
6042         discard_pending_stop_replies call here from ...
6043         (_initialize_remote): ... here.
6044
6045 2018-05-22  Pedro Alves  <palves@redhat.com>
6046
6047         * remote.c (compare_section_command): Remove set_general_process
6048         call.
6049
6050 2018-05-22  Pedro Alves  <palves@redhat.com>
6051
6052         * remote.c (struct packet_reg, struct remote_arch_state):
6053         Move higher up in the file.
6054         (remote_state) <m_arch_states>: Store remote_arch_state values
6055         instead of remote_arch_state pointers.
6056         (remote_state::get_remote_arch_state): Adjust.
6057
6058 2018-05-22  Pedro Alves  <palves@redhat.com>
6059
6060         * remote.c: Include <unordered_map>.
6061         (remote_state): Now a class.
6062         (remote_state) <get_remote_arch_state>: Declare method.
6063         <get_remote_arch_state>: New field.
6064         (remote_arch_state) <remote_arch_state>: Declare ctor.
6065         <regs>: Now a unique_ptr.
6066         (remote_gdbarch_data_handle): Delete.
6067         (get_remote_arch_state): Delete.
6068         (remote_state::get_remote_arch_state): New.
6069         (get_remote_state): Adjust to call remote_state's
6070         get_remote_arch_state method.
6071         (init_remote_state): Delete, bits factored out to ...
6072         (remote_arch_state::remote_arch_state): ... this new method.
6073         (get_remote_packet_size, get_memory_packet_size)
6074         (process_g_packet, remote_target::fetch_registers)
6075         (remote_target::prepare_to_store, store_registers_using_G)
6076         (remote_target::store_registers, remote_target::get_trace_status):
6077         Adjust to call remote_state's method.
6078         (_initialize_remote): Remove reference to
6079         remote_gdbarch_data_handle.
6080
6081 2018-05-22  Pedro Alves  <palves@redhat.com>
6082
6083         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
6084         pread>: New method declarations.
6085         (remote_target::open_1): Adjust.
6086         (readahead_cache_invalidate): Rename to ...
6087         (readahead_cache::invalidate): ... this, and adjust to be a class
6088         method.
6089         (readahead_cache_invalidate_fd): Rename to ...
6090         (readahead_cache::invalidate_fd): ... this, and adjust to be a
6091         class method.
6092         (remote_hostio_pwrite): Adjust.
6093         (remote_hostio_pread_from_cache): Rename to ...
6094         (readahead_cache::pread): ... this, and adjust to be a class
6095         method.
6096         (remote_hostio_close): Adjust.
6097
6098 2018-05-22  Pedro Alves  <palves@redhat.com>
6099
6100         * remote.c (remote_hostio_close_cleanup): Delete.
6101         (class scoped_remote_fd): New.
6102         (remote_file_put, remote_file_get): Use it.
6103
6104 2018-05-22  Pedro Alves  <palves@redhat.com>
6105
6106         (struct vCont_action_support): Use bool and initialize all fields.
6107         (struct readahead_cache): Initialize all fields.
6108         (remote_state): Use bool and initialize all fields.
6109         (remote_state::remote_state, remote_state::~remote_state): New.
6110         (new_remote_state): Delete.
6111         (_initialize_remote): Use new to allocate remote_state.
6112
6113 2018-05-22  Pedro Alves  <palves@redhat.com>
6114             張俊芝  <zjz@zjz.name>
6115
6116         PR gdb/22973
6117         * c-exp.y: Include "c-support.h".
6118         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
6119         of tolower.  Use c_ident_is_alpha to scan names.
6120         * c-lang.c: Include "c-support.h".
6121         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
6122         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
6123         * c-support.h: New file, with bits factored out from ...
6124         * cp-name-parser.y: ... this file.
6125         Include "c-support.h".
6126         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
6127         c-support.h and renamed.
6128         (symbol_end, yylex): Adjust.
6129
6130 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6131
6132         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
6133         parameter type to CORE_ADDR.
6134         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
6135         parameter type in declaration to CORE_ADDR.
6136         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
6137         target_auxv_search to get AT_HWCAP and use the result to get the
6138         target description.
6139         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
6140         to CORE_ADDR. Remove the cast of the return value to unsigned
6141         long. Fix error predicate of target_auxv_search.
6142         (ppc_linux_nat_target::read_description): Change the type of the
6143         hwcap variable to CORE_ADDR.
6144
6145 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6146
6147         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
6148         if the size of fpscr is larger than 32 bits.
6149
6150 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6151
6152         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
6153         (ppc32_linux_vsxregmap): New global.
6154         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
6155         regcache_supply_regset, and regcache_collect_regset.
6156         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
6157         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
6158         (fetch_vsx_register, store_vsx_register): Remove.
6159         (fetch_vsx_registers): Add regno parameter. Get regset using
6160         ppc_linux_vsxregset. Use regset to supply registers.
6161         (store_vsx_registers): Add regno parameter. Get regset using
6162         ppc_linux_vsxregset. Use regset to collect registers.
6163         (fetch_register): Call fetch_vsx_registers instead of
6164         fetch_vsx_register.
6165         (store_register): Call store_vsx_registers instead of
6166         store_vsx_register.
6167         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
6168         new regno parameter.
6169         (store_ppc_registers): Call store_vsx_registers with -1 for the
6170         new regno parameter.
6171         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
6172         (ppc_collect_vsxregset): Remove.
6173
6174 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6175
6176         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
6177         offset fields.
6178         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
6179         for vector register offset fields.
6180         (ppc64_fbsd_reg_offsets): Likewise.
6181         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
6182         to vector register offset fields.
6183         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
6184         to vector register offset fields.
6185         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
6186         vector register offset fields.
6187         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
6188         initializers for vector register offset fields.
6189         (rs6000_aix64_reg_offsets): Likewise.
6190         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
6191         (ppc_supply_vrregset): Remove.
6192         (ppc_collect_vrregset): Remove.
6193         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
6194         (ppc_linux_vrregset) : New function.
6195         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
6196         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
6197         (ppc32_linux_vrregset): Remove.
6198         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
6199         and use result instead of ppc32_linux_vrregset.
6200         (ppc32_linux_reg_offsets): Remove initializers for vector register
6201         offset fields.
6202         (ppc64_linux_reg_offsets): Likewise.
6203         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
6204         * ppc-linux-nat.c: Include regset.h.
6205         (gdb_vrregset_t): Adjust comment to account for little-endian
6206         mode.
6207         (supply_vrregset, fill_vrregset): Remove.
6208         (fetch_altivec_register, store_altivec_register): Remove.
6209         (fetch_altivec_registers): Add regno parameter. Get regset using
6210         ppc_linux_vrregset. Use regset to supply registers.
6211         (store_altivec_registers): Add regno parameter. Get regset using
6212         ppc_linux_vrregset. Use regset to collect registers.
6213         (fetch_register): Call fetch_altivec_registers instead of
6214         fetch_altivec_register.
6215         (store_register): Call store_altivec_registers instead of
6216         store_altivec_register.
6217         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
6218         the new regno parameter.
6219         (store_ppc_registers): Call store_altivec_registers with -1 for
6220         the new regno parameter.
6221
6222 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6223
6224         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
6225         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
6226         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
6227         (gdb_vrregset_t): Change array type size to
6228         PPC_LINUX_SIZEOF_VRREGSET.
6229         (gdb_vsxregset_t): Change array type size to
6230         PPC_LINUX_SIZEOF_VSXREGSET.
6231         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
6232         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
6233         PPC_LINUX_SIZEOF_VSXREGSET.
6234
6235 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6236
6237         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
6238         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
6239         nat/ppc-linux.c.
6240         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
6241         ppc_linux_target_wordsize with tid.
6242         (ppc_linux_nat_target::read_description): Call ppc_linux_target
6243         wordsize with tid.
6244         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
6245         (ppc64_64bit_inferior_p): Add static and inline specifiers.
6246         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
6247         tid parameter. Remove static specifier.
6248         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
6249         (ppc_linux_target_wordsize): New declaration.
6250
6251 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6252
6253         * arch/ppc-linux-common.c: New file.
6254         * arch/ppc-linux-common.h: New file.
6255         * arch/ppc-linux-tdesc.h: New file.
6256         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
6257         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
6258         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
6259         arch/ppc-linux-tdesc.h.
6260         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
6261         arch/ppc-linux-tdesc.h.
6262         (ppc_linux_nat_target::read_description): Remove target
6263         description matching code. Fill a ppc_linux_features struct and
6264         call ppc_linux_match_description with it. Move comment about ISA
6265         2.05 to ppc-linux-common.c.
6266         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
6267         arch/ppc-linux-tdesc.h.
6268         (ppc_linux_core_read_description): Remove target description
6269         matching code. Fill a ppc_linux_features struct and call
6270         ppc_linux_match_description with it.
6271         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
6272         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
6273         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
6274         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
6275         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
6276         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
6277         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
6278         (tdesc_powerpc_e500l): Remove.
6279
6280 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
6281
6282         * ada-lang.c (catch_assert_command): Pass empty string instead
6283         of NULL for excep_string argument.
6284
6285 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
6286
6287         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
6288         the width of the requested register exceeds the width of the
6289         `ptrace' data type.
6290
6291 2018-05-21  Tom Tromey  <tom@tromey.com>
6292
6293         * printcmd.c (output_command): Remove.
6294         (output_command_const): Rename to output_command.
6295         * valprint.h (output_command): Rename from output_command_const.
6296         * tracepoint.c (trace_dump_actions): Call output_command.
6297
6298 2018-05-21  Tom Tromey  <tom@tromey.com>
6299
6300         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
6301         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
6302         * ada-lang.h (create_ada_exception_catchpoint): Update.
6303         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
6304         std::string.
6305         (create_excep_cond_exprs, ~ada_catchpoint)
6306         (should_stop_exception, print_one_exception)
6307         (print_mention_exception, print_recreate_exception): Update.
6308         (ada_get_next_arg): Remove.
6309         (catch_ada_exception_command_split): Use std::string.  Change type
6310         of "excep_string", "cond_string".
6311         (catch_ada_exception_command): Update.
6312         (create_ada_exception_catchpoint): Change type of excep_string.
6313         (ada_exception_sal): Remove excep_string parameter.
6314         (~ada_catchpoint): Remove.
6315
6316 2018-05-21  Tom Tromey  <tom@tromey.com>
6317
6318         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
6319         cleanup.
6320
6321 2018-05-21  Tom Tromey  <tom@tromey.com>
6322
6323         * ada-lang.c (ada_exception_message_1, ada_exception_message):
6324         Return unique_xmalloc_ptr.
6325         (print_it_exception): Update.
6326
6327 2018-05-21  Tom Tromey  <tom@tromey.com>
6328
6329         * tracepoint.c (trace_dump_actions): Use std::string.
6330
6331 2018-05-21  Tom Tromey  <tom@tromey.com>
6332
6333         * symfile.c (reread_symbols): Use std::string for original_name.
6334
6335 2018-05-21  Tom Tromey  <tom@tromey.com>
6336
6337         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
6338         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
6339         constructor.
6340
6341 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
6342
6343         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
6344         instance to...
6345         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
6346         * objfiles.c (get_objfile_bfd_data): Allocate
6347         objfile_per_bfd_storage with obstack_new when allocating on
6348         obstack.
6349
6350 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
6351
6352         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
6353         OBSTACK_ZALLOC.
6354         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
6355         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
6356         * mdebugread.c (mdebug_build_psymtabs): Likewise.
6357         (add_pending): Likewise.
6358         (parse_symbol): Likewise.
6359         (parse_partial_symbols): Likewise.
6360         (psymtab_to_symtab_1): Likewise.
6361         (new_psymtab): Likewise.
6362         (elfmdebug_build_psymtabs): Likewise.
6363         * minsyms.c (terminate_minimal_symbol_table): Likewise.
6364         * objfiles.c (get_objfile_bfd_data): Likewise.
6365         (objfile_register_static_link): Likewise.
6366         * psymtab.c (allocate_psymtab): Likewise.
6367         * stabsread.c (read_member_functions): Likewise.
6368         * xcoffread.c (xcoff_end_psymtab): Likewise.
6369
6370 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
6371
6372         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
6373         compiler supports std::is_trivially_constructible.
6374         * common/poison.h: Include obstack.h.
6375         (IsMallocable): Define to is_trivially_constructible if the
6376         compiler supports it, define to true_type otherwise.
6377         (xobnew): New.
6378         (XOBNEW): Redefine.
6379         (xobnewvec): New.
6380         (XOBNEWVEC): Redefine.
6381         * gdb_obstack.h (obstack_zalloc): New.
6382         (OBSTACK_ZALLOC): Redefine.
6383         (obstack_calloc): New.
6384         (OBSTACK_CALLOC): Redefine.
6385         (obstack_new): New.
6386         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
6387         (gdbarch_obstack): New declaration in gdbarch.h, definition in
6388         gdbarch.c.
6389         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
6390         obstack_calloc/obstack_zalloc.
6391         (gdbarch_obstack_zalloc): Remove.
6392         * target-descriptions.c (tdesc_data_init): Use obstack_new.
6393
6394 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6395
6396         * stack.c (backtrace_command_1): Remove useless variable int i.
6397
6398 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6399
6400         * stack.c (print_frame_info): Fix comment.
6401
6402 2018-05-18  Tom Tromey  <tom@tromey.com>
6403
6404         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
6405         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
6406         (~dwarf2_per_objfile): Update
6407         (dwarf2_get_dwz_file): Use new.
6408         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
6409         unique_ptr.
6410
6411 2018-05-18  Tom Tromey  <tom@tromey.com>
6412
6413         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
6414         unique_ptr.
6415         * dwarf2read.c (struct dwp_file): Add constructor and
6416         initializers.
6417         (open_and_init_dwp_file): Return a unique_ptr.
6418         (dwarf2_per_objfile, create_dwp_hash_table)
6419         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
6420         (lookup_dwo_unit_in_dwp): Update.
6421         (open_and_init_dwp_file, get_dwp_file): Update.
6422
6423 2018-05-18  Tom Tromey  <tom@tromey.com>
6424
6425         * dwarf2read.c (dwarf2_per_objfile): Update.
6426         (struct mapped_index): Add initializers.
6427         (dwarf2_read_index): Use new.
6428         (dw2_symtab_iter_init): Update.
6429         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
6430         unique_ptr.
6431
6432 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
6433
6434         * dwarf2read.c (mapped_index) <total_size>: Remove.
6435
6436 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
6437
6438         * unittests/format_pieces-selftests.c (test_format_specifier):
6439         Add ARI comments.
6440
6441 2018-05-18  Tom Tromey  <tom@tromey.com>
6442
6443         * c-typeprint.c (maybe_print_hole): New function.
6444         (c_print_type_struct_field_offset): Update.
6445         (c_type_print_base_struct_union): Call maybe_print_hole.
6446
6447 2018-05-17  Keith Seitz  <keiths@redhat.com>
6448
6449         * breakpoint.c (build_bpstat_chain): New function, moved from
6450         bpstat_stop_status.
6451         (bpstat_stop_status): Add optional parameter, `stop_chain'.
6452         If no stop chain is passed, call build_bpstat_chain to build it.
6453         * breakpoint.h (build_bpstat_chain): Declare.
6454         (bpstat_stop_status): Move documentation here from breakpoint.c.
6455         * infrun.c (handle_signal_stop): Before eliding inlined frames,
6456         build the stop chain and pass it to skip_inline_frames.
6457         Pass this stop chain to bpstat_stop_status.
6458         * inline-frame.c: Include breakpoint.h.
6459         (stopped_by_user_bp_inline_frame): New function.
6460         (skip_inline_frames): Add parameter `stop_chain'.
6461         Move documention to inline-frame.h.
6462         If non-NULL, use stopped_by_user_bp_inline_frame to determine
6463         whether the frame should be elided.
6464         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
6465         Add moved documentation and update for new parameter.
6466
6467 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
6468
6469         PR cli/14975
6470         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6471         unittests/format_pieces-selftests.c.
6472         * common/format.h (format_piece) <operator==>: New.
6473         (format_pieces) <operator[]>: Remove.
6474         * common/format.c (format_pieces::format_pieces): Handle \e.
6475         * unittests/format_pieces-selftests.c: New.
6476
6477 2018-05-17  Tom Tromey  <tom@tromey.com>
6478
6479         PR symtab/23010:
6480         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
6481         (dw2_instantiate_symtab): Add skip_partial parameter.
6482         (dw2_find_last_source_symtab, dw2_map_expand_apply)
6483         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
6484         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
6485         (dw2_expand_symtabs_matching_one)
6486         (dw2_find_pc_sect_compunit_symtab)
6487         (dw2_debug_names_lookup_symbol)
6488         (dw2_debug_names_expand_symtabs_for_function): Update.
6489         (init_cutu_and_read_dies): Add skip_partial parameter.
6490         (process_psymtab_comp_unit, build_type_psymtabs_1)
6491         (process_skeletonless_type_unit, load_partial_comp_unit)
6492         (psymtab_to_symtab_1): Update.
6493         (load_full_comp_unit): Add skip_partial parameter.
6494         (process_imported_unit_die, dwarf2_read_addr_index)
6495         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
6496         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
6497         (read_signatured_type): Update.
6498
6499 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
6500
6501         * value.c (release_value): Remove unused variable.
6502         (record_latest_value): Likewise.
6503         (access_value_history): Likewise.
6504         (preserve_values): Likewise.
6505
6506 2018-05-17  Tom Tromey  <tom@tromey.com>
6507
6508         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
6509         Initialize.
6510
6511 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
6512
6513         PR gdb/22286
6514         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
6515         Also handle registers whose width is not a multiple of
6516         PTRACE_TYPE_RET.
6517         (linux_nat_trad_target::store_register): Likewise.
6518
6519 2018-05-16  Tom Tromey  <tom@tromey.com>
6520
6521         * gdbcore.h (core_bfd): Redefine.
6522         * corelow.c (core_target::close): Update.
6523         (core_target_open): Update.
6524         * progspace.h (struct program_space) <cbfd>: Now a
6525         gdb_bfd_ref_ptr.
6526
6527 2018-05-16  Tom Tromey  <tom@tromey.com>
6528
6529         PR cli/19551:
6530         * symfile-add-flags.h (enum symfile_add_flags)
6531         <SYMFILE_NOT_FILENAME>: New constant.
6532         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
6533         objfile name from BFD.
6534         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
6535         * minidebug.c (find_separate_debug_file_in_section): Put
6536         ".gnu_debugdata" into BFD's file name.
6537
6538 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
6539
6540         * regcache.c (regcache_read_ftype, regcache_write_ftype):
6541         Remove.
6542
6543 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
6544
6545         PR binutils/21446
6546         * aarch64-tdep.c (aarch64_analyze_prologue,
6547         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
6548         Indicate not interested in errors.
6549
6550 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
6551
6552         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
6553         Supply the MIPS_ZERO_REGNUM register.
6554
6555 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
6556
6557         * mips-tdep.c (mask_address_var): Make variable static.
6558
6559 2018-05-14  Tom Tromey  <tom@tromey.com>
6560
6561         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
6562
6563 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
6564
6565         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
6566         FXSAVE_ADDR for the mxcsr register.
6567
6568 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
6569
6570         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
6571
6572 2018-05-11  Pedro Alves  <palves@redhat.com>
6573
6574         * corelow.c (core_target) <core_target>: No longer inline.
6575         Initialize m_core_gdbarch, m_core_vec and build the section table
6576         here.
6577         <~core_target>: New.
6578         <core_gdbarch, get_core_register_section>: New methods.
6579         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
6580         factored out from ...
6581         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
6582         (core_ops): Delete.
6583         (sniff_core_bfd): Add gdbarch parameter.
6584         (core_close): Delete, merged into ...
6585         (core_target::close): ... here.  Delete self.
6586         (core_close_cleanup): Delete.
6587         (core_target_open): Allocate a core_target on the heap.  Use a
6588         unique_ptr instead of a cleanup.  Bits moved into the core_target
6589         ctor.  Adjust to use core_target methods instead of globals.
6590         (get_core_register_section): Rename to ...
6591         (core_target::get_core_register_section): ... this and adjust.
6592         (struct get_core_registers_cb_data): New.
6593         (get_core_registers_cb): Use it.  Use bool.
6594         (core_target::fetch_registers, core_target::files_info)
6595         (core_target::xfer_partial, core_target::read_description)
6596         (core_target::pid_to, core_target::thread_name): Adjust to
6597         reference class fields instead of globals.
6598         * target.h (struct target_ops_deleter, target_ops_up): New.
6599
6600 2018-05-11  Pedro Alves  <palves@redhat.com>
6601
6602         * corefile.c (core_file_command): Move to corelow.c.
6603         * corelow.c (the_core_target): Delete.
6604         (core_file_command): Moved from corefile.c.  Check exec_bfd
6605         instead of the_core_target.  Use target_detach instead of calling
6606         into the_core_target directly.
6607         (maybe_say_no_core_file_now): New.
6608         (core_target::detach): Use it.
6609         (_initialize_corelow): Remove references to the_core_target.
6610         * gdbcore.h (the_core_target): Delete.
6611
6612 2018-05-11  Tom Tromey  <tromey@redhat.com>
6613             Pedro Alves  <palves@redhat.com>
6614
6615         * corefile.c (core_bfd): Remove.
6616         * gdbcore.h (core_bfd): Now a macro.
6617         * progspace.h (struct program_space) <cbfd>: New field.
6618
6619 2018-05-11  Tom Tromey  <tom@tromey.com>
6620
6621         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
6622         gdb::def_vector.
6623
6624 2018-05-10  Tom Tromey  <tom@tromey.com>
6625
6626         * configure: Rebuild.
6627         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
6628
6629 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
6630
6631         PR server/23158:
6632         * regformats/regdat.sh: Adjust script, following the addition
6633         of the new expedite_regs parameter to init_target_desc.
6634
6635 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
6636     
6637         PR gdb/23127
6638         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
6639         set_gdbarch_significant_addr_bit.
6640         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
6641         set_gdbarch_significant_addr_bit.
6642         * utils.c (address_significant): Update to sign extend addr.
6643
6644 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
6645
6646         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
6647         (xtensa_linux_init_abi): Limit tdep->num_regs by
6648         tdep->num_nopriv_regs.
6649         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
6650         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
6651         not initialized.
6652
6653 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
6654
6655         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
6656
6657 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
6658
6659         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
6660         (I387_MXCSR_INIT_VAL): New constant.
6661         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
6662         buffer if it was supplied by the inferior.
6663         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
6664         (i387_xsave_get_clear_bv): New function.
6665         (i387_supply_xsave): Only read x87 control registers from the
6666         xsave buffer if the feature is enabled, and the state will have
6667         been written, otherwise, provide a suitable default.
6668         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
6669         including x87 control registers.  Update control registers if they
6670         have changed from the default value, and mark features as enabled
6671         as required.
6672         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
6673
6674 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
6675
6676         * spu-tdep.c (info_spu_event_command): Fix output formatting.
6677
6678 2018-05-07  Tom Tromey  <tom@tromey.com>
6679
6680         * configure: Rebuild.
6681         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
6682
6683 2018-05-07  Tom Tromey  <tom@tromey.com>
6684
6685         PR tdep/20362:
6686         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
6687         bit.  Use correct value for VDIV.
6688
6689 2018-05-04  Tom Tromey  <tom@tromey.com>
6690
6691         * configure: Rebuild.
6692         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
6693
6694 2018-05-04  Tom Tromey  <tom@tromey.com>
6695
6696         * linux-record.c (record_linux_system_call) <case
6697         RECORD_SYS_RECVFROM>: Add "break".
6698
6699 2018-05-04  Tom Tromey  <tom@tromey.com>
6700
6701         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
6702         Add missing "break".
6703         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
6704         Add missing "break".
6705
6706 2018-05-04  Tom Tromey  <tom@tromey.com>
6707
6708         * rs6000-tdep.c (ppc_process_record_op4)
6709         (ppc_process_record_op63): Add fall-through comment.
6710
6711 2018-05-04  Tom Tromey  <tom@tromey.com>
6712
6713         * i386-tdep.c (i386_process_record): Add fall-through comment.
6714
6715 2018-05-04  Tom Tromey  <tom@tromey.com>
6716
6717         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
6718         comment.
6719
6720 2018-05-04  Tom Tromey  <tom@tromey.com>
6721
6722         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
6723         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
6724         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
6725         comment.
6726         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
6727         comment.
6728         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
6729         comment.
6730
6731 2018-05-04  Tom Tromey  <tom@tromey.com>
6732
6733         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
6734
6735 2018-05-04  Tom Tromey  <tom@tromey.com>
6736
6737         * s390-tdep.c (s390_process_record): Fix fall-through comments.
6738         * xcoffread.c (scan_xcoff_symtab): Move comment later.
6739         * symfile.c (section_is_mapped): Fix fall-through comment.
6740         * stabsread.c (define_symbol, read_member_functions): Fix
6741         fall-through comment.
6742         * s390-linux-tdep.c (s390_process_record): Fix fall-through
6743         comment.
6744         * remote.c (remote_wait_as): Fix fall-through comment.
6745         * p-exp.y (yylex): Fix fall-through comment.
6746         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
6747         comment.
6748         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
6749         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
6750         * jv-exp.y (yylex): Fix fall-through comment.
6751         * go-exp.y (lex_one_token): Fix fall-through comment.
6752         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
6753         fall-through comment.
6754         * f-exp.y (yylex): Fix fall-through comment.
6755         * dwarf2read.c (process_die): Fix fall-through comments.
6756         * dbxread.c (process_one_symbol): Fix fall-through comment.
6757         * d-exp.y (lex_one_token): Fix fall-through comment.
6758         * cp-name-parser.y (yylex): Fix fall-through comment.
6759         * coffread.c (coff_symtab_read): Fix fall-through comment.
6760         * c-exp.y (lex_one_token): Fix fall-through comment.
6761         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
6762         comment.
6763         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
6764         comment.
6765
6766 2018-05-04  Tom Tromey  <tom@tromey.com>
6767
6768         PR python/22730:
6769         * NEWS: Mention gdb.execute change.
6770         * gdbcmd.h (execute_control_command): Don't declare.
6771         * python/python.c (execute_gdb_command): Use read_command_lines_1,
6772         execute_control_commands, execute_control_commands_to_string.
6773         * cli/cli-script.h (execute_control_commands)
6774         (execute_control_commands_to_string): Declare.
6775         (execute_control_command): Add from_tty parameter.
6776         * cli/cli-script.c (execute_control_commands)
6777         (execute_control_commands_to_string): New functions.
6778         (execute_user_command): Use execute_control_commands.
6779         (execute_control_command_1): Add "from_tty" parameter.  Update.
6780         (execute_control_command): Likewise.
6781
6782 2018-05-04  Tom Tromey  <tom@tromey.com>
6783
6784         PR python/22731:
6785         * NEWS: Mention that breakpoint commands are writable.
6786         * python/py-breakpoint.c (bppy_set_commands): New function.
6787         (breakpoint_object_getset) <"commands">: Use it.
6788
6789 2018-05-04  Tom Tromey  <tom@tromey.com>
6790
6791         * tracepoint.c (actions_command): Update.
6792         * mi/mi-cmd-break.c (mi_command_line_array)
6793         (mi_command_line_array_cnt, mi_command_line_array_ptr)
6794         (mi_read_next_line): Remove.
6795         (mi_cmd_break_commands): Update.
6796         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
6797         function_view.
6798         * cli/cli-script.c (get_command_line): Update.
6799         (process_next_line): Use function_view.  Constify.
6800         (recurse_read_control_structure, read_command_lines)
6801         (read_command_lines_1): Change argument types to function_view.
6802         (do_define_command, document_command): Update.
6803         * breakpoint.h (check_tracepoint_command): Don't declare.
6804         * breakpoint.c (check_tracepoint_command): Remove.
6805         (commands_command_1, create_tracepoint_from_upload): Update.
6806
6807 2018-05-04  Tom Tromey  <tom@tromey.com>
6808
6809         PR gdb/11750:
6810         * cli/cli-script.h (enum command_control_type) <define_control>:
6811         New constant.
6812         * cli/cli-script.c (multi_line_command_p): Handle define_control.
6813         (build_command_line, execute_control_command_1)
6814         (process_next_line): Likewise.
6815         (do_define_command): New function, extracted from define_command.
6816         (define_command): Use it.
6817
6818 2018-05-04  Tom Tromey  <tom@tromey.com>
6819
6820         * tracepoint.c (actions_command): Update.
6821         * cli/cli-script.h (read_command_lines): Update.
6822         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
6823         (MAX_TMPBUF): Remove define.
6824         (define_command): Use string_printf.
6825         (document_command): Likewise.
6826         * breakpoint.c (commands_command_1): Update.
6827
6828 2018-05-04  Tom Tromey  <tom@tromey.com>
6829
6830         * top.c (execute_command): Update.
6831         * cli/cli-script.h (print_command_lines): Now varargs.
6832         * cli/cli-script.c (print_command_lines): Now varargs.
6833         (execute_control_command_1) <case while_control, case if_control>:
6834         Update.
6835
6836 2018-05-04  Tom Tromey  <tom@tromey.com>
6837
6838         * tracepoint.c (all_tracepoint_actions): Rename from
6839         all_tracepoint_actions_and_cleanup.  Change return type.
6840         (actions_command, encode_actions_1, encode_actions)
6841         (trace_dump_actions, tdump_command): Update.
6842         * remote.c (remote_download_command_source): Update.
6843         * python/python.c (gdbpy_eval_from_control_command)
6844         (python_command, python_interactive_command): Update.
6845         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
6846         * guile/guile.c (guile_command)
6847         (gdbscm_eval_from_control_command, guile_command): Update.
6848         * compile/compile.c (compile_code_command)
6849         (compile_print_command, compile_to_object): Update.
6850         * cli/cli-script.h (struct command_lines_deleter): New.
6851         (counted_command_line): New typedef.
6852         (struct command_line): Add constructor, destructor.
6853         <body_list>: Remove.
6854         <body_list_0, body_list_1>: New members.
6855         (command_line_up): Remove typedef.
6856         (read_command_lines, read_command_lines_1, get_command_line):
6857         Update.
6858         (copy_command_lines): Don't declare.
6859         * cli/cli-script.c (build_command_line): Use "new".
6860         (get_command_line): Return counted_command_line.
6861         (print_command_lines, execute_user_command)
6862         (execute_control_command_1, while_command, if_command): Update.
6863         (realloc_body_list): Remove.
6864         (process_next_line, recurse_read_control_structure): Update.
6865         (read_command_lines, read_command_lines_1): Return counted_command_line.
6866         (free_command_lines): Use "delete".
6867         (copy_command_lines): Remove.
6868         (define_command, document_command, show_user_1): Update.
6869         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
6870         a counted_command_line.
6871         * breakpoint.h (counted_command_line): Remove typedef.
6872         (breakpoint_set_commands): Update.
6873         * breakpoint.c (check_no_tracepoint_commands)
6874         (validate_commands_for_breakpoint): Update.
6875         (breakpoint_set_commands): Change commands to be a
6876         counted_command_line.
6877         (commands_command_1, update_dprintf_command_list)
6878         (create_tracepoint_from_upload): Update.
6879
6880 2018-05-04  Tom Tromey  <tom@tromey.com>
6881
6882         * cli/cli-decode.h (cmd_list_element): New constructor.
6883         (~cmd_list_element): New destructor.
6884         (struct cmd_list_element): Add initializers.
6885         * cli/cli-decode.c (do_add_cmd): Use "new".
6886         (delete_cmd): Use "delete".
6887
6888 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
6889             Pedro Alves <palves@redhat.com>
6890
6891         PR breakpoints/19806 and support for PR external/20207.
6892         * NEWS: Mention Aarch64 watchpoint improvements.
6893         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
6894         watchpoints and PR external/20207 watchpoints.
6895         * nat/aarch64-linux-hw-point.c
6896         (kernel_supports_any_contiguous_range): New.
6897         (aarch64_watchpoint_offset): New.
6898         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
6899         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
6900         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
6901         (aarch64_align_watchpoint): New parameters aligned_offset_p and
6902         next_addr_orig_p.  Support PR external/20207 watchpoints.
6903         (aarch64_downgrade_regs): New.
6904         (aarch64_dr_state_insert_one_point): New parameters offset and
6905         addr_orig.
6906         (aarch64_dr_state_remove_one_point): Likewise.
6907         (aarch64_handle_breakpoint): Update caller.
6908         (aarch64_handle_aligned_watchpoint): Likewise.
6909         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
6910         aligned_offset.
6911         (aarch64_linux_set_debug_regs): Remove const from state.  Call
6912         aarch64_downgrade_regs.
6913         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
6914         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
6915         (DR_CONTROL_MASK): ... this.
6916         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
6917         (unsigned int aarch64_watchpoint_offset): New prototype.
6918         (aarch64_linux_set_debug_regs): Remove const from state.
6919         * utils.c (align_up, align_down): Move to ...
6920         * common/common-utils.c (align_up, align_down): ... here.
6921         * utils.h (align_up, align_down): Move to ...
6922         * common/common-utils.h (align_up, align_down): ... here.
6923
6924 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
6925
6926         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
6927         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
6928         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
6929         Re-implement to match the ABI as summarized in GCC's
6930         gcc/config/sparc/sparc.c.  All callers updated.
6931         (sparc32_store_arguments): Remove assertion.
6932
6933 2018-05-04  Tom Tromey  <tom@tromey.com>
6934
6935         * printcmd.c: Don't include tui.h.
6936         (decode_format): Use skip_spaces.
6937
6938 2018-05-04  Tom Tromey  <tom@tromey.com>
6939
6940         PR gdb/22619:
6941         * printcmd.c (last_count): New global.
6942         (x_command): Use saved count when repeating.
6943
6944 2018-05-04  Tom Tromey  <tom@tromey.com>
6945
6946         * nto-procfs.c (do_closedir_cleanup): Remove.
6947         (procfs_pidlist): Use gdb_dir_up.
6948         * procfs.c (do_closedir_cleanup): Remove.
6949         (proc_update_threads): Use gdb_dir_up.
6950         * common/filestuff.h (struct gdb_dir_deleter): New.
6951         (gdb_dir_up): New typedef.
6952
6953 2018-05-04  Tom Tromey  <tom@tromey.com>
6954
6955         * ada-lang.c (print_mention_exception): Use std::string.
6956
6957 2018-05-04  Tom Tromey  <tom@tromey.com>
6958
6959         * ada-lang.c (create_excep_cond_exprs): Update.
6960         (ada_exception_catchpoint_cond_string): Use std::string.
6961
6962 2018-05-04  Tom Tromey  <tom@tromey.com>
6963
6964         * ada-lang.c (xget_renaming_scope): Return std::string.
6965         (old_renaming_is_invisible): Update.
6966
6967 2018-05-04  Tom Tromey  <tom@tromey.com>
6968
6969         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
6970         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
6971
6972 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
6973
6974         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
6975
6976 2018-05-04  Tom Tromey  <tom@tromey.com>
6977
6978         * remote.c (remote_query_supported_append): Change type.
6979         (remote_check_symbols): Update.
6980
6981 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
6982
6983         PR gdb/11420
6984         * configure.ac: Prepend libpython.
6985         * python/python-config.py: Likewise.
6986         * configure: Regenerate.
6987
6988 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
6989
6990         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
6991
6992 2018-05-03  Pedro Alves  <palves@redhat.com>
6993
6994         * s390-linux-nat.c
6995         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
6996         override.  Write 'true' instead of '1'.
6997         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
6998         declaration.
6999
7000 2018-05-02  Pedro Alves  <palves@redhat.com>
7001
7002         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
7003         add_inf_child_target.
7004         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
7005         add_inf_child_target.
7006         * aix-thread.c (aix_thread_target_info): New.
7007         (aix_thread_target) <shortname, longname, doc>: Delete.
7008         <info>: New.
7009         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
7010         add_inf_child_target.
7011         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
7012         add_inf_child_target.
7013         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
7014         add_inf_child_target.
7015         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
7016         add_inf_child_target.
7017         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
7018         add_inf_child_target.
7019         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
7020         add_inf_child_target.
7021         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
7022         add_inf_child_target.
7023         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
7024         add_inf_child_target.
7025         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
7026         add_inf_child_target.
7027         * bfd-target.c (target_bfd_target_info): New.
7028         (target_bfd) <shortname, longname, doc>: Delete.
7029         <info>: New.
7030         * bsd-kvm.c (bsd_kvm_target_info): New.
7031         (bsd_kvm_target) <shortname, longname, doc>: Delete.
7032         <info>: New.
7033         (bsd_kvm_target::open): Rename to ...
7034         (bsd_kvm_target_open): ... this.  Adjust.
7035         * bsd-uthread.c (bsd_uthread_target_info): New.
7036         (bsd_uthread_target) <shortname, longname, doc>: Delete.
7037         <info>: New.
7038         * corefile.c (core_file_command): Adjust.
7039         * corelow.c (core_target_info): New.
7040         (core_target) <shortname, longname, doc>: Delete.
7041         <info>: New.
7042         (core_target::open): Rename to ...
7043         (core_target_open): ... this.  Adjust.
7044         * ctf.c (ctf_target_info): New.
7045         (ctf_target) <shortname, longname, doc>: Delete.
7046         <info>: New.
7047         (ctf_target::open): Rename to ...
7048         (ctf_target_open): ... this.
7049         (_initialize_ctf): Adjust.
7050         * exec.c (exec_target_info): New.
7051         (exec_target) <shortname, longname, doc>: Delete.
7052         <info>: New.
7053         (exec_target::open): Rename to ...
7054         (exec_target_open): ... this.
7055         * gdbcore.h (core_target_open): Declare.
7056         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
7057         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
7058         add_inf_child_target.
7059         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
7060         add_inf_child_target.
7061         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
7062         add_inf_child_target.
7063         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
7064         add_inf_child_target.
7065         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
7066         add_inf_child_target.
7067         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
7068         add_inf_child_target.
7069         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
7070         add_inf_child_target.
7071         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
7072         add_inf_child_target.
7073         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
7074         add_inf_child_target.
7075         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
7076         add_inf_child_target.
7077         * inf-child.c (inf_child_target_info): New.
7078         (inf_child_target::info): New.
7079         (inf_child_open_target): Remove 'target' parameter.  Use
7080         get_native_target instead.
7081         (inf_child_target::open): Delete.
7082         (add_inf_child_target): New.
7083         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
7084         Delete.
7085         <info>: New.
7086         (add_inf_child_target): Declare.
7087         (inf_child_open_target): Declare.
7088         * linux-thread-db.c (thread_db_target_info): New.
7089         (thread_db_target) <shortname, longname, doc>: Delete.
7090         <info>: New.
7091         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
7092         add_inf_child_target.
7093         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
7094         add_inf_child_target.
7095         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
7096         add_inf_child_target.
7097         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
7098         add_inf_child_target.
7099         * make-target-delegates (print_class): Adjust.
7100         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
7101         add_inf_child_target.
7102         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
7103         add_inf_child_target.
7104         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
7105         add_inf_child_target.
7106         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
7107         add_inf_child_target.
7108         * nto-procfs.c (nto_native_target_info): New.
7109         (nto_procfs_target_native) <shortname, longname, doc>:
7110         Delete.
7111         <info>: New.
7112         (nto_procfs_target_info): New.
7113         (nto_procfs_target_procfs) <shortname, longname, doc>:
7114         Delete.
7115         <info>: New.
7116         (init_procfs_targets): Adjust.
7117         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
7118         add_inf_child_target.
7119         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
7120         add_inf_child_target.
7121         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
7122         add_inf_child_target.
7123         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
7124         add_inf_child_target.
7125         * ravenscar-thread.c (ravenscar_target_info): New.
7126         (ravenscar_thread_target) <shortname, longname, doc>:
7127         Delete.
7128         <info>: New.
7129         * record-btrace.c (record_btrace_target_info):
7130         (record_btrace_target) <shortname, longname, doc>: Delete.
7131         <info>: New.
7132         (record_btrace_target::open): Rename to ...
7133         (record_btrace_target_open): ... this.  Adjust.
7134         * record-full.c (record_longname, record_doc): New.
7135         (record_full_base_target) <shortname, longname, doc>: Delete.
7136         <info>: New.
7137         (record_full_target_info): New.
7138         (record_full_target): <shortname>: Delete.
7139         <info>: New.
7140         (record_full_core_open_1, record_full_open_1): Update comments.
7141         (record_full_base_target::open): Rename to ...
7142         (record_full_open): ... this.
7143         (cmd_record_full_restore): Update.
7144         (_initialize_record_full): Update.
7145         * remote-sim.c (remote_sim_target_info): New.
7146         (gdbsim_target) <shortname, longname, doc>: Delete.
7147         <info>: New.
7148         (gdbsim_target::open): Rename to ...
7149         (gdbsim_target_open): ... this.
7150         (_initialize_remote_sim): Adjust.
7151         * remote.c (remote_doc): New.
7152         (remote_target_info): New.
7153         (remote_target) <shortname, longname, doc>: Delete.
7154         <info>: New.
7155         (extended_remote_target_info): New.
7156         (extended_remote_target) <shortname, longname, doc>: Delete.
7157         <info>: New.
7158         (remote_target::open_1): Make static.  Adjust.
7159         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
7160         * s390-linux-nat.c (_initialize_s390_nat): Use
7161         add_inf_child_target.
7162         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
7163         add_inf_child_target.
7164         * sol-thread.c (thread_db_target_info): New.
7165         (sol_thread_target) <shortname, longname, doc>: Delete.
7166         <info>: New.
7167         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
7168         add_inf_child_target.
7169         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
7170         add_inf_child_target.
7171         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
7172         add_inf_child_target.
7173         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
7174         add_inf_child_target.
7175         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
7176         add_inf_child_target.
7177         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
7178         add_inf_child_target.
7179         * spu-linux-nat.c (_initialize_spu_nat): Use
7180         add_inf_child_target.
7181         * spu-multiarch.c (spu_multiarch_target_info): New.
7182         (spu_multiarch_target) <shortname, longname, doc>: Delete.
7183         <info>: New.
7184         * target-delegates.c: Regenerate.
7185         * target.c: Include <unordered_map>.
7186         (target_ops_p): Delete.
7187         (DEF_VEC_P(target_ops_p)): Delete.
7188         (target_factories): New.
7189         (test_target_info): New.
7190         (test_target_ops::info): New.
7191         (open_target): Adjust to use target_factories.
7192         (add_target_with_completer): Rename to ...
7193         (add_target): ... this.  Change prototype.  Register target_info
7194         and open callback in target_factories.  Register target_info in
7195         command context instead of target_ops.
7196         (add_target): Delete old implementation.
7197         (add_deprecated_target_alias): Change prototype.  Adjust.
7198         (the_native_target): New.
7199         (set_native_target, get_native_target): New.
7200         (find_default_run_target): Use the_native_target.
7201         (find_attach_target, find_run_target): Simplify.
7202         (target_ops::open): Delete.
7203         (dummy_target_info): New.
7204         (dummy_target::shortname, dummy_target::longname)
7205         (dummy_target::doc): Delete.
7206         (dummy_target::info): New.
7207         (debug_target::shortname, debug_target::longname)
7208         (debug_target::doc): Delete.
7209         (debug_target::info): New.
7210         * target.h (struct target_info): New.
7211         (target_ops::~target_ops): Add comment.
7212         (target_ops::info): New.
7213         (target_ops::shortname, target_ops::longname, target_ops::doc): No
7214         longer virtual.  Implement in terms of target_info.
7215         (set_native_target, get_native_target): Declare.
7216         (target_open_ftype): New.
7217         (add_target, add_target_with_completer)
7218         (add_deprecated_target_alias): Change prototype.
7219         (test_target) <shortname, longname, doc>: Delete.
7220         <info>: New.
7221         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
7222         add_inf_child_target.
7223         * tracefile-tfile.c (tfile_target_info): New.
7224         (tfile_target) <shortname, longname, doc>: Delete.
7225         <info>: New.
7226         (tfile_target::open): Rename to ...
7227         (tfile_target_open): ... this.
7228         (_initialize_tracefile_tfile): Adjust.
7229         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
7230         add_inf_child_target.
7231         * windows-nat.c (_initialize_windows_nat): Use
7232         add_inf_child_target.
7233         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
7234         add_inf_child_target.
7235
7236 2018-05-02  Pedro Alves  <palves@redhat.com>
7237
7238         * linux-nat.h (linux_nat_target) <low_new_thread,
7239         low_delete_thread, low_new_fork, low_forget_process,
7240         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
7241         New virtual methods.
7242         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
7243         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
7244         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
7245         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
7246         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
7247         Delete.
7248         * linux-fork.c (delete_fork): Adjust to call low method.
7249         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
7250         (linux_nat_new_fork, linux_nat_forget_process_hook)
7251         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
7252         (linux_nat_status_is_event):
7253         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
7254         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
7255         to call low method.
7256         (sigtrap_is_event): Rename to ...
7257         (linux_nat_target::low_status_is_event): ... this.
7258         (linux_nat_set_status_is_event): Delete.
7259         (save_stop_reason, linux_nat_wait_1)
7260         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
7261         low methods.
7262         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
7263         (linux_nat_set_new_fork, linux_nat_set_forget_process)
7264         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
7265         (linux_nat_set_prepare_to_resume): Delete.
7266         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
7267         low virtual methods.
7268         * amd64-linux-nat.c: Likewise.
7269         * arm-linux-nat.c: Likewise.
7270         * i386-linux-nat.c: Likewise.
7271         * ia64-linux-nat.c: Likewise.
7272         * mips-linux-nat.c: Likewise.
7273         * ppc-linux-nat.c: Likewise.
7274         * s390-linux-nat.c: Likewise.
7275         * sparc64-linux-nat.c: Likewise.
7276         * x86-linux-nat.c: Likewise.
7277         * x86-linux-nat.h: Include "nat/x86-linux.h".
7278         (x86_linux_nat_target) <low_new_fork, low_forget_process,
7279         low_prepare_to_resume, low_new_thread, low_delete_thread>:
7280         Override methods.
7281
7282 2018-05-02  Pedro Alves  <palves@redhat.com>
7283
7284         * target.h (target_ops)
7285         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
7286         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
7287         stopped_by_watchpoint, have_continuable_watchpoint,
7288         stopped_data_address, watchpoint_addr_within_range,
7289         can_accel_watchpoint_condition, can_run, thread_alive,
7290         has_all_memory, has_memory, has_stack, has_registers,
7291         has_execution, can_async_p, is_async_p, supports_non_stop,
7292         always_non_stop_p, can_execute_reverse, supports_multi_process,
7293         supports_enable_disable_tracepoint,
7294         supports_disable_randomization, supports_string_tracing,
7295         supports_evaluation_of_breakpoint_conditions,
7296         can_run_breakpoint_commands, filesystem_is_local,
7297         can_download_tracepoint, get_trace_state_variable_value,
7298         set_trace_notes, get_tib_address, use_agent, can_use_agent,
7299         record_is_replaying, record_will_replay,
7300         augmented_libraries_svr4_read>: Adjust to return bool.
7301         * aarch64-linux-nat.c: All implementations adjusted.
7302         * aix-thread.c: All implementations adjusted.
7303         * arm-linux-nat.c: All implementations adjusted.
7304         * breakpoint.c: All implementations adjusted.
7305         * bsd-kvm.c: All implementations adjusted.
7306         * bsd-uthread.c: All implementations adjusted.
7307         * corelow.c: All implementations adjusted.
7308         * ctf.c: All implementations adjusted.
7309         * darwin-nat.c: All implementations adjusted.
7310         * darwin-nat.h: All implementations adjusted.
7311         * exec.c: All implementations adjusted.
7312         * fbsd-nat.c: All implementations adjusted.
7313         * fbsd-nat.h: All implementations adjusted.
7314         * gnu-nat.c: All implementations adjusted.
7315         * gnu-nat.h: All implementations adjusted.
7316         * go32-nat.c: All implementations adjusted.
7317         * ia64-linux-nat.c: All implementations adjusted.
7318         * inf-child.c: All implementations adjusted.
7319         * inf-child.h: All implementations adjusted.
7320         * inf-ptrace.c: All implementations adjusted.
7321         * inf-ptrace.h: All implementations adjusted.
7322         * linux-nat.c: All implementations adjusted.
7323         * linux-nat.h: All implementations adjusted.
7324         * mips-linux-nat.c: All implementations adjusted.
7325         * nto-procfs.c: All implementations adjusted.
7326         * ppc-linux-nat.c: All implementations adjusted.
7327         * procfs.c: All implementations adjusted.
7328         * ravenscar-thread.c: All implementations adjusted.
7329         * record-btrace.c: All implementations adjusted.
7330         * record-full.c: All implementations adjusted.
7331         * remote-sim.c: All implementations adjusted.
7332         * remote.c: All implementations adjusted.
7333         * s390-linux-nat.c: All implementations adjusted.
7334         * sol-thread.c: All implementations adjusted.
7335         * spu-multiarch.c: All implementations adjusted.
7336         * target-delegates.c: All implementations adjusted.
7337         * target.c: All implementations adjusted.
7338         * target.h: All implementations adjusted.
7339         * tracefile-tfile.c: All implementations adjusted.
7340         * tracefile.c: All implementations adjusted.
7341         * tracefile.h: All implementations adjusted.
7342         * windows-nat.c: All implementations adjusted.
7343         * x86-linux-nat.h: All implementations adjusted.
7344         * x86-nat.h: All implementations adjusted.
7345
7346 2018-05-02  Pedro Alves  <palves@redhat.com>
7347
7348         * make-target-delegates (scan_target_h): Don't trim lines here.
7349         Replace sequences of tabs and/or whitespace with a single
7350         whitespace.
7351         (top level, parsing methods): Trim each line before processing it
7352         here.
7353
7354 2018-05-02  Pedro Alves  <palves@redhat.com>
7355             John Baldwin  <jhb@freebsd.org>
7356
7357         * target.h (enum strata) <debug_stratum>: New.
7358         (struct target_ops) <all delegation methods>: Replace by C++
7359         virtual methods, and drop "to_" prefix.  All references updated
7360         throughout.
7361         <to_shortname, to_longname, to_doc, to_data,
7362         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
7363         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
7364         virtual methods.  All references updated throughout.
7365         <can_attach, supports_terminal_ours, can_create_inferior,
7366         get_thread_control_capabilities, attach_no_wait>: New
7367         virtual methods.
7368         <insert_breakpoint, remove_breakpoint>: Now
7369         TARGET_DEFAULT_NORETURN methods.
7370         <info_proc>: Now returns bool.
7371         <to_magic>: Delete.
7372         (OPS_MAGIC): Delete.
7373         (current_target): Delete.  All references replaced by references
7374         to ...
7375         (target_stack): ... this.  New.
7376         (target_shortname, target_longname): Adjust.
7377         (target_can_run): Now a function declaration.
7378         (default_child_has_all_memory, default_child_has_memory)
7379         (default_child_has_stack, default_child_has_registers)
7380         (default_child_has_execution): Remove target_ops parameter.
7381         (complete_target_initialization): Delete.
7382         (memory_breakpoint_target): New template class.
7383         (test_target_ops): Refactor as a C++ class with virtual methods.
7384         * make-target-delegates (NAME_PART): Tighten.
7385         (POINTER_PART, CP_SYMBOL): New.
7386         (SIMPLE_RETURN_PART): Reimplement.
7387         (VEC_RETURN_PART): Expect less.
7388         (RETURN_PART, VIRTUAL_PART): New.
7389         (METHOD): Adjust to C++ virtual methods.
7390         (scan_target_h): Remove reference to C99.
7391         (dname): Output "target_ops::" prefix.
7392         (write_function_header): Adjust to output a C++ class method.
7393         (write_declaration): New.
7394         (write_delegator): Adjust to output a C++ class method.
7395         (tdname): Output "dummy_target::" prefix.
7396         (write_tdefault, write_debugmethod): Adjust to output a C++ class
7397         method.
7398         (tdefault_names, debug_names): Delete.
7399         (return_types, tdefaults, styles, argtypes_array): New.
7400         (top level): All methods are delegators.
7401         (print_class): New.
7402         (top level): Print dummy_target and debug_target classes.
7403         * target-delegates.c: Regenerate.
7404         * target-debug.h (target_debug_print_enum_info_proc_what)
7405         (target_debug_print_thread_control_capabilities)
7406         (target_debug_print_thread_info_p): New.
7407         * target.c (dummy_target): Delete.
7408         (the_dummy_target, the_debug_target): New.
7409         (target_stack): Now extern.
7410         (set_targetdebug): Push/unpush debug target.
7411         (default_child_has_all_memory, default_child_has_memory)
7412         (default_child_has_stack, default_child_has_registers)
7413         (default_child_has_execution): Remove target_ops parameter.
7414         (complete_target_initialization): Delete.
7415         (add_target_with_completer): No longer call
7416         complete_target_initialization.
7417         (target_supports_terminal_ours): Use regular delegation.
7418         (update_current_target): Delete.
7419         (push_target): No longer check magic number.  Don't call
7420         update_current_target.
7421         (unpush_target): Don't call update_current_target.
7422         (target_is_pushed): No longer check magic number.
7423         (target_require_runnable): Skip for all stratums over
7424         process_stratum.
7425         (target_ops::info_proc): New.
7426         (target_info_proc): Use find_target_at and
7427         find_default_run_target.
7428         (target_supports_disable_randomization): Use regular delegation.
7429         (target_get_osdata): Use find_target_at.
7430         (target_ops::open, target_ops::close, target_ops::can_attach)
7431         (target_ops::attach, target_ops::can_create_inferior)
7432         (target_ops::create_inferior, target_ops::can_run)
7433         (target_can_run): New.
7434         (default_fileio_target): Use regular delegation.
7435         (target_ops::fileio_open, target_ops::fileio_pwrite)
7436         (target_ops::fileio_pread, target_ops::fileio_fstat)
7437         (target_ops::fileio_close, target_ops::fileio_unlink)
7438         (target_ops::fileio_readlink): New.
7439         (target_fileio_open_1, target_fileio_unlink)
7440         (target_fileio_readlink): Always call the target method.  Handle
7441         FILEIO_ENOSYS.
7442         (return_zero, return_zero_has_execution): Delete.
7443         (init_dummy_target): Delete.
7444         (dummy_target::dummy_target, dummy_target::shortname)
7445         (dummy_target::longname, dummy_target::doc)
7446         (debug_target::debug_target, debug_target::shortname)
7447         (debug_target::longname, debug_target::doc): New.
7448         (target_supports_delete_record): Use regular delegation.
7449         (setup_target_debug): Delete.
7450         (maintenance_print_target_stack): Skip debug_stratum.
7451         (initialize_targets): Instantiate the_dummy_target and
7452         the_debug_target.
7453         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
7454         use target_stack.
7455         (target_auxv_search, fprint_target_auxv): Adjust.
7456         (info_auxv_command): Adjust to use target_stack.
7457         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
7458         * exceptions.c (print_flush): Handle a NULL target_stack.
7459         * regcache.c (target_ops_no_register): Refactor as class with
7460         virtual methods.
7461
7462         * exec.c (exec_target): New class.
7463         (exec_ops): Now an exec_target.
7464         (exec_open, exec_close_1, exec_get_section_table)
7465         (exec_xfer_partial, exec_files_info, exec_has_memory)
7466         (exec_make_note_section): Refactor as exec_target methods.
7467         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
7468         Delete.
7469         (exec_target::find_memory_regions): New.
7470         (_initialize_exec): Don't call init_exec_ops.
7471         * gdbcore.h (exec_file_clear): Delete.
7472
7473         * corefile.c (core_target): Delete.
7474         (core_file_command): Adjust.
7475         * corelow.c (core_target): New class.
7476         (the_core_target): New.
7477         (core_close): Remove target_ops parameter.
7478         (core_close_cleanup): Adjust.
7479         (core_target::close): New.
7480         (core_open, core_detach, get_core_registers, core_files_info)
7481         (core_xfer_partial, core_thread_alive, core_read_description)
7482         (core_pid_to_str, core_thread_name, core_has_memory)
7483         (core_has_stack, core_has_registers, core_info_proc): Rework as
7484         core_target methods.
7485         (ignore, core_remove_breakpoint, init_core_ops): Delete.
7486         (_initialize_corelow): Initialize the_core_target.
7487         * gdbcore.h (core_target): Delete.
7488         (the_core_target): New.
7489
7490         * ctf.c: (ctf_target): New class.
7491         (ctf_ops): Now a ctf_target.
7492         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
7493         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
7494         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
7495         methods.
7496         (init_ctf_ops): Delete.
7497         (_initialize_ctf): Don't call it.
7498         * tracefile-tfile.c (tfile_target): New class.
7499         (tfile_ops): Now a tfile_target.
7500         (tfile_open, tfile_close, tfile_files_info)
7501         (tfile_get_tracepoint_status, tfile_trace_find)
7502         (tfile_fetch_registers, tfile_xfer_partial)
7503         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
7504         Refactor as tfile_target methods.
7505         (tfile_xfer_partial_features): Remove target_ops parameter.
7506         (init_tfile_ops): Delete.
7507         (_initialize_tracefile_tfile): Don't call it.
7508         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
7509         (tracefile_has_stack, tracefile_has_registers)
7510         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
7511         tracefile_target methods.
7512         (init_tracefile_ops): Delete.
7513         (tracefile_target::tracefile_target): New.
7514         * tracefile.h: Include "target.h".
7515         (tracefile_target): New class.
7516         (init_tracefile_ops): Delete.
7517
7518         * spu-multiarch.c (spu_multiarch_target): New class.
7519         (spu_ops): Now a spu_multiarch_target.
7520         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
7521         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
7522         (spu_search_memory, spu_mourn_inferior): Refactor as
7523         spu_multiarch_target methods.
7524         (init_spu_ops): Delete.
7525         (_initialize_spu_multiarch): Remove references to init_spu_ops,
7526         complete_target_initialization.
7527
7528         * ravenscar-thread.c (ravenscar_thread_target): New class.
7529         (ravenscar_ops): Now a ravenscar_thread_target.
7530         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
7531         (ravenscar_thread_alive, ravenscar_pid_to_str)
7532         (ravenscar_fetch_registers, ravenscar_store_registers)
7533         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
7534         (ravenscar_stopped_by_hw_breakpoint)
7535         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
7536         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
7537         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
7538         methods.
7539         (init_ravenscar_thread_ops): Delete.
7540         (_initialize_ravenscar): Remove references to
7541         init_ravenscar_thread_ops and complete_target_initialization.
7542
7543         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
7544         (bsd_uthread_target): New class.
7545         (bsd_uthread_ops): Now a bsd_uthread_target.
7546         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
7547         (bsd_uthread_close, bsd_uthread_mourn_inferior)
7548         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
7549         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
7550         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
7551         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
7552         (bsd_uthread_target): Delete function.
7553         (_initialize_bsd_uthread): Remove reference to
7554         complete_target_initialization.
7555
7556         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
7557         (target_bfd): ... this new class.
7558         (target_bfd_xfer_partial, target_bfd_get_section_table)
7559         (target_bfd_close): Refactor as target_bfd methods.
7560         (target_bfd::~target_bfd): New.
7561         (target_bfd_reopen): Adjust.
7562         (target_bfd::close): New.
7563
7564         * record-btrace.c (record_btrace_target): New class.
7565         (record_btrace_ops): Now a record_btrace_target.
7566         (record_btrace_open, record_btrace_stop_recording)
7567         (record_btrace_disconnect, record_btrace_close)
7568         (record_btrace_async, record_btrace_info)
7569         (record_btrace_insn_history, record_btrace_insn_history_range)
7570         (record_btrace_insn_history_from, record_btrace_call_history)
7571         (record_btrace_call_history_range)
7572         (record_btrace_call_history_from, record_btrace_record_method)
7573         (record_btrace_is_replaying, record_btrace_will_replay)
7574         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
7575         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
7576         (record_btrace_store_registers, record_btrace_prepare_to_store)
7577         (record_btrace_to_get_unwinder)
7578         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
7579         (record_btrace_commit_resume, record_btrace_wait)
7580         (record_btrace_stop, record_btrace_can_execute_reverse)
7581         (record_btrace_stopped_by_sw_breakpoint)
7582         (record_btrace_supports_stopped_by_sw_breakpoint)
7583         (record_btrace_stopped_by_hw_breakpoint)
7584         (record_btrace_supports_stopped_by_hw_breakpoint)
7585         (record_btrace_update_thread_list, record_btrace_thread_alive)
7586         (record_btrace_goto_begin, record_btrace_goto_end)
7587         (record_btrace_goto, record_btrace_stop_replaying_all)
7588         (record_btrace_execution_direction)
7589         (record_btrace_prepare_to_generate_core)
7590         (record_btrace_done_generating_core): Refactor as
7591         record_btrace_target methods.
7592         (init_record_btrace_ops): Delete.
7593         (_initialize_record_btrace): Remove reference to
7594         init_record_btrace_ops.
7595         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
7596         the execution_direction global.
7597         (record_full_base_target, record_full_target)
7598         (record_full_core_target): New classes.
7599         (record_full_ops): Now a record_full_target.
7600         (record_full_core_ops): Now a record_full_core_target.
7601         (record_full_target::detach, record_full_target::disconnect)
7602         (record_full_core_target::disconnect)
7603         (record_full_target::mourn_inferior, record_full_target::kill):
7604         New.
7605         (record_full_open, record_full_close, record_full_async): Refactor
7606         as methods of the record_full_base_target class.
7607         (record_full_resume, record_full_commit_resume): Refactor
7608         as methods of the record_full_target class.
7609         (record_full_wait, record_full_stopped_by_watchpoint)
7610         (record_full_stopped_data_address)
7611         (record_full_stopped_by_sw_breakpoint)
7612         (record_full_supports_stopped_by_sw_breakpoint)
7613         (record_full_stopped_by_hw_breakpoint)
7614         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
7615         methods of the record_full_base_target class.
7616         (record_full_store_registers, record_full_xfer_partial)
7617         (record_full_insert_breakpoint, record_full_remove_breakpoint):
7618         Refactor as methods of the record_full_target class.
7619         (record_full_can_execute_reverse, record_full_get_bookmark)
7620         (record_full_goto_bookmark, record_full_execution_direction)
7621         (record_full_record_method, record_full_info, record_full_delete)
7622         (record_full_is_replaying, record_full_will_replay)
7623         (record_full_goto_begin, record_full_goto_end, record_full_goto)
7624         (record_full_stop_replaying): Refactor as methods of the
7625         record_full_base_target class.
7626         (record_full_core_resume, record_full_core_kill)
7627         (record_full_core_fetch_registers)
7628         (record_full_core_prepare_to_store)
7629         (record_full_core_store_registers, record_full_core_xfer_partial)
7630         (record_full_core_insert_breakpoint)
7631         (record_full_core_remove_breakpoint)
7632         (record_full_core_has_execution): Refactor
7633         as methods of the record_full_core_target class.
7634         (record_full_base_target::supports_delete_record): New.
7635         (init_record_full_ops): Delete.
7636         (init_record_full_core_ops): Delete.
7637         (record_full_save): Refactor as method of the
7638         record_full_base_target class.
7639         (_initialize_record_full): Remove references to
7640         init_record_full_ops and init_record_full_core_ops.
7641
7642         * remote.c (remote_target, extended_remote_target): New classes.
7643         (remote_ops): Now a remote_target.
7644         (extended_remote_ops): Now an extended_remote_target.
7645         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
7646         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
7647         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
7648         (remote_pass_signals, remote_set_syscall_catchpoint)
7649         (remote_program_signals, )
7650         (remote_thread_always_alive): Remove target_ops parameter.
7651         (remote_thread_alive, remote_thread_name)
7652         (remote_update_thread_list, remote_threads_extra_info)
7653         (remote_static_tracepoint_marker_at)
7654         (remote_static_tracepoint_markers_by_strid)
7655         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
7656         (remote_open): Refactor as methods of remote_target.
7657         (extended_remote_open, extended_remote_detach)
7658         (extended_remote_attach, extended_remote_post_attach):
7659         (extended_remote_supports_disable_randomization)
7660         (extended_remote_create_inferior): : Refactor as method of
7661         extended_remote_target.
7662         (remote_set_permissions, remote_open_1, remote_detach)
7663         (remote_follow_fork, remote_follow_exec, remote_disconnect)
7664         (remote_resume, remote_commit_resume, remote_stop)
7665         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
7666         (remote_terminal_ours, remote_wait, remote_fetch_registers)
7667         (remote_prepare_to_store, remote_store_registers)
7668         (remote_flash_erase, remote_flash_done, remote_files_info)
7669         (remote_kill, remote_mourn, remote_insert_breakpoint)
7670         (remote_remove_breakpoint, remote_insert_watchpoint)
7671         (remote_watchpoint_addr_within_range)
7672         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
7673         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
7674         (remote_supports_stopped_by_sw_breakpoint)
7675         (remote_stopped_by_hw_breakpoint)
7676         (remote_supports_stopped_by_hw_breakpoint)
7677         (remote_stopped_by_watchpoint, remote_stopped_data_address)
7678         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
7679         (remote_verify_memory): Refactor as methods of remote_target.
7680         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
7681         parameter.
7682         (remote_xfer_partial, remote_get_memory_xfer_limit)
7683         (remote_search_memory, remote_rcmd, remote_memory_map)
7684         (remote_pid_to_str, remote_get_thread_local_address)
7685         (remote_get_tib_address, remote_read_description): Refactor as
7686         methods of remote_target.
7687         (remote_target::fileio_open, remote_target::fileio_pwrite)
7688         (remote_target::fileio_pread, remote_target::fileio_close): New.
7689         (remote_hostio_readlink, remote_hostio_fstat)
7690         (remote_filesystem_is_local, remote_can_execute_reverse)
7691         (remote_supports_non_stop, remote_supports_disable_randomization)
7692         (remote_supports_multi_process, remote_supports_cond_breakpoints)
7693         (remote_supports_enable_disable_tracepoint)
7694         (remote_supports_string_tracing)
7695         (remote_can_run_breakpoint_commands, remote_trace_init)
7696         (remote_download_tracepoint, remote_can_download_tracepoint)
7697         (remote_download_trace_state_variable, remote_enable_tracepoint)
7698         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
7699         (remote_trace_start, remote_get_trace_status)
7700         (remote_get_tracepoint_status, remote_trace_stop)
7701         (remote_trace_find, remote_get_trace_state_variable_value)
7702         (remote_save_trace_data, remote_get_raw_trace_data)
7703         (remote_set_disconnected_tracing, remote_core_of_thread)
7704         (remote_set_circular_trace_buffer, remote_traceframe_info)
7705         (remote_get_min_fast_tracepoint_insn_len)
7706         (remote_set_trace_buffer_size, remote_set_trace_notes)
7707         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
7708         (remote_disable_btrace, remote_teardown_btrace)
7709         (remote_read_btrace, remote_btrace_conf)
7710         (remote_augmented_libraries_svr4_read, remote_load)
7711         (remote_pid_to_exec_file, remote_can_do_single_step)
7712         (remote_execution_direction, remote_thread_handle_to_thread_info):
7713         Refactor as methods of remote_target.
7714         (init_remote_ops, init_extended_remote_ops): Delete.
7715         (remote_can_async_p, remote_is_async_p, remote_async)
7716         (remote_thread_events, remote_upload_tracepoints)
7717         (remote_upload_trace_state_variables): Refactor as methods of
7718         remote_target.
7719         (_initialize_remote): Remove references to init_remote_ops and
7720         init_extended_remote_ops.
7721
7722         * remote-sim.c (gdbsim_target): New class.
7723         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
7724         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
7725         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
7726         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
7727         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
7728         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
7729         Refactor as methods of gdbsim_target.
7730         (gdbsim_ops): Now a gdbsim_target.
7731         (init_gdbsim_ops): Delete.
7732         (gdbsim_cntrl_c): Adjust.
7733         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
7734
7735         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
7736         (the_amd64_linux_nat_target): New.
7737         (amd64_linux_fetch_inferior_registers)
7738         (amd64_linux_store_inferior_registers): Refactor as methods of
7739         amd64_linux_nat_target.
7740         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
7741         * i386-linux-nat.c: Don't include "linux-nat.h".
7742         (i386_linux_nat_target): New class.
7743         (the_i386_linux_nat_target): New.
7744         (i386_linux_fetch_inferior_registers)
7745         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
7746         as methods of i386_linux_nat_target.
7747         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
7748         * inf-child.c (inf_child_ops): Delete.
7749         (inf_child_fetch_inferior_registers)
7750         (inf_child_store_inferior_registers): Delete.
7751         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
7752         methods of inf_child_target.
7753         (inf_child_target::supports_terminal_ours)
7754         (inf_child_target::terminal_init)
7755         (inf_child_target::terminal_inferior)
7756         (inf_child_target::terminal_ours_for_output)
7757         (inf_child_target::terminal_ours, inf_child_target::interrupt)
7758         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
7759         New.
7760         (inf_child_open, inf_child_disconnect, inf_child_close)
7761         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
7762         (inf_child_post_startup_inferior, inf_child_can_run)
7763         (inf_child_pid_to_exec_file): Refactor as methods of
7764         inf_child_target.
7765         (inf_child_follow_fork): Delete.
7766         (inf_child_target::can_create_inferior)
7767         (inf_child_target::can_attach): New.
7768         (inf_child_target::has_all_memory, inf_child_target::has_memory)
7769         (inf_child_target::has_stack, inf_child_target::has_registers)
7770         (inf_child_target::has_execution): New.
7771         (inf_child_fileio_open, inf_child_fileio_pwrite)
7772         (inf_child_fileio_pread, inf_child_fileio_fstat)
7773         (inf_child_fileio_close, inf_child_fileio_unlink)
7774         (inf_child_fileio_readlink, inf_child_use_agent)
7775         (inf_child_can_use_agent): Refactor as methods of
7776         inf_child_target.
7777         (return_zero, inf_child_target): Delete.
7778         (inf_child_target::inf_child_target): New.
7779         * inf-child.h: Include "target.h".
7780         (inf_child_target): Delete function prototype.
7781         (inf_child_target): New class.
7782         (inf_child_open_target, inf_child_mourn_inferior)
7783         (inf_child_maybe_unpush_target): Delete.
7784         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
7785         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
7786         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
7787         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
7788         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
7789         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
7790         (inf_ptrace_wait, inf_ptrace_xfer_partial)
7791         (inf_ptrace_thread_alive, inf_ptrace_files_info)
7792         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
7793         methods of inf_ptrace_target.
7794         (inf_ptrace_target): Delete function.
7795         * inf-ptrace.h: Include "inf-child.h".
7796         (inf_ptrace_target): Delete function declaration.
7797         (inf_ptrace_target): New class.
7798         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
7799         * linux-nat.c (linux_target): New.
7800         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
7801         (linux_nat_target::~linux_nat_target): New.
7802         (linux_child_post_attach, linux_child_post_startup_inferior)
7803         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
7804         (linux_child_remove_fork_catchpoint)
7805         (linux_child_insert_vfork_catchpoint)
7806         (linux_child_remove_vfork_catchpoint)
7807         (linux_child_insert_exec_catchpoint)
7808         (linux_child_remove_exec_catchpoint)
7809         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
7810         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
7811         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
7812         (linux_nat_stopped_data_address)
7813         (linux_nat_stopped_by_sw_breakpoint)
7814         (linux_nat_supports_stopped_by_sw_breakpoint)
7815         (linux_nat_stopped_by_hw_breakpoint)
7816         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
7817         (linux_nat_kill, linux_nat_mourn_inferior)
7818         (linux_nat_xfer_partial, linux_nat_thread_alive)
7819         (linux_nat_update_thread_list, linux_nat_pid_to_str)
7820         (linux_nat_thread_name, linux_child_pid_to_exec_file)
7821         (linux_child_static_tracepoint_markers_by_strid)
7822         (linux_nat_is_async_p, linux_nat_can_async_p)
7823         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
7824         (linux_nat_supports_multi_process)
7825         (linux_nat_supports_disable_randomization, linux_nat_async)
7826         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
7827         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
7828         (linux_nat_fileio_open, linux_nat_fileio_readlink)
7829         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
7830         methods of linux_nat_target.
7831         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
7832         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
7833         parameter.
7834         (check_stopped_by_watchpoint): Adjust.
7835         (linux_xfer_partial): Delete.
7836         (linux_target_install_ops, linux_target, linux_nat_add_target):
7837         Delete.
7838         (linux_nat_target::linux_nat_target): New.
7839         * linux-nat.h: Include "inf-ptrace.h".
7840         (linux_nat_target): New.
7841         (linux_target, linux_target_install_ops, linux_nat_add_target):
7842         Delete function declarations.
7843         (linux_target): Declare global.
7844         * linux-thread-db.c (thread_db_target): New.
7845         (thread_db_target::thread_db_target): New.
7846         (thread_db_ops): Delete.
7847         (the_thread_db_target): New.
7848         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
7849         (thread_db_update_thread_list, thread_db_pid_to_str)
7850         (thread_db_extra_thread_info)
7851         (thread_db_thread_handle_to_thread_info)
7852         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
7853         (thread_db_resume): Refactor as methods of thread_db_target.
7854         (init_thread_db_ops): Delete.
7855         (_initialize_thread_db): Remove reference to init_thread_db_ops.
7856         * x86-linux-nat.c: Don't include "linux-nat.h".
7857         (super_post_startup_inferior): Delete.
7858         (x86_linux_nat_target::~x86_linux_nat_target): New.
7859         (x86_linux_child_post_startup_inferior)
7860         (x86_linux_read_description, x86_linux_enable_btrace)
7861         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
7862         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
7863         methods of x86_linux_nat_target.
7864         (x86_linux_create_target): Delete.  Bits folded ...
7865         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
7866         pointer.
7867         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
7868         (x86_linux_nat_target): New class.
7869         (x86_linux_create_target): Delete.
7870         (x86_linux_add_target): Now takes a linux_nat_target pointer.
7871         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
7872         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
7873         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
7874         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
7875         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
7876         make extern.
7877         (x86_use_watchpoints): Delete.
7878         * x86-nat.h: Include "breakpoint.h" and "target.h".
7879         (x86_use_watchpoints): Delete.
7880         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
7881         (x86_stopped_by_watchpoint, x86_stopped_data_address)
7882         (x86_insert_watchpoint, x86_remove_watchpoint)
7883         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
7884         (x86_stopped_by_hw_breakpoint): New declarations.
7885         (x86_nat_target): New template class.
7886
7887         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
7888         (the_ppc_linux_nat_target): New.
7889         (ppc_linux_fetch_inferior_registers)
7890         (ppc_linux_can_use_hw_breakpoint)
7891         (ppc_linux_region_ok_for_hw_watchpoint)
7892         (ppc_linux_ranged_break_num_registers)
7893         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
7894         (ppc_linux_insert_mask_watchpoint)
7895         (ppc_linux_remove_mask_watchpoint)
7896         (ppc_linux_can_accel_watchpoint_condition)
7897         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
7898         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
7899         (ppc_linux_watchpoint_addr_within_range)
7900         (ppc_linux_masked_watch_num_registers)
7901         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
7902         (ppc_linux_read_description): Refactor as methods of
7903         ppc_linux_nat_target.
7904         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
7905
7906         * procfs.c (procfs_xfer_partial): Delete forward declaration.
7907         (procfs_target): New class.
7908         (the_procfs_target): New.
7909         (procfs_target): Delete function.
7910         (procfs_auxv_parse, procfs_attach, procfs_detach)
7911         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
7912         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
7913         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
7914         (procfs_create_inferior, procfs_update_thread_list)
7915         (procfs_thread_alive, procfs_pid_to_str)
7916         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
7917         (procfs_stopped_data_address, procfs_insert_watchpoint)
7918         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
7919         (proc_find_memory_regions, procfs_info_proc)
7920         (procfs_make_note_section): Refactor as methods of procfs_target.
7921         (_initialize_procfs): Adjust.
7922         * sol-thread.c (sol_thread_target): New class.
7923         (sol_thread_ops): Now a sol_thread_target.
7924         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
7925         (sol_thread_fetch_registers, sol_thread_store_registers)
7926         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
7927         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
7928         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
7929         (init_sol_thread_ops): Delete.
7930         (_initialize_sol_thread): Adjust.  Remove references to
7931         init_sol_thread_ops and complete_target_initialization.
7932
7933         * windows-nat.c (windows_nat_target): New class.
7934         (windows_fetch_inferior_registers)
7935         (windows_store_inferior_registers, windows_resume, windows_wait)
7936         (windows_attach, windows_detach, windows_pid_to_exec_file)
7937         (windows_files_info, windows_create_inferior)
7938         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
7939         (windows_close, windows_pid_to_str, windows_xfer_partial)
7940         (windows_get_tib_address, windows_get_ada_task_ptid)
7941         (windows_thread_name, windows_thread_alive): Refactor as
7942         windows_nat_target methods.
7943         (do_initial_windows_stuff): Adjust.
7944         (windows_target): Delete function.
7945         (_initialize_windows_nat): Adjust.
7946
7947         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
7948         (darwin_mourn_inferior, darwin_kill_inferior)
7949         (darwin_create_inferior, darwin_attach, darwin_detach)
7950         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
7951         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
7952         (darwin_supports_multi_process): Refactor as darwin_nat_target
7953         methods.
7954         (darwin_resume_to, darwin_files_info): Delete.
7955         (_initialize_darwin_inferior): Rename to ...
7956         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
7957         * darwin-nat.h: Include "inf-child.h".
7958         (darwin_nat_target): New class.
7959         (darwin_complete_target): Delete.
7960         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
7961         (darwin_target): New.
7962         (i386_darwin_fetch_inferior_registers)
7963         (i386_darwin_store_inferior_registers): Refactor as methods of
7964         darwin_nat_target.
7965         (darwin_complete_target): Delete, with ...
7966         (_initialize_i386_darwin_nat): ... bits factored out here.
7967
7968         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
7969         (the_alpha_linux_nat_target): New.
7970         (alpha_linux_register_u_offset): Refactor as
7971         alpha_linux_nat_target method.
7972         (_initialize_alpha_linux_nat): Adjust.
7973         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
7974         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
7975         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
7976         methods of linux_nat_trad_target.
7977         (linux_trad_target): Delete.
7978         * linux-nat-trad.h (linux_trad_target): Delete function.
7979         (linux_nat_trad_target): New class.
7980         * mips-linux-nat.c (mips_linux_nat_target): New class.
7981         (super_fetch_registers, super_store_registers, super_close):
7982         Delete.
7983         (the_mips_linux_nat_target): New.
7984         (mips64_linux_regsets_fetch_registers)
7985         (mips64_linux_regsets_store_registers)
7986         (mips64_linux_fetch_registers, mips64_linux_store_registers)
7987         (mips_linux_register_u_offset, mips_linux_read_description)
7988         (mips_linux_can_use_hw_breakpoint)
7989         (mips_linux_stopped_by_watchpoint)
7990         (mips_linux_stopped_data_address)
7991         (mips_linux_region_ok_for_hw_watchpoint)
7992         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
7993         (mips_linux_close): Refactor as methods of mips_linux_nat.
7994         (_initialize_mips_linux_nat): Adjust to C++ification.
7995
7996         * aix-thread.c (aix_thread_target): New class.
7997         (aix_thread_ops): Now an aix_thread_target.
7998         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
7999         (aix_thread_fetch_registers, aix_thread_store_registers)
8000         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
8001         (aix_thread_thread_alive, aix_thread_pid_to_str)
8002         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
8003         Refactor as methods of aix_thread_target.
8004         (init_aix_thread_ops): Delete.
8005         (_initialize_aix_thread): Remove references to init_aix_thread_ops
8006         and complete_target_initialization.
8007         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
8008         (rs6000_nat_target): New class.
8009         (the_rs6000_nat_target): New.
8010         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
8011         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
8012         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
8013         (super_create_inferior): Delete.
8014         (_initialize_rs6000_nat): Adjust to C++ification.
8015
8016         * arm-linux-nat.c (arm_linux_nat_target): New class.
8017         (the_arm_linux_nat_target): New.
8018         (arm_linux_fetch_inferior_registers)
8019         (arm_linux_store_inferior_registers, arm_linux_read_description)
8020         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
8021         (arm_linux_remove_hw_breakpoint)
8022         (arm_linux_region_ok_for_hw_watchpoint)
8023         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
8024         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
8025         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
8026         arm_linux_nat_target.
8027         (_initialize_arm_linux_nat): Adjust to C++ification.
8028
8029         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
8030         (the_aarch64_linux_nat_target): New.
8031         (aarch64_linux_fetch_inferior_registers)
8032         (aarch64_linux_store_inferior_registers)
8033         (aarch64_linux_child_post_startup_inferior)
8034         (aarch64_linux_read_description)
8035         (aarch64_linux_can_use_hw_breakpoint)
8036         (aarch64_linux_insert_hw_breakpoint)
8037         (aarch64_linux_remove_hw_breakpoint)
8038         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
8039         (aarch64_linux_region_ok_for_hw_watchpoint)
8040         (aarch64_linux_stopped_data_address)
8041         (aarch64_linux_stopped_by_watchpoint)
8042         (aarch64_linux_watchpoint_addr_within_range)
8043         (aarch64_linux_can_do_single_step): Refactor as methods of
8044         aarch64_linux_nat_target.
8045         (super_post_startup_inferior): Delete.
8046         (_initialize_aarch64_linux_nat): Adjust to C++ification.
8047
8048         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
8049         (the_hppa_linux_nat_target): New.
8050         (hppa_linux_fetch_inferior_registers)
8051         (hppa_linux_store_inferior_registers): Refactor as methods of
8052         hppa_linux_nat_target.
8053         (_initialize_hppa_linux_nat): Adjust to C++ification.
8054
8055         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
8056         (the_ia64_linux_nat_target): New.
8057         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
8058         (ia64_linux_stopped_data_address)
8059         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
8060         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
8061         ia64_linux_nat_target methods.
8062         (super_xfer_partial): Delete.
8063         (_initialize_ia64_linux_nat): Adjust to C++ification.
8064
8065         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
8066         (the_m32r_linux_nat_target): New.
8067         (m32r_linux_fetch_inferior_registers)
8068         (m32r_linux_store_inferior_registers): Refactor as
8069         m32r_linux_nat_target methods.
8070         (_initialize_m32r_linux_nat): Adjust to C++ification.
8071
8072         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
8073         (the_m68k_linux_nat_target): New.
8074         (m68k_linux_fetch_inferior_registers)
8075         (m68k_linux_store_inferior_registers): Refactor as
8076         m68k_linux_nat_target methods.
8077         (_initialize_m68k_linux_nat): Adjust to C++ification.
8078
8079         * s390-linux-nat.c (s390_linux_nat_target): New class.
8080         (the_s390_linux_nat_target): New.
8081         (s390_linux_fetch_inferior_registers)
8082         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
8083         (s390_insert_watchpoint, s390_remove_watchpoint)
8084         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
8085         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
8086         (s390_auxv_parse, s390_read_description): Refactor as methods of
8087         s390_linux_nat_target.
8088         (_initialize_s390_nat): Adjust to C++ification.
8089
8090         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
8091         (the_sparc_linux_nat_target): New.
8092         (_initialize_sparc_linux_nat): Adjust to C++ification.
8093         * sparc-nat.c (sparc_fetch_inferior_registers)
8094         (sparc_store_inferior_registers): Remove target_ops parameter.
8095         * sparc-nat.h (sparc_fetch_inferior_registers)
8096         (sparc_store_inferior_registers): Remove target_ops parameter.
8097         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
8098         (the_sparc64_linux_nat_target): New.
8099         (_initialize_sparc64_linux_nat): Adjust to C++ification.
8100
8101         * spu-linux-nat.c (spu_linux_nat_target): New class.
8102         (the_spu_linux_nat_target): New.
8103         (spu_child_post_startup_inferior, spu_child_post_attach)
8104         (spu_child_wait, spu_fetch_inferior_registers)
8105         (spu_store_inferior_registers, spu_xfer_partial)
8106         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
8107         methods.
8108         (_initialize_spu_nat): Adjust to C++ification.
8109
8110         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
8111         (the_tilegx_linux_nat_target): New.
8112         (fetch_inferior_registers, store_inferior_registers):
8113         Refactor as methods.
8114         (_initialize_tile_linux_nat): Adjust to C++ification.
8115
8116         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
8117         (the_xtensa_linux_nat_target): New.
8118         (xtensa_linux_fetch_inferior_registers)
8119         (xtensa_linux_store_inferior_registers): Refactor as
8120         xtensa_linux_nat_target methods.
8121         (_initialize_xtensa_linux_nat): Adjust to C++ification.
8122
8123         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
8124         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
8125         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
8126         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
8127         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
8128         (fbsd_stopped_by_sw_breakpoint)
8129         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
8130         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
8131         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
8132         (fbsd_post_startup_inferior, fbsd_post_attach)
8133         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
8134         (fbsd_set_syscall_catchpoint)
8135         (super_xfer_partial, super_resume, super_wait)
8136         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
8137         (fbsd_handle_debug_trap): Remove target_ops parameter.
8138         (fbsd_nat_add_target): Delete.
8139         * fbsd-nat.h: Include "inf-ptrace.h".
8140         (fbsd_nat_add_target): Delete.
8141         (USE_SIGTRAP_SIGINFO): Define.
8142         (fbsd_nat_target): New class.
8143
8144         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
8145         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
8146         (amd64bsd_target): Delete.
8147         * amd64-bsd-nat.h: New file.
8148         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
8149         "x86-bsd-nat.h".
8150         (amd64_fbsd_nat_target): New class.
8151         (the_amd64_fbsd_nat_target): New.
8152         (amd64fbsd_read_description): Refactor as method of
8153         amd64_fbsd_nat_target.
8154         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
8155         (_initialize_amd64fbsd_nat): Adjust to C++ification.
8156         * amd64-nat.h (amd64bsd_target): Delete function declaration.
8157         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
8158         (i386bsd_store_inferior_registers): Remove target_ops parameter.
8159         (i386bsd_target): Delete.
8160         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
8161         (i386bsd_fetch_inferior_registers)
8162         (i386bsd_store_inferior_registers): Declare.
8163         (i386_bsd_nat_target): New class.
8164         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
8165         (the_i386_fbsd_nat_target): New.
8166         (i386fbsd_resume, i386fbsd_read_description): Refactor as
8167         i386_fbsd_nat_target methods.
8168         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
8169         (_initialize_i386fbsd_nat): Adjust to C++ification.
8170         * x86-bsd-nat.c (super_mourn_inferior): Delete.
8171         (x86bsd_mourn_inferior, x86bsd_target): Delete.
8172         (_initialize_x86_bsd_nat): Adjust to C++ification.
8173         * x86-bsd-nat.h: Include "x86-nat.h".
8174         (x86bsd_target): Delete declaration.
8175         (x86bsd_nat_target): New class.
8176
8177         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
8178         (the_aarch64_fbsd_nat_target): New.
8179         (aarch64_fbsd_fetch_inferior_registers)
8180         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
8181         aarch64_fbsd_nat_target.
8182         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
8183         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
8184         (the_alpha_bsd_nat_target): New.
8185         (alphabsd_fetch_inferior_registers)
8186         (alphabsd_store_inferior_registers): Refactor as
8187         alpha_bsd_nat_target methods.
8188         (_initialize_alphabsd_nat): Refactor as methods of
8189         alpha_bsd_nat_target.
8190         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
8191         (the_amd64_nbsd_nat_target): New.
8192         (_initialize_amd64nbsd_nat): Adjust to C++ification.
8193         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
8194         (the_amd64_obsd_nat_target): New.
8195         (_initialize_amd64obsd_nat): Adjust to C++ification.
8196         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
8197         (the_arm_fbsd_nat_target): New.
8198         (arm_fbsd_fetch_inferior_registers)
8199         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
8200         (_initialize_arm_fbsd_nat): Refactor as methods of
8201         arm_fbsd_nat_target.
8202         (_initialize_arm_fbsd_nat): Adjust to C++ification.
8203         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
8204         (the_arm_netbsd_nat_target): New.
8205         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
8206         arm_netbsd_nat_target.
8207         (_initialize_arm_netbsd_nat): Adjust to C++ification.
8208         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
8209         (the_hppa_nbsd_nat_target): New.
8210         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
8211         hppa_nbsd_nat_target methods.
8212         (_initialize_hppanbsd_nat): Adjust to C++ification.
8213         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
8214         (the_hppa_obsd_nat_target): New.
8215         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
8216         methods of hppa_obsd_nat_target.
8217         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
8218         add_target.
8219         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
8220         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
8221         add_target.
8222         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
8223         (_initialize_i386obsd_nat): Use add_target.
8224         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
8225         (the_m68k_bsd_nat_target): New.
8226         (m68kbsd_fetch_inferior_registers)
8227         (m68kbsd_store_inferior_registers): Refactor as methods of
8228         m68k_bsd_nat_target.
8229         (_initialize_m68kbsd_nat): Adjust to C++ification.
8230         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
8231         (the_mips_fbsd_nat_target): New.
8232         (mips_fbsd_fetch_inferior_registers)
8233         (mips_fbsd_store_inferior_registers): Refactor as methods of
8234         mips_fbsd_nat_target.
8235         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
8236         add_target.
8237         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
8238         (the_mips_nbsd_nat_target): New.
8239         (mipsnbsd_fetch_inferior_registers)
8240         (mipsnbsd_store_inferior_registers): Refactor as methods of
8241         mips_nbsd_nat_target.
8242         (_initialize_mipsnbsd_nat): Adjust to C++ification.
8243         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
8244         (the_mips64_obsd_nat_target): New.
8245         (mips64obsd_fetch_inferior_registers)
8246         (mips64obsd_store_inferior_registers): Refactor as methods of
8247         mips64_obsd_nat_target.
8248         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
8249         add_target.
8250         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
8251         nbsd_nat_target.
8252         * nbsd-nat.h: Include "inf-ptrace.h".
8253         (nbsd_nat_target): New class.
8254         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
8255         (obsd_wait): Refactor as methods of obsd_nat_target.
8256         (obsd_add_target): Delete.
8257         * obsd-nat.h: Include "inf-ptrace.h".
8258         (obsd_nat_target): New class.
8259         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
8260         (the_ppc_fbsd_nat_target): New.
8261         (ppcfbsd_fetch_inferior_registers)
8262         (ppcfbsd_store_inferior_registers): Refactor as methods of
8263         ppc_fbsd_nat_target.
8264         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
8265         add_target.
8266         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
8267         (the_ppc_nbsd_nat_target): New.
8268         (ppcnbsd_fetch_inferior_registers)
8269         (ppcnbsd_store_inferior_registers): Refactor as methods of
8270         ppc_nbsd_nat_target.
8271         (_initialize_ppcnbsd_nat): Adjust to C++ification.
8272         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
8273         (the_ppc_obsd_nat_target): New.
8274         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
8275         methods of ppc_obsd_nat_target.
8276         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
8277         add_target.
8278         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
8279         (the_sh_nbsd_nat_target): New.
8280         (shnbsd_fetch_inferior_registers)
8281         (shnbsd_store_inferior_registers): Refactor as methods of
8282         sh_nbsd_nat_target.
8283         (_initialize_shnbsd_nat): Adjust to C++ification.
8284         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
8285         (inf_ptrace_xfer_partial): Delete.
8286         (sparc_xfer_partial, sparc_target): Delete.
8287         * sparc-nat.h (sparc_fetch_inferior_registers)
8288         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
8289         (sparc_target): Delete function declaration.
8290         (sparc_target): New template class.
8291         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
8292         (_initialize_sparcnbsd_nat): Adjust to C++ification.
8293         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
8294         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
8295         add_target.
8296         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
8297         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
8298         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
8299         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
8300         add_target.
8301         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
8302         (the_vax_bsd_nat_target): New.
8303         (vaxbsd_fetch_inferior_registers)
8304         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
8305         methods.
8306         (_initialize_vaxbsd_nat): Adjust to C++ification.
8307
8308         * bsd-kvm.c (bsd_kvm_target): New class.
8309         (bsd_kvm_ops): Now a bsd_kvm_target.
8310         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
8311         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
8312         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
8313         bsd_kvm_target.
8314         (bsd_kvm_return_one): Delete.
8315         (bsd_kvm_add_target): Adjust to C++ification.
8316
8317         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
8318         (nto_procfs_target_procfs): New classes.
8319         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
8320         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
8321         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
8322         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
8323         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
8324         (procfs_remove_hw_breakpoint, procfs_resume)
8325         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
8326         (procfs_kill_inferior, procfs_store_registers)
8327         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
8328         as methods of nto_procfs_target.
8329         (nto_procfs_ops): Now an nto_procfs_target_procfs.
8330         (nto_native_ops): Delete.
8331         (procfs_open, procfs_native_open): Delete.
8332         (nto_native_ops): Now an nto_procfs_target_native.
8333         (init_procfs_targets): Adjust to C++ification.
8334         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
8335         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
8336         Refactor as methods of nto_procfs_target.
8337
8338         * go32-nat.c (go32_nat_target): New class.
8339         (the_go32_nat_target): New.
8340         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
8341         (go32_store_registers, go32_xfer_partial, go32_files_info)
8342         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
8343         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
8344         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
8345         (go32_pid_to_str): Refactor as methods of go32_nat_target.
8346         (go32_target): Delete.
8347         (_initialize_go32_nat): Adjust to C++ification.
8348
8349         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
8350         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
8351         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
8352         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
8353         gnu_nat_target.
8354         (gnu_target): Delete.
8355         * gnu-nat.h (gnu_target): Delete.
8356         (gnu_nat_target): New class.
8357         * i386-gnu-nat.c (gnu_base_target): New.
8358         (i386_gnu_nat_target): New class.
8359         (the_i386_gnu_nat_target): New.
8360         (_initialize_i386gnu_nat): Adjust to C++ification.
8361
8362 2018-05-02  Pedro Alves  <palves@redhat.com>
8363
8364         * bfd-target.c (target_bfd_xclose): Rename to ...
8365         (target_bfd_close): ... this.
8366         (target_bfd_reopen): Adjust.
8367         * target.c (target_close): Remove references to to_xclose.
8368         * target.h (target_ops::to_xclose): Delete.
8369         (target_ops::to_close): Update comments.
8370
8371 2018-05-02  Pedro Alves  <palves@redhat.com>
8372
8373         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
8374         "linux-nat.h".
8375         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
8376         * inf-ptrace.c (inf_ptrace_register_u_offset)
8377         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
8378         (inf_ptrace_store_register, inf_ptrace_store_registers)
8379         (inf_ptrace_trad_target): Move to ...
8380         * linux-nat-trad.c: ... this new file.
8381         * linux-nat-trad.h: New file.
8382         * linux-nat.c (linux_target_install_ops): Make extern.
8383         (linux_trad_target): Delete.
8384         * linux-nat.h (linux_trad_target): Delete declaration.
8385         (linux_target_install_ops): Declare.
8386         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
8387         "linux-nat.h".
8388
8389 2018-05-02  Pedro Alves  <palves@redhat.com>
8390
8391         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
8392         procfs_target/add_target here.
8393         * procfs.c (procfs_target): Make static.
8394         (_initialize_procfs): Call add_target here.
8395         * procfs.h (struct target_ops): Remove forward declaration.
8396         (procfs_target): Remove declaration.
8397         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
8398
8399 2018-05-02  Pedro Alves  <palves@redhat.com>
8400
8401         * procfs.c (procfs_stopped_by_watchpoint)
8402         (procfs_insert_watchpoint, procfs_remove_watchpoint)
8403         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
8404         Forward declare.
8405         (procfs_use_watchpoints): Delete, move contents...
8406         (procfs_target): ... here.
8407         * procfs.h (procfs_use_watchpoints): Delete declaration.
8408         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
8409         procfs_use_watchpoints.
8410         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
8411         procfs_use_watchpoints.
8412
8413 2018-05-02  Tom Tromey  <tom@tromey.com>
8414
8415         PR python/20084:
8416         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
8417         and var_zuinteger_unlimited.
8418         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
8419         and PARAM_ZUINTEGER_UNLIMITED.
8420         (set_parameter_value): Handle var_zuinteger and
8421         var_zuinteger_unlimited.
8422         (add_setshow_generic): Likewise.
8423         (parmpy_init): Likewise.
8424
8425 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
8426
8427         PR rust/23124
8428         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
8429         pointer is not null before dereferencing it.
8430
8431 2018-04-30  Tom Tromey  <tom@tromey.com>
8432
8433         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
8434         is_mi_like_p.
8435
8436 2018-04-30  Tom Tromey  <tom@tromey.com>
8437
8438         * breakpoint.c (mention): Remove use of is_mi_like_p.
8439         (print_mention_ranged_breakpoint): Likewise.
8440         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
8441         of is_mi_like_p.
8442
8443 2018-04-30  Tom Tromey  <tom@tromey.com>
8444
8445         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
8446
8447 2018-04-30  Tom Tromey  <tom@tromey.com>
8448
8449         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
8450         (info_spu_event_command): Remove some uses of is_mi_like_p.
8451
8452 2018-04-30  Tom Tromey  <tom@tromey.com>
8453
8454         * python/py-framefilter.c (py_print_single_arg)
8455         (enumerate_locals, py_print_args, py_print_frame): Remove some
8456         uses of is_mi_like_p.
8457
8458 2018-04-30  Tom Tromey  <tom@tromey.com>
8459
8460         * ui-out.c: Update.
8461         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
8462         * ui-out.h (ui_out::is_mi_like_p): Now const.
8463         (ui_out::do_is_mi_like_p): Now const.
8464         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
8465
8466 2018-04-30  Tom Tromey  <tom@tromey.com>
8467
8468         * varobj.c (varobj_set_visualizer): Use new_reference.
8469         * python/python.c (gdbpy_decode_line): Use new_reference.
8470         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
8471         new_reference.
8472
8473 2018-04-30  Tom Tromey  <tom@tromey.com>
8474
8475         * varobj.c (install_new_value): Use new_reference.
8476         * value.h (value_incref): Return void.  Swap intro comment with
8477         value_decref.
8478         * value.c (set_value_parent): Use new_reference.
8479         (value_incref): Return void.  Update intro comment.
8480         (release_value): Use new_reference.
8481         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
8482
8483 2018-04-30  Tom Tromey  <tom@tromey.com>
8484
8485         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
8486         * gdb_bfd.h (new_bfd_ref): Remove.
8487         (gdb_bfd_open): Update comment.
8488         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
8489         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
8490         (gdb_bfd_fdopenr): Use new_reference.
8491         * exec.c (exec_file_attach): Use new_reference.
8492
8493 2018-04-30  Tom Tromey  <tom@tromey.com>
8494
8495         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
8496         method.
8497
8498 2018-04-30  Tom Tromey  <tom@tromey.com>
8499
8500         * jit.c (jit_read_code_entry): Use type_align.
8501         * i386-tdep.c (i386_gdbarch_init): Don't call
8502         set_gdbarch_long_long_align_bit.
8503         * gdbarch.sh: Remove long_long_align_bit.
8504         * gdbarch.c, gdbarch.h: Rebuild.
8505         * arc-tdep.c (arc_type_align): New function.
8506         (arc_gdbarch_init): Use arc_type_align.  Don't call
8507         set_gdbarch_long_long_align_bit.
8508
8509 2018-04-30  Tom Tromey  <tom@tromey.com>
8510
8511         * rust-lang.c (rust_type_alignment): Remove.
8512         (rust_composite_type): Use type_align.
8513
8514 2018-04-30  Tom Tromey  <tom@tromey.com>
8515
8516         * NEWS: Mention Type.align.
8517         * python/py-type.c (typy_get_alignof): New function.
8518         (type_object_getset): Add "alignof".
8519
8520 2018-04-30  Tom Tromey  <tom@tromey.com>
8521
8522         PR exp/17095:
8523         * NEWS: Update.
8524         * std-operator.def (UNOP_ALIGNOF): New operator.
8525         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
8526         New.
8527         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
8528         * c-lang.c (c_op_print_tab): Add alignof.
8529         * c-exp.y (ALIGNOF): New token.
8530         (exp): Add "ALIGNOF" production.
8531         (ident_tokens): Add _Alignof and alignof.
8532
8533 2018-04-30  Tom Tromey  <tom@tromey.com>
8534
8535         * i386-tdep.c (i386_type_align): New function.
8536         (i386_gdbarch_init): Update.
8537         * gdbarch.sh (type_align): New method.
8538         * gdbarch.c, gdbarch.h: Rebuild.
8539         * arch-utils.h (default_type_align): Declare.
8540         * arch-utils.c (default_type_align): New function.
8541         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
8542         (struct type) <align_log2>: New field.
8543         <instance_flags>: Now a bitfield.
8544         (TYPE_RAW_ALIGN): New macro.
8545         (type_align, type_raw_align, set_type_align): Declare.
8546         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
8547         functions.
8548         * dwarf2read.c (quirk_rust_enum): Set type alignment.
8549         (get_alignment, maybe_set_alignment): New functions.
8550         (read_structure_type, read_enumeration_type, read_array_type)
8551         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
8552         (read_subrange_type, read_base_type): Set type alignment.
8553
8554 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
8555
8556         * dwarf2read.c (read_index_from_section): Use bool.
8557
8558 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
8559
8560         PR gdb/22950
8561         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
8562         with #ifdef.
8563
8564 2018-04-29  John Reiser  <jreiser@BitWagon.com>
8565
8566         PR build/22873
8567         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
8568         last step, and do it atomically.
8569
8570 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
8571
8572         * compile/compile-c-types.c (convert_int, convert_float):
8573         Update for C FE v1.
8574
8575 2018-04-27  Tom Tromey  <tom@tromey.com>
8576
8577         PR rust/22545:
8578         * rust-lang.c (rust_inclusive_range_type_p): New function.
8579         (rust_range): Handle inclusive ranges.
8580         (rust_compute_range): Likewise.
8581         * rust-exp.y (struct rust_op) <inclusive>: New field.
8582         (DOTDOTEQ): New constant.
8583         (range_expr): Add "..=" productions.
8584         (operator_tokens): Add "..=" token.
8585         (ast_range): Add "inclusive" parameter.
8586         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
8587         ranges.
8588         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
8589         bounds values.
8590         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
8591         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
8592         Update comments.
8593         * expprint.c (print_subexp_standard): Handle new bounds values.
8594         (dump_subexp_body_standard): Likewise.
8595
8596 2018-04-27  Tom Tromey  <tom@tromey.com>
8597
8598         * configure: Rebuild.
8599         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
8600         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
8601         "OVERRIDE".
8602         (class symbol_needs_eval_context): Likewise.
8603         * dwarf2read.c (mock_mapped_index::symbol_name_count)
8604         (mock_mapped_index::symbol_name_at): Use "override".  Remove
8605         "virtual".
8606         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
8607         "override".
8608         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
8609         * aarch64-tdep.c (instruction_reader::read): Use "override".
8610         (instruction_reader_test::read): Likewise.
8611         * arm-tdep.c (instruction_reader::read): Use "override".
8612         (instruction_reader_thumb::read): Likewise.
8613
8614 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
8615
8616         PR remote/9665
8617         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
8618         instead of remote_send.
8619         (remote_send): Remove.
8620
8621 2018-04-26  Pedro Alves  <palves@redhat.com>
8622
8623         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
8624         find_function_start_sal instead of find_pc_line.
8625
8626 2018-04-26  Pedro Alves  <palves@redhat.com>
8627
8628         * breakpoint.c (set_breakpoint_location_function): Handle
8629         mst_data_gnu_ifunc.
8630         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
8631         * elfread.c (elf_symtab_read): Give data symbols with
8632         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
8633         (elf_rel_plt_read): Update comment.
8634         * linespec.c (convert_linespec_to_sals): Handle
8635         mst_data_gnu_ifunc.
8636         (minsym_found): Handle mst_data_gnu_ifunc.
8637         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
8638         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
8639         * parse.c (find_minsym_type_and_address): Handle
8640         mst_data_gnu_ifunc.
8641         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
8642         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
8643         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
8644         comment.
8645         <mst_data_gnu_ifunc>: New enumerator.
8646
8647 2018-04-26  Pedro Alves  <palves@redhat.com>
8648
8649         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
8650         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
8651         'want_trampoline' parameter by a lookup_msym_prefer parameter.
8652         Handle it.
8653         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
8654         (lookup_minimal_symbol_by_pc): Adjust.
8655         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
8656         (lookup_solib_trampoline_symbol_by_pc): Adjust.
8657         * minsyms.h (lookup_msym_prefer): New enum.
8658         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
8659         parameter by a lookup_msym_prefer parameter.
8660
8661 2018-04-26  Pedro Alves  <palves@redhat.com>
8662
8663         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
8664         ends in "@plt" instead of looking at the symbol's section.
8665
8666 2018-04-26  Pedro Alves  <palves@redhat.com>
8667
8668         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
8669         all references.
8670         (find_pc_partial_function_gnu_ifunc): Rename to ...
8671         (find_pc_partial_function): ... this, and remove references to
8672         'is_gnu_ifunc_p'.
8673         (find_pc_partial_function): Delete old implementation.
8674         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
8675
8676 2018-04-26  Pedro Alves  <palves@redhat.com>
8677
8678         * linespec.c (struct bound_minimal_symbol_search_key): New.
8679         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
8680         skip first line if we found a GNU ifunc minimal symbol by name.
8681         (compare_msymbols): Change parameters to work with a destructured
8682         lhs minsym.
8683         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
8684         functions.
8685
8686 2018-04-26  Pedro Alves  <palves@redhat.com>
8687
8688         * breakpoint.c (set_breakpoint_location_function): Don't resolve
8689         ifunc targets here.  Instead, if we have an ifunc minsym, use its
8690         address/name.
8691         (add_location_to_breakpoint): Store the minsym and the objfile in
8692         the breakpoint location.
8693         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
8694         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
8695         Record the minsym in the sal.
8696         * symtab.h (symtab_and_line) <msymbol>: New field.
8697
8698 2018-04-26  Pedro Alves  <palves@redhat.com>
8699
8700         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
8701         unless we actually resolved the ifunc.
8702
8703 2018-04-26  Pedro Alves  <palves@redhat.com>
8704
8705         * c-exp.y (variable production): Prefer ifunc minsyms over
8706         regular function symbols.
8707         * symtab.c (find_gnu_ifunc): New function.
8708         * minsyms.h (lookup_msym_prefer): New enum.
8709         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
8710         parameter by a lookup_msym_prefer parameter.
8711         * symtab.h (find_gnu_ifunc): New declaration.
8712
8713 2018-04-26  Pedro Alves  <palves@redhat.com>
8714
8715         * blockframe.c (find_gnu_ifunc_target_type): New function.
8716         (find_function_type): New.
8717         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
8718         return a value with a memory address.
8719         (eval_call): For calls to GNU ifunc functions, try to find the
8720         type of the target function from the type that the resolver
8721         returns.
8722         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
8723         symbols.
8724         * infcall.c (find_function_return_type): Delete.
8725         (find_function_addr): Add 'function_type' parameter.  For calls to
8726         GNU ifunc functions, try to find the type of the target function
8727         from the type that the resolver returns, and return it via
8728         FUNCTION_TYPE.
8729         (call_function_by_hand_dummy): Adjust to use the function type
8730         returned by find_function_addr.
8731         (find_function_addr): Add 'function_type' parameter and move
8732         description here.
8733         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
8734         declarations.
8735
8736 2018-04-26  Pedro Alves  <palves@redhat.com>
8737
8738         * c-exp.y (variable production): Skip finding an alias for ifunc
8739         symbols.
8740
8741 2018-04-26  Pedro Alves  <palves@redhat.com>
8742
8743         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
8744
8745 2018-04-25  Pedro Alves  <palves@redhat.com>
8746
8747         * infcmd.c (kill_command): Print the pid as string, not the whole
8748         thread's ptid.  Add comment.  s/has been killed/killed/ in output
8749         message.
8750         * remote.c (remote_detach_1): Print the pid as string, not the
8751         whole thread's ptid.
8752
8753 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
8754             Sergio Durigan Junior  <sergiodj@redhat.com>
8755             Pedro Alves  <palves@redhat.com>
8756
8757         * infcmd.c (kill_command): Print message when inferior has
8758         been killed.
8759         * inferior.c (print_inferior_events): Remove 'static'.  Set as
8760         '1'.
8761         (add_inferior): Improve message printed when
8762         'print_inferior_events' is on.
8763         (exit_inferior): Remove message printed when
8764         'print_inferior_events' is on.
8765         (detach_inferior): Improve message printed when
8766         'print_inferior_events' is on.
8767         (initialize_inferiors): Use 'add_inferior_silent' to set
8768         'current_inferior_'.
8769         * inferior.h (print_inferior_events): Declare here as
8770         'extern'.
8771         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
8772         '[Detaching...]' messages when 'print_inferior_events' is on.
8773         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
8774         as prefix/suffix for messages.  Remove periods.  Fix erroneous
8775         'Detaching after fork from child...', replace it by '... from
8776         parent...'.
8777         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
8778         prefix/suffix when printing 'Detaching...' messages.  Print
8779         them when 'print_inferior_events' is on.
8780         * remote.c (remote_detach_1): Print message when detaching
8781         from inferior and '!is_fork_parent'.
8782
8783 2018-04-24  Tom Tromey  <tom@tromey.com>
8784
8785         * cli-out.h: Reindent.
8786
8787 2018-04-24  Tom Tromey  <tom@tromey.com>
8788
8789         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
8790         (cli_ui_out::do_field_string): Use fputs_filtered.
8791         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
8792
8793 2018-04-23  Tom Tromey  <tom@tromey.com>
8794
8795         * guile/scm-frame.c (gdbscm_frame_read_var): Use
8796         gdb::unique_xmalloc_ptr.
8797
8798 2018-04-23  Tom Tromey  <tom@tromey.com>
8799
8800         * configure: Rebuild.
8801
8802 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
8803
8804         PR gdb/23095
8805         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
8806         prepare_for_testing.  Set normal_bp to r_debug_state if target
8807         is bsd.
8808
8809 2018-04-21  Pedro Alves  <palves@redhat.com>
8810             Rajendra SY  <rajendra.sy@gmail.com>
8811
8812         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
8813         * remote.c (extended_remote_attach): In all-stop mode, mark the
8814         thread as executing.
8815
8816 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8817
8818         * thread.c (thread_apply_all_command): Fix comment.
8819         (thread_command): Fix comment.
8820
8821 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
8822
8823         * common/tdesc.h (tdesc_create_feature): Remove xml filename
8824         parameter.
8825         * features/aarch64-core.c (create_feature_aarch64_core):
8826         Regenerate.
8827         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
8828         Likewise.
8829         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
8830         Likewise.
8831         * features/i386/32bit-avx512.c
8832         (create_feature_i386_32bit_avx512): Likewise.
8833         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
8834         Likewise.
8835         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
8836         Likewise.
8837         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
8838         Likewise.
8839         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
8840         Likewise.
8841         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
8842         Likewise.
8843         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
8844         Likewise.
8845         * features/i386/64bit-avx512.c
8846         (create_feature_i386_64bit_avx512): Likewise.
8847         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
8848         Likewise.
8849         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
8850         Likewise.
8851         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
8852         Likewise.
8853         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
8854         Likewise.
8855         * features/i386/64bit-segments.c
8856         (create_feature_i386_64bit_segments): Likewise.
8857         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
8858         Likewise.
8859         * features/i386/x32-core.c
8860         (create_feature_i386_x32_core): Likewise.
8861         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
8862         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
8863         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
8864         * target-descriptions.c: In generated code, don't pass xml
8865         filename.
8866
8867 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8868
8869         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
8870         (print_xml_feature::visit_post): Likewise.
8871         (print_xml_feature::visit): Likewise.
8872         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
8873         (print_xml_feature): Add new class.
8874         * regformats/regdat.sh: Null xmltarget on feature targets.
8875         * target-descriptions.c (struct target_desc): Add xmltarget.
8876         (maintenance_check_tdesc_xml_convert): Add unittest function.
8877         (tdesc_get_features_xml): Add function to get xml.
8878         (maintenance_check_xml_descriptions): Test xml generation.
8879         * xml-tdesc.c (string_read_description_xml): Add function.
8880         * xml-tdesc.h (string_read_description_xml): Add declaration.
8881
8882 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8883
8884         * features/Makefile: Add feature marker to targets with new style
8885         target descriptions.
8886         * regformats/aarch64.dat: Regenerate.
8887         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
8888         * regformats/i386/amd64-avx-linux.dat: Likewise.
8889         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
8890         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
8891         * regformats/i386/amd64-linux.dat: Likewise.
8892         * regformats/i386/amd64-mpx-linux.dat: Likewise.
8893         * regformats/i386/amd64.dat: Likewise.
8894         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
8895         * regformats/i386/i386-avx-linux.dat: Likewise.
8896         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
8897         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
8898         * regformats/i386/i386-linux.dat: Likewise.
8899         * regformats/i386/i386-mmx-linux.dat: Likewise.
8900         * regformats/i386/i386-mpx-linux.dat: Likewise.
8901         * regformats/i386/i386.dat: Likewise.
8902         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
8903         * regformats/i386/x32-avx-linux.dat: Likewise.
8904         * regformats/i386/x32-linux.dat: Likewise.
8905         * regformats/tic6x-c62x-linux.dat: Likewise.
8906         * regformats/tic6x-c64x-linux.dat: Likewise.
8907         * regformats/tic6x-c64xp-linux.dat: Likewise.
8908         * regformats/regdat.sh: Parse feature marker.
8909
8910 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8911
8912         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
8913         (tdesc_osabi_name): Likewise.
8914         * target-descriptions.c (tdesc_architecture_name): Add new
8915         function.
8916         (tdesc_osabi_name): Likewise.
8917
8918 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8919
8920         * common/tdesc.c (tdesc_predefined_type): Move to here.
8921         (tdesc_named_type): Likewise.
8922         (tdesc_create_vector): Likewise.
8923         (tdesc_create_struct): Likewise.
8924         (tdesc_set_struct_size): Likewise.
8925         (tdesc_create_union): Likewise.
8926         (tdesc_create_flags): Likewise.
8927         (tdesc_create_enum): Likewise.
8928         (tdesc_add_field): Likewise.
8929         (tdesc_add_typed_bitfield): Likewise.
8930         (tdesc_add_bitfield): Likewise.
8931         (tdesc_add_flag): Likewise.
8932         (tdesc_add_enum_value): Likewise.
8933         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
8934         (struct tdesc_type_vector): Likewise.
8935         (struct tdesc_type_field): Likewise.
8936         (struct tdesc_type_with_fields): Likewise.
8937         (tdesc_create_enum): Add declaration.
8938         (tdesc_add_typed_bitfield): Likewise.
8939         (tdesc_add_enum_value): Likewise.
8940         * target-descriptions.c (tdesc_type_field): Move from here.
8941         (tdesc_type_builtin): Likewise.
8942         (tdesc_type_vector): Likewise.
8943         (tdesc_type_with_fields): Likewise.
8944         (tdesc_predefined_types): Likewise.
8945         (tdesc_named_type): Likewise.
8946         (tdesc_create_vector): Likewise.
8947         (tdesc_create_struct): Likewise.
8948         (tdesc_set_struct_size): Likewise.
8949         (tdesc_create_union): Likewise.
8950         (tdesc_create_flags): Likewise.
8951         (tdesc_create_enum): Likewise.
8952         (tdesc_add_field): Likewise.
8953         (tdesc_add_typed_bitfield): Likewise.
8954         (tdesc_add_bitfield): Likewise.
8955         (tdesc_add_flag): Likewise.
8956         (tdesc_add_enum_value): Likewise.
8957         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
8958         (tdesc_add_typed_bitfield): Likewise.
8959         (tdesc_add_enum_value): Likewise.
8960
8961 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8962
8963         * common/tdesc.c (tdesc_feature::accept): Move to here.
8964         (tdesc_feature::operator==): Likewise.
8965         (tdesc_create_reg): Likewise.
8966         * common/tdesc.h (tdesc_type_kind): Likewise.
8967         (struct tdesc_type): Likewise.
8968         (struct tdesc_feature): Likewise.
8969         * regformats/regdat.sh: Create a feature.
8970         * target-descriptions.c (tdesc_type_kind): Move from here.
8971         (tdesc_type): Likewise.
8972         (tdesc_type_up): Likewise.
8973         (tdesc_feature): Likewise.
8974         (tdesc_create_reg): Likewise.
8975
8976 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8977
8978         * Makefile.in: Add arch/tdesc.c
8979         * common/tdesc.c: New file.
8980         * common/tdesc.h (tdesc_element_visitor): Move to here.
8981         (tdesc_element): Likewise.
8982         (tdesc_reg): Likewise.
8983         (tdesc_reg_up): Likewise.
8984         * regformats/regdef.h (reg): Add offset to constructors.
8985         * target-descriptions.c (tdesc_element_visitor): Move from here.
8986         (tdesc_element): Likewise.
8987         (tdesc_reg): Likewise.
8988         (tdesc_reg_up): Likewise.
8989
8990 2018-04-17  Tom Tromey  <tom@tromey.com>
8991
8992         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
8993         discriminant field.
8994
8995 2018-04-17  Tom Tromey  <tom@tromey.com>
8996
8997         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
8998
8999 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
9000
9001         * symtab.c (print_symbol_info): Skip printing filename and line
9002         number when `last' is NULL.
9003         (symtab_symbol_info): Use empty string instead of NULL for first
9004         invocation of print_symbol_info.
9005         (rbreak_command): Pass NULL to `last' parameter of
9006         print_symbol_info.
9007
9008 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
9009
9010         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
9011         instead of nullptr.
9012
9013 2018-04-16  Pedro Alves  <palves@redhat.com>
9014
9015         * MAINTAINERS (sh): Remove.
9016         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
9017         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
9018         (ALLDEPFILES): Remove sh64-tdep.c.
9019         * NEWS: Mentions that support for SH-5/SH64 is removed.
9020         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
9021         (sh*-*-openbsd*): Ditto.
9022         (sh64-*-elf*): Remove.
9023         (sh*): Remove.
9024         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
9025         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
9026         * sh-tdep.c: No longer include "sh64-tdep.h".
9027         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
9028         * sh64-tdep.c, sh64-tdep.h: Remove files.
9029
9030 2018-04-16  Pedro Alves  <palves@redhat.com>
9031
9032         * MAINTAINERS: Remove m88k.
9033         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
9034         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
9035         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
9036         * NEWS: Mention that support for m88k was removed.
9037         * configure.host (m88*-*-*): Remove support.
9038         * configure.nat (m88k-*-*): Remove support.
9039         * configure.tgt (m88*-*-openbsd*): Remove.
9040         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
9041
9042 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
9043
9044         * configure.tgt (x86_tobjs): New variable.
9045         (amd64_tobjs, i386_tobjs): Use it.
9046
9047 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
9048
9049         * symtab.c (print_symbol_info): Precede the symbol definition by
9050         the line number when available.
9051         * NEWS: Advertise this enhancement.
9052
9053 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9054
9055         * NEWS (New options): announce set/show record btrace cpu.
9056         * btrace.c: Include record-btrace.h.
9057         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
9058         the vendor is unknown.
9059         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
9060         Maybe overwrite the btrace configuration's cpu.
9061         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
9062         (btrace_fetch): Add cpu parameter.  Update callers.
9063         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
9064         Maybe overwrite the btrace configuration's cpu.  Skip enabling
9065         errata workarounds if the vendor is unknown.
9066         * python/py-record-btrace.c: Include record-btrace.h.
9067         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
9068         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
9069         * record-btrace.c (record_btrace_cpu_state_kind): New.
9070         (record_btrace_cpu): New.
9071         (set_record_btrace_cpu_cmdlist): New.
9072         (record_btrace_get_cpu): New.
9073         (require_btrace_thread, record_btrace_info)
9074         (record_btrace_resume_thread): Call record_btrace_get_cpu.
9075         (cmd_set_record_btrace_cpu_none): New.
9076         (cmd_set_record_btrace_cpu_auto): New.
9077         (cmd_set_record_btrace_cpu): New.
9078         (cmd_show_record_btrace_cpu): New.
9079         (_initialize_record_btrace): Initialize set/show record btrace cpu
9080         commands.
9081         * record-btrace.h (record_btrace_get_cpu): New.
9082
9083 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9084
9085         * record.c (set_record_command): Fix typo in message.
9086
9087 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9088
9089         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
9090
9091 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9092
9093         * infrun.c (process_event_stop_test): Call
9094         gdbarch_in_indirect_branch_thunk.
9095         * gdbarch.sh (in_indirect_branch_thunk): New.
9096         * gdbarch.c: Regenerated.
9097         * gdbarch.h: Regenerated.
9098         * x86-tdep.h: New.
9099         * x86-tdep.c: New.
9100         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
9101         (HFILES_NO_SRCDIR): Add x86-tdep.h.
9102         (ALLDEPFILES): Add x86-tdep.c.
9103         * arch-utils.h (default_in_indirect_branch_thunk): New.
9104         * arch-utils.c (default_in_indirect_branch_thunk): New.
9105         * i386-tdep: Include x86-tdep.h.
9106         (i386_in_indirect_branch_thunk): New.
9107         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
9108         function.
9109         * amd64-tdep: Include x86-tdep.h.
9110         (amd64_in_indirect_branch_thunk): New.
9111         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
9112
9113 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
9114
9115         PR gdb/23053
9116         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
9117         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
9118         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
9119         regression.
9120
9121 2018-04-12  Tom Tromey  <tom@tromey.com>
9122
9123         * rust-lang.c (rust_print_struct_def): Remove univariant code.
9124         (rust_evaluate_subexp): Likewise.
9125
9126 2018-04-12  Pedro Alves  <palves@redhat.com>
9127
9128         * procfs.c (procfs_detach): Make forward declaration's prototype
9129         match definition's protototype.
9130         (proc_get_LDT_entry): Remove stale do_cleanups call.
9131
9132 2018-04-12  Pedro Alves  <palves@redhat.com>
9133
9134         * target.h (target_ops::to_has_exited): Delete.
9135         (target_has_exited): Delete.
9136         * target-delegates.c: Regenerate.
9137
9138 2018-04-11  Pedro Alves  <palves@redhat.com>
9139
9140         * target.c (fileio_fh_t::t): Add comment.
9141         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
9142         (target_fileio_close): Handle a NULL target.
9143         (invalidate_fileio_fh): New.
9144         (target_close): Call it.
9145         * remote.c (remote_hostio_send_command): No longer check whether
9146         remote_desc is open.
9147
9148 2018-04-11  Pedro Alves  <palves@redhat.com>
9149
9150         * target.c (fileio_fh_t): Make it a named struct instead of a
9151         typedef.
9152         (fileio_fh_t::is_closed): New method.
9153         (DEF_VEC_O (fileio_fh_t)): Remove.
9154         (fileio_fhandles): Now a std::vector.
9155         (is_closed_fileio_fh): Delete.
9156         (acquire_fileio_fd): Adjust.  Rename parameters.
9157         (release_fileio_fd): Adjust.
9158         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
9159         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
9160         (target_fileio_close): Adjust.
9161
9162 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
9163
9164         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
9165         index.
9166
9167 2018-04-10  Pedro Alves  <palves@redhat.com>
9168
9169         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
9170         (scoped_finish_thread_state): New class.
9171         * infcmd.c (run_command_1): Use it instead of finish_thread_state
9172         cleanup.
9173         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
9174         (fetch_inferior_event, normal_stop): Likewise.
9175         * thread.c (finish_thread_state_cleanup): Delete.
9176
9177 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9178             Pedro Alves  <palves@redhat.com>
9179
9180         * value.c: Include "selftest.h" and "common/array-view.h".
9181         (struct range) <operator ==>: New.
9182         (test_ranges_contain): New.
9183         (check_ranges_vector): New.
9184         (test_insert_into_bit_range_vector): New.
9185         (_initialize_values): Register selftests.
9186         * common/array-view.h (operator==, operator!=): New.
9187
9188 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9189
9190         * common/gdb_vecs.h (unordered_remove): Add overload that takes
9191         an iterator.
9192         * inline-frame.c: Include <algorithm>.
9193         (struct inline_state): Add constructor.
9194         (inline_state_s): Remove.
9195         (DEF_VEC_O(inline_state_s)): Remove.
9196         (inline_states): Change type to std::vector.
9197         (find_inline_frame_state): Adjust to std::vector.
9198         (allocate_inline_frame_state): Remove.
9199         (clear_inline_frame_state): Adjust to std::vector.
9200         (skip_inline_frames): Adjust to std::vector.
9201
9202 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9203
9204         * tracepoint.h (struct trace_state_variable): Add constructor.
9205         <name>: Change type to std::string.
9206         * tracepoint.c (tsv_s): Remove.
9207         (DEF_VEC_O(tsv_s)): Remove.
9208         (tvariables): Change to std::vector.
9209         (create_trace_state_variable): Adjust to std::vector.
9210         (find_trace_state_variable): Likewise.
9211         (find_trace_state_variable_by_number): Likewise.
9212         (delete_trace_state_variable): Likewise.
9213         (trace_variable_command): Adjust to std::string.
9214         (delete_trace_variable_command): Likewise.
9215         (tvariables_info_1): Adjust to std::vector.
9216         (save_trace_state_variables): Likewise.
9217         (start_tracing): Likewise.
9218         (merge_uploaded_trace_state_variables): Adjust to std::vector
9219         and std::string.
9220         * target.h (struct target_ops)
9221         <to_download_trace_state_variable>: Pass reference to
9222         trace_state_variable.
9223         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
9224         * target-delegates.c: Re-generate.
9225         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
9226         (mi_tsv_deleted): Likewise.
9227         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
9228         * remote.c (remote_download_trace_state_variable): Change
9229         pointer to reference and adjust.
9230         * make-target-delegates (parse_argtypes): Handle references.
9231         (write_function_header): Likewise.
9232         (munge_type): Likewise.
9233
9234 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9235
9236         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9237         string_view-selftests.c.
9238         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
9239         testsuite.
9240         * unittests/basic_string_view/cons/char/1.cc: Likewise.
9241         * unittests/basic_string_view/cons/char/2.cc: Likewise.
9242         * unittests/basic_string_view/cons/char/3.cc: Likewise.
9243         * unittests/basic_string_view/element_access/char/1.cc:
9244         Likewise.
9245         * unittests/basic_string_view/element_access/char/empty.cc:
9246         Likewise.
9247         * unittests/basic_string_view/element_access/char/front_back.cc:
9248         Likewise.
9249         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
9250         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
9251         Likewise.
9252         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
9253         Likewise.
9254         * unittests/basic_string_view/modifiers/swap/char/1.cc:
9255         Likewise.
9256         * unittests/basic_string_view/operations/compare/char/1.cc:
9257         Likewise.
9258         * unittests/basic_string_view/operations/compare/char/13650.cc:
9259         Likewise.
9260         * unittests/basic_string_view/operations/copy/char/1.cc:
9261         Likewise.
9262         * unittests/basic_string_view/operations/data/char/1.cc:
9263         Likewise.
9264         * unittests/basic_string_view/operations/find/char/1.cc:
9265         Likewise.
9266         * unittests/basic_string_view/operations/find/char/2.cc:
9267         Likewise.
9268         * unittests/basic_string_view/operations/find/char/3.cc:
9269         Likewise.
9270         * unittests/basic_string_view/operations/find/char/4.cc:
9271         Likewise.
9272         * unittests/basic_string_view/operations/rfind/char/1.cc:
9273         Likewise.
9274         * unittests/basic_string_view/operations/rfind/char/2.cc:
9275         Likewise.
9276         * unittests/basic_string_view/operations/rfind/char/3.cc:
9277         Likewise.
9278         * unittests/basic_string_view/operations/substr/char/1.cc:
9279         Likewise.
9280         * unittests/basic_string_view/operators/char/2.cc: Likewise.
9281         * unittests/string_view-selftests.c: New file.
9282
9283 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9284
9285         * unittests/basic_string_view/capacity/1.cc: New file.
9286         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
9287         * unittests/basic_string_view/cons/char/1.cc: New file.
9288         * unittests/basic_string_view/cons/char/2.cc: New file.
9289         * unittests/basic_string_view/cons/char/3.cc: New file.
9290         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
9291         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
9292         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
9293         * unittests/basic_string_view/element_access/char/1.cc: New file.
9294         * unittests/basic_string_view/element_access/char/2.cc: New file.
9295         * unittests/basic_string_view/element_access/char/empty.cc: New file.
9296         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
9297         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
9298         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
9299         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
9300         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
9301         * unittests/basic_string_view/include.cc: New file.
9302         * unittests/basic_string_view/inserters/char/1.cc: New file.
9303         * unittests/basic_string_view/inserters/char/2.cc: New file.
9304         * unittests/basic_string_view/inserters/char/3.cc: New file.
9305         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
9306         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
9307         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
9308         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
9309         * unittests/basic_string_view/literals/types.cc: New file.
9310         * unittests/basic_string_view/literals/values.cc: New file.
9311         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
9312         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
9313         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
9314         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
9315         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
9316         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
9317         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
9318         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
9319         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
9320         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
9321         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
9322         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
9323         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
9324         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
9325         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
9326         * unittests/basic_string_view/operations/data/char/1.cc: New file.
9327         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
9328         * unittests/basic_string_view/operations/find/char/1.cc: New file.
9329         * unittests/basic_string_view/operations/find/char/2.cc: New file.
9330         * unittests/basic_string_view/operations/find/char/3.cc: New file.
9331         * unittests/basic_string_view/operations/find/char/4.cc: New file.
9332         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
9333         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
9334         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
9335         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
9336         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
9337         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
9338         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
9339         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
9340         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
9341         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
9342         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
9343         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
9344         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
9345         * unittests/basic_string_view/operators/char/2.cc: New file.
9346         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
9347         * unittests/basic_string_view/range_access/char/1.cc: New file.
9348         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
9349         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
9350         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
9351         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
9352         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
9353         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
9354         * unittests/basic_string_view/requirements/typedefs.cc: New file.
9355         * unittests/basic_string_view/typedefs.cc: New file.
9356         * unittests/basic_string_view/types/1.cc: New file.
9357
9358 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9359
9360         * common/gdb_string_view.h: Remove libstdc++ implementation
9361         details, adjust to gdb reality.
9362         * common/gdb_string_view.tcc: Likewise.
9363         * cli/cli-script.c (struct string_view): Remove.
9364         (user_args) <m_args>: Change element type to gdb::string_view.
9365         (user_args::insert_args): Adjust.
9366
9367 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9368
9369         * common/gdb_string_view.h: New file.
9370         * common/gdb_string_view.tcc: New file.
9371
9372 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9373
9374         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
9375         * configure: Re-generate.
9376
9377 2018-04-09  Pedro Alves  <palves@redhat.com>
9378
9379         * gdbarch.sh: Include "observable.h" instead of "observer.h".
9380         (set_target_gdbarch): Call
9381         gdb::observers::architecture_changed.notify instead of
9382         observer_notify_architecture_changed.
9383
9384 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9385
9386         * tracepoint.c (struct current_traceframe_cleanup): Remove.
9387         (do_restore_current_traceframe_cleanup): Remove.
9388         (restore_current_traceframe_cleanup_dtor): Remove.
9389         (make_cleanup_restore_current_traceframe): Remove.
9390         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
9391         New.
9392         * tracepoint.h (struct scoped_restore_current_traceframe): New.
9393         * infrun.c (fetch_inferior_event): Use
9394         scoped_restore_current_traceframe.
9395
9396 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9397
9398         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
9399         Remove.
9400         <n_allocated_type_units>: Remove.
9401         <all_type_units>: Change to std::vector.
9402         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
9403         to std::vector change.
9404         (dwarf2_per_objfile::get_cutu): Likewise.
9405         (dwarf2_per_objfile::get_tu): Likewise.
9406         (create_signatured_type_table_from_index): Likewise.
9407         (create_signatured_type_table_from_debug_names): Likewise.
9408         (dw2_symtab_iter_next): Likewise.
9409         (dw2_print_stats): Likewise.
9410         (dw2_expand_all_symtabs): Likewise.
9411         (dw2_expand_marked_cus): Likewise.
9412         (dw2_debug_names_iterator::next): Likewise.
9413         (dwarf2_initialize_objfile): Likewise.
9414         (add_signatured_type_cu_to_table): Likewise.
9415         (create_all_type_units): Likewise.
9416         (add_type_unit): Likewise.
9417         (struct tu_abbrev_offset): Add constructor.
9418         (build_type_psymtabs_1): Adjust to std::vector change.
9419         (print_tu_stats): Likewise.
9420         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
9421         (write_debug_names): Likewise.
9422
9423 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9424
9425         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
9426         Make an std::vector.
9427         <n_comp_units>: Remove.
9428         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
9429         to std::vector change.
9430         (dwarf2_per_objfile::get_cutu): Likewise.
9431         (dwarf2_per_objfile::get_cu): Likewise.
9432         (create_cus_from_index): Likewise.
9433         (create_addrmap_from_index): Likewise.
9434         (create_addrmap_from_aranges): Likewise.
9435         (dwarf2_read_index): Likewise.
9436         (dw2_find_last_source_symtab): Likewise.
9437         (dw2_map_symtabs_matching_filename): Likewise.
9438         (dw2_symtab_iter_next): Likewise.
9439         (dw2_print_stats): Likewise.
9440         (dw2_expand_all_symtabs): Likewise.
9441         (dw2_expand_symtabs_with_fullname): Likewise.
9442         (dw2_expand_marked_cus): Likewise.
9443         (dw2_map_symbol_filenames): Likewise.
9444         (create_cus_from_debug_names): Likewise.
9445         (dwarf2_read_debug_names): Likewise.
9446         (dw2_debug_names_iterator::next): Likewise.
9447         (dwarf2_initialize_objfile): Likewise.
9448         (set_partial_user): Likewise.
9449         (dwarf2_build_psymtabs_hard): Likewise.
9450         (read_comp_units_from_section): Remove arguments, adjust to
9451         std::vector change.
9452         (create_all_comp_units): Adjust to std::vector and
9453         read_comp_units_from_section changes.
9454         (dwarf2_find_containing_comp_unit): Adjust to std::vector
9455         change.
9456         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
9457         (psyms_seen_size): Likewise.
9458         (write_gdbindex): Likewise.
9459         (write_debug_names): Likewise.
9460
9461 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9462
9463         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
9464         with dwarf2_per_objfile.
9465         (create_cus_from_index): Likewise.
9466         (create_signatured_type_table_from_index): Likewise.
9467         (dwarf2_read_index): Likewise.
9468         (dwarf2_initialize_objfile): Likewise.
9469         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
9470         per_cu rather than get_dwarf2_per_objfile.
9471
9472 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9473
9474         * dwarf2read.h (struct signatured_type): Forward declare.
9475         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
9476         New methods.
9477         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
9478         (dw2_get_cutu): ...this.
9479         (dwarf2_per_objfile::get_cu): Rename from...
9480         (dw2_get_cu): ...this.
9481         (dwarf2_per_objfile::get_tu): New.
9482         (create_addrmap_from_index): Adjust.
9483         (create_addrmap_from_aranges): Adjust.
9484         (dw2_find_last_source_symtab): Adjust.
9485         (dw2_map_symtabs_matching_filename): Adjust.
9486         (dw2_symtab_iter_next): Adjust.
9487         (dw2_print_stats): Adjust.
9488         (dw2_expand_all_symtabs): Adjust.
9489         (dw2_expand_symtabs_with_fullname): Adjust.
9490         (dw2_expand_marked_cus): Adjust.
9491         (dw_expand_symtabs_matching_file_matcher): Adjust.
9492         (dw2_map_symbol_filenames): Adjust.
9493         (dw2_debug_names_iterator::next): Adjust.
9494         (dwarf2_initialize_objfile): Adjust.
9495         (set_partial_user): Adjust.
9496         (dwarf2_build_psymtabs_hard): Adjust.
9497
9498 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9499
9500         * dwarf2read.c (create_signatured_type_table_from_debug_names):
9501         Remove unused variables.
9502         (dw2_map_symtabs_matching_filename): Likewise.
9503         (dwarf2_record_block_ranges): Likewise.
9504         (dwarf2_read_addr_index): Likewise.
9505         (follow_die_offset): Likewise.
9506
9507 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9508
9509         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
9510         to symbol_file_add_main.
9511
9512 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9513
9514         PR mi/22299
9515         * mi/mi-console.c (do_fputc_async_safe): New.
9516         (mi_console_file::write_async_safe): New.
9517         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
9518         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
9519         New.
9520         * ui-file.c (ui_file::putstrn): Adjust call to
9521         fputstrn_unfiltered.
9522         * utils.c (printchar): Replace do_fputs and do_fprintf
9523         parameters by do_fputc.
9524         (fputstr_filtered): Adjust call to printchar.
9525         (fputstr_unfiltered): Likewise.
9526         (fputstrn_filtered): Likewise.
9527         (fputstrn_unfiltered): Add do_fputc parameter, pass to
9528         printchar.
9529         * utils.h (do_fputc_ftype): New typedef.
9530         (fputstrn_unfiltered): Add do_fputc parameter.
9531
9532 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9533
9534         * regformats/i386/i386-avx.dat: Remove.
9535
9536 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
9537
9538         PR gdb/22979
9539         * amd64-tdep.c (amd64_none_init_abi): New function.
9540         (amd64_x32_none_init_abi): New function.
9541         (_initialize_amd64_tdep): Register handlers for x86-64 and
9542         x64_32 with GDB_OSABI_NONE.
9543         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
9544         GDB_OSABI_NONE osabi.
9545
9546 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
9547
9548         PR gdb/22980
9549         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
9550         GDB_OSABI_NONE.
9551         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
9552         * osabi.c (gdb_osabi_names): Add "unknown" entry.
9553
9554 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
9555
9556         * common/byte-vector.h (char_vector): New type.
9557         * target.h (target_read_alloc): Return
9558         gdb::optional<byte_vector>.
9559         (target_read_stralloc): Return gdb::optional<char_vector>.
9560         (target_get_osdata): Return gdb::optional<char_vector>.
9561         * target.c (target_read_alloc_1): Templatize.  Replacement
9562         manual memory management with vector.
9563         (target_read_alloc): Change return type, adjust.
9564         (target_read_stralloc): Change return type, adjust.
9565         (target_get_osdata): Change return type, adjust.
9566         * auxv.c (struct auxv_info) <length>: Remove.
9567         <data>: Change type to gdb::optional<byte_vector>.
9568         (auxv_inferior_data_cleanup): Free auxv_info with delete.
9569         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
9570         (target_auxv_search): Adjust.
9571         (fprint_target_auxv): Adjust.
9572         * avr-tdep.c (avr_io_reg_read_command): Adjust.
9573         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
9574         (linux_make_corefile_notes): Adjust.
9575         * osdata.c (get_osdata): Adjust.
9576         * remote.c (remote_get_threads_with_qxfer): Adjust.
9577         (remote_memory_map): Adjust.
9578         (remote_traceframe_info): Adjust.
9579         (btrace_read_config): Adjust.
9580         (remote_read_btrace): Adjust.
9581         (remote_pid_to_exec_file): Adjust.
9582         * solib-aix.c (solib_aix_get_library_list): Adjust.
9583         * solib-dsbt.c (decode_loadmap): Don't free buf.
9584         (dsbt_get_initial_loadmaps): Adjust.
9585         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
9586         * solib-target.c (solib_target_current_sos): Adjust.
9587         * tracepoint.c (sdata_make_value): Adjust.
9588         * xml-support.c (xinclude_start_include): Adjust.
9589         (xml_fetch_content_from_file): Adjust.
9590         * xml-support.h (xml_fetch_another): Change return type.
9591         (xml_fetch_content_from_file): Change return type.
9592         * xml-syscall.c (xml_init_syscalls_info): Adjust.
9593         * xml-tdesc.c (file_read_description_xml): Adjust.
9594         (fetch_available_features_from_target): Change return type.
9595         (target_fetch_description_xml): Adjust.
9596         (target_read_description_xml): Adjust.
9597
9598 2018-04-06  Tom Tromey  <tom@tromey.com>
9599
9600         * value.c (~value): Update.
9601         (struct value) <contents>: Now unique_xmalloc_ptr.
9602         (value_contents_bits_eq, allocate_value_contents)
9603         (value_contents_raw, value_contents_all_raw)
9604         (value_contents_for_printing, value_contents_for_printing_const)
9605         (set_value_enclosing_type): Update.
9606
9607 2018-04-06  Tom Tromey  <tom@tromey.com>
9608
9609         * value.c (range_s): Remove typedef, VEC.
9610         (struct range): Add operator<.
9611         (range_lessthan): Remove.
9612         (ranges_contain): Change type.
9613         (~value): Update.
9614         (struct value) <unavailable, optimized_out>: Now std::vector.
9615         (value_entirely_available)
9616         (value_entirely_covered_by_range_vector)
9617         (value_entirely_unavailable, value_entirely_optimized_out):
9618         Update.
9619         (insert_into_bit_range_vector): Change argument type.
9620         (find_first_range_overlap): Likewise.
9621         (struct ranges_and_idx, value_contents_bits_eq)
9622         (require_not_optimized_out, require_available): Update.
9623         (ranges_copy_adjusted): Change argument types.
9624         (value_optimized_out, value_copy, value_fetch_lazy): Update.
9625
9626 2018-04-06  Tom Tromey  <tom@tromey.com>
9627
9628         * value.c (~value): Update.
9629         (struct value) <parent>: Now a value_ref_ptr.
9630         (value_parent, set_value_parent, value_address, value_copy):
9631         Update.
9632
9633 2018-04-06  Tom Tromey  <tom@tromey.com>
9634
9635         * value.c (struct value): Add constructor, destructor, and member
9636         initializers.
9637         (allocate_value_lazy, value_decref): Update.
9638
9639 2018-04-06  Tom Tromey  <tom@tromey.com>
9640
9641         * value.c (struct value) <released, next>: Remove.
9642         (all_values): Now a std::vector.
9643         (allocate_value_lazy): Update.
9644         (value_next): Remove.
9645         (value_mark, value_free_to_mark, release_value)
9646         (value_release_to_mark): Update.
9647
9648 2018-04-06  Tom Tromey  <tom@tromey.com>
9649
9650         * value.h (fetch_subexp_value, value_release_to_mark): Update.
9651         (free_value_chain): Remove.
9652         * value.c (free_value_chain): Remove.
9653         (value_release_to_mark): Return a std::vector.
9654         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
9655         std::vector.
9656         (check_condition): Update.
9657         * eval.c (fetch_subexp_value): Change "val_chain" to a
9658         std::vector.
9659         * breakpoint.c (update_watchpoint): Update.
9660         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
9661
9662 2018-04-06  Tom Tromey  <tom@tromey.com>
9663
9664         * value.h (free_all_values): Remove.
9665         * value.c (free_all_values): Remove.
9666
9667 2018-04-06  Tom Tromey  <tom@tromey.com>
9668
9669         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
9670         (value_history_chain, value_history_count): Remove.
9671         (value_history): New global.
9672         (record_latest_value, access_value_history, show_values)
9673         (preserve_values): Update.
9674
9675 2018-04-06  Tom Tromey  <tom@tromey.com>
9676
9677         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
9678         * varobj.c (varobj_set_display_format, varobj_set_value)
9679         (install_default_visualizer, construct_visualizer)
9680         (install_new_value, ~varobj, varobj_get_value_type)
9681         (my_value_of_variable, varobj_editable_p): Update.
9682         * c-varobj.c (c_describe_child, c_value_of_variable)
9683         (cplus_number_of_children, cplus_describe_child): Update.
9684         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
9685         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
9686         (ada_value_of_variable, ada_value_is_changeable_p): Update.
9687
9688 2018-04-06  Tom Tromey  <tom@tromey.com>
9689
9690         * printcmd.c (last_examine_address): Change type to
9691         value_ref_ptr.
9692         (do_examine, x_command): Update.
9693
9694 2018-04-06  Tom Tromey  <tom@tromey.com>
9695
9696         * value.c (release_value): Update.
9697         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
9698         (struct bpstats) <val>: Now a value_ref_ptr.
9699         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
9700         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
9701         (~watchpoint, print_it_watchpoint, watch_command_1)
9702         (invalidate_bp_value_on_memory_change): Update.
9703
9704 2018-04-06  Tom Tromey  <tom@tromey.com>
9705
9706         * varobj.c (varobj_clear_saved_item)
9707         (update_dynamic_varobj_children, install_new_value, ~varobj):
9708         Update.
9709         * value.h (value_incref): Move declaration earlier.
9710         (value_decref): Rename from value_free.
9711         (struct value_ref_policy): New.
9712         (value_ref_ptr): New typedef.
9713         (struct value_deleter): Remove.
9714         (gdb_value_up): Remove typedef.
9715         (release_value): Change return type.
9716         (release_value_or_incref): Remove.
9717         * value.c (set_value_parent): Update.
9718         (value_incref): Change return type.
9719         (value_decref): Rename from value_free.
9720         (value_free_to_mark, free_all_values, free_value_chain): Update.
9721         (release_value): Return value_ref_ptr.
9722         (release_value_or_incref): Remove.
9723         (record_latest_value, set_internalvar, clear_internalvar):
9724         Update.
9725         * stack.c (info_frame_command): Don't call value_free.
9726         * python/py-value.c (valpy_dealloc, valpy_new)
9727         (value_to_value_object): Update.
9728         * printcmd.c (do_examine): Update.
9729         * opencl-lang.c (lval_func_free_closure): Update.
9730         * mi/mi-main.c (register_changed_p): Don't call value_free.
9731         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
9732         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
9733         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
9734         value_free.
9735         * guile/scm-value.c (vlscm_free_value_smob)
9736         (vlscm_scm_from_value): Update.
9737         * frame.c (frame_register_unwind, frame_unwind_register_signed)
9738         (frame_unwind_register_unsigned, get_frame_register_bytes)
9739         (put_frame_register_bytes): Don't call value_free.
9740         * findvar.c (address_from_register): Don't call value_free.
9741         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
9742         * dwarf2loc.c (entry_data_value_free_closure)
9743         (value_of_dwarf_reg_entry, free_pieced_value_closure)
9744         (dwarf2_evaluate_loc_desc_full): Update.
9745         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
9746         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
9747         (~watchpoint, watch_command_1)
9748         (invalidate_bp_value_on_memory_change): Update.
9749         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
9750
9751 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
9752
9753         PR gdb/23022
9754         * warning.m4: Add -Wno-error=deprecated-register.
9755         * configure: Re-generate.
9756
9757 2018-04-05  Tom Tromey  <tom@tromey.com>
9758
9759         * linespec.h: Remove include of "vec.h".
9760
9761 2018-04-05  Tom Tromey  <tom@tromey.com>
9762
9763         * linespec.c (typep): Remove typedef.
9764         (find_methods, find_superclass_methods): Take a std::vector.
9765         (find_method): Use std::vector.
9766
9767 2018-04-05  Tom Tromey  <tom@tromey.com>
9768
9769         * utils.c (compare_strings): Remove.
9770         * utils.h (compare_strings): Remove.
9771         * objc-lang.h (find_imps): Update.
9772         * objc-lang.c (find_methods): Take a std::vector.
9773         (uniquify_strings, find_imps): Likewise.
9774         * linespec.c (find_methods): Take a std::vector.
9775         (decode_objc): Use std::vector.
9776         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
9777         a std::vector.
9778         (find_method, find_function_symbols): Use std::vector.
9779
9780 2018-04-05  Tom Tromey  <tom@tromey.com>
9781
9782         * completer.c (completion_tracker::completion_tracker): Remove
9783         cast.
9784         (completion_tracker::discard_completions): Likewise.
9785         * breakpoint.c (ambiguous_names_p): Remove cast.
9786         * ada-lang.c (_initialize_ada_language): Remove cast.
9787         * utils.h (streq): Update.
9788         (streq_hash): Add new declaration.
9789         * utils.c (streq): Return bool.
9790         (streq_hash): New function.
9791
9792 2018-04-05  Tom Tromey  <tom@tromey.com>
9793
9794         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
9795         Remove a string copy.
9796
9797 2018-04-05  Tom Tromey  <tom@tromey.com>
9798
9799         * linespec.c (filter_results): Use std::vector.
9800         (decode_line_2, decode_line_full): Update.
9801
9802 2018-04-05  Tom Tromey  <tom@tromey.com>
9803
9804         * linespec.c (canonical_to_fullform): Return std::string.
9805         (filter_results): Update.
9806         (struct decode_line_2_item): Add constructor.
9807         <fullform, displayform>: Now std::string.
9808         (decode_line_2_compare_items): Now a std::sort comparator.
9809         (decode_line_2): Update.
9810
9811 2018-04-05  Tom Tromey  <tom@tromey.com>
9812
9813         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
9814         (unexpected_linespec_error): Update.
9815         (linespec_parse_basic, parse_linespec): Update.
9816
9817 2018-04-05  Tom Tromey  <tom@tromey.com>
9818
9819         * linespec.c (linespec_parse_basic): Reindent.
9820
9821 2018-04-05  Tom Tromey  <tom@tromey.com>
9822
9823         * minsyms.h (iterate_over_minimal_symbols): Update.
9824         * minsyms.c (iterate_over_minimal_symbols): Take a
9825         gdb::function_view.
9826         * linespec.c (struct collect_minsyms): Remove.
9827         (compare_msyms): Now a std::sort comparator.
9828         (add_minsym): Add parameters.
9829         (search_minsyms_for_name): Update.  Use std::vector.
9830
9831 2018-04-03  Tom Tromey  <tom@tromey.com>
9832
9833         * mipsread.c (read_alphacoff_dynamic_symtab): Use
9834         gdb::byte_vector.
9835
9836 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
9837
9838         * MAINTAINERS (Write After Approval): Add Weimin Pan.
9839
9840 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
9841
9842         PR gdb/16959
9843         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
9844         printing static type.
9845
9846 2018-04-01  Tom Tromey  <tom@tromey.com>
9847
9848         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
9849         (rs6000_xfer_shared_libraries): Update.
9850
9851 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
9852
9853         * common/gdb_vecs.h (char_ptr): Remove.
9854         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
9855
9856 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
9857
9858         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
9859         with std::vector.
9860         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
9861
9862 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
9863
9864         * tracepoint.h (struct uploaded_tp): Initialize fields.
9865         <actions, step_actions, cmd_strings>: Change type to
9866         std::vector<char *>.
9867         * tracepoint.c (get_uploaded_tp): Allocate with new.
9868         (free_uploaded_tps): Free with delete.
9869         (parse_tracepoint_definition): Adjust to std::vector change.
9870         * breakpoint.c (read_uploaded_action): Likewise.
9871         (create_tracepoint_from_upload): Likewise.
9872         * ctf.c (ctf_write_uploaded_tp): Likewise.
9873         (SET_ARRAY_FIELD): Likewise.
9874         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
9875
9876 2018-03-30  Tom Tromey  <tom@tromey.com>
9877
9878         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
9879         std::unique_ptr.
9880         (svr4_keep_data_in_core): Update.
9881         (svr4_read_so_list): Update.
9882
9883 2018-03-30  Tom Tromey  <tom@tromey.com>
9884
9885         * windows-nat.c (handle_output_debug_string, handle_exception):
9886         Update.
9887         * target.h (target_read_string): Update.
9888         * target.c (target_read_string): Change "string" to
9889         unique_xmalloc_ptr.
9890         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
9891         Update.
9892         * solib-frv.c (frv_current_sos): Update.
9893         * solib-dsbt.c (dsbt_current_sos): Update.
9894         * solib-darwin.c (darwin_current_sos): Update.
9895         * linux-thread-db.c (inferior_has_bug): Update.
9896         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
9897         Update.  Remove alloca.
9898         * ada-lang.c (ada_main_name): Update.
9899
9900 2018-03-30  Tom Tromey  <tom@tromey.com>
9901
9902         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
9903         (struct dwo_file_deleter): New.
9904         (dwo_file_up): New typedef.
9905         (open_and_init_dwo_file): Use dwo_file_up.
9906         (free_dwo_file_cleanup): Remove.
9907
9908 2018-03-30  Tom Tromey  <tom@tromey.com>
9909
9910         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
9911         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
9912
9913 2018-03-30  Tom Tromey  <tom@tromey.com>
9914
9915         * dwarf2read.c (class free_cached_comp_units): New class.
9916         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
9917         (free_cached_comp_units): Remove function.
9918
9919 2018-03-30  Tom Tromey  <tom@tromey.com>
9920
9921         * utils.h (make_cleanup_unpush_target): Remove.
9922         * inf-ptrace.c (struct target_unpusher): New.
9923         (target_unpush_up) New typedef.
9924         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
9925         target_unpush_up.
9926         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
9927
9928 2018-03-27  Tom Tromey  <tom@tromey.com>
9929
9930         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
9931
9932 2018-03-27  Pedro Alves  <palves@redhat.com>
9933             Tom Tromey  <tom@tromey.com>
9934
9935         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
9936         destructor.  Now a class.
9937         (gdb_readline_wrapper_cleanup): Remove function.
9938         (gdb_readline_wrapper): Remove cleanups.
9939
9940 2018-03-27  Tom Tromey  <tom@tromey.com>
9941
9942         * typeprint.h (struct type_print_options) <local_typedefs,
9943         global_typedefs>: Remove "struct" keyword.
9944         (class typedef_hash_table): New class.
9945         (recursively_update_typedef_hash, add_template_parameters)
9946         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
9947         (find_typedef_in_hash): Don't declare.
9948         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
9949         (typedef_hash_table::recursively_update): Rename from
9950         recursively_update_typedef_hash.  Now a member.
9951         (typedef_hash_table::add_template_parameters): Rename from
9952         add_template_parameters.  Now a member.
9953         (typedef_hash_table::typedef_hash_table): Now a constructor;
9954         rename from create_typedef_hash.
9955         (typedef_hash_table::~typedef_hash_table): Now a destructor;
9956         rename from free_typedef_hash.
9957         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
9958         (do_free_global_table): Remove.
9959         (typedef_hash_table::typedef_hash_table): New constructor; renamed
9960         from copy_type_recursive.
9961         (create_global_typedef_table): Remove.
9962         (typedef_hash_table::find_global_typedef): Now a member of
9963         typedef_hash_table.
9964         (typedef_hash_table::find_typedef): Rename from
9965         find_typedef_in_hash; now a member.
9966         (whatis_exp): Update.
9967         * extension.h (struct ext_lang_type_printers): Add constructor and
9968         destructor.
9969         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
9970         declare.
9971         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
9972         Now a constructor; rename from start_ext_lang_type_printers.
9973         (ext_lang_type_printers): Now a destructor; rename from
9974         free_ext_lang_type_printers.
9975         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
9976         Update.
9977         (c_type_print_base_struct_union): Update.  Remove cleanups.
9978
9979 2018-03-27  Tom Tromey  <tom@tromey.com>
9980
9981         * dwarf-index-write.c: Include <cmath>.
9982
9983 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
9984
9985         * NEWS: Add entry describing new "set|show varsize-limit" command.
9986         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
9987         command.
9988         * printcmd.c (_initialize_printcmd): Add "set var" alias of
9989         "set variable".
9990
9991 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
9992
9993         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
9994         dwarf-index-write.c
9995         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
9996         * dwarf-index-common.c: New file.
9997         * dwarf-index-common.h: New file.
9998         * dwarf-index-write.c: New file.
9999         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
10000         (struct dwarf2_section_info): Move from here.
10001         (dwarf2_section_info_def): Likewise.
10002         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
10003         (offset_type): Likewise.
10004         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
10005         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
10006         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
10007         (byte_swap): Likewise.
10008         (MAYBE_SWAP): Likewise.
10009         (dwarf2_per_cu_ptr): Likewise.
10010         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
10011         (struct tu_stats): Likewise.
10012         (struct dwarf2_per_objfile): Likewise.
10013         (struct dwarf2_per_cu_data): Likewise.
10014         (struct signatured_type): Likewise.
10015         (sig_type_ptr): Likewise.
10016         (DEF_VEC_P (sig_type_ptr)): Likewise.
10017         (INDEX4_SUFFIX): Likewise.
10018         (INDEX5_SUFFIX): Likewise.
10019         (DEBUG_STR_SUFFIX): Likewise.
10020         (dwarf2_read_section): Make non-static.
10021         (mapped_index_string_hash): Move from here.
10022         (dwarf5_djb_hash): Likewise.
10023         (file_write): Likewise.
10024         (class data_buf): Likewise.
10025         (struct symtab_index_entry): Likewise.
10026         (struct mapped_symtab): Likewise.
10027         (find_slot): Likewise.
10028         (hash_expand): Likewise.
10029         (add_index_entry): Likewise.
10030         (uniquify_cu_indices): Likewise.
10031         (class c_str_view): Likewise.
10032         (class c_str_view_hasher): Likewise.
10033         (class vector_hasher): Likewise.
10034         (write_hash_table): Likewise.
10035         (psym_index_map): Likewise.
10036         (struct addrmap_index_data): Likewise.
10037         (add_address_entry): Likewise.
10038         (add_address_entry_worker): Likewise.
10039         (write_address_map): Likewise.
10040         (symbol_kind): Likewise.
10041         (write_psymbols): Likewise.
10042         (struct signatured_type_index_data): Likewise.
10043         (write_one_signatured_type): Likewise.
10044         (recursively_count_psymbols): Likewise.
10045         (recursively_write_psymbols): Likewise.
10046         (class debug_names): Likewise.
10047         (check_dwarf64_offsets): Likewise.
10048         (psyms_seen_size): Likewise.
10049         (write_gdbindex): Likewise.
10050         (write_debug_names): Likewise.
10051         (assert_file_size): Likewise.
10052         (write_psymtabs_to_index): Likewise.
10053         (save_gdb_index_command): Likewise.
10054         (_initialize_dwarf2_read): Don't register the "save gdb-index"
10055         command.
10056         * dwarf2read.h: New file.
10057
10058 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
10059
10060         PR gdb/22670
10061         * dwarf2read.c (dwarf2_physname): Do not return the demangled
10062         symbol name if the CU's language stores symbol names in linkage
10063         format.
10064         * language.h (struct language_defn)
10065         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
10066         all instances of this struct.
10067
10068 2018-03-26  Tom Tromey  <tom@tromey.com>
10069
10070         * stack.c (backtrace_command_1): Remove verbose code.
10071
10072 2018-03-26  Tom Tromey  <tom@tromey.com>
10073
10074         * python/py-framefilter.c (py_print_type): Don't catch
10075         exceptions.  Return void.
10076         (py_print_value): Likewise.
10077         (py_print_single_arg): Likewise.
10078         (enumerate_args): Don't catch exceptions.
10079         (py_print_args): Likewise.
10080         (py_print_frame): Likewise.
10081         (gdbpy_apply_frame_filter): Catch exceptions here.
10082
10083 2018-03-26  Tom Tromey  <tom@tromey.com>
10084
10085         * stack.c (_initialize_stack): Remove trailing newlines from help
10086         text.  Add "Usage" line to "backtrace" help.
10087
10088 2018-03-26  Tom Tromey  <tom@tromey.com>
10089
10090         PR python/16486:
10091         * python/py-framefilter.c (py_print_args): Call wrap_hint.
10092
10093 2018-03-26  Tom Tromey  <tom@tromey.com>
10094
10095         * python/py-framefilter.c (py_print_single_arg): Return
10096         EXT_LANG_BT_ERROR from catch.
10097
10098 2018-03-26  Tom Tromey  <tom@tromey.com>
10099
10100         PR backtrace/15584:
10101         * stack.c (backtrace_command_1): Move some code into no-filters
10102         "if".
10103
10104 2018-03-26  Tom Tromey  <tom@tromey.com>
10105
10106         * python/py-framefilter.c (throw_quit_or_print_exception): New
10107         function.
10108         (gdbpy_apply_frame_filter): Use it.
10109
10110 2018-03-26  Tom Tromey  <tom@tromey.com>
10111
10112         PR cli/17716:
10113         * python/py-framefilter.c (py_print_type, py_print_value)
10114         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
10115         RETURN_MASK_ERROR.
10116
10117 2018-03-26  Tom Tromey  <tom@tromey.com>
10118
10119         * python/py-framefilter.c (enumerate_args): Use
10120         gdb::unique_xmalloc_ptr.
10121
10122 2018-03-26  Tom Tromey  <tom@tromey.com>
10123
10124         * python/py-framefilter.c (py_print_frame): Return
10125         EXT_LANG_BT_OK.
10126         (gdbpy_apply_frame_filter): Update comment.
10127         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
10128         Remove.
10129         <EXT_LANG_BT_NO_FILTERS>: Change value.
10130
10131 2018-03-26  Tom Tromey  <tom@tromey.com>
10132
10133         PR backtrace/15582:
10134         * stack.c (backtrace_command): Parse "hide" argument.
10135         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
10136         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
10137         constant.
10138
10139 2018-03-26  Tom Tromey  <tom@tromey.com>
10140
10141         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
10142         add "flags".
10143         (backtrace_command): Remove "fulltrace", add "flags".
10144
10145 2018-03-26  Tom Tromey  <tom@tromey.com>
10146
10147         * stack.c (backtrace_command): Rewrite command line parsing.
10148
10149 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
10150
10151         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
10152
10153 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
10154
10155         * filename-seen-cache.h: Add include guard.
10156
10157 2018-03-26  Keith Seitz  <keiths@redhat.com>
10158
10159         * symfile.c (place_section): Remove "struct" from section_addr_info
10160         in comment.
10161         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
10162         "struct" keyword from section_addr_info.
10163
10164 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
10165
10166         * regformats/regdef.h (reg): Add constructors.
10167
10168 2018-03-25  Pedro Alves  <palves@redhat.com>
10169
10170         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
10171         if then/else bodies in var_func_name extraction.
10172
10173 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
10174
10175         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
10176         lookup_minimal_symbol() to find symbol entry.
10177         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
10178
10179 2018-03-23  Keith Seitz  <keiths@redhat.com>
10180
10181         PR c++/22968
10182         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
10183         nested type definitions for C++, too.
10184
10185 2018-03-23  Tom Tromey  <tom@tromey.com>
10186
10187         * machoread.c (struct oso_el): Add a constructor.  Don't define as
10188         a typedef.
10189         (macho_register_oso): Remove.
10190         (macho_symtab_read): Take a std::vector.
10191         (oso_el_compare_name): Now a std::sort comparator.
10192         (macho_symfile_read_all_oso): Take a std::vector.
10193         (macho_symfile_read): Use std::vector.  Remove cleanups.
10194
10195 2018-03-22  Tom Tromey  <tom@tromey.com>
10196
10197         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
10198         (record_full_goto_bookmark): Use std::string.
10199
10200 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10201
10202         PR tdep/18295
10203         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
10204         a single mask.
10205
10206 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10207
10208         * rs6000-tdep.c (store_insn_p): New function.
10209         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
10210         and cr_reg to their unshifted values. Use store_insn_p to
10211         match LR saves using either R1 or fdata->alloca_reg. Use
10212         store_insn_p to match CR saves. Set alloca_reg_offset
10213         when alloca_reg and framep are set. Remove lr_reg shift
10214         when assigning to fdata->lr_register.
10215
10216 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10217
10218         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
10219         command line args instead of emitting a warning.
10220
10221 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
10222
10223         * tracepoint.h (struct static_tracepoint_marker): Initialize
10224         fields, define default constructor, move constructor and move
10225         assignment, disable the rest.
10226         <str_id, extra>: Make std::string.
10227         (release_static_tracepoint_marker): Remove.
10228         (free_current_marker): Remove.
10229         * tracepoint.c (free_current_marker): Remove.
10230         (parse_static_tracepoint_marker_definition): Adjust to
10231         std::string, use new hex2str overload.
10232         (release_static_tracepoint_marker): Remove.
10233         (print_one_static_tracepoint_marker): Get marker by reference
10234         and adjust to std::string.
10235         (info_static_tracepoint_markers_command): Adjust to std::vector
10236         changes
10237         * target.h (static_tracepoint_marker_p): Remove typedef.
10238         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
10239         (struct target_ops) <to_static_tracepoint_marker_at>: Return
10240         bool.
10241         <to_static_tracepoint_markers_by_strid>: Return std::vector.
10242         * target-debug.h
10243         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
10244         (target_debug_print_std_vector_static_tracepoint_marker): New.
10245         (target_debug_print_struct_static_tracepoint_marker_p): Rename
10246         to...
10247         (target_debug_print_static_tracepoint_marker_p): ... this.
10248         * target-delegates.c: Re-generate.
10249         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
10250         Make std::string.
10251         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
10252         (decode_static_tracepoint_spec): Adjust to std::vector.
10253         (tracepoint_print_one_detail): Adjust to std::string.
10254         (strace_marker_decode_location): Adjust to std::string.
10255         (update_static_tracepoint): Adjust to std::string, remove call
10256         to release_static_tracepoint_marker.
10257         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
10258         Adjust to std::vector.
10259         * remote.c (remote_static_tracepoint_marker_at): Return bool.
10260         (remote_static_tracepoint_markers_by_strid): Adjust to
10261         std::vector.
10262         * common/rsp-low.h (hex2str): New overload with explicit count
10263         of bytes.
10264         * common/rsp-low.c (hex2str): New overload with explicit count
10265         of bytes.
10266         * unittests/rsp-low-selftests.c (test_hex2str): New function.
10267         (_initialize_rsp_low_selftests): Add test_hex2str test.
10268         * unittests/tracepoint-selftests.c
10269         (test_parse_static_tracepoint_marker_definition): Adjust to
10270         std::string.
10271
10272 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
10273
10274         * tracepoint.c (parse_static_tracepoint_marker_definition):
10275         Consider case where the definition is followed by more
10276         definitions.
10277         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10278         tracepoint-selftests.c.
10279         * unittests/tracepoint-selftests.c: New.
10280
10281 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10282
10283         * MAINTAINERS (Write After Approval): Add Pedro Franco de
10284         Carvalho.
10285
10286 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
10287
10288         * symtab.c (find_pc_sect_line): fixed indentation.
10289
10290 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
10291
10292         * symtab.c (find_pc_sect_line): now uses binary search.
10293
10294 2018-03-19  Tom Tromey  <tom@tromey.com>
10295
10296         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
10297         "IDENT" production.
10298
10299 2018-03-19  Pedro Alves  <palves@redhat.com>
10300             Tom Tromey  <tom@tromey.com>
10301
10302         * unittests/observable-selftests.c: New file.
10303         * common/observable.h: New file.
10304         * observable.h: New file.
10305         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
10306         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
10307         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
10308         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
10309         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
10310         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
10311         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
10312         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
10313         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
10314         python/py-breakpoint.c, python/py-finishbreakpoint.c,
10315         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
10316         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
10317         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
10318         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
10319         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
10320         tui/tui-interp.c, valops.c: Update all users.
10321         * tui/tui-hooks.c (tui_bp_created_observer)
10322         (tui_bp_deleted_observer, tui_bp_modified_observer)
10323         (tui_inferior_exit_observer, tui_before_prompt_observer)
10324         (tui_normal_stop_observer, tui_register_changed_observer):
10325         Remove.
10326         (tui_observers_token): New global.
10327         (attach_or_detach, tui_attach_detach_observers): New functions.
10328         (tui_install_hooks, tui_remove_hooks): Use
10329         tui_attach_detach_observers.
10330         * record-btrace.c (record_btrace_thread_observer): Remove.
10331         (record_btrace_thread_observer_token): New global.
10332         * observer.sh: Remove.
10333         * observer.c: Rename to observable.c.
10334         * observable.c (namespace gdb_observers): Define new objects.
10335         (observer_debug): Move into gdb_observers namespace.
10336         (struct observer, struct observer_list, xalloc_observer_list_node)
10337         (xfree_observer_list_node, generic_observer_attach)
10338         (generic_observer_detach, generic_observer_notify): Remove.
10339         (_initialize_observer): Update.
10340         Don't include observer.inc.
10341         * Makefile.in (generated_files): Remove observer.h, observer.inc.
10342         (clean mostlyclean): Likewise.
10343         (observer.h, observer.inc): Remove targets.
10344         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
10345         (COMMON_SFILES): Use observable.c, not observer.c.
10346         * .gitignore: Remove observer.h.
10347
10348 2018-03-18  Tom Tromey  <tom@tromey.com>
10349
10350         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
10351         gdb::def_vector.
10352         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
10353
10354 2018-03-17  Tom Tromey  <tom@tromey.com>
10355
10356         * auto-load.c (auto_load_objfile_script_1): Use std::string.
10357
10358 2018-03-17  Tom Tromey  <tom@tromey.com>
10359
10360         * target.c (class scoped_target_fd): New.
10361         (target_fileio_close_cleanup): Remove.
10362         (target_fileio_read_alloc_1): Use scoped_target_fd.
10363
10364 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
10365
10366         * silent-rules.mk: New.
10367         * Makefile.in: Include silent-rules.mk
10368         (srcdir, VPATH, top_srcdir): Move up.
10369         (COMPILE): Add ECHO_CXX.
10370         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
10371         (init.c): Add ECHO_INIT_C.
10372         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
10373         (version.c): Add ECHO_GEN.
10374         (printcmd.o): Add ECHO_CXX.
10375         (target-float.o): Add ECHO_CXX.
10376         (ada-exp.o): Add ECHO_CXX.
10377         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
10378         (insight$(EXEEXT)): Add ECHO_CXXLD.
10379         * gnulib/configure.ac: Add AM_SILENT_RULES.
10380         * gnulib/aclocal.m4: Re-generate.
10381         * gnulib/configure: Re-generate.
10382         * gnulib/import/Makefile.in: Re-generate.
10383
10384 2018-03-16  Tom Tromey  <tom@tromey.com>
10385
10386         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
10387         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
10388         * utils.c (do_free_section_addr_info)
10389         (make_cleanup_free_section_addr_info): Remove.
10390         * symfile.h (struct other_sections): Add constructor.
10391         (struct section_addr_info): Remove.
10392         (section_addr_info): New typedef.
10393         (struct sym_fns) <sym_offsets>: Change type of parameter.
10394         (build_section_addr_info_from_objfile)
10395         (relative_addr_info_to_section_offsets, addr_info_make_relative)
10396         (default_symfile_offsets, symbol_file_add)
10397         (symbol_file_add_from_bfd)
10398         (build_section_addr_info_from_section_table): Update.
10399         (alloc_section_addr_info, free_section_addr_info): Don't declare.
10400         * symfile.c (alloc_section_addr_info): Remove.
10401         (build_section_addr_info_from_section_table): Change return type.
10402         Update.
10403         (build_section_addr_info_from_bfd)
10404         (build_section_addr_info_from_objfile): Likewise.
10405         (free_section_addr_info): Remove.
10406         (relative_addr_info_to_section_offsets): Change type of "addrs".
10407         (addrs_section_compar): Now a std::sort comparator.
10408         (addrs_section_sort): Change return type.
10409         (addr_info_make_relative): Change type of "addrs".  Update.
10410         (default_symfile_offsets, syms_from_objfile_1)
10411         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
10412         (symbol_file_add_separate): Update.
10413         (symbol_file_add): Change type of "addrs".  Update.
10414         (add_symbol_file_command): Update.  Remove cleanups.
10415         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
10416         cleanups.
10417         * symfile-debug.c (debug_sym_offsets): Change type of "info".
10418         * solib.c (solib_read_symbols): Update.
10419         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
10420         * machoread.c (macho_symfile_offsets): Update.
10421         * jit.c (jit_bfd_try_read_symtab): Update.
10422
10423 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
10424
10425         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10426         unittests/utils-selftests.c.
10427         * unittests/utils-selftests.c: New file.
10428
10429 2018-03-14  Tom Tromey  <tom@tromey.com>
10430
10431         PR cli/14977:
10432         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
10433         for NULL.
10434
10435 2018-03-14  Tom Tromey  <tom@tromey.com>
10436
10437         PR cli/19918:
10438         * printcmd.c (printf_pointer): Allow "-" in format.
10439
10440 2018-03-14  Tom Tromey  <tom@tromey.com>
10441
10442         * printcmd.c (_initialize_printcmd): Add usage to printf.
10443
10444 2018-03-14  Yao Qi  <qiyao@sourceware.org>
10445
10446         * MAINTAINERS: Update my email address.
10447
10448 2018-03-13  Tom Tromey  <tom@tromey.com>
10449
10450         * machoread.c (macho_check_dsym): Change filenamep to a
10451         std::string*.
10452         (macho_symfile_read): Update.
10453         * symfile.c (load_command): Use std::string.
10454
10455 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
10456
10457         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
10458         to error message string.
10459         (riscv_register_name): Use xsnprintf instead of sprintf.
10460         (riscv_insn::fetch_instruction): Use gdb_assert instead of
10461         internal_error.
10462         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
10463         error.
10464         (riscv_push_dummy_call): Likewise.
10465
10466 2018-03-12  Tom Tromey  <tom@tromey.com>
10467
10468         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
10469         Use gdb::byte_vector.
10470         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
10471
10472 2018-03-12  Yao Qi  <yao.qi@linaro.org>
10473
10474         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
10475         parameter type to readable_regcache.
10476         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
10477         the declaration.
10478
10479 2018-03-11  Tom Tromey  <tom@tromey.com>
10480
10481         * dwarf2read.c (struct nextfield): Add initializers.
10482         (struct nextfnfield): Remove.
10483         (struct fnfieldlist): Add initializers.  Remove "length" and
10484         "head", use std::vector.
10485         (struct decl_field_list): Remove.
10486         (struct field_info): Add initializers.
10487         <fields, baseclasses>: Now std::vector.
10488         <nbaseclasses, nfnfields, typedef_field_list_count,
10489         nested_types_list_count>: Remove.
10490         (dwarf2_add_field, dwarf2_add_type_defn)
10491         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
10492         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
10493         (process_structure_scope): Update.
10494
10495 2018-03-11  Tom Tromey  <tom@tromey.com>
10496
10497         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
10498         for use by std::sort.
10499         (build_type_psymtabs_1): Use std::vector.
10500
10501 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
10502
10503         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
10504         and LIBMPFR in the printed configuration.
10505
10506 2018-03-08  Tom Tromey  <tom@tromey.com>
10507
10508         * source.c (get_filename_and_charpos): Use scoped_fd.
10509         * nto-procfs.c (procfs_open_1): Use scoped_fd.
10510         (procfs_pidlist): Likewise.
10511         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
10512         (iterate_over_mappings): Likewise.
10513
10514 2018-03-08  Tom Tromey  <tom@tromey.com>
10515
10516         * infcall.c (struct call_return_meta_info)
10517         <stack_temporaries_enabled>: Remove.
10518         (get_call_return_value, call_function_by_hand_dummy): Update.
10519         * thread.c (disable_thread_stack_temporaries): Remove.
10520         (enable_thread_stack_temporaries): Remove.
10521         (thread_stack_temporaries_enabled_p): Return bool.
10522         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
10523         (get_last_thread_stack_temporary): Update.
10524         * eval.c (evaluate_subexp): Update.
10525         * gdbthread.h (class enable_thread_stack_temporaries): Now a
10526         class, not a function.
10527         (value_ptr, value_vec): Remove typedefs.
10528         (class thread_info) <stack_temporaries_enabled>: Now bool.
10529         <stack_temporaries>: Now a std::vector.
10530         (thread_stack_temporaries_enabled_p)
10531         (value_in_thread_stack_temporaries): Return bool.
10532
10533 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
10534
10535         * remote.c (putpkt_binary): Fix omitted bytes reporting.
10536         (getpkt_or_notif_sane_1): Likewise.
10537
10538 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
10539
10540         * build-id.c (build_id_to_debug_bfd): Use std::string.
10541
10542 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
10543
10544         * build-id.c (find_separate_debug_file_by_buildid): Return
10545         std::string.
10546         * build-id.h (find_separate_debug_file_by_buildid): Return
10547         std::string.
10548         * coffread.c (coff_symfile_read): Adjust to std::string.
10549         * elfread.c (elf_symfile_read): Adjust to std::string.
10550         * symfile.c (separate_debug_file_exists): Change parameter to
10551         std::string.
10552         (find_separate_debug_file): Return std::string.
10553         (find_separate_debug_file_by_debuglink): Return std::string.
10554         * symfile.h (find_separate_debug_file_by_debuglink): Return
10555         std::string.
10556
10557 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
10558
10559         * common/xml-utils.c (xml_escape_text): Move code to...
10560         (xml_escape_text_append): ... this new function.
10561         * common/xml-utils.h (xml_escape_text_append): New declaration.
10562         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
10563         New function.
10564         (_initialize_xml_utils): register test_xml_escape_text_append as
10565         a selftest.
10566
10567 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
10568
10569         * defs.h: Remove MAX_REGISTER_SIZE.
10570         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
10571         asserts.
10572         * python/py-unwind.c (pyuw_sniffer): Likewise.
10573
10574 2018-03-07  Tom Tromey  <tom@tromey.com>
10575
10576         * linux-tdep.c (linux_info_proc): Update.
10577         * target.h (struct target_ops) <to_fileio_readlink>: Return
10578         optional<string>.
10579         (target_fileio_readlink): Return optional<string>.
10580         * remote.c (remote_hostio_readlink): Return optional<string>.
10581         * inf-child.c (inf_child_fileio_readlink): Return
10582         optional<string>.
10583         * target.c (target_fileio_readlink): Return optional<string>.
10584
10585 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
10586
10587         * regcache.c (cooked_read_test): Add riscv to the list of
10588         architectures that have a save_reggroup.
10589
10590 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10591
10592         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
10593         value is not a dynamic class object.
10594
10595 2018-03-06  Tom Tromey  <tom@tromey.com>
10596
10597         * rust-exp.y: Formatting fixes.
10598
10599 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10600
10601         * riscv-tdep.c (riscv_register_name): Remove target description
10602         support.
10603         (riscv_gdbarch_init): Remove target description check.
10604
10605 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10606
10607         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
10608         comment.
10609         * riscv-tdep.h: Likewise.
10610
10611 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10612
10613         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
10614         (riscv_pseudo_register_write): Delete.
10615         (riscv_gdbarch_init): Remove all use of pseudo registers.
10616
10617 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10618
10619         * record-btrace.c (btrace_print_lines): Replace cleanup
10620         parameter with RAII equivalents.
10621         (btrace_insn_history): Replace cleanup with RAII equivalents.
10622         * ui-out.h (make_cleanup_ui_out_list_begin_end,
10623         make_cleanup_ui_out_tuple_begin_end): Remove.
10624         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
10625         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
10626         make_cleanup_ui_out_list_begin_end): Remove.
10627
10628 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10629
10630         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
10631         parameter types to std::vector.  Use bool.
10632         (record_btrace_wait): Replace VEC(tp_t) with
10633         std::vector<thread_info *>.
10634         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
10635
10636 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10637
10638         * record-btrace.c (record_btrace_disable_callback): Remove.
10639         (struct scoped_btrace_disable): New.
10640         (record_btrace_open): Use scoped_btrace_disable.
10641
10642 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10643
10644         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
10645         reading values from registers.
10646
10647 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10648
10649         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
10650         where appropriate.
10651
10652 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10653
10654         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
10655         change parameter type.  Use GDB's print functions, and use
10656         core_addr_to_string where appropriate.
10657         (riscv_push_dummy_call): Use core_addr_to_string where
10658         appropriate, update call to riscv_print_arg_location, and reindent
10659         a few lines.
10660         (riscv_return_value): Update call to riscv_print_arg_location.
10661
10662 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10663             Tim Newsome <tim@sifive.com>
10664             Albert Ou <a0u@eecs.berkeley.edu>
10665             Darius Rad <darius@bluespec.com>
10666
10667         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
10668         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
10669         (ALLDEPFILES): Add riscv-tdep.c
10670         * configure.tgt: Add riscv support.
10671         * riscv-tdep.c: New file.
10672         * riscv-tdep.h: New file.
10673         * NEWS: Mention new target.
10674         * MAINTAINERS: Add entry for riscv.
10675
10676 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10677
10678         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
10679         fields within aggregates.
10680
10681 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
10682
10683         * record-btrace.c (btrace_print_lines): Change type of flags to
10684         gdb_disassembly_flags.
10685
10686 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10687
10688         * fbsd-nat.c: Include "inf-ptrace.h".
10689         (USE_SIGTRAP_SIGINFO): Conditionally define.
10690         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
10691         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
10692         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
10693         function.
10694         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
10695         Likewise.
10696         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
10697         Likewise.
10698         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
10699         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
10700         "supports_stopped_by_hw_breakpoint" target methods.
10701
10702 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10703
10704         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
10705         * fbsd-nat.c (debug_fbsd_nat): New variable.
10706         (show_fbsd_nat_debug): New function.
10707         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
10708         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
10709
10710 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10711
10712         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
10713         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
10714         prototype.
10715         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
10716         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
10717         method.
10718
10719 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10720
10721         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
10722         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
10723
10724 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10725
10726         * charset.c (struct charset_vector): New.
10727         (charsets): Change type to charset_vector.
10728         (find_charset_names): Adjust.
10729         (add_one): Adjust.
10730         (_initialize_charset): Adjust.
10731
10732 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10733
10734         * progspace.h (struct program_space) <deleted_solibs>: Change
10735         type to std::vector<std::string>.
10736         * progspace.c (clear_program_space_solib_cache): Adjust.
10737         * breakpoint.c (print_solib_event): Adjust.
10738         (check_status_catch_solib): Adjust.
10739         * solib.c (update_solib_list): Adjust.
10740         * ui-out.h (class ui_out) <field_string>: New overload.
10741         * ui-out.c (ui_out::field_string): New overload.
10742
10743 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10744
10745         * progspace.h (struct program_space): Add constructor and
10746         destructor, initialize fields.
10747         (add_program_space): Remove.
10748         * progspace.c (add_program_space): Rename to...
10749         (program_space::program_space): ... this.
10750         (release_program_space): Rename to...
10751         (program_space::~program_space): ... this.
10752         (delete_program_space): Use delete to delete program_space.
10753         (initialize_progspace): Use new to allocate program_space.
10754         * inferior.c (add_inferior_with_spaces): Likewise.
10755         (clone_inferior_command): Likewise.
10756         * infrun.c (follow_fork_inferior): Likewise.
10757         (handle_vfork_child_exec_or_exit): Likewise.
10758
10759 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10760
10761         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
10762         (delim_string_to_char_ptr_vec): Return std::vector of
10763         gdb::unique_xmalloc_ptr.
10764         (dirnames_to_char_ptr_vec_append): Take std::vector of
10765         gdb::unique_xmalloc_ptr.
10766         (dirnames_to_char_ptr_vec): Return std::vector of
10767         gdb::unique_xmalloc_ptr.
10768         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
10769         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
10770         (delim_string_to_char_ptr_vec): Return an std::vector of
10771         gdb::unique_xmalloc_ptr, adjust the code.
10772         (dirnames_to_char_ptr_vec_append): Take an std::vector of
10773         gdb::unique_xmalloc_ptr, adjust the code.
10774         (dirnames_to_char_ptr_vec): Return an std::vector of
10775         gdb::unique_xmalloc_ptr, adjust the code.
10776         * auto-load.c (auto_load_safe_path_vec): Change type to
10777         std::vector of gdb::unique_xmalloc_ptr.
10778         (auto_load_expand_dir_vars): Return an std::vector of
10779         gdb::unique_xmalloc_ptr, adjust the code.
10780         (auto_load_safe_path_vec_update): Adjust.
10781         (filename_is_in_auto_load_safe_path_vec): Adjust.
10782         (auto_load_objfile_script_1): Adjust.
10783         * build-id.c (build_id_to_debug_bfd): Adjust.
10784         * linux-thread-db.c (thread_db_load_search): Adjust.
10785         * source.c (add_path): Adjust.
10786         (openp): Adjust.
10787         * symfile.c (find_separate_debug_file): Adjust.
10788         * utils.c (do_free_char_ptr_vec): Remove.
10789         (make_cleanup_free_char_ptr_vec): Remove.
10790
10791 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
10792
10793         PR gdb/22907
10794         * common/pathstuff.c: Conditionally include "<windows.h>".
10795
10796 2018-03-01  Georg Sauthoff  <mail@georg.so>
10797
10798         PR gdb/22888
10799         * gcore.in: Quote variables and switch interpreter to bash.
10800
10801 2018-03-01  Tom Tromey  <tom@tromey.com>
10802
10803         * dwarf2read.c (alloc_discriminant_info): Fix default_index
10804         assertion.  Add assertion for discriminant_index.
10805         (quirk_rust_enum): Use correct base type name in univariant case.
10806
10807 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
10808
10809         * record.c (get_call_history_modifiers): Return a
10810         record_print_flags.
10811         (cmd_record_call_history): Adjust.
10812         * record-btrace.c (record_btrace_call_history): Adjust.
10813         (record_btrace_call_history_range): Adjust.
10814         (record_btrace_call_history_from): Adjust.
10815         * target-debug.h (target_debug_print_record_print_flags): New.
10816         * target-delegates.c: Re-generate.
10817         * target.c (target_call_history): Change flags type.
10818         (target_call_history_from): Likewise.
10819         (target_call_history_range): Likewise.
10820         * target.h (struct target_ops) <target_call_history>: Likewise.
10821         (target_call_history_from): Likewise.
10822         (target_call_history_range): Likewise.
10823
10824 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
10825             Simon Marchi  <simon.marchi@polymtl.ca>
10826
10827         * common/common-utils.c: Include "sys/stat.h".
10828         (is_regular_file): Move here from "source.c"; change return
10829         type to "bool".
10830         * common/common-utils.h (is_regular_file): New prototype.
10831         * common/pathstuff.c (contains_dir_separator): New function.
10832         * common/pathstuff.h (contains_dir_separator): New prototype.
10833         * source.c: Don't include "sys/stat.h".
10834         (is_regular_file): Move to "common/common-utils.c".
10835
10836 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
10837
10838         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
10839         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
10840         * auto-load.c: Include "common/pathstuff.h".
10841         * common/common-def.h (current_directory): Move here.
10842         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
10843         function.
10844         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
10845         prototype.
10846         * common/pathstuff.c: New file.
10847         * common/pathstuff.h: New file.
10848         * compile/compile.c: Include "common/pathstuff.h".
10849         * defs.h (current_directory): Move to "common/common-defs.h".
10850         * dwarf2read.c: Include "common/pathstuff.h".
10851         * exec.c: Likewise.
10852         * guile/scm-safe-call.c: Likewise.
10853         * linux-thread-db.c: Likewise.
10854         * main.c: Likewise.
10855         * nto-tdep.c: Likewise.
10856         * objfiles.c: Likewise.
10857         * source.c: Likewise.
10858         * symtab.c: Likewise.
10859         * utils.c: Include "common/pathstuff.h".
10860         (gdb_realpath): Move to "common/pathstuff.c".
10861         (gdb_realpath_keepfile): Likewise.
10862         (gdb_abspath): Likewise.
10863         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
10864         (gdb_realpath_keepfile): Likewise.
10865         (gdb_abspath): Likewise.
10866
10867 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
10868
10869         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
10870         wildcard process pid for super_resume for kernels with a
10871         specific bug.
10872
10873 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
10874
10875         * compile/compile.c (get_args): Add additional comments
10876         explaining function.
10877
10878 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
10879             Tom Tromey  <tom@tromey.com>
10880
10881         * target.h (memory_write_request_s): Remove typedef.  Don't define
10882         VEC.
10883         (target_write_memory_blocks): Change argument to std::vector.
10884         (struct memory_write_request): Add constructor.
10885         * target-memory.c (compare_block_starting_address): Return bool.
10886         Change argument types.
10887         (claim_memory): Change arguments to use std::vector.
10888         (split_regular_and_flash_blocks, blocks_to_erase)
10889         (compute_garbled_blocks): Likewise.
10890         (cleanup_request_data, cleanup_write_requests_vector): Remove.
10891         (target_write_memory_blocks): Change argument to std::vector.
10892         * symfile.c (struct load_section_data): Add constructor and
10893         destructor.  Use std::vector for "requests".
10894         (struct load_progress_data): Add initializers.
10895         (load_section_callback): Update.  Use "new".
10896         (clear_memory_write_data): Remove.
10897         (generic_load): Update.
10898
10899 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
10900
10901         * arch/aarch64.h: Use common/tdesc.h.
10902
10903 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
10904
10905         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
10906         architecture with a 64-bit ABI.
10907
10908 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
10909
10910         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
10911         ahead of target description loading.
10912
10913 2018-02-26  Tom Tromey  <tom@tromey.com>
10914
10915         * stack.c (backtrace_command_1): Update.
10916         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
10917         of "flags".
10918         * python/py-framefilter.c (py_print_frame)
10919         (gdbpy_apply_frame_filter): Change type of "flags".
10920         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
10921         of "flags".
10922         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
10923         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
10924         * extension.h (enum frame_filter_flag): Rename from
10925         frame_filter_flags.
10926         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
10927         (apply_ext_lang_frame_filter): Change type of "flags".
10928         * extension.c (apply_ext_lang_frame_filter): Change type of
10929         "flags".
10930         * extension-priv.h (struct extension_language_ops)
10931         <apply_frame_filter>: Change type of "flags".
10932
10933 2018-02-26  Tom Tromey  <tom@tromey.com>
10934
10935         PR python/16497:
10936         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
10937         off-by-one in py_end computation.
10938         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
10939         PRINT_MORE_FRAMES.
10940         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
10941         constant.
10942
10943 2018-02-26  Tom Tromey  <tom@tromey.com>
10944
10945         * dwarf2read.c (struct variant_field): New.
10946         (struct nextfield) <variant>: New field.
10947         (dwarf2_add_field): Handle DW_TAG_variant_part.
10948         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
10949         discriminated union.
10950         (read_structure_type): Handle DW_TAG_variant_part.
10951         (handle_struct_member_die): New function, extracted from
10952         process_structure_scope.  Handle DW_TAG_variant.
10953         (process_structure_scope): Handle discriminated unions.  Call
10954         handle_struct_member_die.
10955
10956 2018-02-26  Tom Tromey  <tom@tromey.com>
10957
10958         * rust-lang.h (rust_last_path_segment): Declare.
10959         * rust-lang.c (rust_last_path_segment): Now public.  Change
10960         contract.
10961         (struct disr_info): Remove.
10962         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
10963         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
10964         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
10965         (rust_enum_p, rust_enum_variant): New function.
10966         (rust_underscore_fields): Remove "offset" parameter.
10967         (rust_print_enum): New function.
10968         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
10969         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
10970         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
10971         enums.
10972         (rust_internal_print_type): New function, from rust_print_type.
10973         Remove enum code.
10974         (rust_print_type): Call rust_internal_print_type.
10975         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
10976         Update enum handling.
10977         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
10978         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
10979         (rust_union_quirks): New functions.
10980         (process_full_comp_unit, process_full_type_unit): Call
10981         rust_union_quirks.
10982         (process_structure_scope): Update rust_unions if necessary.
10983
10984 2018-02-26  Tom Tromey  <tom@tromey.com>
10985
10986         * value.h (value_union_variant): Declare.
10987         * valops.c (value_union_variant): New function.
10988         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
10989         (struct discriminant_info): New.
10990         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
10991         enumerator.
10992         (struct main_type) <flag_discriminated_union>: New field.
10993
10994 2018-02-26  Tom Tromey  <tom@tromey.com>
10995
10996         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10997         unittests/unpack-selftests.c.
10998         * unittests/unpack-selftests.c: New file.
10999         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
11000
11001 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11002
11003         * dwarf2read.c (struct partial_die_info) <read>: New method.
11004         (read_partial_die): Remove the declaration.
11005         (load_partial_dies): Update.
11006         (partial_die_info::partial_die_info):
11007         (read_partial_die): Change it to partial_die_info::read.
11008
11009 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11010
11011         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
11012         (fixup_partial_die): Remove declaration.
11013         (scan_partial_symbols): Update.
11014         (partial_die_parent_scope): Likewise.
11015         (partial_die_full_name): Likewise.
11016         (fixup_partial_die): Change it to partial_die_info::fixup.
11017
11018 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11019
11020         * dwarf2read.c (read_partial_die): Update the declaration.
11021         (load_partial_dies): Caller update.
11022         (read_partial_die): Remove one argument abbrev_len.
11023
11024 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11025
11026         * dwarf2read.c (struct partial_die_info): Add ctor, delete
11027         assignment operator.
11028         (load_partial_dies): Use ctor and copy ctor.
11029         (read_partial_die): Update.
11030         (dwarf2_cu::find_partial_die): Use ctor.
11031
11032 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11033
11034         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
11035         (find_partial_die_in_comp_unit): Change it to
11036         dwarf2_cu::find_partial_die.
11037         (find_partial_die): Update.
11038
11039 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11040
11041         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
11042         is NULL.
11043
11044 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11045
11046         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
11047
11048 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
11049
11050         * arch/amd64.h: Use common/tdesc.h.
11051         * arch/i386.c: Likewise.
11052         * arch/i386.h: Likewise.
11053         * arch/tic6x.c: Likewise.
11054         * arch/tdesc.h: Move file from here...
11055         * common/tdesc.h: ...to here.
11056         * features/aarch64-core.c: Regenerate.
11057         * features/aarch64-fpu.c: Regenerate.
11058         * features/i386/32bit-avx.c: Regenerate.
11059         * features/i386/32bit-avx512.c: Regenerate.
11060         * features/i386/32bit-core.c: Regenerate.
11061         * features/i386/32bit-linux.c: Regenerate.
11062         * features/i386/32bit-mpx.c: Regenerate.
11063         * features/i386/32bit-pkeys.c: Regenerate.
11064         * features/i386/32bit-sse.c: Regenerate.
11065         * features/i386/64bit-avx.c: Regenerate.
11066         * features/i386/64bit-avx512.c: Regenerate.
11067         * features/i386/64bit-core.c: Regenerate.
11068         * features/i386/64bit-linux.c: Regenerate.
11069         * features/i386/64bit-mpx.c: Regenerate.
11070         * features/i386/64bit-pkeys.c: Regenerate.
11071         * features/i386/64bit-segments.c: Regenerate.
11072         * features/i386/64bit-sse.c: Regenerate.
11073         * features/i386/x32-core.c: Regenerate.
11074         * features/tic6x-c6xp.c: Regenerate.
11075         * features/tic6x-core.c: Regenerate.
11076         * features/tic6x-gp.c: Regenerate.
11077         * target-descriptions.c: Use common/tdesc.h.
11078         * target-descriptions.h: Likewise.
11079
11080 2018-02-24  Tom Tromey  <tom@tromey.com>
11081
11082         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
11083         (try_thread_db_load_from_dir, thread_db_load_search): Use
11084         std::string.
11085         (info_auto_load_libthread_db_compare): Return bool.  Change
11086         argument types.
11087         (info_auto_load_libthread_db): Use std::vector, std::string.
11088         Remove cleanups.
11089
11090 2018-02-24  Tom Tromey  <tom@tromey.com>
11091
11092         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
11093         std::string.
11094         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
11095         std::string*.
11096         * gdbarch.c: Rebuild.
11097         * gdbarch.h: Rebuild.
11098         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
11099         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
11100         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
11101         std::string*.
11102
11103 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
11104
11105         * gdbtypes.h (sect_offset): Change type to uint64_t.
11106         (sect_offset_str): New function.
11107         * dwarf2read.c (create_addrmap_from_aranges): Use
11108         sect_offset_str.
11109         (error_check_comp_unit_head): Likewise.
11110         (create_debug_type_hash_table): Likewise.
11111         (read_cutu_die_from_dwo): Likewise.
11112         (init_cutu_and_read_dies): Likewise.
11113         (init_cutu_and_read_dies_no_follow): Likewise.
11114         (process_psymtab_comp_unit_reader): Likewise.
11115         (partial_die_parent_scope): Likewise.
11116         (peek_die_abbrev): Likewise.
11117         (process_queue): Likewise.
11118         (dwarf2_physname): Likewise.
11119         (read_namespace_alias): Likewise.
11120         (read_import_statement): Likewise.
11121         (create_dwo_cu_reader): Likewise.
11122         (create_cus_hash_table): Likewise.
11123         (lookup_dwo_cutu): Likewise.
11124         (inherit_abstract_dies): Likewise.
11125         (read_func_scope): Likewise.
11126         (read_call_site_scope): Likewise.
11127         (dwarf2_add_member_fn): Likewise.
11128         (read_common_block): Likewise.
11129         (read_module_type): Likewise.
11130         (read_typedef): Likewise.
11131         (read_subrange_type): Likewise.
11132         (load_partial_dies): Likewise.
11133         (read_partial_die): Likewise.
11134         (find_partial_die): Likewise.
11135         (read_str_index): Likewise.
11136         (dwarf2_string_attr): Likewise.
11137         (build_error_marker_type): Likewise.
11138         (lookup_die_type): Likewise.
11139         (dump_die_shallow): Likewise.
11140         (follow_die_ref): Likewise.
11141         (dwarf2_fetch_die_loc_sect_off): Likewise.
11142         (dwarf2_fetch_constant_bytes): Likewise.
11143         (follow_die_sig): Likewise.
11144         (get_signatured_type): Likewise.
11145         (get_DW_AT_signature_type): Likewise.
11146         (dwarf2_find_containing_comp_unit): Likewise.
11147         (set_die_type): Likewise.
11148
11149 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
11150
11151         * arch/aarch64.c: Include "common-defs.h".
11152         * arch/amd64.c: Likewise.
11153         * arch/i386.c: Likewise.
11154
11155 2018-02-21  Tom Tromey  <tom@tromey.com>
11156
11157         * value.h: (extract_field_op): Update.
11158         * eval.c (extract_field_op): Return a const char *.
11159         * expression.h (parse_expression_for_completion): Update.
11160         * completer.c (complete_expression): Update.
11161         (add_struct_fields): Make fieldname const.
11162         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
11163         (mark_completion_tag, parse_exp_in_context_1): Update.
11164         (parse_expression_for_completion): Change "name" to
11165         unique_xmalloc_ptr*.
11166
11167 2018-02-21  Tom Tromey  <tom@tromey.com>
11168
11169         * infcall.c (call_function_by_hand_dummy): Use std::vector.
11170
11171 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11172
11173         * avr-tdep.c (avr_read_pc): Change parameter type to
11174         readable_regcache.
11175         * gdbarch.sh (read_pc): Likewise.
11176         * gdbarch.c: Re-generated.
11177         * gdbarch.h: Re-generated.
11178         * hppa-tdep.c (hppa_read_pc): Change parameter type to
11179         readable_regcache.
11180         * ia64-tdep.c (ia64_read_pc): Likewise.
11181         * mips-tdep.c (mips_read_pc): Likewise.
11182         * spu-tdep.c (spu_read_pc): Likewise.
11183
11184 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11185
11186         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
11187         * regcache-dump.c: New file.
11188         * regcache.c: Move register_dump to regcache-dump.c.
11189         (maintenance_print_registers): Likewise.
11190         (maintenance_print_raw_registers): Likewise.
11191         (maintenance_print_cooked_registers): Likewise.
11192         (maintenance_print_register_groups): Likewise.
11193         (maintenance_print_remote_registers): Likewise.
11194         (_initialize_regcache): Likewise.
11195         * regcache.h (register_dump): Moved from regcache.c.
11196
11197 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11198
11199         * regcache.c (regcache::regcache): Update.
11200         (regcache::invalidate): Move it to detached_regcache::invalidate.
11201         (get_thread_arch_aspace_regcache): Update.
11202         (regcache::raw_update): Update.
11203         (regcache::cooked_read): Remove some code.
11204         (regcache::cooked_read_value): Likewise.
11205         (regcache::raw_write): Remove assert on m_readonly_p.
11206         (regcache::raw_supply_integer): Move it to
11207         detached_regcache::raw_supply_integer.
11208         (regcache::raw_supply_zeroed): Likewise.
11209         * regcache.h (detached_regcache) <raw_supply_integer>: New
11210         declaration.
11211         <raw_supply_zeroed, invalidate>: Likewise.
11212         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
11213         <invalidate>: Likewise.
11214         <m_readonly_p>: Removed.
11215
11216 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11217
11218         * infcmd.c (get_return_value): Let stop_regs point to
11219         get_current_regcache.
11220         * regcache.c (regcache::regcache): Remove.
11221         (register_dump_reg_buffer): New class.
11222         (regcache_print): Adjust.
11223         * regcache.h (regcache): Remove constructors.
11224
11225 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11226
11227         * regcache.c (class register_dump): New class.
11228         (register_dump_regcache, register_dump_none): New class.
11229         (register_dump_remote, register_dump_groups): New class.
11230         (regcache_print): Update.
11231         * regcache.h (regcache_dump_what): Move it to regcache.c.
11232         (regcache) <dump>: Remove.
11233
11234 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11235
11236         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
11237          reg_buffer_rw *.
11238         (jit_unwind_reg_set_impl): Call raw_supply.
11239         (jit_frame_sniffer): Use reg_buffer_rw.
11240         * record-full.c (record_full_core_regbuf): Change its type.
11241         (record_full_core_open_1): Use reg_buffer_rw.
11242         (record_full_close): Likewise.
11243         (record_full_core_fetch_registers): Use regcache->raw_supply.
11244         (record_full_core_store_registers): Likewise.
11245         * regcache.c (regcache::get_register_status): Move it to
11246         reg_buffer.
11247         (regcache_raw_set_cached_value): Remove.
11248         (regcache::raw_set_cached_value): Remove.
11249         (regcache::raw_write): Call raw_supply.
11250         (regcache::raw_supply): Move it to reg_buffer_rw.
11251         * regcache.h (regcache_raw_set_cached_value): Remove.
11252         (reg_buffer_rw): New class.
11253
11254 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11255
11256         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
11257         readonly_detached_regcache.
11258         (dummy_frame_prev_register): Use regcache->cooked_read.
11259         * frame.c (frame_save_as_regcache): Change return type.
11260         (frame_pop): Update.
11261         * frame.h (frame_save_as_regcache): Update declaration.
11262         * inferior.h (get_infcall_suspend_state_regcache): Update
11263         declaration.
11264         * infrun.c (infcall_suspend_state) <registers>: use
11265         readonly_detached_regcache.
11266         (save_infcall_suspend_state): Don't use regcache_dup.
11267         (get_infcall_suspend_state_regcache): Change return type.
11268         * linux-fork.c (struct fork_info) <savedregs>: Change to
11269         readonly_detached_regcache.
11270         <pc>: New field.
11271         (fork_save_infrun_state): Don't use regcache_dup.
11272         (info_checkpoints_command): Adjust.
11273         * mi/mi-main.c (register_changed_p): Update declaration.
11274         (mi_cmd_data_list_changed_registers): Use
11275         readonly_detached_regcache.
11276         (register_changed_p): Change parameter type to
11277         readonly_detached_regcache.
11278         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
11279         readonly_detached_regcache.
11280         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
11281         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
11282         New.
11283         (regcache::save): Move it to reg_buffer.
11284         (regcache::restore): Change parameter type.
11285         (regcache_dup): Remove.
11286         * regcache.h (reg_buffer) <save>: New method.
11287         (readonly_detached_regcache): New class.
11288         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
11289         readonly_detached_regcache.
11290         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
11291
11292 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11293
11294         * frame.c (frame_save_as_regcache): Use regcache method save.
11295         (frame_pop): Use regcache method restore.
11296         * infrun.c (restore_infcall_suspend_state): Likewise.
11297         * linux-fork.c (fork_load_infrun_state): Likewise.
11298         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
11299         save.
11300         * regcache.c (regcache_save): Remove.
11301         (regcache::restore): More asserts.
11302         (regcache_cpy): Remove.
11303         * regcache.h (regcache_save): Remove the declaration.
11304         (regcache::restore): Move from private to public.
11305         Remove the friend declaration of regcache_cpy.
11306         (regcache_cpy): Remove declaration.
11307
11308 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11309
11310         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
11311         parameter type to 'readable_regcache *'.
11312         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
11313         * arm-tdep.c (arm_neon_quad_read): Likewise.
11314         (arm_pseudo_read): Likewise.
11315         * avr-tdep.c (avr_pseudo_register_read): Likewise.
11316         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
11317         * frv-tdep.c (frv_pseudo_register_read): Likewise.
11318         * gdbarch.c: Re-generated.
11319         * gdbarch.h: Re-generated.
11320         * gdbarch.sh (pseudo_register_read): Change parameter type to
11321         'readable_regcache *'.
11322         (pseudo_register_read_value): Likewise.
11323         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
11324         (h8300_pseudo_register_read): Likewise.
11325         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
11326         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
11327         (i386_pseudo_register_read_into_value): Likewise.
11328         (i386_pseudo_register_read_value): Likewise.
11329         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
11330         declaration.
11331         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
11332         * m32c-tdep.c (m32c_raw_read): Likewise.
11333         (m32c_read_flg): Likewise.
11334         (m32c_banked_register): Likewise.
11335         (m32c_banked_read): Likewise.
11336         (m32c_sb_read): Likewise.
11337         (m32c_part_read): Likewise.
11338         (m32c_cat_read): Likewise.
11339         (m32c_r3r2r1r0_read): Likewise.
11340         (m32c_pseudo_register_read): Likewise.
11341         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
11342         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
11343         (mep_pseudo_cr64_read): Likewise.
11344         (mep_pseudo_register_read): Likewise.
11345         * mips-tdep.c (mips_pseudo_register_read): Likewise.
11346         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
11347         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
11348         * regcache.c (regcache::raw_read): Move it to readable_regcache.
11349         (regcache::cooked_read): Likewise.
11350         (regcache::cooked_read_value): Likewise.
11351         (regcache_cooked_read_signed):
11352         (regcache::cooked_read): Likewise.
11353         * regcache.h (readable_regcache): New class.
11354         (regcache): Inherit readable_regcache.  Move some methods to
11355         readable_regcache.
11356         * rl78-tdep.c (rl78_pseudo_register_read): Change
11357         parameter type to 'readable_regcache *'.
11358         * rs6000-tdep.c (do_regcache_raw_read): Remove.
11359         (e500_pseudo_register_read): Change parameter type to
11360         'readable_regcache *'.
11361         (dfp_pseudo_register_read): Likewise.
11362         (vsx_pseudo_register_read): Likewise.
11363         (efpr_pseudo_register_read): Likewise.
11364         * s390-tdep.c (s390_pseudo_register_read): Likewise.
11365         * sh-tdep.c (sh_pseudo_register_read): Likewise.
11366         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
11367         (sh64_pseudo_register_read): Likewise.
11368         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
11369         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
11370         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
11371         (spu_pseudo_register_read): Likewise.
11372         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
11373         (xtensa_pseudo_register_read): Likewise.
11374
11375 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11376
11377         * regcache.c (regcache::regcache): Call reg_buffer ctor.
11378         (regcache::arch): Move it to reg_buffer::arch.
11379         (regcache::register_buffer): Likewise.
11380         (regcache::assert_regnum): Likewise.
11381         (regcache::num_raw_registers): Likewise.
11382         * regcache.h (reg_buffer): New class.
11383         (regcache): Inherit reg_buffer.
11384
11385 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
11386
11387         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
11388         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
11389
11390 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
11391
11392         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
11393
11394 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
11395
11396         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
11397         (SFILES): Remove common/*.c files.
11398         (COMMON_OBS): Remove some *.o files built from common/*.c files.
11399         * common/common.host: Add common reference.
11400         * configure.ac: Likewise.
11401         * configure: Regenerate.
11402
11403 2018-02-16  Yao Qi  <yao.qi@linaro.org>
11404
11405         * block.c (block_namespace_info): Inherit allocate_on_obstack.
11406         (block_initialize_namespace): Use new.
11407         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
11408         (dwarf2_free_objfile): Use delete.
11409         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
11410         (copy_type_recursive): Use new.
11411         * gdb_obstack.h (allocate_on_obstack): New.
11412
11413 2018-02-15  Yao Qi  <yao.qi@linaro.org>
11414
11415         PR gdb/22849
11416         * inferior.c (exit_inferior_1): Reset inf->control.
11417
11418 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
11419
11420         * ada-lang.c (ada_to_fixed_value_create): Delete advance
11421         declaration.
11422
11423 2018-02-14  Pedro Alves  <palves@redhat.com>
11424
11425         * frame-unwind.c (frame_unwind_try_unwinder): Always call
11426         frame_cleanup_after_sniffer on exception.
11427
11428 2018-02-14  Tom Tromey  <tom@tromey.com>
11429
11430         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
11431         const.
11432         (solib_bfd_open): Make pathname const.
11433         * solib.c (solib_bfd_open): Make pathname const.
11434         * solib-spu.c (spu_bfd_fopen): Make name const.
11435         (spu_bfd_open): Make pathname const.
11436         * solib-darwin.c (darwin_bfd_open): Make pathname const.
11437         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
11438
11439 2018-02-14  Tom Tromey  <tom@tromey.com>
11440
11441         * symfile.c (symfile_bfd_open): Update.
11442         * source.h (openp, source_full_path_of, find_and_open_source):
11443         Change argument type to unique_xmalloc_ptr.
11444         * source.c (openp): Take a unique_xmalloc_ptr.
11445         (source_full_path_of, find_and_open_source): Likewise.
11446         (open_source_file, symtab_to_fullname): Update.
11447         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
11448         unique_xmalloc_ptr.
11449         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
11450         (exec_file_find): Update.
11451         * psymtab.c (psymtab_to_fullname): Update.
11452         * nto-tdep.h (nto_find_and_open_solib): Update.
11453         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
11454         unique_xmalloc_ptr.
11455         * exec.c (exec_file_attach): Update.
11456         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
11457         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
11458
11459 2018-02-14  Tom Tromey  <tom@tromey.com>
11460
11461         * solib.c: Include source.h.
11462         * nto-tdep.c: Include source.h.
11463         * mi/mi-cmd-env.c: Include source.h.
11464         * infcmd.c: Include source.h.
11465         * exec.c: Include source.h.
11466         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
11467         (add_path, directory_switch, source_path, init_source_path): Move
11468         declarations...
11469         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
11470         (add_path, directory_switch, source_path, init_source_path):
11471         ...here.
11472
11473 2018-02-14  Tom Tromey  <tom@tromey.com>
11474
11475         * solist.h (exec_file_find, solib_find): Return
11476         unique_xmalloc_ptr.
11477         (solib_bfd_fopen): Take a const char *.
11478         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
11479         (exec_file_find, solib_find): Likewise.
11480         (solib_bfd_fopen): Do not take ownership of "pathname".
11481         (solib_bfd_open): Use unique_xmalloc_ptr.
11482         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
11483         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
11484         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
11485         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
11486
11487 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
11488
11489         * ada-lang.c (name_match_type_from_name): Remove reference to
11490         ada_name_for_lookup in function's documentation.
11491         * ada-lang.h (ada_name_for_lookup): Delete declaration.
11492
11493 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
11494
11495         * defs.h (enum openp_flags): New enum.
11496         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
11497         Move to enum openp_flags.
11498         (openp_flags): New enum flags.
11499         (openp): Change parameter type to openp_flags.
11500         * source.c (openp): Change parameter type to openp_flags.
11501         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
11502         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
11503
11504 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
11505
11506         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
11507         per-command.
11508
11509 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
11510
11511         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
11512         into...
11513         (class dwarf2_queue_guard): ...the destructor of this new class.
11514         (dw2_do_instantiate_symtab): Create instance of the new class
11515         dwarf2_queue_guard, remove cleanup.
11516
11517 2018-02-09  Tom Tromey  <tom@tromey.com>
11518
11519         * source.c (find_source_lines): Don't reference past the end of
11520         the vector.
11521
11522 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11523
11524         * remote.c (remote_btrace_maybe_reopen): Change error message.
11525         * btrace.c (btrace_enable): Likewise.
11526         (parse_xml_btrace): Likewise.
11527         (parse_xml_btrace_conf): Likewise.
11528
11529 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11530
11531         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
11532         (linux_enable_pt, linux_enable_bts): Call
11533         diagnose_perf_event_open_fail.
11534
11535 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11536
11537         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
11538         Remove parameter and change return type.  Update callers.  Move it.
11539         (linux_enable_bts, linux_enable_pt): Improve error message.
11540         (linux_enable_pt): Remove zero buffer size check.
11541         (linux_enable_btrace): Improve error messages.  Remove NULL return
11542         check.
11543
11544 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11545
11546         * btrace.c (btrace_enable): Remove target_supports_btrace call.
11547         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
11548         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
11549         (linux_supports_pt, linux_supports_btrace): Remove.
11550         (linux_enable_bts): Call cpu_supports_bts.
11551         * nat/linux-btrace.h (linux_supports_btrace): Remove.
11552         * remote.c (remote_supports_btrace): Remove.
11553         (init_remote_ops): Remove remote_supports_btrace.
11554         * target-delegates.c: Regenerated.
11555         * target.c (target_supports_btrace): Remove.
11556         * target.h (target_ops) <to_supports_btrace>: Remove
11557         (target_supports_btrace): Remove.
11558         * x86-linux-nat.c (x86_linux_create_target): Remove
11559         linux_supports_btrace.
11560
11561 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11562
11563         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
11564         btrace failed.
11565         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
11566         exception and use message in own exception.
11567
11568 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11569
11570         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
11571         (perf_event_pt_event_type): Use gdb_file_up.
11572         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
11573         scoped_fd, and scoped_mmap.
11574
11575 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11576
11577         * common/scoped_mmap.h: New.
11578         * unittests/scoped_mmap-selftest.c: New.
11579         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11580         unittests/scoped_mmap-selftest.c.
11581
11582 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11583
11584         * common/scoped_fd.h: New.
11585         * unittests/scoped_fd-selftest.c: New.
11586         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11587         unittests/scoped_fd-selftest.c.
11588
11589 2018-02-09  Tom Tromey  <tom@tromey.com>
11590
11591         * auto-load.c (auto_load_section_scripts): Use
11592         gdb::unique_xmalloc_ptr.
11593
11594 2018-02-09  Tom Tromey  <tom@tromey.com>
11595
11596         * auto-load.c (execute_script_contents): Use std::string.
11597
11598 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
11599
11600         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
11601         Python function, rather than a new command.
11602
11603 2018-02-08  Tom Tromey  <tom@tromey.com>
11604
11605         * solib.c (solib_find_1): Use std::string.
11606         (solib_bfd_fopen): Use unique_xmalloc_ptr.
11607
11608 2018-02-08  Tom Tromey  <tom@tromey.com>
11609
11610         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
11611
11612 2018-02-08  Tom Tromey  <tom@tromey.com>
11613
11614         * source.c (find_source_lines): Use gdb::def_vector.
11615
11616 2018-02-08  Tom Tromey  <tom@tromey.com>
11617
11618         * macrocmd.c (struct temporary_macro_definition): New.
11619         (macro_define_command): Use temporary_macro_definition.  Remove
11620         cleanups.
11621         (free_macro_definition_ptr): Remove.
11622
11623 2018-02-08  Tom Tromey  <tom@tromey.com>
11624
11625         * macroexp.c (maybe_expand): Use std::string.
11626
11627 2018-02-08  Tom Tromey  <tom@tromey.com>
11628
11629         * macroexp.c (struct macro_buffer): Add initializers for some
11630         members.
11631         (init_buffer, init_shared_buffer, free_buffer)
11632         (free_buffer_return_text): Remove.
11633         (macro_buffer): New constructors.
11634         (~macro_buffer): New destructor.
11635         (macro_buffer::set_shared): New method.
11636         (macro_buffer::resize_buffer, macro_buffer::appendc)
11637         (macro_buffer::appendmem): Now methods, not free functions.
11638         (set_token, append_tokens_without_splicing, stringify)
11639         (macro_stringify): Update.
11640         (gather_arguments): Change return type.  Remove argc_p argument,
11641         add args_ptr argument.  Use std::vector.
11642         (substitute_args): Remove argc argument.  Accept std::vector.
11643         (expand): Update.  Use std::vector.
11644         (scan, macro_expand, macro_expand_next): Update.
11645
11646 2018-02-08  Tom Tromey  <tom@tromey.com>
11647
11648         * symtab.c (default_collect_symbol_completion_matches_break_on):
11649         Use unique_xmalloc_ptr.
11650         * macroscope.h: (sal_macro_scope, user_macro_scope)
11651         (default_macro_scope): Return unique_xmalloc_ptr.
11652         * macroscope.c (sal_macro_scope, user_macro_scope)
11653         (default_macro_scope): Return unique_xmalloc_ptr.
11654         * macroexp.h (macro_expand, macro_expand_once): Return
11655         unique_xmalloc_ptr.
11656         * macroexp.c (macro_expand, macro_expand_once): Return
11657         unique_xmalloc_ptr.
11658         * macrocmd.c (macro_expand_command, macro_expand_once_command)
11659         (info_macro_command, info_macros_command): Use
11660         unique_xmalloc_ptr.
11661         * compile/compile-c-support.c (write_macro_definitions): Use
11662         unique_xmalloc_ptr.
11663         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
11664
11665 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
11666
11667         * value.c (value_static_field): Assign field type instead of
11668         containing type when returning an optimized out value.
11669
11670 2018-02-06  Yao Qi  <yao.qi@linaro.org>
11671
11672         * ft32-tdep.c (ft32_read_pc): Remove.
11673         (ft32_write_pc): Remove.
11674         (ft32_gdbarch_init): Update.
11675         * m32r-tdep.c (m32r_read_pc): Remove.
11676         (m32r_gdbarch_init): Update.
11677         * mep-tdep.c (mep_read_pc): Remove.
11678         (mep_gdbarch_init): Update.
11679         * microblaze-tdep.c (microblaze_write_pc): Remove.
11680         (microblaze_gdbarch_init): Update.
11681         * mn10300-tdep.c (mn10300_read_pc): Remove.
11682         (mn10300_write_pc): Remove.
11683         (mn10300_gdbarch_init): Update.
11684         * moxie-tdep.c (moxie_read_pc): Remove.
11685         (moxie_write_pc): Remove.
11686         (moxie_gdbarch_init): Update.
11687
11688 2018-02-06  Yao Qi  <yao.qi@linaro.org>
11689
11690         * expprint.c (print_subexp_standard): Handle
11691         OP_F77_UNDETERMINED_ARGLIST.
11692         (dump_subexp_body_standard): Likewise.
11693
11694 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
11695
11696         * target-descriptions.c (tdesc_element_visitor) Add empty
11697         implementations.
11698         (tdesc_type): Move make_gdb_type from here.
11699         (tdesc_type_builtin): Likewise.
11700         (tdesc_type_vector): Likewise.
11701         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
11702         (make_gdb_type_struct): Move from tdesc_type_with_fields.
11703         (make_gdb_type_union): Likewise.
11704         (make_gdb_type_flags): Likewise.
11705         (make_gdb_type_enum): Likewise.
11706         (make_gdb_type): New function.
11707         (tdesc_register_type): Use static make_gdb_type.
11708
11709 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
11710
11711         * infcmd.c (default_print_one_register_info): Align natural-format
11712         column values consistently one under another.
11713         (pad_to_column): New function.
11714
11715 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
11716
11717         * dwarf2read.c (dwarf2_physname): Move commment.
11718
11719 2018-02-01  Leszek Swirski  <leszeks@google.com>
11720
11721         * varobj.c (varobj_formatted_print_options): Allow recursive
11722         pretty printing if pretty printing is enabled.
11723
11724 2018-02-01  Leszek Swirski  <leszeks@google.com>
11725
11726         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
11727         names after a structop as a filename.
11728
11729 2018-02-01  Yao Qi  <yao.qi@linaro.org>
11730
11731         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
11732         (arm_record_coproc_data_proc): Likewise.
11733
11734 2018-02-01  Yao Qi  <yao.qi@linaro.org>
11735
11736         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
11737
11738 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
11739
11740         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
11741         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
11742
11743 2018-01-31  Pedro Alves  <palves@redhat.com>
11744
11745         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
11746         * inflow.c (child_terminal_save_inferior): Wrap reference to
11747         tcgetpgrp in HAVE_TERMIOS_H.
11748         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
11749         _WIN32.
11750         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
11751         always iterate over all inferiors.
11752         (gdbsim_cntrl_c): Adjust.
11753         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
11754
11755 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
11756
11757         * gdbtypes.c (lookup_array_range_type): Make sure the array's
11758         index type is objfile-owned if the element type is as well.
11759
11760 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
11761
11762         GDB 8.1 released.
11763
11764 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11765
11766         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
11767         "features/s390x-linux64.c".
11768         (_initialize_s390_linux_tdep): Remove initialization of tdescs
11769         s390_linux32 and s390x_linux64.
11770         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
11771         default tdesc.
11772         * s390-tdep.c: Include "features/s390-linux32.c" and
11773         "features/s390x-linux64.c".
11774         (s390_tdesc_valid): Add check for tdesc_has_registers.
11775         (s390_gdbarch_init): Make sure there is always a valid tdesc.
11776         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
11777         tdesc_s390x_linux64.
11778         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
11779         tdesc_s390x_linux64 to...
11780         * s390-tdep.h: ...here.
11781
11782 2018-01-30  Pedro Alves  <palves@redhat.com>
11783
11784         PR gdb/13211
11785         * config.in, configure: Regenerate.
11786         * configure.ac: Check for getpgid.
11787         * go32-nat.c (go32_pass_ctrlc): New.
11788         (go32_target): Install it.
11789         * inf-child.c (inf_child_target): Install
11790         child_terminal_save_inferior, child_pass_ctrlc and
11791         child_interrupt.
11792         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
11793         (inf_ptrace_target): No longer install it.
11794         * infcmd.c (interrupt_target_1): Adjust.
11795         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
11796         (child_interrupt): Declare.
11797         (inferior::terminal_state): New.
11798         * inflow.c (struct terminal_info): Update comments.
11799         (inferior_process_group): Delete.
11800         (terminal_is_ours): Delete.
11801         (gdb_tty_state): New.
11802         (child_terminal_init): Adjust.
11803         (is_gdb_terminal, sharing_input_terminal_1)
11804         (sharing_input_terminal): New functions.
11805         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
11806         Set the process's actual process group in the foreground if
11807         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
11808         mark terminal as the inferior's if not sharing GDB's terminal.
11809         Don't check attach_flag.
11810         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
11811         pass down a target_terminal_state.
11812         (child_terminal_save_inferior): New, factored out from ...
11813         (child_terminal_ours_1): ... this.  Handle
11814         target_terminal_state::is_ours_for_output.
11815         (child_interrupt, child_pass_ctrlc): New.
11816         (inflow_inferior_exit): Clear the inferior's terminal_state.
11817         (copy_terminal_info): Copy the inferior's terminal state.
11818         (_initialize_inflow): Remove reference to terminal_is_ours.
11819         * inflow.h (inferior_process_group): Delete.
11820         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
11821         * procfs.c (procfs_target): Don't install procfs_interrupt.
11822         (procfs_interrupt): Delete.
11823         * remote.c (remote_serial_quit_handler): Adjust.
11824         (remote_interrupt): Remove ptid parameter.  Adjust.
11825         * target-delegates.c: Regenerate.
11826         * target.c: Include "terminal.h".
11827         (target_terminal::terminal_state): Rename to ...
11828         (target_terminal::m_terminal_state): ... this.
11829         (target_terminal::init): Adjust.
11830         (target_terminal::inferior): Adjust to per-inferior
11831         terminal_state.
11832         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
11833         (target_terminal::ours, target_terminal::ours_for_output): Use
11834         target_terminal_is_ours_kind.
11835         (target_interrupt): Remove ptid parameter.  Adjust.
11836         (default_target_pass_ctrlc): Adjust.
11837         * target.h (target_ops::to_terminal_save_inferior): New field.
11838         (target_ops::to_interrupt): Remove ptid_t parameter.
11839         (target_interrupt): Remove ptid_t parameter.  Update comment.
11840         (target_pass_ctrlc): Update comment.
11841         * target/target.h (target_terminal_state): New scoped enum,
11842         factored out of ...
11843         (target_terminal::terminal_state): ... here.
11844         (target_terminal::inferior): Update comments.
11845         (target_terminal::restore_inferior): New.
11846         (target_terminal::is_inferior, target_terminal::is_ours)
11847         (target_terminal::is_ours_for_output): Adjust.
11848         (target_terminal::scoped_restore_terminal_state): Adjust to
11849         rename, and call restore_inferior() instead of inferior().
11850         (target_terminal::scoped_restore_terminal_state::m_state): Change
11851         type.
11852         (target_terminal::terminal_state): Rename to ...
11853         (target_terminal::m_terminal_state): ... this and change type.
11854
11855 2018-01-30  Pedro Alves  <palves@redhat.com>
11856
11857         * linux-nat.c (wait_for_signal): New function.
11858         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
11859         directly.
11860         (async_terminal_is_ours)
11861         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
11862         (linux_nat_add_target): Don't override
11863         to_terminal_inferior/to_terminal_ours.
11864
11865 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
11866
11867         * remote.c (remote_follow_fork): Don't call "detach_inferior".
11868
11869 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
11870
11871         * dwarf2read.c (free_dwo_files): Add forward-declaration.
11872         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
11873         dwarf2_per_objfile_free here.
11874         (dwarf2_per_objfile_free): Remove.
11875         (_initialize_dwarf2_read): Don't register
11876         dwarf2_per_objfile_free as a registry cleanup.
11877
11878 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
11879
11880         Avoid compilation errors in MinGW native builds
11881
11882         The error is triggered by including python-internal.h, and the
11883         error message is:
11884
11885              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
11886                       from build-gnulib/import/math.h:27,
11887                       from d:/usr/Python26/include/pyport.h:235,
11888                       from d:/usr/Python26/include/Python.h:58,
11889                       from python/python-internal.h:94,
11890                       from python/py-arch.c:24:
11891              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
11892         using ::hypot;
11893                 ^~~~~
11894
11895         This happens because Python headers define 'hypot' to expand t
11896         '_hypot' in the Windows builds.
11897         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
11898         'hypoth'.  This avoids a compilation error.
11899
11900 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
11901
11902         * MAINTAINERS (Write After Approval): Fix ordering.
11903
11904 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
11905
11906         * MAINTAINERS (Write After Approval): Add Alan Hayward.
11907
11908 2018-01-26  Alan Modra  <amodra@gmail.com>
11909
11910         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
11911         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
11912         Remove nop.  Make const.  Comment.
11913         (powerpc32_plt_stub_so_2): New.
11914         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
11915         Correct count.  Update uses.
11916         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
11917         Move common code reading PLT entry word.  Correct
11918         powerpc32_plt_stub PLT address calculation.
11919         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
11920         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
11921         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
11922         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
11923         (ppc64_standard_linkage8): Likewise.
11924         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
11925         Correct insns description.
11926         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
11927
11928 2018-01-24  Pedro Alves  <palves@redhat.com>
11929
11930         GCC PR libstdc++/83906
11931         * gdbtypes.c (operator==(const dynamic_prop &,
11932         const dynamic_prop &)): New.
11933         (operator==(const range_bounds &, const range_bounds &)): New.
11934         (check_types_equal): Use them instead of memcmp.
11935         * gdbtypes.h (operator==(const dynamic_prop &,
11936         const dynamic_prop &)): Declare.
11937         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
11938         (operator==(const range_bounds &, const range_bounds &)): Declare.
11939         (operator!=(const range_bounds &, const range_bounds &)): Declare.
11940
11941 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11942
11943         * s390-linux-tdep.c (s390_record_address_mask)
11944         (s390_record_calc_disp_common, s390_record_calc_disp)
11945         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
11946         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
11947         (s390_process_record): Move to s390-tdep.c.
11948         (s390_linux_init_abi_any): Adjust.
11949         * s390-tdep.c (s390_record_address_mask)
11950         (s390_record_calc_disp_common, s390_record_calc_disp)
11951         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
11952         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
11953         (s390_process_record): Moved from s390-linux-tdep.c
11954         (s390_gdbarch_init): Adjust.
11955
11956 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11957
11958         * s390-linux-nat.c (s390-tdep.h): New include.
11959         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
11960         (HFILES_NO_SRCDIR): Add s390-tdep.h.
11961         (ALLDEPFILES): Add s390-tdep.c.
11962         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
11963         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
11964         * s390-tdep.h: ...this.  New file.
11965         * s390-linux-tdep.c (s390-tdep.h): New include.
11966         (_initialize_s390_tdep): Rename to...
11967         (_initialize_s390_linux_tdep): ...this and adjust.
11968         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
11969         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
11970         s390-tdep.h.
11971         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
11972         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
11973         (s390_is_partial_instruction, s390_software_single_step)
11974         (is_non_branch_ril, s390_displaced_step_copy_insn)
11975         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
11976         (s390_prologue_data, s390_addr, s390_store, s390_load)
11977         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
11978         (s390_register_call_saved, s390_guess_tracepoint_registers)
11979         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
11980         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
11981         (s390_pseudo_register_name, s390_pseudo_register_type)
11982         (s390_pseudo_register_read, s390_pseudo_register_write)
11983         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
11984         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
11985         (s390_addr_bits_remove, s390_address_class_type_flags)
11986         (s390_address_class_type_flags_to_name)
11987         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
11988         (s390_function_arg_float, s390_function_arg_vector)
11989         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
11990         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
11991         (s390_frame_align, s390_register_return_value, s390_return_value)
11992         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
11993         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
11994         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
11995         (s390_trad_frame_prev_register, s390_unwind_cache)
11996         (s390_prologue_frame_unwind_cache)
11997         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
11998         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
11999         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
12000         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
12001         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
12002         (s390_frame_base_address, s390_local_base_address)
12003         (s390_frame_base, s390_gcc_target_options)
12004         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
12005         (s390_validate_reg_range, s390_tdesc_valid)
12006         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
12007         * s390-tdep.c: ...this.  New file.
12008
12009 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12010
12011         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
12012         (s390_process_record, s390_gdbarch_tdep_alloc)
12013         (s390_linux_init_abi_any): Use/set new hook.
12014
12015 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12016
12017         * s390-linux-tdep.c (osabi.h): New include.
12018         (s390_linux_init_abi_31, s390_linux_init_abi_64)
12019         (s390_linux_init_abi_any): New functions.
12020         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
12021
12022 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12023
12024         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
12025         tdesc_has_registers check
12026
12027 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12028
12029         * s390-linux-tdep.c (s390_tdesc_valid): New function.
12030         (s390_validate_reg_range): New macro.
12031         (s390_gdbarch_init): Adjust.
12032
12033 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12034
12035         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
12036         (s390_gdbarch_tdep_alloc): Adjust.
12037         (s390_gdbarch_init): Adjust.
12038
12039 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12040
12041         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
12042         <have_tdb>: Change type to bool.
12043         (s390_gdbarch_tdep_alloc): Adjust.
12044         (s390_gdbarch_init): Adjust.
12045
12046 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12047
12048         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
12049         (gdbarch_tdep) <have_upper, have_vx>: New fields.
12050         (s390_gdbarch_tdep_alloc): New function.
12051         (s390_gdbarch_init): Allocate tdep at start and use its fields
12052         instead of separate variables.
12053
12054 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12055
12056         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
12057         when looking for cached gdbarch and add comment for remaining.
12058
12059 2018-01-22  Pedro Alves  <palves@redhat.com>
12060             Sergio Durigan Junior  <sergiodj@redhat.com>
12061
12062         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
12063         case.
12064
12065 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
12066
12067         * MAINTAINERS: Update my company e-mail address.
12068
12069 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12070
12071         * regcache.c (cooked_write_test): New function.
12072         (_initialize_regcache): Register the test.
12073
12074 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12075
12076         * ia64-tdep.c (ia64_pseudo_register_read): Call
12077         regcache->cooked_read instead of regcache_cooked_read_unsigned.
12078         * m32c-tdep.c (m32c_cat_read): Likewise.
12079         (m32c_r3r2r1r0_read): Likewise.
12080         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12081         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
12082
12083 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12084
12085         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
12086         method raw_read instead of regcache_raw_read.
12087         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12088         * arm-tdep.c (arm_neon_quad_read): Likewise.
12089         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12090         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12091         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12092         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
12093         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12094         (i386_pseudo_register_read_into_value): Likewise.
12095         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12096         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12097         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12098         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
12099         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
12100         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
12101         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
12102         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
12103         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
12104
12105 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12106
12107         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
12108         * configure.tgt: Remove target mt.
12109         * mt-tdep.c: Remove.
12110         * regcache.c (cooked_read_test): Remove the check for mt.
12111
12112 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12113
12114         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
12115         instead of gdbarch_pseudo_register_read_value.
12116
12117 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
12118
12119         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
12120         language is Ada.
12121
12122 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
12123
12124         * linespec.c (create_sals_line_offset): Remove code that preserved
12125         the symtab_and_line's line number.
12126
12127 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12128
12129         * varobj.c (varobj_create): Don't set valid_block when creating a
12130         floating varobj.
12131
12132 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12133
12134         * varobj.c (varobj_create): Remove out of date comment.
12135
12136 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12137
12138         PR mi/20395
12139         * ada-exp.y (write_var_from_sym): Pass extra parameter when
12140         updating innermost block.
12141         * parse.c (innermost_block_tracker::update): Take extra type
12142         parameter, and check types match before updating innermost block.
12143         (write_dollar_variable): Update innermost block for registers.
12144         * parser-defs.h (enum innermost_block_tracker_type): New enum.
12145         (innermost_block_tracker::innermost_block_tracker): Initialise
12146         m_types member.
12147         (innermost_block_tracker::reset): Take type parameter.
12148         (innermost_block_tracker::update): Take type parameter, and pass
12149         type through as needed.
12150         (innermost_block_tracker::m_types): New member.
12151         * varobj.c (varobj_create): Pass type when reseting innermost
12152         block.
12153
12154 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12155
12156         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
12157         * ada-lang.c (resolve_subexp): Likewise.
12158         * breakpoint.c (set_breakpoint_condition) Likewise.
12159         (watch_command_1) Likewise.
12160         * c-exp.y (variable): Likewise.
12161         * d-exp.y (PrimaryExpression): Likewise.
12162         * f-exp.y (variable): Likewise.
12163         * go-exp.y (variable): Likewise.
12164         * m2-exp.y (variable): Likewise.
12165         * objfiles.c (objfile::~objfile): Likewise.
12166         * p-exp.y (variable): Likewise.
12167         * parse.c (innermost_block): Change type.
12168         * parser-defs.h (class innermost_block_tracker): New.
12169         (innermost_block): Change to innermost_block_tracker.
12170         * printcmd.c (display_command): Switch to innermost_block API.
12171         (do_one_display): Likewise.
12172         * rust-exp.y (do_one_display): Likewise.
12173         * symfile.c (clear_symtab_users): Likewise.
12174         * varobj.c (varobj_create): Switch to innermost_block API, replace
12175         use of innermost_block with block stored on varobj object.
12176
12177 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12178
12179         * expression.h (innermost_block): Remove declaration.
12180         * varobj.c: Add 'parser-defs.h' include.
12181
12182 2018-01-19  Tom Tromey  <tom@tromey.com>
12183
12184         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
12185         symbols in the static and global blocks.
12186
12187 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
12188
12189         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
12190         gdb_ptrace.h, and move including gdb_wait.h ...
12191         * nat/linux-ptrace.h: ... to here.
12192
12193 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
12194
12195         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
12196         inf_ptrace_detach_success.
12197         (inf_ptrace_detach_success): Add inferior parameter, use it
12198         instead of inferior_ptid, pass it to detach_inferior.
12199         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
12200         parameter.
12201         * inferior.c (detach_inferior): Add overload that takes an
12202         inferior object.
12203         * inferior.h (detach_inferior): Likewise.
12204         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
12205         use inferior_ptid, adjust call to inf_ptrace_detach_success.
12206         * linux-thread-db.c (thread_db_detach): Use inf parameter.
12207
12208 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
12209
12210         * target.h (struct target_ops) <to_detach>: Add inferior
12211         parameter.
12212         (target_detach): Likewise.
12213         * target.c (dispose_inferior): Pass inferior down.
12214         (target_detach): Pass inferior down.  Assert that it is equal to
12215         the current inferior.
12216         * aix-thread.c (aix_thread_detach): Pass inferior down.
12217         * corefile.c (core_file_command): Pass current_inferior() down.
12218         * corelow.c (core_detach): Add inferior parameter.
12219         * darwin-nat.c (darwin_detach): Likewise.
12220         * gnu-nat.c (gnu_detach): Likewise.
12221         * inf-ptrace.c (inf_ptrace_detach): Likewise.
12222         * infcmd.c (detach_command): Pass current_inferior() down to
12223         target_detach.
12224         * infrun.c (follow_fork_inferior): Pass parent_inf to
12225         target_detach.
12226         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
12227         target_detach.
12228         * linux-nat.c (linux_nat_detach): Add inferior parameter.
12229         * linux-thread-db.c (thread_db_detach): Likewise.
12230         * nto-procfs.c (procfs_detach): Likewise.
12231         * procfs.c (procfs_detach): Likewise.
12232         * record.c (record_detach): Likewise.
12233         * record.h (struct inferior): Forward-declare.
12234         (record_detach): Add inferior parameter.
12235         * remote-sim.c (gdbsim_detach): Likewise.
12236         * remote.c (remote_detach_1): Likewise.
12237         (remote_detach): Likewise.
12238         (extended_remote_detach): Likewise.
12239         * sol-thread.c (sol_thread_detach): Likewise.
12240         * target-debug.h (target_debug_print_inferior_p): New macro.
12241         * target-delegates.c: Re-generate.
12242         * top.c (kill_or_detach): Pass inferior down to target_detach.
12243         * windows-nat.c (windows_detach): Add inferior parameter.
12244
12245 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
12246
12247         * target.h (struct target_ops) <to_detach>: Remove args
12248         parameter.
12249         (target_detach): Likewise.
12250         * target.c (dispose_inferior): Adjust.
12251         (target_detach): Remove args parameter, adjust.
12252         * aix-thread.c (aix_thread_detach): Adjust.
12253         * corefile.c (core_file_command): Adjust.
12254         * corelow.c (core_detach): Adjust.
12255         * darwin-nat.c (darwin_detach): Adjust.
12256         * gnu-nat.c (gnu_detach): Adjust.
12257         * inf-ptrace.c (inf_ptrace_detach): Adjust.
12258         * infcmd.c (detach_command): Adjust
12259         * infrun.c (follow_fork_inferior): Adjust.
12260         (handle_vfork_child_exec_or_exit): Adjust.
12261         * linux-fork.c (linux_fork_detach): Remove args parameter.
12262         * linux-fork.h (linux_fork_detach): Likewise.
12263         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
12264         * linux-thread-db.c (thread_db_detach): Likewise.
12265         * nto-procfs.c (procfs_detach): Likewise.
12266         * procfs.c (procfs_detach): Likewise.
12267         (do_detach): Remove signo parameter.
12268         * record.c (record_detach): Remove args parameter.
12269         * record.h (record_detach): Likewise.
12270         * remote-sim.c (gdbsim_detach): Likewise.
12271         * remote.c (remote_detach_1): Likewise.
12272         (remote_detach): Likewise.
12273         (extended_remote_detach): Likewise.
12274         * sol-thread.c (sol_thread_detach): Likewise.
12275         * target-delegates.c: Re-generate.
12276         * top.c (struct qt_args) <args>: Remove field.
12277         (kill_or_detach): Don't pass args.
12278         (quit_force): Don't set args.
12279         * windows-nat.c (windows_detach): Remove args parameter.
12280
12281 2018-01-19  Yao Qi  <yao.qi@linaro.org>
12282
12283         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
12284         (arm_linux_init_abi): Install it.
12285
12286 2018-01-19  Yao Qi  <yao.qi@linaro.org>
12287
12288         * osabi.c (gdb_osabi_names): Extend the regexp for
12289         arm-linux-gnueabihf.
12290
12291 2018-01-18  Yao Qi  <yao.qi@linaro.org>
12292
12293         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
12294         m_abbrevs.
12295         (abbrev_table::add_abbrev): Update.
12296         (abbrev_table::lookup_abbrev): Update.
12297
12298 2018-01-18  Yao Qi  <yao.qi@linaro.org>
12299
12300         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
12301
12302 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
12303
12304         * compile/compile.c (compile_to_object): Convert "triplet_rx"
12305         to "std::string".
12306
12307 2018-01-17  Tom Tromey  <tom@tromey.com>
12308
12309         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
12310
12311 2018-01-17  Tom Tromey  <tom@tromey.com>
12312
12313         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
12314         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
12315         (create_array_type_with_stride): Update.
12316         * dwarf2read.c (set_die_type): Update.
12317
12318 2018-01-17  Tom Tromey  <tom@tromey.com>
12319
12320         * dwarf2read.c (delayed_method_info): Remove typedef.
12321         (dwarf2_cu::method_info): Now a std::vector.
12322         (add_to_method_list): Update.
12323         (free_delayed_list): Remove.
12324         (compute_delayed_physnames): Update.
12325         (process_full_comp_unit, process_full_type_unit): Clear the method
12326         list.  Remove cleanups.
12327         (psymtab_include_file_name): Add name_holder parameter.  Use
12328         unique_xmalloc_ptr.
12329         (dwarf_decode_lines): Update.
12330
12331 2018-01-17  Tom Tromey  <tom@tromey.com>
12332             Simon Marchi  <simon.marchi@ericsson.com>
12333
12334         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
12335         (dwarf2_per_objfile::free_cached_comp_units)
12336         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
12337         (init_cutu_and_read_dies_no_follow): Update.
12338         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
12339         (dwarf2_cu::~dwarf2_cu): New.
12340         (free_heap_comp_unit, free_stack_comp_unit): Remove.
12341         (age_cached_comp_units, free_one_cached_comp_unit): Update.
12342
12343 2018-01-17  Tom Tromey  <tom@tromey.com>
12344             Simon Marchi  <simon.marchi@ericsson.com>
12345
12346         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
12347         (struct die_reader_specs) <abbrev_table>: New member.
12348         (struct abbrev_table): Add constructor.
12349         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
12350         <abbrev_obstack>: Now an auto_obstack.
12351         (abbrev_table_up): New typedef.
12352         (init_cu_die_reader): Add abbrev_table parameter.
12353         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
12354         Add result_dwo_abbrev_table.
12355         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
12356         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
12357         Update.
12358         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
12359         parameter.
12360         (skip_children): Update.
12361         (abbrev_table::alloc_abbrev): Rename from
12362         abbrev_table_alloc_abbrev.
12363         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
12364         (abbrev_table::lookup_abbrev): Rename from
12365         abbrev_table_lookup_abbrev.
12366         (abbrev_table_read_table): Return abbrev_table_up.
12367         (abbrev_table_free, abbrev_table_free_cleanup)
12368         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
12369         (load_partial_dies): Update.
12370
12371 2018-01-17  Tom Tromey  <tom@tromey.com>
12372
12373         * dwarf2read.c (dwarf2_compute_name): Update comment.
12374         (read_func_scope, read_variable): Update.
12375         (new_symbol): Remove.
12376         (new_symbol_full): Rename to new_symbol.
12377
12378 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
12379
12380         PR gdb/16577
12381         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
12382         a warning instead of throwing an error, set section size to 0 and return
12383         NULL.
12384         * gdb_bfd.h (gdb_bfd_map_section): Update description.
12385
12386 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
12387
12388         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
12389         std::string.
12390         (linux_ptrace_attach_fail_reason_string): Likewise.
12391         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
12392         Likewise.
12393         (linux_ptrace_attach_fail_reason_string): Likewise.
12394         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
12395
12396 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
12397
12398         * linux-nat.c (linux_nat_attach): Remove xstrdup.
12399
12400 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
12401
12402         PR gdb/21559
12403         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
12404         checking for fs_base/gs_base fields in struct user_regs_struct.
12405         * configure: Regenerate.
12406
12407 2018-01-17  Yao Qi  <yao.qi@linaro.org>
12408
12409         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
12410         function.
12411         (aarch64_linux_init_abi): Install it to gdbarch hook
12412         gcc_target_options.
12413
12414 2018-01-15  Pedro Alves  <palves@redhat.com>
12415
12416         * common/signals-state-save-restore.c
12417         (save_original_signals_state): Fix typos.
12418
12419 2017-01-12  Tom Tromey  <tom@tromey.com>
12420             Sergio Durigan Junior  <sergiodj@redhat.com>
12421
12422         * Makefile.in (install-only): Install gdb-add-index.
12423
12424 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
12425
12426         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
12427
12428 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12429
12430         * infrun.c (keep_going_pass_signal): Clear step-over info when
12431         insert_breakpoints fails.
12432
12433 2018-01-11  Pedro Alves  <palves@redhat.com>
12434
12435         PR gdb/22583
12436         * infrun.c (resume): Rename to ...
12437         (resume_1): ... this.
12438         (resume): Reimplement as wrapper around resume_1.
12439
12440 2018-01-11  Pedro Alves  <palves@redhat.com>
12441
12442         PR remote/22597
12443         * remote.c (remote_parse_stop_reply): Default to the last-set
12444         general thread instead of to 'magic_null_ptid'.
12445
12446 2018-01-10  Pedro Alves  <palves@redhat.com>
12447
12448         * language.h (language_get_symbol_name_matcher): Rename ...
12449         (get_symbol_name_matcher): ... this.
12450         * language.c (language_get_symbol_name_matcher): Ditto.
12451         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
12452         callers adjusted.
12453
12454 2018-01-10  Pedro Alves  <palves@redhat.com>
12455
12456         PR gdb/22670
12457         * dwarf2read.c
12458         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
12459         Adjust to use language_get_symbol_name_matcher instead of
12460         language_defn::la_get_symbol_name_matcher.
12461         * language.c (language_get_symbol_name_matcher): If in Ada mode
12462         and the lookup name is a verbatim match, return Ada's matcher.
12463         * language.h (language_get_symbol_name_matcher): Adjust comment.
12464         (ada_lookup_name_info::verbatim_p):: New method.
12465
12466 2018-01-10  Pedro Alves  <palves@redhat.com>
12467
12468         PR gdb/22670
12469         * ada-lang.c (ada_collect_symbol_completion_matches): If the
12470         minsym's language is language_auto or language_cplus, pass down
12471         language_ada instead.
12472         * symtab.c (compare_symbol_name): Don't frob symbol language here.
12473
12474 2018-01-10  Pedro Alves  <palves@redhat.com>
12475
12476         PR gdb/22670
12477         * minsyms.c (linkage_name_str): New function.
12478         (iterate_over_minimal_symbols): Use it.
12479
12480 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12481
12482         * NEWS: Document that 'info proc' now works on FreeBSD.
12483
12484 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12485
12486         * configure.ac: Check for kinfo_getfile in libutil.
12487         * configure: Regenerate.
12488         * config.in: Regenerate.
12489         * fbsd-nat.c: Include "fbsd-tdep.h".
12490         (fbsd_fetch_cmdline): New.
12491         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
12492         rather than calling error.
12493         (fbsd_info_proc): New.
12494         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
12495         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
12496         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
12497
12498 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12499
12500         * fbsd-nat.c (struct free_deleter): Remove.
12501         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
12502
12503 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12504
12505         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
12506         NULL for an empty pathname.
12507
12508 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12509
12510         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
12511         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
12512         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
12513         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
12514         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
12515         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
12516         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
12517         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
12518         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
12519         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
12520         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
12521         (fbsd_core_fetch_timeval, fbsd_print_sigset)
12522         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
12523         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
12524         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
12525
12526 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
12527
12528         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
12529         (gnu_xfer_auxv): New function.
12530         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
12531         TARGET_OBJECT_AUXV.
12532
12533 2018-01-08  Yao Qi  <yao.qi@linaro.org>
12534             Simon Marchi  <simon.marchi@ericsson.com>
12535
12536         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
12537         common/selftest.c.
12538         (COMMON_OBS): Remove selftest.o.
12539         * configure.ac: Append selftest-arch.c and common/selftest.c to
12540         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
12541         * configure: Re-generated.
12542         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
12543         GDB_SELF_TEST.
12544         (maintenance_info_selftests): Likewise.
12545
12546 2018-01-08  Xavier Roirand  <roirand@adacore.com>
12547
12548         * ada-valprint.c (val_print_packed_array_elements): Use
12549         proper number of elements when printing an array indexed
12550         by an enumeration type.
12551
12552 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
12553
12554         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
12555         (dw2_get_file_names_reader): Adjust.
12556         (lookup_dwo_signatured_type): Adjust.
12557         (lookup_dwp_signatured_type): Adjust.
12558         (lookup_signatured_type): Adjust.
12559         (create_type_unit_group): Adjust.
12560         (get_type_unit_group): Adjust.
12561         (process_psymtab_comp_unit_reader): Adjust.
12562         (build_type_psymtabs_reader): Adjust.
12563         (scan_partial_symbols): Adjust.
12564         (add_partial_symbol): Adjust.
12565         (add_partial_subprogram): Adjust.
12566         (peek_die_abbrev): Adjust.
12567         (fixup_go_packaging): Adjust.
12568         (process_imported_unit_die): Adjust.
12569         (dwarf2_compute_name): Adjust.
12570         (dwarf2_physname): Adjust.
12571         (read_import_statement): Adjust.
12572         (handle_DW_AT_stmt_list): Adjust.
12573         (read_file_scope): Adjust.
12574         (read_func_scope): Adjust.
12575         (read_lexical_block_scope): Adjust.
12576         (read_call_site_scope): Adjust.
12577         (read_variable): Adjust.
12578         (dwarf2_rnglists_process): Adjust.
12579         (dwarf2_ranges_process): Adjust.
12580         (dwarf2_ranges_read): Adjust.
12581         (dwarf2_get_pc_bounds): Adjust.
12582         (dwarf2_record_block_ranges): Adjust.
12583         (dwarf2_add_field): Adjust.
12584         (dwarf2_add_member_fn): Adjust.
12585         (read_structure_type): Adjust.
12586         (process_structure_scope): Adjust.
12587         (read_enumeration_type): Adjust.
12588         (read_array_type): Adjust.
12589         (mark_common_block_symbol_computed): Adjust.
12590         (read_common_block): Adjust.
12591         (read_namespace_type): Adjust.
12592         (read_namespace): Adjust.
12593         (read_module_type): Adjust.
12594         (read_tag_pointer_type): Adjust.
12595         (read_tag_ptr_to_member_type): Adjust.
12596         (read_tag_string_type): Adjust.
12597         (read_subroutine_type): Adjust.
12598         (read_typedef): Adjust.
12599         (read_base_type): Adjust.
12600         (attr_to_dynamic_prop): Adjust.
12601         (read_subrange_type): Adjust.
12602         (read_unspecified_type): Adjust.
12603         (dwarf2_read_abbrevs): Adjust.
12604         (load_partial_dies): Adjust.
12605         (read_partial_die): Adjust.
12606         (find_partial_die): Adjust.
12607         (guess_partial_die_structure_name): Adjust.
12608         (fixup_partial_die): Adjust.
12609         (read_attribute_value): Adjust.
12610         (read_addr_index): Adjust.
12611         (read_addr_index_from_leb128): Adjust.
12612         (read_str_index): Adjust.
12613         (dwarf2_string_attr): Adjust.
12614         (get_debug_line_section): Adjust.
12615         (dwarf_decode_line_header): Adjust.
12616         (lnp_state_machine::check_line_address): Adjust.
12617         (dwarf_decode_lines_1): Adjust.
12618         (dwarf_decode_lines): Adjust.
12619         (dwarf2_start_symtab): Adjust.
12620         (var_decode_location): Adjust.
12621         (new_symbol_full): Adjust.
12622         (dwarf2_const_value_data): Adjust.
12623         (dwarf2_const_value_attr): Adjust.
12624         (dwarf2_const_value): Adjust.
12625         (die_type): Adjust.
12626         (die_containing_type): Adjust.
12627         (build_error_marker_type): Adjust.
12628         (lookup_die_type): Adjust.
12629         (guess_full_die_structure_name): Adjust.
12630         (anonymous_struct_prefix): Adjust.
12631         (determine_prefix): Adjust.
12632         (dwarf2_name): Adjust.
12633         (follow_die_ref_or_sig): Adjust.
12634         (follow_die_offset): Adjust.
12635         (follow_die_ref): Adjust.
12636         (follow_die_sig_1): Adjust.
12637         (follow_die_sig): Adjust.
12638         (get_signatured_type): Adjust.
12639         (get_DW_AT_signature_type): Adjust.
12640         (decode_locdesc): Adjust.
12641         (dwarf_decode_macros): Adjust.
12642         (cu_debug_loc_section): Adjust.
12643         (fill_in_loclist_baton): Adjust.
12644         (dwarf2_symbol_mark_computed): Adjust.
12645         (init_one_comp_unit): Don't assign
12646         dwarf2_cu::dwarf2_per_objfile.
12647         (set_die_type): Adjust.
12648
12649 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
12650
12651         * dwarf2read.c (struct mapped_debug_names): Add constructor.
12652         <dwarf2_per_objfile>: New field.
12653         (dwarf2_per_objfile): Remove global.
12654         (get_dwarf2_per_objfile): New function.
12655         (set_dwarf2_per_objfile): New function.
12656         (dwarf2_build_psymtabs_hard): Change objfile parameter to
12657         dwarf2_per_objfile.
12658         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
12659         (read_abbrev_offset): Likewise.
12660         (read_indirect_string): Likewise.
12661         (read_indirect_line_string): Likewise.
12662         (read_indirect_string_at_offset): Likewise.
12663         (read_indirect_string_from_dwz): Likewise.
12664         (dwarf2_find_containing_comp_unit): Change objfile parameter to
12665         dwarf2_per_objfile.
12666         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
12667         (create_all_comp_units): Change objfile parameter to
12668         dwarf2_per_objfile.
12669         (create_all_type_units): Likewise.
12670         (process_queue): Add dwarf2_per_objfile parameter.
12671         (read_and_check_comp_unit_head): Likewise.
12672         (lookup_dwo_unit_in_dwp): Likewise.
12673         (get_dwp_file): Likewise.
12674         (process_cu_includes): Likewise.
12675         (struct free_dwo_file_cleanup_data): New struct.
12676         (dwarf2_has_info): Use get_dwarf2_per_objfile and
12677         set_dwarf2_per_objfile.
12678         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
12679         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
12680         context, adjust calls.
12681         (dw2_instantiate_symtab): Likewise.
12682         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
12683         (dw2_get_cu): Likewise.
12684         (create_cu_from_index_list): Change objfile parameter to
12685         dwarf2_per_objfile.
12686         (create_cus_from_index_list): Get dwarf2_per_objfile from
12687         context, adjust calls.
12688         (create_cus_from_index): Likewise.
12689         (create_signatured_type_table_from_index): Change objfile
12690         parameter to dwarf2_per_objfile.
12691         (create_signatured_type_table_from_debug_names): Change objfile
12692         parameter to dwarf2_per_objfile.
12693         (create_addrmap_from_index): Likewise.
12694         (create_addrmap_from_aranges): Likewise.
12695         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
12696         (dw2_setup): Remove.
12697         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
12698         context.
12699         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
12700         get_dwarf2_per_objfile.
12701         (dw2_forget_cached_source_info): Likewise.
12702         (dw2_map_symtabs_matching_filename): Likewise.
12703         (struct dw2_symtab_iterator) <index>: Remove.
12704         <dwarf2_per_objfile>: New field.
12705         (dw2_symtab_iter_init): Replace index parameter with
12706         dwarf2_per_objfile.
12707         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
12708         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
12709         (dw2_print_stats): Likewise.
12710         (dw2_dump): Likewise.
12711         (dw2_expand_symtabs_for_function): Likewise.
12712         (dw2_expand_all_symtabs): Likewise.
12713         (dw2_expand_symtabs_with_fullname): Likewise.
12714         (dw2_expand_marked_cus): Replace index and objfile parameters
12715         with dwarf2_per_objfile.
12716         (dw_expand_symtabs_matching_file_matcher): Add
12717         dwarf2_per_objfile parameter and adjust calls.
12718         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
12719         adjust calls.
12720         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
12721         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
12722         adjust calls.
12723         (create_cus_from_debug_names_list): Replace objfile parameter
12724         with dwarf2_per_objfile and adjust calls.
12725         (create_cus_from_debug_names): Likewise.
12726         (dwarf2_read_debug_names): Likewise.
12727         (mapped_debug_names::namei_to_name): Adjust call.
12728         (dw2_debug_names_iterator::next): Likewise.
12729         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
12730         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
12731         (dw2_debug_names_dump): Likewise.
12732         (dw2_debug_names_expand_symtabs_for_function): Likewise.
12733         (dw2_debug_names_expand_symtabs_matching): Likewise.
12734         (dwarf2_initialize_objfile): Likewise.
12735         (dwarf2_build_psymtabs): Likewise.
12736         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
12737         this_cu.
12738         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
12739         (read_and_check_comp_unit_head): Likewise.
12740         (read_abbrev_offset): Likewise.
12741         (create_debug_type_hash_table): Likewise.
12742         (create_debug_types_hash_table): Likewise.
12743         (create_all_type_units): Replace objfile parameter with
12744         dwarf2_per_objfile.
12745         (add_type_unit): Add dwarf2_per_objfile parameter.
12746         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
12747         with dwarf2_per_objfile.
12748         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
12749         (lookup_dwp_signatured_type): Likewise.
12750         (lookup_signatured_type): Likewise.
12751         (read_cutu_die_from_dwo): Likewise.
12752         (init_tu_and_read_dwo_dies): Likewise.
12753         (init_cutu_and_read_dies): Likewise.
12754         (init_cutu_and_read_dies_no_follow): Likewise.
12755         (allocate_type_unit_groups_table): Add objfile parameter.
12756         (create_type_unit_group): Use dwarf2_per_objfile from cu.
12757         (get_type_unit_group): Likewise.
12758         (process_psymtab_comp_unit): Update call.
12759         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
12760         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
12761         (print_tu_stats): Likewise.
12762         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
12763         in void* parameter.
12764         (build_type_psymtabs): Change objfile parameter to
12765         dwarf2_per_objfile.
12766         (process_skeletonless_type_unit): Use dwarf2_per_objfile
12767         passed in void* parameter.
12768         (process_skeletonless_type_units): Change objfile parameter to
12769         dwarf2_per_objfile.
12770         (set_partial_user): Likewise.
12771         (dwarf2_build_psymtabs_hard): Likewise.
12772         (read_comp_units_from_section): Likewise.
12773         (create_all_comp_units): Likewise.
12774         (scan_partial_symbols): Update calls.
12775         (add_partial_symbol): Likewise.
12776         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
12777         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
12778         (process_queue): Add dwarf2_per_objfile parameter.
12779         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
12780         (compute_compunit_symtab_includes): Likewise.
12781         (process_cu_includes): Add dwarf2_per_objfile parameter.
12782         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
12783         (process_full_type_unit): Likewise.
12784         (process_imported_unit_die): Update call.
12785         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
12786         (read_file_scope): Likewise.
12787         (allocate_dwo_file_hash_table): Add objfile parameter.
12788         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
12789         (create_cus_hash_table): Likewise.
12790         (create_dwp_hash_table): Likewise.
12791         (create_dwo_unit_in_dwp_v1): Likewise.
12792         (create_dwp_v2_section): Likewise.
12793         (create_dwo_unit_in_dwp_v2): Likewise.
12794         (lookup_dwo_unit_in_dwp): Likewise.
12795         (try_open_dwop_file): Likewise.
12796         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
12797         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
12798         cleanup to include a reference to dwarf2_per_objfile.
12799         (open_dwp_file): Add dwarf2_per_objfile parameter.
12800         (open_and_init_dwp_file): Likewise.
12801         (get_dwp_file): Likewise.
12802         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
12803         (queue_and_load_all_dwo_tus): Update call.
12804         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
12805         data.
12806         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
12807         (dwarf2_ranges_process): Likewise.
12808         (dwarf2_get_pc_bounds): Likewise.
12809         (mark_common_block_symbol_computed): Likewise.
12810         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
12811         (dwarf2_read_abbrevs): Update call.
12812         (read_partial_die): Use dwarf2_per_objfile from cu.
12813         (find_partial_die): Likewise.
12814         (fixup_partial_die): Likewise.
12815         (read_attribute_value): Likewise.
12816         (read_indirect_string_at_offset_from): Add objfile parameter.
12817         (read_indirect_string_at_offset): Add dwarf2_per_objfile
12818         parameter.
12819         (read_indirect_string_from_dwz): Add objfile parameter.
12820         (read_indirect_string): Add objfile parameter.
12821         (read_addr_index_1): Add dwarf2_per_objfile parameter.
12822         (read_addr_index): Use dwarf2_per_objfile from cu.
12823         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
12824         call dw2_setup.
12825         (read_str_index): Use dwarf2_per_objfile from cu.
12826         (get_debug_line_section): Likewise.
12827         (read_formatted_entries): Add dwarf2_per_objfile parameter.
12828         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
12829         (new_symbol_full): Use dwarf2_per_objfile from cu.
12830         (build_error_marker_type): Likewise.
12831         (lookup_die_type): Likewise.
12832         (determine_prefix): Likewise.
12833         (follow_die_offset): Likewise.
12834         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
12835         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
12836         (dwarf2_fetch_die_type_sect_off): Likewise.
12837         (dwarf2_get_die_type): Likewise.
12838         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
12839         (get_signatured_type): Likewise.
12840         (get_DW_AT_signature_type): Likewise.
12841         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
12842         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
12843         (cu_debug_loc_section): Likewise.
12844         (fill_in_loclist_baton): Likewise.
12845         (dwarf2_symbol_mark_computed): Likewise.
12846         (dwarf2_find_containing_comp_unit): Change objfile parameter to
12847         dwarf2_per_objfile.
12848         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
12849         parameter.
12850         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
12851         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
12852         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
12853         (set_die_type): Use dwarf2_free_objfile from cu.
12854         (get_die_type_at_offset): Likewise.
12855         (dwarf2_per_objfile_free): Don't assign global variable.
12856         (debug_names) <constructor>: Add dwarf2_per_objfile
12857         parameter, update m_debugstrlookup construction.
12858         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
12859         parameter.
12860         <m_dwarf2_per_objfile>: New field.
12861         <lookup>: Use m_dwarf2_per_objfile.
12862         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
12863         (psyms_seen_size): Likewise.
12864         (write_gdbindex): Replace objfile parameter with
12865         dwarf2_per_objfile.
12866         (write_debug_names): Likewise.
12867         (write_psymtabs_to_index): Likewise.
12868         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
12869         calls.
12870
12871 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
12872
12873         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
12874         <dwarf2_per_objfile>: New field.
12875         (struct dwarf2_per_cu_data) <objfile>: Remove.
12876         <dwarf2_per_objfile>: New field.
12877         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
12878         of objfile.
12879         (create_signatured_type_table_from_index): Likewise.
12880         (create_debug_type_hash_table): Likewise.
12881         (fill_in_sig_entry_from_dwo_entry): Likewise.
12882         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
12883         (create_type_unit_group): Assign dwarf2_per_objfile instead of
12884         objfile.
12885         (create_partial_symtab): Access objfile through
12886         dwarf2_per_objfile.
12887         (process_psymtab_comp_unit_reader): Likewise.
12888         (read_comp_units_from_section): Likewise.
12889         (scan_partial_symbols): Likewise.
12890         (add_partial_symbol): Likewise.
12891         (add_partial_subprogram): Likewise.
12892         (peek_die_abbrev): Likewise.
12893         (fixup_go_packaging): Likewise.
12894         (process_full_comp_unit): Likewise.
12895         (process_full_type_unit): Likewise.
12896         (process_imported_unit_die): Likewise.
12897         (dwarf2_compute_name): Likewise.
12898         (dwarf2_physname): Likewise.
12899         (read_import_statement): Likewise.
12900         (create_cus_hash_table): Assign dwarf2_physname instead of
12901         objfile.
12902         (read_func_scope): Access objfile through dwarf2_per_objfile.
12903         (read_lexical_block_scope): Likewise.
12904         (read_call_site_scope): Likewise.
12905         (read_variable): Likewise.
12906         (dwarf2_rnglists_process): Likewise.
12907         (dwarf2_ranges_process): Likewise.
12908         (dwarf2_ranges_read): Likewise.
12909         (dwarf2_record_block_ranges): Likewise.
12910         (dwarf2_add_field): Likewise.
12911         (dwarf2_add_member_fn): Likewise.
12912         (read_structure_type): Likewise.
12913         (process_structure_scope): Likewise.
12914         (read_enumeration_type): Likewise.
12915         (read_array_type): Likewise.
12916         (read_common_block): Likewise.
12917         (read_namespace_type): Likewise.
12918         (read_namespace): Likewise.
12919         (read_module_type): Likewise.
12920         (read_tag_pointer_type): Likewise.
12921         (read_tag_ptr_to_member_type): Likewise.
12922         (read_tag_string_type): Likewise.
12923         (read_subroutine_type): Likewise.
12924         (read_typedef): Likewise.
12925         (read_base_type): Likewise.
12926         (attr_to_dynamic_prop): Likewise.
12927         (read_subrange_type): Likewise.
12928         (read_unspecified_type): Likewise.
12929         (load_partial_dies): Likewise.
12930         (read_partial_die): Likewise.
12931         (find_partial_die): Likewise.
12932         (guess_partial_die_structure_name): Likewise.
12933         (fixup_partial_die): Likewise.
12934         (read_attribute_value): Likewise.
12935         (read_addr_index_from_leb128): Likewise.
12936         (dwarf2_read_addr_index): Likewise.
12937         (dwarf2_string_attr): Likewise.
12938         (lnp_state_machine::check_line_address): Likewise.
12939         (dwarf_decode_lines_1): Likewise.
12940         (dwarf_decode_lines): Likewise.
12941         (dwarf2_start_symtab): Likewise.
12942         (var_decode_location): Likewise.
12943         (new_symbol_full): Likewise.
12944         (dwarf2_const_value_data): Likewise.
12945         (dwarf2_const_value_attr): Likewise.
12946         (dwarf2_const_value): Likewise.
12947         (die_type): Likewise.
12948         (die_containing_type): Likewise.
12949         (lookup_die_type): Likewise.
12950         (guess_full_die_structure_name): Likewise.
12951         (anonymous_struct_prefix): Likewise.
12952         (dwarf2_name): Likewise.
12953         (follow_die_ref_or_sig): Likewise.
12954         (follow_die_offset): Likewise.
12955         (follow_die_ref): Likewise.
12956         (dwarf2_fetch_die_loc_sect_off): Likewise.
12957         (dwarf2_fetch_constant_bytes): Likewise.
12958         (dwarf2_fetch_die_type_sect_off): Likewise.
12959         (dwarf2_get_die_type): Likewise.
12960         (follow_die_sig): Likewise.
12961         (decode_locdesc): Likewise.
12962         (dwarf2_per_cu_objfile): Likewise.
12963         (dwarf2_per_cu_text_offset): Likewise.
12964         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
12965         objfile.
12966         (set_die_type): Access objfile through
12967         dwarf2_per_objfile.
12968
12969 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
12970
12971         * valprint.c (converted_character_d): Remove typedef.
12972         (DEF_VEC_O (converted_character_d)): Remove.
12973         (count_next_character): Use std::vector.
12974         (print_converted_chars_to_obstack): Likewise.
12975         (generic_printstr): Likewise.
12976
12977 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
12978
12979         * xml-support.h (struct gdb_xml_value): Add constructor.
12980         <value>: Change type to unique_xmalloc_ptr.
12981         (gdb_xml_value_s): Remove typedef.
12982         (DEF_VEC_O (gdb_xml_value_s)): Remove.
12983         (gdb_xml_element_start_handler): Change parameter type to
12984         std::vector.
12985         (xml_find_attribute): Likewise.
12986         * xml-support.c (xml_find_attribute): Change parameter type to
12987         std::vector and adjust.
12988         (gdb_xml_values_cleanup): Remove.
12989         (gdb_xml_parser::start_element): Adjust to std::vector.
12990         (xinclude_start_include): Change paraeter type to std::vector
12991         and adjust.
12992         * btrace.c (check_xml_btrace_version): Likewise.
12993         (parse_xml_btrace_block): Likewise.
12994         (parse_xml_btrace_pt_config_cpu): Likewise.
12995         (parse_xml_btrace_pt): Likewise.
12996         (parse_xml_btrace_conf_bts): Likewise.
12997         (parse_xml_btrace_conf_pt): Likewise.
12998         * memory-map.c (memory_map_start_memory): Likewise.
12999         (memory_map_start_property): Likewise.
13000         * osdata.c (osdata_start_osdata): Likewise.
13001         (osdata_start_item): Likewise.
13002         (osdata_start_column): Likewise.
13003         * remote.c (start_thread): Likewise.
13004         * solib-aix.c (library_list_start_library): Likewise.
13005         (library_list_start_list): Likewise.
13006         * solib-svr4.c (library_list_start_library): Likewise.
13007         (svr4_library_list_start_list): Likewise.
13008         * solib-target.c (library_list_start_segment): Likewise.
13009         (library_list_start_section): Likewise.
13010         (library_list_start_library): Likewise.
13011         (library_list_start_list): Likewise.
13012         * tracepoint.c (traceframe_info_start_memory): Likewise.
13013         (traceframe_info_start_tvar): Likewise.
13014         * xml-syscall.c (syscall_start_syscall): Likewise.
13015         * xml-tdesc.c (tdesc_start_target): Likewise.
13016         (tdesc_start_feature): Likewise.
13017         (tdesc_start_reg): Likewise.
13018         (tdesc_start_union): Likewise.
13019         (tdesc_start_struct): Likewise.
13020         (tdesc_start_flags): Likewise.
13021         (tdesc_start_enum): Likewise.
13022         (tdesc_start_field): Likewise.
13023         (tdesc_start_enum_value): Likewise.
13024         (tdesc_start_vector): Likewise.
13025
13026 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13027
13028         * extension.h (struct xmethod_worker) <clone>: Remove.
13029         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
13030         Remove.
13031         (python_xmethod_worker::clone): Remove.
13032         * valops.c (find_overload_match): Use std::move instead of
13033         clone.
13034
13035 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13036
13037         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
13038         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
13039         <free_xmethod_worker_data>: Remove.
13040         <get_matching_xmethod_workers>: Chance VEC to std::vector.
13041         <get_xmethod_arg_types>: Remove.
13042         <get_xmethod_result_type>: Remove.
13043         <invoke_xmethod>: Remove.
13044         * extension.c (new_xmethod_worker): Remove.
13045         (clone_xmethod_worker): Remove.
13046         (get_matching_xmethod_workers): Return void, pass std::vector by
13047         pointer.
13048         (get_xmethod_arg_types): Rename to...
13049         (xmethod_worker::get_arg_types): ... this, and adjust.
13050         (get_xmethod_result_type): Rename to...
13051         (xmethod_worker::get_result_type): ... this, and adjust.
13052         (invoke_xmethod): Remove.
13053         (free_xmethod_worker): Remove.
13054         (free_xmethod_worker_vec): Remove.
13055         * extension.h (enum ext_lang_rc): Move here from
13056         extension-priv.h.
13057         (struct xmethod_worker): Add constructor and destructor.
13058         <data>: Remove.
13059         <value>: Remove.
13060         <invoke, clone, do_get_result_type, do_get_arg_types>: New
13061         virtual pure methods.
13062         <get_arg_types, get_result_type>: New methods.
13063         (xmethod_worker_ptr): Remove typedef.
13064         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
13065         (xmethod_worker_vec): Remove typedef.
13066         (xmethod_worker_up): New typedef.
13067         (invoke_xmethod): Remove.
13068         (clone_xmethod_worker): Remove.
13069         (free_xmethod_worker): Remove.
13070         (free_xmethod_worker_vec): Remove.
13071         (get_xmethod_arg_types): Remove.
13072         (get_xmethod_result_type): Remove.
13073         * valops.c (find_method_list): Use std::vector, don't use
13074         intermediate vector.
13075         (value_find_oload_method_list): Use std::vector.
13076         (find_overload_match): Use std::vector.
13077         (find_oload_champ): Use std::vector.
13078         * value.c (value_free): Use operator delete.
13079         (value_of_xmethod): Rename to...
13080         (value_from_xmethod): ... this.  Don't assign
13081         xmethod_worker::value, take rvalue-reference.
13082         (result_type_of_xmethod): Adjust.
13083         (call_xmethod): Adjust.
13084         * value.h: Include extension.h.
13085         (struct xmethod_worker): Don't forward-declare.
13086         (value_of_xmethod): Rename to...
13087         (value_from_xmethod): ... this, take rvalue-reference.
13088         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
13089         (struct python_xmethod_worker): ... this, add constructor and
13090         destructor.
13091         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
13092         (gdbpy_free_xmethod_worker_data): Rename to...
13093         (python_xmethod_worker::~python_xmethod_worker): ... this and
13094         adjust.
13095         (gdbpy_clone_xmethod_worker_data): Rename to...
13096         (python_xmethod_worker::clone): ... this and adjust.
13097         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
13098         temporary vector.
13099         (gdbpy_get_xmethod_arg_types): Rename to...
13100         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
13101         (gdbpy_get_xmethod_result_type): Rename to...
13102         (python_xmethod_worker::do_get_result_type): ... this and
13103         adjust.
13104         (gdbpy_invoke_xmethod): Rename to...
13105         (python_xmethod_worker::invoke): ... this and adjust.
13106         (new_python_xmethod_worker): Rename to...
13107         (python_xmethod_worker::python_xmethod_worker): ... this and
13108         adjust.
13109         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
13110         Remove.
13111         (gdbpy_free_xmethod_worker_data): Remove.
13112         (gdbpy_get_matching_xmethod_workers): Use std::vector.
13113         (gdbpy_get_xmethod_arg_types): Remove.
13114         (gdbpy_get_xmethod_result_type): Remove.
13115         (gdbpy_invoke_xmethod): Remove.
13116         * python/python.c (python_extension_ops): Remove obsolete
13117         callbacks.
13118
13119 2018-01-05  Pedro Alves  <palves@redhat.com>
13120
13121         PR gdb/18653
13122         * common/signals-state-save-restore.c
13123         (save_original_signals_state): New parameter 'quiet'.  Warn if we
13124         find a custom handler preinstalled, instead of internal erroring.
13125         But only warn if !quiet.
13126         * common/signals-state-save-restore.h
13127         (save_original_signals_state): New parameter 'quiet'.
13128         * main.c (captured_main_1): Move save_original_signals_state call
13129         after option handling, and pass QUIET.
13130
13131 2018-01-05  Pedro Alves  <palves@redhat.com>
13132
13133         * spu-tdep.c (spu_catch_start): Pass
13134         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
13135
13136 2018-01-05  Pedro Alves  <palves@redhat.com>
13137
13138         PR gdb/22670
13139         * ada-lang.c (literal_symbol_name_matcher): New function.
13140         (ada_get_symbol_name_matcher): Use it for
13141         symbol_name_match_type::SEARCH_NAME.
13142         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
13143         it down instead of assuming symbol_name_match_type::FULL.
13144         * block.h (block_lookup_symbol): New parameter 'match_type'.
13145         * c-valprint.c (print_unpacked_pointer): Use
13146         lookup_symbol_search_name instead of lookup_symbol.
13147         * compile/compile-object-load.c (get_out_value_type): Pass down
13148         symbol_name_match_type::SEARCH_NAME.
13149         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
13150         symbol_name_match_type::FULL.
13151         * cp-support.c (cp_get_symbol_name_matcher): Handle
13152         symbol_name_match_type::SEARCH_NAME.
13153         * infrun.c (insert_exception_resume_breakpoint): Use
13154         lookup_symbol_search_name.
13155         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
13156         * psymtab.c (maintenance_check_psymtabs): Use
13157         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
13158         * stack.c (print_frame_args): Use lookup_symbol_search_name and
13159         SYMBOL_SEARCH_NAME.
13160         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
13161         if symbol_name_match_type::SEARCH_NAME.
13162         (lookup_symbol_in_language): Pass down
13163         symbol_name_match_type::FULL.
13164         (lookup_symbol_search_name): New.
13165         (lookup_language_this): Pass down
13166         symbol_name_match_type::SEARCH_NAME.
13167         (lookup_symbol_aux, lookup_local_symbol): New parameter
13168         'match_type'.  Pass it down.
13169         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
13170         (lookup_symbol_search_name): New declaration.
13171         (lookup_symbol_in_block): New 'match_type' parameter.
13172
13173 2018-01-05  Pedro Alves  <palves@redhat.com>
13174
13175         PR gdb/22670
13176         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
13177         ada_lookup_symbol.
13178         (ada_lookup_symbol): Reimplement in terms of
13179         ada_lookup_symbol_list, bits factored out from
13180         ada_lookup_encoded_symbol.
13181
13182 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13183
13184         * ada-exp.y (write_object_renaming): When subscripting an array
13185         using a symbol as the index, pass the block in call to
13186         ada_lookup_encoded_symbol when looking that symbol up.
13187
13188 2018-01-05  Jerome Guitton  <guitton@adacore.com>
13189
13190         * ada-lang.c (ada_array_length): Use ada_index_type instead of
13191         TYPE_INDEX_TYPE.
13192
13193 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13194
13195         * ada-lang.c (ada_to_fixed_value_create): Add handling of
13196         the case where VALUE_LVAL (val0) is not lval_memory.
13197
13198 2018-01-05  Xavier Roirand  <roirand@adacore.com>
13199
13200         * ada-valprint.c (print_optional_low_bound): Handle
13201         character-indexed array printing like boolean-indexed array
13202         printing.
13203
13204 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13205
13206         * NEWS: Create a new section for the next release branch.
13207         Rename the section of the current branch, now that it has
13208         been cut.
13209
13210 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13211
13212         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
13213         * version.in: Bump version to 8.1.50.DATE-git.
13214
13215 2018-01-03  Xavier Roirand  <roirand@adacore.com>
13216
13217         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
13218         Add field.
13219         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
13220         Add field.
13221         (default_exception_support_info) <catch_handlers_sym>: Add field.
13222         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
13223         (ada_exception_name_addr_1): Add "catch handlers" handling.
13224         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
13225         Update all callers.
13226         (create_excep_cond_exprs) <ex>: Add parameter.
13227         (re_set_exception): Update create_excep_cond_exprs call.
13228         (print_it_exception, print_one_exception, print_mention_exception)
13229         (print_recreate_exception): Add "catch handler" handling.
13230         (allocate_location_catch_handlers, re_set_catch_handlers)
13231         (check_status_catch_handlers, print_it_catch_handlers)
13232         (print_one_catch_handlers, print_mention_catch_handlers)
13233         (print_recreate_catch_handlers): New function.
13234         (catch_handlers_breakpoint_ops): New variable.
13235         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
13236         Add parameter.  Add "catch handler" handling.
13237         (ada_exception_sym_name, ada_exception_breakpoint_ops):
13238         Add "catch handler" handling.
13239         (ada_exception_catchpoint_cond_string): Add "catch handler"
13240         handling.
13241         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
13242         call.
13243         (catch_ada_handlers_command): New function.
13244         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
13245         operations structure.
13246         (_initialize_ada_language): Add "catch handlers" command entry.
13247         * NEWS: Document "catch handlers" feature.
13248
13249 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
13250
13251         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
13252         account when creating the array type of the slice.
13253         (ada_value_slice): Likewise.
13254
13255 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
13256
13257         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
13258         New enum value.
13259         (create_array_type_with_stride): Add byte_stride_prop parameter.
13260         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
13261         New parameter.  Update all callers in this file.
13262         (array_type_has_dynamic_stride): New function.
13263         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
13264         of arrays with dynamic byte strides.
13265         * dwarf2read.c (read_array_type): Add support for dynamic
13266         DW_AT_byte_stride attributes.
13267
13268 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
13269
13270         * dwarf2read.c (read_unspecified_type): Treat
13271         DW_TAG_enumeration_type DIEs from Ada units as stubs.
13272
13273 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13274
13275         Update copyright year range in all GDB files.
13276
13277 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13278
13279         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
13280         and gdb/testsuite/gdb.base/step-line.c.
13281
13282 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13283
13284         * copyright.py (main): Dump the contents of
13285         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
13286         even if BY_HAND is empty.
13287
13288 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13289
13290         * top.c (print_gdb_version): Update Copyright year in version
13291         message.
13292
13293 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13294
13295         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
13296
13297 For older changes see ChangeLog-2017.
13298 \f
13299 Local Variables:
13300 mode: change-log
13301 left-margin: 8
13302 fill-column: 74
13303 version-control: never
13304 coding: utf-8
13305 End: