Revert "Update gnulib to current upstream master"
[external/binutils.git] / gdb / ChangeLog
1 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2
3         Revert:
4         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
5
6         PR gdb/23555
7         PR gdb/23558
8         * gnulib/aclocal.m4: Regenerate.
9         * gnulib/config.in: Regenerate.
10         * gnulib/configure: Regenerate.
11         * gnulib/import/Makefile.am: Update.
12         * gnulib/import/Makefile.in: Update.
13         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
14         * gnulib/import/_Noreturn.h: ... this.
15         * gnulib/import/alloca.in.h: Update.
16         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
17         * gnulib/import/arg-nonnull.h: ... this.
18         * gnulib/import/assure.h: Update.
19         * gnulib/import/at-func.c: Update.
20         * gnulib/import/basename-lgpl.c: Update.
21         * gnulib/import/extra/snippet/c++defs.h: Rename to...
22         * gnulib/import/c++defs.h: ... this.
23         * gnulib/import/canonicalize-lgpl.c: Update.
24         * gnulib/import/cdefs.h: Update.
25         * gnulib/import/chdir-long.c: Update.
26         * gnulib/import/chdir-long.h: Update.
27         * gnulib/import/cloexec.c: Update.
28         * gnulib/import/cloexec.h: Update.
29         * gnulib/import/close.c: Update.
30         * gnulib/import/closedir.c: Update.
31         * gnulib/import/config.charset: Update.
32         * gnulib/import/dirent-private.h: Update.
33         * gnulib/import/dirent.in.h: Update.
34         * gnulib/import/dirfd.c: Update.
35         * gnulib/import/dirname-lgpl.c: Update.
36         * gnulib/import/dirname.h: Update.
37         * gnulib/import/dosname.h: Update.
38         * gnulib/import/dup-safer-flag.c: Update.
39         * gnulib/import/dup-safer.c: Update.
40         * gnulib/import/dup.c: Update.
41         * gnulib/import/dup2.c: Update.
42         * gnulib/import/errno.in.h: Update.
43         * gnulib/import/error.c: Update.
44         * gnulib/import/error.h: Update.
45         * gnulib/import/exitfail.c: Update.
46         * gnulib/import/exitfail.h: Update.
47         * gnulib/import/extra/update-copyright: Update.
48         * gnulib/import/fchdir.c: Update.
49         * gnulib/import/fcntl.c: Update.
50         * gnulib/import/fcntl.in.h: Update.
51         * gnulib/import/fd-hook.c: Update.
52         * gnulib/import/fd-hook.h: Update.
53         * gnulib/import/fd-safer-flag.c: Update.
54         * gnulib/import/fd-safer.c: Update.
55         * gnulib/import/fdopendir.c: Update.
56         * gnulib/import/filename.h: Update.
57         * gnulib/import/filenamecat-lgpl.c: Update.
58         * gnulib/import/filenamecat.h: Update.
59         * gnulib/import/flexmember.h: Update.
60         * gnulib/import/float+.h: Update.
61         * gnulib/import/float.c: Update.
62         * gnulib/import/float.in.h: Update.
63         * gnulib/import/fnmatch.c: Update.
64         * gnulib/import/fnmatch.in.h: Update.
65         * gnulib/import/fnmatch_loop.c: Update.
66         * gnulib/import/fpucw.h: Update.
67         * gnulib/import/frexp.c: Update.
68         * gnulib/import/frexpl.c: Update.
69         * gnulib/import/fstat.c: Update.
70         * gnulib/import/fstatat.c: Update.
71         * gnulib/import/getcwd-lgpl.c: Update.
72         * gnulib/import/getcwd.c: Update.
73         * gnulib/import/getdtablesize.c: Update.
74         * gnulib/import/getlogin_r.c: Update.
75         * gnulib/import/getprogname.c: Update.
76         * gnulib/import/getprogname.h: Update.
77         * gnulib/import/gettext.h: Update.
78         * gnulib/import/gettimeofday.c: Update.
79         * gnulib/import/glob-libc.h: Update.
80         * gnulib/import/glob.c: Update.
81         * gnulib/import/glob.in.h: Update.
82         * gnulib/import/glob_internal.h: Update.
83         * gnulib/import/glob_pattern_p.c: Update.
84         * gnulib/import/globfree.c: Update.
85         * gnulib/import/hard-locale.c: Update.
86         * gnulib/import/hard-locale.h: Update.
87         * gnulib/import/intprops.h: Update.
88         * gnulib/import/inttypes.in.h: Update.
89         * gnulib/import/isnan.c: Update.
90         * gnulib/import/isnand-nolibm.h: Update.
91         * gnulib/import/isnand.c: Update.
92         * gnulib/import/isnanl-nolibm.h: Update.
93         * gnulib/import/isnanl.c: Update.
94         * gnulib/import/itold.c: Update.
95         * gnulib/import/libc-config.h: Update.
96         * gnulib/import/limits.in.h: Update.
97         * gnulib/import/localcharset.c: Update.
98         * gnulib/import/localcharset.h: Update.
99         * gnulib/import/localtime-buffer.c: Update.
100         * gnulib/import/localtime-buffer.h: Update.
101         * gnulib/import/lstat.c: Update.
102         * gnulib/import/m4/00gnulib.m4: Update.
103         * gnulib/import/m4/__inline.m4: Update.
104         * gnulib/import/m4/absolute-header.m4: Update.
105         * gnulib/import/m4/alloca.m4: Update.
106         * gnulib/import/m4/builtin-expect.m4: Update.
107         * gnulib/import/m4/canonicalize.m4: Update.
108         * gnulib/import/m4/chdir-long.m4: Update.
109         * gnulib/import/m4/close.m4: Update.
110         * gnulib/import/m4/closedir.m4: Update.
111         * gnulib/import/m4/configmake.m4: Update.
112         * gnulib/import/m4/d-ino.m4: Update.
113         * gnulib/import/m4/d-type.m4: Update.
114         * gnulib/import/m4/dirent_h.m4: Update.
115         * gnulib/import/m4/dirfd.m4: Update.
116         * gnulib/import/m4/dirname.m4: Update.
117         * gnulib/import/m4/double-slash-root.m4: Update.
118         * gnulib/import/m4/dup.m4: Update.
119         * gnulib/import/m4/dup2.m4: Update.
120         * gnulib/import/m4/eealloc.m4: Update.
121         * gnulib/import/m4/environ.m4: Update.
122         * gnulib/import/m4/errno_h.m4: Update.
123         * gnulib/import/m4/error.m4: Update.
124         * gnulib/import/m4/exponentd.m4: Update.
125         * gnulib/import/m4/exponentl.m4: Update.
126         * gnulib/import/m4/extensions.m4: Update.
127         * gnulib/import/m4/extern-inline.m4: Update.
128         * gnulib/import/m4/fchdir.m4: Update.
129         * gnulib/import/m4/fcntl-o.m4: Update.
130         * gnulib/import/m4/fcntl.m4: Update.
131         * gnulib/import/m4/fcntl_h.m4: Update.
132         * gnulib/import/m4/fdopendir.m4: Update.
133         * gnulib/import/m4/filenamecat.m4: Update.
134         * gnulib/import/m4/flexmember.m4: Update.
135         * gnulib/import/m4/float_h.m4: Update.
136         * gnulib/import/m4/fnmatch.m4: Update.
137         * gnulib/import/m4/fnmatch_h.m4: Update.
138         * gnulib/import/m4/fpieee.m4: Update.
139         * gnulib/import/m4/frexp.m4: Update.
140         * gnulib/import/m4/frexpl.m4: Update.
141         * gnulib/import/m4/fstat.m4: Update.
142         * gnulib/import/m4/fstatat.m4: Update.
143         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
144         * gnulib/import/m4/getcwd-path-max.m4: Update.
145         * gnulib/import/m4/getcwd.m4: Update.
146         * gnulib/import/m4/getdtablesize.m4: Update.
147         * gnulib/import/m4/getlogin.m4: Update.
148         * gnulib/import/m4/getlogin_r.m4: Update.
149         * gnulib/import/m4/getpagesize.m4: Update.
150         * gnulib/import/m4/getprogname.m4: Update.
151         * gnulib/import/m4/gettimeofday.m4: Update.
152         * gnulib/import/m4/glibc21.m4: Update.
153         * gnulib/import/m4/glob.m4: Update.
154         * gnulib/import/m4/glob_h.m4: Update.
155         * gnulib/import/m4/gnulib-cache.m4: Update.
156         * gnulib/import/m4/gnulib-common.m4: Update.
157         * gnulib/import/m4/gnulib-comp.m4: Update.
158         * gnulib/import/m4/gnulib-tool.m4: Update.
159         * gnulib/import/m4/hard-locale.m4: Update.
160         * gnulib/import/m4/include_next.m4: Update.
161         * gnulib/import/m4/inttypes-pri.m4: Update.
162         * gnulib/import/m4/inttypes.m4: Update.
163         * gnulib/import/m4/isnand.m4: Update.
164         * gnulib/import/m4/isnanl.m4: Update.
165         * gnulib/import/m4/largefile.m4: Update.
166         * gnulib/import/m4/limits-h.m4: Update.
167         * gnulib/import/m4/localcharset.m4: Update.
168         * gnulib/import/m4/locale-fr.m4: Update.
169         * gnulib/import/m4/locale-ja.m4: Update.
170         * gnulib/import/m4/locale-zh.m4: Update.
171         * gnulib/import/m4/localtime-buffer.m4: Update.
172         * gnulib/import/m4/longlong.m4: Update.
173         * gnulib/import/m4/lstat.m4: Update.
174         * gnulib/import/m4/malloc.m4: Update.
175         * gnulib/import/m4/malloca.m4: Update.
176         * gnulib/import/m4/math_h.m4: Update.
177         * gnulib/import/m4/mbrtowc.m4: Update.
178         * gnulib/import/m4/mbsinit.m4: Update.
179         * gnulib/import/m4/mbsrtowcs.m4: Update.
180         * gnulib/import/m4/mbstate_t.m4: Update.
181         * gnulib/import/m4/memchr.m4: Update.
182         * gnulib/import/m4/memmem.m4: Update.
183         * gnulib/import/m4/mempcpy.m4: Update.
184         * gnulib/import/m4/memrchr.m4: Update.
185         * gnulib/import/m4/mkdir.m4: Update.
186         * gnulib/import/m4/mkstemp.m4: Update.
187         * gnulib/import/m4/mmap-anon.m4: Update.
188         * gnulib/import/m4/mode_t.m4: Update.
189         * gnulib/import/m4/msvc-inval.m4: Update.
190         * gnulib/import/m4/msvc-nothrow.m4: Update.
191         * gnulib/import/m4/multiarch.m4: Update.
192         * gnulib/import/m4/nocrash.m4: Update.
193         * gnulib/import/m4/off_t.m4: Update.
194         * gnulib/import/m4/onceonly.m4: Update.
195         * gnulib/import/m4/open-cloexec.m4: Update.
196         * gnulib/import/m4/open.m4: Update.
197         * gnulib/import/m4/openat.m4: Update.
198         * gnulib/import/m4/opendir.m4: Update.
199         * gnulib/import/m4/pathmax.m4: Update.
200         * gnulib/import/m4/rawmemchr.m4: Update.
201         * gnulib/import/m4/readdir.m4: Update.
202         * gnulib/import/m4/readlink.m4: Update.
203         * gnulib/import/m4/realloc.m4: Update.
204         * gnulib/import/m4/rename.m4: Update.
205         * gnulib/import/m4/rewinddir.m4: Update.
206         * gnulib/import/m4/rmdir.m4: Update.
207         * gnulib/import/m4/save-cwd.m4: Update.
208         * gnulib/import/m4/secure_getenv.m4: Update.
209         * gnulib/import/m4/setenv.m4: Update.
210         * gnulib/import/m4/signal_h.m4: Update.
211         * gnulib/import/m4/ssize_t.m4: Update.
212         * gnulib/import/m4/stat-time.m4: Update.
213         * gnulib/import/m4/stat.m4: Update.
214         * gnulib/import/m4/std-gnu11.m4: Update.
215         * gnulib/import/m4/stdbool.m4: Update.
216         * gnulib/import/m4/stddef_h.m4: Update.
217         * gnulib/import/m4/stdint.m4: Update.
218         * gnulib/import/m4/stdio_h.m4: Update.
219         * gnulib/import/m4/stdlib_h.m4: Update.
220         * gnulib/import/m4/strchrnul.m4: Update.
221         * gnulib/import/m4/strdup.m4: Update.
222         * gnulib/import/m4/strerror.m4: Update.
223         * gnulib/import/m4/string_h.m4: Update.
224         * gnulib/import/m4/strstr.m4: Update.
225         * gnulib/import/m4/strtok_r.m4: Update.
226         * gnulib/import/m4/sys_socket_h.m4: Update.
227         * gnulib/import/m4/sys_stat_h.m4: Update.
228         * gnulib/import/m4/sys_time_h.m4: Update.
229         * gnulib/import/m4/sys_types_h.m4: Update.
230         * gnulib/import/m4/tempname.m4: Update.
231         * gnulib/import/m4/time_h.m4: Update.
232         * gnulib/import/m4/unistd-safer.m4: Update.
233         * gnulib/import/m4/unistd_h.m4: Update.
234         * gnulib/import/m4/warn-on-use.m4: Update.
235         * gnulib/import/m4/wchar_h.m4: Update.
236         * gnulib/import/m4/wchar_t.m4: Update.
237         * gnulib/import/m4/wctype_h.m4: Update.
238         * gnulib/import/m4/wint_t.m4: Update.
239         * gnulib/import/malloc.c: Update.
240         * gnulib/import/malloc/scratch_buffer.h: Update.
241         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
242         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
243         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
244         * gnulib/import/malloca.c: Update.
245         * gnulib/import/malloca.h: Update.
246         * gnulib/import/malloca.valgrind: Update.
247         * gnulib/import/math.in.h: Update.
248         * gnulib/import/mbrtowc.c: Update.
249         * gnulib/import/mbsinit.c: Update.
250         * gnulib/import/mbsrtowcs-impl.h: Update.
251         * gnulib/import/mbsrtowcs-state.c: Update.
252         * gnulib/import/mbsrtowcs.c: Update.
253         * gnulib/import/memchr.c: Update.
254         * gnulib/import/memmem.c: Update.
255         * gnulib/import/mempcpy.c: Update.
256         * gnulib/import/memrchr.c: Update.
257         * gnulib/import/mkdir.c: Update.
258         * gnulib/import/mkstemp.c: Update.
259         * gnulib/import/msvc-inval.c: Update.
260         * gnulib/import/msvc-inval.h: Update.
261         * gnulib/import/msvc-nothrow.c: Update.
262         * gnulib/import/msvc-nothrow.h: Update.
263         * gnulib/import/open.c: Update.
264         * gnulib/import/openat-die.c: Update.
265         * gnulib/import/openat-priv.h: Update.
266         * gnulib/import/openat-proc.c: Update.
267         * gnulib/import/openat.c: Update.
268         * gnulib/import/openat.h: Update.
269         * gnulib/import/opendir.c: Update.
270         * gnulib/import/pathmax.h: Update.
271         * gnulib/import/pipe-safer.c: Update.
272         * gnulib/import/rawmemchr.c: Update.
273         * gnulib/import/readdir.c: Update.
274         * gnulib/import/readlink.c: Update.
275         * gnulib/import/realloc.c: Update.
276         * gnulib/import/ref-add.sin: Update.
277         * gnulib/import/ref-del.sin: Update.
278         * gnulib/import/rename.c: Update.
279         * gnulib/import/rewinddir.c: Update.
280         * gnulib/import/rmdir.c: Update.
281         * gnulib/import/same-inode.h: Update.
282         * gnulib/import/save-cwd.c: Update.
283         * gnulib/import/save-cwd.h: Update.
284         * gnulib/import/scratch_buffer.h: Update.
285         * gnulib/import/secure_getenv.c: Update.
286         * gnulib/import/setenv.c: Update.
287         * gnulib/import/signal.in.h: Update.
288         * gnulib/import/stat-time.c: Update.
289         * gnulib/import/stat-time.h: Update.
290         * gnulib/import/stat-w32.c: Update.
291         * gnulib/import/stat-w32.h: Update.
292         * gnulib/import/stat.c: Update.
293         * gnulib/import/stdbool.in.h: Update.
294         * gnulib/import/stddef.in.h: Update.
295         * gnulib/import/stdint.in.h: Update.
296         * gnulib/import/stdio.in.h: Update.
297         * gnulib/import/stdlib.in.h: Update.
298         * gnulib/import/str-two-way.h: Update.
299         * gnulib/import/strchrnul.c: Update.
300         * gnulib/import/strdup.c: Update.
301         * gnulib/import/streq.h: Update.
302         * gnulib/import/strerror-override.c: Update.
303         * gnulib/import/strerror-override.h: Update.
304         * gnulib/import/strerror.c: Update.
305         * gnulib/import/string.in.h: Update.
306         * gnulib/import/stripslash.c: Update.
307         * gnulib/import/strnlen1.c: Update.
308         * gnulib/import/strnlen1.h: Update.
309         * gnulib/import/strstr.c: Update.
310         * gnulib/import/strtok_r.c: Update.
311         * gnulib/import/sys_stat.in.h: Update.
312         * gnulib/import/sys_time.in.h: Update.
313         * gnulib/import/sys_types.in.h: Update.
314         * gnulib/import/tempname.c: Update.
315         * gnulib/import/tempname.h: Update.
316         * gnulib/import/time.in.h: Update.
317         * gnulib/import/unistd--.h: Update.
318         * gnulib/import/unistd-safer.h: Update.
319         * gnulib/import/unistd.in.h: Update.
320         * gnulib/import/unsetenv.c: Update.
321         * gnulib/import/verify.h: Update.
322         * gnulib/import/extra/snippet/warn-on-use.h: Update.
323         * gnulib/import/wchar.in.h: Update.
324         * gnulib/import/wctype.in.h: Update.
325         * gnulib/import/xalloc-oversized.h: Update.
326         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
327         "53e2c179f26a890fa6685af4b6c1397ee370433b".
328
329 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
330
331         * record-btrace.c (get_thread_current_frame): Remove
332         old_inferior_ptid.
333
334 2018-09-10  Jerome Guitton  <guitton@adacore.com>
335
336         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
337         with check_tag to 1 if and only if the type is tagged and the
338         component being searched cannot been found in the current
339         view. Otherwise, always call ada_to_fixed_type with
340         check_tag to 0.
341
342 2018-09-10  Xavier Roirand  <roirand@adacore.com>
343
344         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
345         declaration.
346         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
347         * ada-varobj.c (ada_varobj_get_number_of_children,
348         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
349
350 2018-09-10  Xavier Roirand  <roirand@adacore.com>
351
352         * ada-valprint.c (ada_value_print): Use type instead of
353         enclosing type.
354
355 2018-09-10  Xavier Roirand  <roirand@adacore.com>
356
357         * ada-lang.c (ada_value_subscript): Handle case when parameter is
358         an array of access to unconstrained array.
359
360 2018-09-10  Xavier Roirand  <roirand@adacore.com>
361
362         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
363         (ada_check_typedef): Use it.
364
365 2018-09-10  Xavier Roirand  <roirand@adacore.com>
366
367         * ada-varobj.c (ada_varobj_describe_struct_child)
368         (ada_varobj_describe_child): Handle union case like struct one.
369
370 2018-09-10  Tom Tromey  <tom@tromey.com>
371
372         PR python/18380:
373         * python/python.c (_initialize_python): Make example in "python"
374         help work in Python 3.
375
376 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
377
378         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
379         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
380         $(EXEEXT) to the script, as it is not a program.
381
382 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
383
384         * python/py-prettyprint.c (pretty_print_one_value): Return
385         gdbpy_ref<>.
386         (print_string_repr): Adjust.
387         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
388         * python/python-internal.h (apply_varobj_pretty_printer): Return
389         gdbpy_ref<>.
390         * varobj.c (varobj_value_get_print_value): Adjust.
391
392 2018-09-08  Tom Tromey  <tom@tromey.com>
393
394         PR python/16047:
395         * python/py-prettyprint.c (pretty_print_one_value): Check for
396         to_string method.
397
398 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
399
400         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
401         replace_operator_with_call.
402
403 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
404
405         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
406
407 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
408
409         * ada-typeprint.c (print_range): Print the bounds using TYPE
410         rather than its TYPE_TARGET_TYPE.
411
412 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
413
414         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
415         call to ada_to_fixed_value_create.
416
417 2018-09-08  Jerome Guitton  <guitton@adacore.com>
418
419         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
420
421 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
422
423         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
424         by calls to error.
425
426 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
427
428         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
429         Move update of loop variable "fi".
430
431 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
432
433         * ada-lang.c (value_assign_to_component): In the case of
434         big-endian targets, extract the bits of the given VAL
435         using an src_offset of zero if container is not a scalar.
436
437 2018-09-06  Simon Ser  <contact@emersion.fr>
438
439         PR gdb/23105
440         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
441         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
442         * fbsd-tdep.c (fbsd_make_note_desc): New.
443         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
444         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
445         * target.h (enum target_object) Add FreeBSD-specific
446         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
447
448 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
449
450         * compile/compile-c.h (generate_c_for_variable_locations):
451         Change reference to pointer.
452         * compile/compile-c-support.c (compile_program) <compute>:
453         Likewise.
454         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
455         (generate_c_for_for_one_variable): Likewise
456         (generate_c_for_variable_locations): Likewise
457         * compile/compile-c-types.c (compile_c_instance::convert_type):
458         Likewise
459         * compile/compile-cplus-symbols.c (convert_one_symbol):
460         std::move the scope passed to enter_scope.
461         * compile/compile-cplus-types.c
462         (compile_cplus_instance::enter_scope): Make parameter
463         rvalue-reference.
464         (compile_cplus_instance::new_scope): Change reference to
465         pointer.
466         (compile_cplus_instance::convert_type): Likewise
467         (compile_cplus_convert_typedef): std::move the scope passed to
468         enter_scope.
469         (compile_cplus_convert_struct_or_union): Likewise.
470         (compile_cplus_convert_enum): Likewise.
471         (compile_cplus_convert_namespace): Likewise.
472         * compile/compile-cplus.h (compile_cplus_instance)
473         <enter_scope>: Make parameter rvalue-reference.
474         * compile/compile-internal.h (compile_instance)
475         <get_cached_type>: Likewise
476         * compile/compile-loc2c.c (push): Likewise
477         (pushf): Likewise
478         (unary): Likewise
479         (binary): Likewise
480         (print_label): Likewise
481         (pushf_register_address): Likewise
482         (pushf_register): Likewise
483         (do_compile_dwarf_expr_to_c): Likewise
484         (compile_dwarf_expr_to_c): Likewise
485         (compile_dwarf_bounds_to_c): Likewise
486         * compile/compile.c (compile_instance::get_cached_type):
487         Likewise
488         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
489         (compile_dwarf_bounds_to_c): Likewise
490         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
491         (dwarf2_compile_property_to_c): Likewise
492         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
493         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
494         Likewise
495
496 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
497
498         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
499         * tui/tui-data.c (init_content_element): Don't initialize it.
500
501 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
502
503         * tui/tui-data.h (struct tui_win_info)
504         <detail::opaque>: Remove.
505         * tui/tui-data.c (init_win_info): Remove assignment.
506
507 2018-09-05  Tom Tromey  <tom@tromey.com>
508
509         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
510         -Wformat-nonliteral.
511         * target-float.c (host_float_ops<T>::to_string)
512         (host_float_ops<T>::from_string): Use
513         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
514         * configure: Rebuild.
515
516 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
517
518         * printcmd.c (printf_c_string): Use
519         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
520         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
521
522 2018-09-05  Tom Tromey  <tom@tromey.com>
523
524         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
525
526 2018-09-05  Tom de Vries  <tdevries@suse.de>
527
528         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
529         with resolve_abstract_p == true.
530         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
531         defaulting to false. Propagate resolve_abstract_p to
532         dwarf2_fetch_die_loc_sect_off.
533         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
534         parameter, defaulting to false.
535         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
536         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
537         parameter.
538         * dwarf2read.h (struct die_info): Forward-declare.
539         (die_info_ptr): New typedef.
540         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
541
542 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
543
544         GDB 8.2 released.
545
546 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
547             Pedro Alves  <palves@redhat.com>
548
549         * gnulib/Makefile.in (aclocal_m4_deps): Move to
550         "aclocal-m4-deps.mk".  Include file here.
551         $(srcdir)/aclocal.m4: Add "configure.ac".
552         * gnulib/aclocal-m4-deps.mk: New file.
553         * gnulib/update-gnulib.sh: Automatically update
554         "aclocal-m4-deps.mk".
555
556 2018-09-04  Tom Tromey  <tom@tromey.com>
557
558         * configure: Rebuild.
559         * configure.ac: Remove multi-ice code.
560
561 2018-09-04  Tom Tromey  <tom@tromey.com>
562
563         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
564         (ada-exp.o): Update.
565
566 2018-09-04  Tom Tromey  <tom@tromey.com>
567
568         * Makefile.in (printcmd.o, target-float.o): Remove.
569         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
570
571 2018-09-04  Tom Tromey  <tom@tromey.com>
572
573         * gnulib/Makefile.in: Remove obsolete comment.
574         * Makefile.in: Remove obsolete comment.
575
576 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
577
578         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
579         line with '+'.
580
581 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
582
583         * riscv-tdep.c: Add 'prologue-value.h' include.
584         (struct riscv_unwind_cache): New struct.
585         (riscv_debug_unwinder): New global.
586         (riscv_scan_prologue): Update arguments, capture register details
587         from prologue scan.
588         (riscv_skip_prologue): Reformat arguments line, move end of
589         prologue calculation into riscv_scan_prologue.
590         (riscv_frame_cache): Update return type, create
591         riscv_unwind_cache, scan the prologue, and fill in remaining cache
592         details.
593         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
594         (riscv_frame_prev_register): Use the trad_frame within the
595         riscv_unwind_cache.
596         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
597         flag.
598
599 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
600
601         * trad-frame.h (trad_frame_set_realreg): Declare.
602         (trad_frame_set_addr): Declare.
603         * trad-frame.c (trad_frame_set_realreg): Define new function.
604         (trad_frame_set_addr): Define new function.
605         (trad_frame_set_reg_realreg): Use new function.
606         (trad_frame_set_reg_addr): Use new function.
607
608 2018-09-01  Keith Seitz  <keiths@redhat.com>
609
610         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
611         pulongest instead of "%lld".
612         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
613         ATTRIBUTE_UNUSED.
614
615 2018-08-31  Tom Tromey  <tom@tromey.com>
616
617         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
618         variant part type.
619
620 2018-08-31  Pedro Alves  <palves@redhat.com>
621
622         * gdbarch.h: Regenerate.
623
624 2018-08-31  Pedro Alves  <palves@redhat.com>
625
626         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
627         * target.h (Hardware watchpoint interfaces): Describe
628         continuable/steppable/non-steppable watchpoints.
629         * gdbarch.h, gdbarch.c: Regenerate.
630
631 2018-08-31  Pedro Alves  <palves@redhat.com>
632
633         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
634         Delete.
635         * s390-linux-nat.c
636         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
637         * target.h (target_ops::have_continuable_watchpoint): Delete.
638         (target_have_continuable_watchpoint): Delete.
639         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
640         * target-delegates.c: Regenerate.
641
642 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
643
644         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
645         the files present in "gnulib/import/m4/".
646
647 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
648
649         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
650         c.sw, c.swsp, and c.sdsp.
651
652 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
653
654         * riscv-tdep.c (struct riscv_inferior_data): Delete.
655         (riscv_read_misa_reg): Don't cache value read into inferior data.
656         (riscv_new_inferior_data): Delete.
657         (riscv_inferior_data_cleanup): Delete.
658         (riscv_inferior_data): Delete.
659         (riscv_invalidate_inferior_data): Delete.
660         (_initialize_riscv_tdep): Remove initialisation of inferior data.
661
662 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
663
664         * compile/compile-cplus-types.c
665         (compile_cplus_instance::leave_scope): Take the address of scope
666         object.
667         (compile_cplus_instance::convert_qualified_base): Compare quals
668         to 0.
669
670 2018-08-30  Keith Seitz  <keiths@redhat.com>
671
672         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
673         Use "%s" and host_address_to_string instead of "%p" in printf.
674
675 2018-08-29  Keith Seitz  <keiths@redhat.com>
676
677         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
678         and compile-cplus-types.c.
679         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
680         * c-lang.c (cplus_language_defn): Set C++ compile functions.
681         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
682         Declare.
683         * compile/compile-c-support.c: Include compile-cplus.h.
684         (load_libcompile): Templatize.
685         (get_compile_context): "New" function.
686         (c_get_compile_context): Use get_compile_context.
687         (cplus_get_compile_context): New function.
688         (cplus_push_user_expression, cplus_pop_user_expression)
689         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
690         (cplus_compute_program): Define new structs/functions.
691         * compile/compile-cplus-symmbols.c: New file.
692         * compile/compile-cplus-types.c: New file.
693         * compile/compile-cplus.h: New file.
694         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
695         Declare.
696         * compile/compile-object-load.c (get_out_value_type): Use
697         strncmp_iw when comparing symbol names.
698         (compile_object_load): Add mst_bss and mst_data.
699         * compile/compile.c (_initialize_compile): Remove
700         -Wno-implicit-function-declaration from `compile_args'.
701         * compile/gcc-cp-plugin.h: New file.
702         * NEWS: Mention C++ compile support and new debug options.
703
704 2018-08-29  Keith Seitz  <keiths@redhat.com>
705
706         * linespec.c (collect_info::add_symbol): Make virtual.
707         (struct symbol_searcher_collect_info): New struct.
708         (symbol_searcher::find_all_symbols): New method.
709         * symtab.h (class symbol_searcher): New class.
710
711 2018-08-29  Keith Seitz  <keiths@redhat.com>
712
713         * linespec.c (struct linespec) <function_symbols, label_symbols>:
714         Change to vector of block_symbol.  Update all users.
715         (struct collect_info) <symbols>: Likewise.
716         (collect_info::add_symbol): Take block_symbol as argument.
717         Update all callers.
718         (decode_compound_collector) <m_symbols>: Change type to vector
719         of block_symbol.  Update all users.
720         (decode_compound_collector::operator ()): Change parameter type
721         to block_symbol.
722         (find_method, find_function_symbols, find_linespec_symbols)
723         (find_label_symbols_in_block, find_label_symbols): Change symbol
724         vectors to block_symbol vectors.
725         * symtab.h (symbol_found_callback_ftype): Change parameter type to
726         block_symbol.
727
728 2018-08-29  Keith Seitz  <keiths@redhat.com>
729
730         * linespec.c (symbolp): Remove typedef and VEC definitions.
731         (bound_minimal_symbol_d): Likewise.
732
733 2018-08-29  Keith Seitz  <keiths@redhat.com>
734
735         * linespec.c (decode_compound_collector::decode_compound_collector):
736         Remove initialization for `m_symtabs'.
737         (decode_compound_collector::release_symbols): Change return type
738         to std::vector.  Update all callers.
739         (class decode_compound_collector) <m_symbols>: Change type to
740         std::vector.
741         (lookup_prefix_sym): Change return type to std::vector.  Update all
742         callers.
743         (compare_symbols): Remove.
744         (std_compare_symbols): Rename to `compare_symbols'.
745         (find_method): Change `sym_classes' parameter to std::vector.
746         Update all callers.  Use std::sort to sort sym_classes.
747         (find_linespec_symbols): Remove cleanup.
748
749 2018-08-29  Keith Seitz  <keiths@redhat.com>
750
751         * linespec.c (struct linespec) <minimal_symbols>: Change type to
752         std::vector.  Update all users.
753         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
754         (struct collect_info) <minimal_symbols>: Likewise.
755         (compare_msymbols): Return bool.  Change parameters to const
756         bound_minimal_symbol references.
757         (find_method, find_function_symbols, find_linespec_symbols): Change
758         `minsyms' parameter to std::vector.  Update all callers.
759
760 2018-08-29  Keith Seitz  <keiths@redhat.com>
761
762         * linespec.c (struct linespec) <label_symbols>: Change type to
763         std::vector.  Update all users.
764         (find_label_symbols_in_block): Change `result' parameter to
765         std::vector.  Update all callers.
766         (find_label_symbols): Return std::vector.  Update all callers.
767
768 2018-08-29  Keith Seitz  <keiths@redhat.com>
769
770         * linespec.c (struct linespec) <function_symbols>: Change type to
771         std::vector.  Update all users.
772         (struct collect_info) <function_symbols>: Likewise.
773         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
774         (std_compare_symbols): New function.
775         (find_method, find_function_symbols, find_linespec_symbols)
776         (find_label_symbols_in_block): Change `symbols' parameter to
777         std::vector.  Update all callers.
778         (find_label_symbols): Likewise for `function_symbols' and
779         `label_funcs_ret'.
780
781 2018-08-29  Keith Seitz  <keiths@redhat.com>
782
783         * linespec.c (symtab_vector_up): Define.
784         (struct linespec) <file_symtabs>: Change type to std::vector *.
785         Update all uses.
786         (struct collect_info) <file_symtabs>: Likewise.
787         (collect_symtabs_from_filename): Return symtab_vector_up.
788         Update all callers.
789         (decode_objc): Remove cleanup.
790         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
791         (symtab_collector::release_symtabs): Return symtab_vector_up.
792         Update all callers.
793         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
794         Update all users.
795         (collect_symtabs_from_filename, symtabs_from_filename): Return
796         symtab_vector_up.  Update all callers.
797
798 2018-08-29  Tom Tromey  <tom@tromey.com>
799
800         * csky-tdep.c (csky_analyze_prologue): Use
801         core_addr_to_string_nz.
802
803 2018-08-29  Tom Tromey  <tom@tromey.com>
804
805         * windows-nat.c (struct xlate_exception) <them>: Change type to
806         DWORD.
807         (xlate): Fix formatting.  Remove last entry.
808         (struct xlate_exception, xlate): Comment out.
809         (windows_nat_target::resume): Use ranged for.
810
811 2018-08-29  Jim Wilson  <jimw@sifive.com>
812
813         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
814         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
815         of NT_PRFPREG.
816         (riscv_linux_nat_target::store_registers): Likewise.
817
818 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
819
820         PR gdb/23555
821         PR gdb/23558
822         * gnulib/aclocal.m4: Regenerate.
823         * gnulib/config.in: Regenerate.
824         * gnulib/configure: Regenerate.
825         * gnulib/import/Makefile.am: Update.
826         * gnulib/import/Makefile.in: Update.
827         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
828         * gnulib/import/_Noreturn.h: ... this.
829         * gnulib/import/alloca.in.h: Update.
830         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
831         * gnulib/import/arg-nonnull.h: ... this.
832         * gnulib/import/assure.h: Update.
833         * gnulib/import/at-func.c: Update.
834         * gnulib/import/basename-lgpl.c: Update.
835         * gnulib/import/extra/snippet/c++defs.h: Rename to...
836         * gnulib/import/c++defs.h: ... this.
837         * gnulib/import/canonicalize-lgpl.c: Update.
838         * gnulib/import/cdefs.h: Update.
839         * gnulib/import/chdir-long.c: Update.
840         * gnulib/import/chdir-long.h: Update.
841         * gnulib/import/cloexec.c: Update.
842         * gnulib/import/cloexec.h: Update.
843         * gnulib/import/close.c: Update.
844         * gnulib/import/closedir.c: Update.
845         * gnulib/import/config.charset: Update.
846         * gnulib/import/dirent-private.h: Update.
847         * gnulib/import/dirent.in.h: Update.
848         * gnulib/import/dirfd.c: Update.
849         * gnulib/import/dirname-lgpl.c: Update.
850         * gnulib/import/dirname.h: Update.
851         * gnulib/import/dosname.h: Update.
852         * gnulib/import/dup-safer-flag.c: Update.
853         * gnulib/import/dup-safer.c: Update.
854         * gnulib/import/dup.c: Update.
855         * gnulib/import/dup2.c: Update.
856         * gnulib/import/errno.in.h: Update.
857         * gnulib/import/error.c: Update.
858         * gnulib/import/error.h: Update.
859         * gnulib/import/exitfail.c: Update.
860         * gnulib/import/exitfail.h: Update.
861         * gnulib/import/extra/update-copyright: Update.
862         * gnulib/import/fchdir.c: Update.
863         * gnulib/import/fcntl.c: Update.
864         * gnulib/import/fcntl.in.h: Update.
865         * gnulib/import/fd-hook.c: Update.
866         * gnulib/import/fd-hook.h: Update.
867         * gnulib/import/fd-safer-flag.c: Update.
868         * gnulib/import/fd-safer.c: Update.
869         * gnulib/import/fdopendir.c: Update.
870         * gnulib/import/filename.h: Update.
871         * gnulib/import/filenamecat-lgpl.c: Update.
872         * gnulib/import/filenamecat.h: Update.
873         * gnulib/import/flexmember.h: Update.
874         * gnulib/import/float+.h: Update.
875         * gnulib/import/float.c: Update.
876         * gnulib/import/float.in.h: Update.
877         * gnulib/import/fnmatch.c: Update.
878         * gnulib/import/fnmatch.in.h: Update.
879         * gnulib/import/fnmatch_loop.c: Update.
880         * gnulib/import/fpucw.h: Update.
881         * gnulib/import/frexp.c: Update.
882         * gnulib/import/frexpl.c: Update.
883         * gnulib/import/fstat.c: Update.
884         * gnulib/import/fstatat.c: Update.
885         * gnulib/import/getcwd-lgpl.c: Update.
886         * gnulib/import/getcwd.c: Update.
887         * gnulib/import/getdtablesize.c: Update.
888         * gnulib/import/getlogin_r.c: Update.
889         * gnulib/import/getprogname.c: Update.
890         * gnulib/import/getprogname.h: Update.
891         * gnulib/import/gettext.h: Update.
892         * gnulib/import/gettimeofday.c: Update.
893         * gnulib/import/glob-libc.h: Update.
894         * gnulib/import/glob.c: Update.
895         * gnulib/import/glob.in.h: Update.
896         * gnulib/import/glob_internal.h: Update.
897         * gnulib/import/glob_pattern_p.c: Update.
898         * gnulib/import/globfree.c: Update.
899         * gnulib/import/hard-locale.c: Update.
900         * gnulib/import/hard-locale.h: Update.
901         * gnulib/import/intprops.h: Update.
902         * gnulib/import/inttypes.in.h: Update.
903         * gnulib/import/isnan.c: Update.
904         * gnulib/import/isnand-nolibm.h: Update.
905         * gnulib/import/isnand.c: Update.
906         * gnulib/import/isnanl-nolibm.h: Update.
907         * gnulib/import/isnanl.c: Update.
908         * gnulib/import/itold.c: Update.
909         * gnulib/import/libc-config.h: Update.
910         * gnulib/import/limits.in.h: Update.
911         * gnulib/import/localcharset.c: Update.
912         * gnulib/import/localcharset.h: Update.
913         * gnulib/import/localtime-buffer.c: Update.
914         * gnulib/import/localtime-buffer.h: Update.
915         * gnulib/import/lstat.c: Update.
916         * gnulib/import/m4/00gnulib.m4: Update.
917         * gnulib/import/m4/__inline.m4: Update.
918         * gnulib/import/m4/absolute-header.m4: Update.
919         * gnulib/import/m4/alloca.m4: Update.
920         * gnulib/import/m4/builtin-expect.m4: Update.
921         * gnulib/import/m4/canonicalize.m4: Update.
922         * gnulib/import/m4/chdir-long.m4: Update.
923         * gnulib/import/m4/close.m4: Update.
924         * gnulib/import/m4/closedir.m4: Update.
925         * gnulib/import/m4/configmake.m4: Update.
926         * gnulib/import/m4/d-ino.m4: Update.
927         * gnulib/import/m4/d-type.m4: Update.
928         * gnulib/import/m4/dirent_h.m4: Update.
929         * gnulib/import/m4/dirfd.m4: Update.
930         * gnulib/import/m4/dirname.m4: Update.
931         * gnulib/import/m4/double-slash-root.m4: Update.
932         * gnulib/import/m4/dup.m4: Update.
933         * gnulib/import/m4/dup2.m4: Update.
934         * gnulib/import/m4/eealloc.m4: Update.
935         * gnulib/import/m4/environ.m4: Update.
936         * gnulib/import/m4/errno_h.m4: Update.
937         * gnulib/import/m4/error.m4: Update.
938         * gnulib/import/m4/exponentd.m4: Update.
939         * gnulib/import/m4/exponentl.m4: Update.
940         * gnulib/import/m4/extensions.m4: Update.
941         * gnulib/import/m4/extern-inline.m4: Update.
942         * gnulib/import/m4/fchdir.m4: Update.
943         * gnulib/import/m4/fcntl-o.m4: Update.
944         * gnulib/import/m4/fcntl.m4: Update.
945         * gnulib/import/m4/fcntl_h.m4: Update.
946         * gnulib/import/m4/fdopendir.m4: Update.
947         * gnulib/import/m4/filenamecat.m4: Update.
948         * gnulib/import/m4/flexmember.m4: Update.
949         * gnulib/import/m4/float_h.m4: Update.
950         * gnulib/import/m4/fnmatch.m4: Update.
951         * gnulib/import/m4/fnmatch_h.m4: Update.
952         * gnulib/import/m4/fpieee.m4: Update.
953         * gnulib/import/m4/frexp.m4: Update.
954         * gnulib/import/m4/frexpl.m4: Update.
955         * gnulib/import/m4/fstat.m4: Update.
956         * gnulib/import/m4/fstatat.m4: Update.
957         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
958         * gnulib/import/m4/getcwd-path-max.m4: Update.
959         * gnulib/import/m4/getcwd.m4: Update.
960         * gnulib/import/m4/getdtablesize.m4: Update.
961         * gnulib/import/m4/getlogin.m4: Update.
962         * gnulib/import/m4/getlogin_r.m4: Update.
963         * gnulib/import/m4/getpagesize.m4: Update.
964         * gnulib/import/m4/getprogname.m4: Update.
965         * gnulib/import/m4/gettimeofday.m4: Update.
966         * gnulib/import/m4/glibc21.m4: Update.
967         * gnulib/import/m4/glob.m4: Update.
968         * gnulib/import/m4/glob_h.m4: Update.
969         * gnulib/import/m4/gnulib-cache.m4: Update.
970         * gnulib/import/m4/gnulib-common.m4: Update.
971         * gnulib/import/m4/gnulib-comp.m4: Update.
972         * gnulib/import/m4/gnulib-tool.m4: Update.
973         * gnulib/import/m4/hard-locale.m4: Update.
974         * gnulib/import/m4/include_next.m4: Update.
975         * gnulib/import/m4/inttypes-pri.m4: Update.
976         * gnulib/import/m4/inttypes.m4: Update.
977         * gnulib/import/m4/isnand.m4: Update.
978         * gnulib/import/m4/isnanl.m4: Update.
979         * gnulib/import/m4/largefile.m4: Update.
980         * gnulib/import/m4/limits-h.m4: Update.
981         * gnulib/import/m4/localcharset.m4: Update.
982         * gnulib/import/m4/locale-fr.m4: Update.
983         * gnulib/import/m4/locale-ja.m4: Update.
984         * gnulib/import/m4/locale-zh.m4: Update.
985         * gnulib/import/m4/localtime-buffer.m4: Update.
986         * gnulib/import/m4/longlong.m4: Update.
987         * gnulib/import/m4/lstat.m4: Update.
988         * gnulib/import/m4/malloc.m4: Update.
989         * gnulib/import/m4/malloca.m4: Update.
990         * gnulib/import/m4/math_h.m4: Update.
991         * gnulib/import/m4/mbrtowc.m4: Update.
992         * gnulib/import/m4/mbsinit.m4: Update.
993         * gnulib/import/m4/mbsrtowcs.m4: Update.
994         * gnulib/import/m4/mbstate_t.m4: Update.
995         * gnulib/import/m4/memchr.m4: Update.
996         * gnulib/import/m4/memmem.m4: Update.
997         * gnulib/import/m4/mempcpy.m4: Update.
998         * gnulib/import/m4/memrchr.m4: Update.
999         * gnulib/import/m4/mkdir.m4: Update.
1000         * gnulib/import/m4/mkstemp.m4: Update.
1001         * gnulib/import/m4/mmap-anon.m4: Update.
1002         * gnulib/import/m4/mode_t.m4: Update.
1003         * gnulib/import/m4/msvc-inval.m4: Update.
1004         * gnulib/import/m4/msvc-nothrow.m4: Update.
1005         * gnulib/import/m4/multiarch.m4: Update.
1006         * gnulib/import/m4/nocrash.m4: Update.
1007         * gnulib/import/m4/off_t.m4: Update.
1008         * gnulib/import/m4/onceonly.m4: Update.
1009         * gnulib/import/m4/open-cloexec.m4: Update.
1010         * gnulib/import/m4/open.m4: Update.
1011         * gnulib/import/m4/openat.m4: Update.
1012         * gnulib/import/m4/opendir.m4: Update.
1013         * gnulib/import/m4/pathmax.m4: Update.
1014         * gnulib/import/m4/rawmemchr.m4: Update.
1015         * gnulib/import/m4/readdir.m4: Update.
1016         * gnulib/import/m4/readlink.m4: Update.
1017         * gnulib/import/m4/realloc.m4: Update.
1018         * gnulib/import/m4/rename.m4: Update.
1019         * gnulib/import/m4/rewinddir.m4: Update.
1020         * gnulib/import/m4/rmdir.m4: Update.
1021         * gnulib/import/m4/save-cwd.m4: Update.
1022         * gnulib/import/m4/secure_getenv.m4: Update.
1023         * gnulib/import/m4/setenv.m4: Update.
1024         * gnulib/import/m4/signal_h.m4: Update.
1025         * gnulib/import/m4/ssize_t.m4: Update.
1026         * gnulib/import/m4/stat-time.m4: Update.
1027         * gnulib/import/m4/stat.m4: Update.
1028         * gnulib/import/m4/std-gnu11.m4: Update.
1029         * gnulib/import/m4/stdbool.m4: Update.
1030         * gnulib/import/m4/stddef_h.m4: Update.
1031         * gnulib/import/m4/stdint.m4: Update.
1032         * gnulib/import/m4/stdio_h.m4: Update.
1033         * gnulib/import/m4/stdlib_h.m4: Update.
1034         * gnulib/import/m4/strchrnul.m4: Update.
1035         * gnulib/import/m4/strdup.m4: Update.
1036         * gnulib/import/m4/strerror.m4: Update.
1037         * gnulib/import/m4/string_h.m4: Update.
1038         * gnulib/import/m4/strstr.m4: Update.
1039         * gnulib/import/m4/strtok_r.m4: Update.
1040         * gnulib/import/m4/sys_socket_h.m4: Update.
1041         * gnulib/import/m4/sys_stat_h.m4: Update.
1042         * gnulib/import/m4/sys_time_h.m4: Update.
1043         * gnulib/import/m4/sys_types_h.m4: Update.
1044         * gnulib/import/m4/tempname.m4: Update.
1045         * gnulib/import/m4/time_h.m4: Update.
1046         * gnulib/import/m4/unistd-safer.m4: Update.
1047         * gnulib/import/m4/unistd_h.m4: Update.
1048         * gnulib/import/m4/warn-on-use.m4: Update.
1049         * gnulib/import/m4/wchar_h.m4: Update.
1050         * gnulib/import/m4/wchar_t.m4: Update.
1051         * gnulib/import/m4/wctype_h.m4: Update.
1052         * gnulib/import/m4/wint_t.m4: Update.
1053         * gnulib/import/malloc.c: Update.
1054         * gnulib/import/malloc/scratch_buffer.h: Update.
1055         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
1056         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
1057         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
1058         * gnulib/import/malloca.c: Update.
1059         * gnulib/import/malloca.h: Update.
1060         * gnulib/import/malloca.valgrind: Update.
1061         * gnulib/import/math.in.h: Update.
1062         * gnulib/import/mbrtowc.c: Update.
1063         * gnulib/import/mbsinit.c: Update.
1064         * gnulib/import/mbsrtowcs-impl.h: Update.
1065         * gnulib/import/mbsrtowcs-state.c: Update.
1066         * gnulib/import/mbsrtowcs.c: Update.
1067         * gnulib/import/memchr.c: Update.
1068         * gnulib/import/memmem.c: Update.
1069         * gnulib/import/mempcpy.c: Update.
1070         * gnulib/import/memrchr.c: Update.
1071         * gnulib/import/mkdir.c: Update.
1072         * gnulib/import/mkstemp.c: Update.
1073         * gnulib/import/msvc-inval.c: Update.
1074         * gnulib/import/msvc-inval.h: Update.
1075         * gnulib/import/msvc-nothrow.c: Update.
1076         * gnulib/import/msvc-nothrow.h: Update.
1077         * gnulib/import/open.c: Update.
1078         * gnulib/import/openat-die.c: Update.
1079         * gnulib/import/openat-priv.h: Update.
1080         * gnulib/import/openat-proc.c: Update.
1081         * gnulib/import/openat.c: Update.
1082         * gnulib/import/openat.h: Update.
1083         * gnulib/import/opendir.c: Update.
1084         * gnulib/import/pathmax.h: Update.
1085         * gnulib/import/pipe-safer.c: Update.
1086         * gnulib/import/rawmemchr.c: Update.
1087         * gnulib/import/readdir.c: Update.
1088         * gnulib/import/readlink.c: Update.
1089         * gnulib/import/realloc.c: Update.
1090         * gnulib/import/ref-add.sin: Update.
1091         * gnulib/import/ref-del.sin: Update.
1092         * gnulib/import/rename.c: Update.
1093         * gnulib/import/rewinddir.c: Update.
1094         * gnulib/import/rmdir.c: Update.
1095         * gnulib/import/same-inode.h: Update.
1096         * gnulib/import/save-cwd.c: Update.
1097         * gnulib/import/save-cwd.h: Update.
1098         * gnulib/import/scratch_buffer.h: Update.
1099         * gnulib/import/secure_getenv.c: Update.
1100         * gnulib/import/setenv.c: Update.
1101         * gnulib/import/signal.in.h: Update.
1102         * gnulib/import/stat-time.c: Update.
1103         * gnulib/import/stat-time.h: Update.
1104         * gnulib/import/stat-w32.c: Update.
1105         * gnulib/import/stat-w32.h: Update.
1106         * gnulib/import/stat.c: Update.
1107         * gnulib/import/stdbool.in.h: Update.
1108         * gnulib/import/stddef.in.h: Update.
1109         * gnulib/import/stdint.in.h: Update.
1110         * gnulib/import/stdio.in.h: Update.
1111         * gnulib/import/stdlib.in.h: Update.
1112         * gnulib/import/str-two-way.h: Update.
1113         * gnulib/import/strchrnul.c: Update.
1114         * gnulib/import/strdup.c: Update.
1115         * gnulib/import/streq.h: Update.
1116         * gnulib/import/strerror-override.c: Update.
1117         * gnulib/import/strerror-override.h: Update.
1118         * gnulib/import/strerror.c: Update.
1119         * gnulib/import/string.in.h: Update.
1120         * gnulib/import/stripslash.c: Update.
1121         * gnulib/import/strnlen1.c: Update.
1122         * gnulib/import/strnlen1.h: Update.
1123         * gnulib/import/strstr.c: Update.
1124         * gnulib/import/strtok_r.c: Update.
1125         * gnulib/import/sys_stat.in.h: Update.
1126         * gnulib/import/sys_time.in.h: Update.
1127         * gnulib/import/sys_types.in.h: Update.
1128         * gnulib/import/tempname.c: Update.
1129         * gnulib/import/tempname.h: Update.
1130         * gnulib/import/time.in.h: Update.
1131         * gnulib/import/unistd--.h: Update.
1132         * gnulib/import/unistd-safer.h: Update.
1133         * gnulib/import/unistd.in.h: Update.
1134         * gnulib/import/unsetenv.c: Update.
1135         * gnulib/import/verify.h: Update.
1136         * gnulib/import/extra/snippet/warn-on-use.h: Update.
1137         * gnulib/import/wchar.in.h: Update.
1138         * gnulib/import/wctype.in.h: Update.
1139         * gnulib/import/xalloc-oversized.h: Update.
1140         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
1141         "53e2c179f26a890fa6685af4b6c1397ee370433b".
1142
1143 2018-08-16  Gary Benson <gbenson@redhat.com>
1144
1145         PR gdb/13000:
1146         * gdb/main.c (captured_main_1): Exit with nonzero status
1147         in batch mode if the last command to be executed failed.
1148         * NEWS: Mention the above.
1149
1150 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
1151
1152         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
1153         end of warning message.
1154
1155 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
1156
1157         PR gdb/22943:
1158         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
1159         (aarch64_extract_return_value): Use
1160         aapcs_is_vfp_call_or_return_candidate.
1161         (aarch64_return_in_memory): Likewise.
1162         (aarch64_store_return_value): Likewise.
1163
1164 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
1165
1166         * aarch64-tdep.c
1167         (aapcs_is_vfp_call_or_return_candidate): Make static
1168         (pass_in_v_or_stack): Remove function.
1169         (pass_in_v_vfp_candidate): New function.
1170         (aarch64_push_dummy_call): Check for float register candidates.
1171
1172 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
1173
1174         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
1175         (aapcs_is_vfp_call_or_return_candidate_1): New function.
1176         (aapcs_is_vfp_call_or_return_candidate): Likewise.
1177
1178 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
1179
1180         PR build/23399
1181         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
1182         (struct ipa_sym_addresses): Rename to...
1183         (struct ipa_sym_addresses_common): ... this.
1184         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
1185
1186 2018-08-28  Tom Tromey  <tom@tromey.com>
1187
1188         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
1189         (token_fifo): Now a std::vector.
1190         (yylex, c_parse): Update.
1191         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
1192         (token_fifo): Now a std::vector.
1193         (yylex, d_parse): Update.
1194         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
1195         (token_fifo): Now a std::vector.
1196         (yylex, go_parse): Update.
1197
1198 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
1199
1200         * parser-defs.h (struct type_stack) <elements>: Change type to
1201         std::vector<union type_stack_elt>.
1202         <depth, size>: Remove.
1203         * parse.c (parse_exp_in_context_1): Adjust.
1204         (type_stack_reserve): Remove.
1205         (check_type_stack_depth): Remove.
1206         (insert_into_type_stack): Adjust to std::vector.
1207         (insert_type): Likewise.
1208         (push_type): Likewise.
1209         (push_type_int): Likewise.
1210         (insert_type_address_space): Likewise.
1211         (pop_type): Likewise.
1212         (pop_type_int): Likewise.
1213         (pop_typelist): Likewise.
1214         (pop_type_stack): Likewise.
1215         (append_type_stack): Likewise.
1216         (push_type_stack): Likewise.
1217         (get_type_stack): Likewise.
1218         (type_stack_cleanup): Likewise.
1219         (push_typelist): Likewise.
1220         (follow_types): Likewise.
1221         (_initialize_parse): Likewise.
1222
1223 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1224
1225         * NEWS: Mention csky target.
1226
1227 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
1228             Hafiz Abid Qadeer  <abidh@codesourcery.com>
1229             Don Breazeal  <donb@codesourcery.com>
1230
1231         * csky-linux-tdep.c: New file.
1232         * csky-tdep.c: Likewise.
1233         * csky-tdep.h: Likewise.
1234         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
1235         csky-tdep.o.
1236         (HFILES_NO_SRCDIR): Add csky-tdep.h.
1237         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
1238         * configure.tgt: Add csky support.
1239
1240 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
1241
1242         * python/py-framefilter.c (py_print_frame): Print frame architecture
1243         when printing on an MI output.
1244
1245 2018-08-27  Tom Tromey  <tom@tromey.com>
1246
1247         PR build/23087:
1248         * configure: Rebuild.
1249         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
1250
1251 2018-08-27  Tom Tromey  <tom@tromey.com>
1252
1253         * aarch64-linux-tdep.c
1254         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
1255         casts to int.
1256
1257 2018-08-27  Tom Tromey  <tom@tromey.com>
1258
1259         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
1260         unsigned.
1261         (ppc64_standard_linkage1, ppc64_standard_linkage2)
1262         (ppc64_standard_linkage3, ppc64_standard_linkage4)
1263         (ppc64_standard_linkage5, ppc64_standard_linkage6)
1264         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
1265         unsigned.
1266
1267 2018-08-27  Tom Tromey  <tom@tromey.com>
1268
1269         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
1270         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
1271
1272 2018-08-27  Tom Tromey  <tom@tromey.com>
1273
1274         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
1275         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
1276         ULONGEST_MAX.
1277         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
1278         ULONGEST_MAX.
1279         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
1280         ULONGEST_MAX.
1281         * sparc-linux-tdep.c (sparc32_linux_sigframe)
1282         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
1283         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
1284         ULONGEST_MAX.
1285         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
1286         (ppc64_linux_sigaction_tramp_frame)
1287         (ppc32_linux_sighandler_tramp_frame)
1288         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
1289         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
1290         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
1291         * mn10300-linux-tdep.c (am33_linux_sigframe)
1292         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
1293         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
1294         * mips-linux-tdep.c (mips_linux_o32_sigframe)
1295         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
1296         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
1297         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
1298         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
1299         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
1300         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
1301         * microblaze-linux-tdep.c
1302         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
1303         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
1304         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
1305         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
1306         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
1307         * common/common-types.h (ULONGEST_MAX): New define.
1308         (CORE_ADDR_MAX): Fix formatting.
1309         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
1310         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
1311         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
1312         (arm_linux_rt_sigreturn_tramp_frame)
1313         (arm_eabi_linux_sigreturn_tramp_frame)
1314         (arm_eabi_linux_rt_sigreturn_tramp_frame)
1315         (thumb2_eabi_linux_sigreturn_tramp_frame)
1316         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
1317         (arm_linux_restart_syscall_tramp_frame)
1318         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
1319         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
1320         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
1321         ULONGEST_MAX.
1322         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
1323
1324 2018-08-27  Tom Tromey  <tom@tromey.com>
1325
1326         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
1327         CORE_ADDR_MAX.
1328         * mips-tdep.c (mips_deal_with_atomic_sequence)
1329         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
1330         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
1331         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
1332         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
1333         CORE_ADDR_MAX.
1334         * aarch64-tdep.c (aarch64_software_single_step): Use
1335         CORE_ADDR_MAX.
1336
1337 2018-08-27  Tom Tromey  <tom@tromey.com>
1338
1339         * linespec.c (complete_linespec_component): Add cast to "char".
1340         * completer.c (completion_tracker::build_completion_result): Add
1341         cast to "char".
1342
1343 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
1344
1345         * solist.h (struct solist, struct target_so_ops): Fix
1346         indentation.
1347
1348 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
1349
1350         * ada-tasks.c (ada_task_info_s): Remove typedef.
1351         (DEF_VEC_O(ada_task_info_s)): Remove.
1352         (struct ada_tasks_inferior_data): Initialize fields.
1353         <task_list>: Make an std::vector.
1354         (get_ada_tasks_inferior_data): Allocate with new.
1355         (ada_get_task_number): Adjust.
1356         (get_task_number_from_id): Likewise.
1357         (valid_task_id): Likewise.
1358         (ada_get_task_info_from_ptid): Likewise.
1359         (iterate_over_live_ada_tasks): Likewise.
1360         (add_ada_task): Likewise.
1361         (read_known_tasks): Likewise.
1362         (ada_build_task_list): Likewise.
1363         (print_ada_task_info): Likewise.
1364         (info_task): Likewise.
1365         (task_command_1): Likewise.
1366
1367 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
1368
1369         * ada-lang.c (add_angle_brackets): Return std::string.
1370
1371 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
1372
1373         * python/py-threadevent.c (py_get_event_thread): Initialize
1374         pythread.
1375
1376 2018-08-24  Pedro Alves  <palves@redhat.com>
1377
1378         * python/py-bpevent.c (create_breakpoint_event_object): Use
1379         copy-initialization.
1380         * python/py-continueevent.c (emit_continue_event): Use
1381         copy-initialization.
1382         * python/py-exitedevent.c (create_exited_event_object): Return a
1383         gdbpy_ref<>.
1384         (emit_exited_event): Use copy-initialization.
1385         * python/py-inferior.c (python_new_inferior)
1386         (python_inferior_deleted, add_thread_object): Use
1387         copy-initialization.
1388         * python/py-infevents.c (create_inferior_call_event_object)
1389         (create_register_changed_event_object)
1390         (create_memory_changed_event_object): Return a gdbpy_ref<>.
1391         (emit_inferior_call_event, emit_memory_changed_event)
1392         (emit_register_changed_event): Use copy-initialization.
1393         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1394         Return a gdbpy_ref<>.
1395         (emit_new_objfile_event): Use copy-initialization.
1396         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
1397         (emit_clear_objfiles_event): Use copy-initialization.
1398         * python/py-signalevent.c (create_signal_event_object): Use
1399         copy-initialization.
1400         * python/py-threadevent.c (create_thread_event_object): Use
1401         copy-initialization.
1402
1403 2018-08-24  Pedro Alves  <palves@redhat.com>
1404             Simon Marchi  <simon.marchi@ericsson.com>
1405
1406         PR gdb/23379
1407         * python/py-continueevent.c: Include "gdbthread.h".
1408         (create_continue_event_object): Add intro comment.  Add 'ptid'
1409         parameter.  Use it to find thread to pass to
1410         create_thread_event_object.
1411         (emit_continue_event): Pass PTID down to
1412         create_continue_event_object.
1413         * python/py-event.h (py_get_event_thread): Declare.
1414         (create_thread_event_object): Remove default from 'thread'
1415         parameter.
1416         * python/py-stopevent.c (create_stop_event_object): Use
1417         py_get_event_thread.
1418         * python/py-threadevent.c (get_event_thread): Rename to ...
1419         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
1420         and use it to find the thread.
1421         (create_thread_event_object): Assert that THREAD isn't null.
1422         Don't find the event thread here.
1423
1424 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
1425
1426         * block.h (blockrange, blockranges): New struct declarations.
1427         (struct block): Add new field named `ranges'.
1428         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
1429         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
1430         macros for accessing ranges in struct block.
1431         (make_blockranges): New declaration.
1432         block.c (make_blockranges): New function.
1433         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
1434         for block.
1435         * symtab.h (find_pc_partial_function): Add new parameter `block'.
1436         * blockframe.c (cache_pc_function_block): New static global.
1437         (clear_pc_function_cache): Clear cache_pc_function_block.
1438         (find_pc_partial_function): Move comment to symtab.h.  Add
1439         support for non-contiguous blocks.
1440         * cli/cli-cmds.c (block.h): Include.
1441         (print_disassembly): Handle printing of non-contiguous blocks.
1442         (disassemble_current_function): Likewise.
1443         (disassemble_command): Likewise.
1444
1445         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
1446         BLOCK_START.
1447         * blockframe.c (get_pc_function_start): Likewise.
1448         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
1449         (gcc_symbol_address): Likewise.
1450         * compile/compile-object-run.c (compile_object_run): Likewise.
1451         * compile/compile.c (get_expr_block_and_pc): Likewise.
1452         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
1453         (func_addr_to_tail_call_list): Likewise.
1454         * findvar.c (default_read_var_value): Likewise.
1455         * inline-frame.c (inline_frame_this_id): Likewise.
1456         (skip-inline_frames): Likewise.
1457         * infcmd.c (until_next_command): Likewise.
1458         * linespec.c (convert_linespec_to_sals): Likewise.
1459         * parse.c (parse_exp_in_context_1): Likewise.
1460         * printcmd.c (build_address_symbolic): likewise.
1461         (info_address_command): Likewise.
1462         symtab.c (find_function_start_sal): Likewise.
1463         (skip_prologue_sal): Likewise.
1464         (find_function_alias_target): Likewise.
1465         (find_gnu_ifunc): Likewise.
1466         * stack.c (find_frame_funname): Likewise.
1467         * symtab.c (fixup_symbol_section): Likewise.
1468         (find_function_start_sal): Likewise.
1469         (skip_prologue_sal): Likewsie.
1470         (find_function_alias_target): Likewise.
1471         (find_gnu_ifunc): Likewise.
1472         * tracepoint.c (info_scope_command): Likewise.
1473         * value.c (value_fn_field): Likewise.
1474
1475         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
1476         in place of find_pc_partial_function.
1477         * blockframe.c (find_function_entry_range_from_pc): New function.
1478         * symtab.h (find_function_entry_range_from_pc): Declare and document.
1479         * objfiles.c (objfile_relocate1): Relocate start and end addresses
1480         for each range in a block.
1481
1482
1483 2018-08-23  Xavier Roirand  <roirand@adacore.com>
1484
1485         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
1486         incrementation.
1487
1488 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1489
1490         * solib-svr4.c (read_program_headers_from_bfd): Return
1491         gdb::optional<gdb::byte_vector>.
1492         (svr4_exec_displacement): Adjust.
1493
1494 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1495
1496         * solib-svr4.c (read_program_header): Return
1497         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
1498         (find_program_interpreter): Return
1499         gdb::optional<gdb::byte_vector>.
1500         (scan_dyntag_auxv): Adjust.
1501         (enable_break): Adjust.
1502         (svr4_exec_displacement): Adjust.
1503
1504 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1505
1506         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
1507         * inf-child.c (inf_child_target::terminal_save_inferior): New.
1508
1509 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
1510
1511         * guile/scm-string.c (gdbscm_scm_from_printf): Use
1512         string_vprintf.
1513         * guile/scm-utils.c (gdbscm_printf): Likewise.
1514         * serial.c (serial_printf): Likewise.
1515         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
1516
1517 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
1518
1519         * stack.c (print_frame): Print frame architecture when printing on
1520         an MI output.
1521         * NEWS: Mention new "arch" attribute in frame output.
1522
1523 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
1524
1525         * arch/aarch64.h (aarch64_regnum): Update comment.
1526
1527 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
1528
1529         * NEWS: Add SVE to 8.2 section.
1530
1531 2018-08-21  Pedro Alves  <palves@redhat.com>
1532
1533         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
1534         out from gdbscm_parse_function_args.
1535         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
1536         gdbscm_parse_function_args_1.
1537
1538 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
1539
1540         PR gdb/17816
1541         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
1542         operator.
1543
1544 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
1545
1546         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
1547
1548 2018-08-19  Michael Spang  <spang@google.com>
1549
1550         PR gdb/11786
1551         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
1552         for PT_TLS segments.
1553
1554 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
1555
1556         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
1557         dwarf_variable_value.
1558         * dwarf2-frame.c (class dwarf_expr_executor):
1559         Add override for dwarf_variable_value.
1560         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
1561         (class symbol_needs_eval_context): Likewise.
1562         (indirect_synthetic_pointer): Add forward declaration.
1563         (sect_variable_value): New function.
1564         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
1565         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
1566         for DW_OP_GNU_variable_value.
1567
1568 2018-08-16  Tom Tromey  <tom@tromey.com>
1569
1570         * top.c (read_command_file): Update.
1571         (command_line_input): Remove "repeat" argument.
1572         * ada-lang.c (get_selections): Update.
1573         * linespec.c (decode_line_2): Update.
1574         * defs.h (command_line_input): Remove argument.
1575         * cli/cli-script.c (read_next_line): Update.
1576         * python/py-gdb-readline.c: Update.
1577
1578 2018-08-17  Tom Tromey  <tom@tromey.com>
1579
1580         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
1581         command_line_input.
1582
1583 2018-08-15  Tom Tromey  <tom@tromey.com>
1584
1585         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
1586
1587 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
1588
1589         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
1590         If used, use find_pc_partial_function to find address range
1591         to disassemble.
1592         * mi/mi-main.c (mi_cmd_list_features): Report
1593         "data-disassemble-a-option" feature.
1594         * NEWS: Mention new -data-disassemble option -a.
1595
1596 2018-08-13  Tom Tromey  <tom@tromey.com>
1597
1598         * common/common-defs.h (_FORTIFY_SOURCE): Define.
1599
1600 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1601
1602         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
1603         (aarch64_linux_collect_sve_regset): Likewise.
1604         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
1605         * regcache.h (regcache_map_entry_size): New function.
1606
1607 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1608
1609         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
1610         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
1611         (SVE_HEADER_VL_LENGTH): Likewise.
1612         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
1613         (SVE_HEADER_FLAGS_LENGTH): Likewise.
1614         (SVE_HEADER_RESERVED_LENGTH): Likewise.
1615         (SVE_HEADER_SIZE_OFFSET): Likewise.
1616         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
1617         (SVE_HEADER_VL_OFFSET): Likewise.
1618         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
1619         (SVE_HEADER_FLAGS_OFFSET): Likewise.
1620         (SVE_HEADER_RESERVED_OFFSET): Likewise.
1621         (SVE_HEADER_SIZE): Likewise.
1622         (aarch64_linux_core_read_vq): Add function.
1623         (aarch64_linux_core_read_description): Check for SVE section.
1624
1625 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
1626
1627         * aarch64-fbsd-tdep.c
1628         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
1629         collect_size.
1630         * aarch64-linux-tdep.c
1631         (aarch64_linux_iterate_over_regset_sections): Likewise.
1632         * alpha-linux-tdep.c
1633         (alpha_linux_iterate_over_regset_sections):
1634         * alpha-nbsd-tdep.c
1635         (alphanbsd_iterate_over_regset_sections): Likewise.
1636         * amd64-fbsd-tdep.c
1637         (amd64fbsd_iterate_over_regset_sections): Likewise.
1638         * amd64-linux-tdep.c
1639         (amd64_linux_iterate_over_regset_sections): Likewise.
1640         * arm-bsd-tdep.c
1641         (armbsd_iterate_over_regset_sections): Likewise.
1642         * arm-fbsd-tdep.c
1643         (arm_fbsd_iterate_over_regset_sections): Likewise.
1644         * arm-linux-tdep.c
1645         (arm_linux_iterate_over_regset_sections): Likewise.
1646         * corelow.c (get_core_registers_cb): Likewise.
1647         (core_target::fetch_registers): Likewise.
1648         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
1649         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
1650         * gdbarch.h (void): Regenerate.
1651         * gdbarch.sh: Add supply_size and collect_size.
1652         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
1653         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
1654         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
1655         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
1656         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
1657         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
1658         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
1659         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
1660         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
1661         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
1662         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
1663         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
1664         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
1665         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
1666         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
1667         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
1668         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
1669         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
1670         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
1671         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
1672         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
1673         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
1674         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
1675         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
1676         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
1677         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
1678         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
1679         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
1680         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
1681         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
1682
1683 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
1684
1685         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
1686         with string_printf.
1687
1688 2018-08-10  Keith Seitz  <keiths@redhat.com>
1689
1690         * compile/compile-c-support.c (add_code_header, add_code_footer):
1691         Move into policy class.
1692         (c_push_user_expression, pop_user_expression_nop)
1693         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
1694         (compile_program): New host class.
1695         (c_compile_program): New typedef.
1696         (c_compute_porgram): Use c_compile_program.
1697
1698 2018-08-10  Keith Seitz  <keiths@redhat.com>
1699
1700         * compile/compile-internal.h (compile_instance::~compile_instance):
1701         Remove calls to htab_delete.
1702         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
1703         * compile.c (compile_instance::compile_instance): Initialize
1704         htab unique pointers.
1705         (compile_instance::get_cached_type, compile_instance::insert_type)
1706         (compile_instance::error_symbol_once): Update for unique_ptr.
1707
1708 2018-08-10  Keith Seitz  <keiths@redhat.com>
1709
1710         * compile/compile-c-symbols.c (struct symbol_error)
1711         (hash_symbol_error, eq_symbol_error, del_symbol_error)
1712         (compile_instance::insert_symbol_error)
1713         (compile_instance::error_symbol_once): Move to ...
1714         * compile/compile.c: ... here.
1715
1716 2018-08-10  Keith Seitz  <keiths@redhat.com>
1717
1718         * compile/compile-c-support.c (c_get_compile_context): Use `new'
1719         instead of `new_compile_instance'.
1720         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
1721         Update description.
1722         If the symbol error map is not initialized, create it.
1723         (generate_c_for_for_one_symbol): Do not check/initialize
1724         the symbol error map.
1725         * compile/compile-c-types.c (compile_c_instance): Make a class.
1726         Update all callers.
1727         (compile_instance::compile_instance): Initialize the type cache.
1728         (get_cached_type): New function.
1729         (insert_type): Update description.
1730         (compile_c_instance::m_default_cflags): Define.
1731         (convert_type): Update description.  Use get_cached_type.
1732         (delete_instance): Moved to destructor.
1733         (new_compile_instance): Moved to constructor.
1734         * compile/compile-c.h (compile_c_instance): Make class inheriting
1735         from compile_instance.
1736         <base>: Remove field.
1737         <type_map, symbol_err_map>: Move to base class.
1738         <c_plugin>: Rename to `m_plugin' and remove pointer type.
1739         * compile/compile-internal.h (compile_instance): Make class.
1740         <type_map_t, symbol_err_map_t>: Define.
1741         <fe>: Rename to `m_gcc_fe'.
1742         <scope, block, gcc_target_options>: Add `m_' prefix.
1743         <m_type_map, m_symbol_err_map>: New fields, moved from
1744         compile_c_instance.
1745         <destroy>: Remove.
1746         (convert_type, new_compile_instance): Remove.
1747         * compile/compile.c (cleanup_compile_instance): Remove.
1748         (compile_to_object): Use unique_ptr to eliminate cleanups.
1749         (compile_instance::set_print_callback, compile_instance::version)
1750         (compile_instance::set_verbose)
1751         (compile_instance::set_driver_filename)
1752         (compile_instance::set_triplet_regexp)
1753         (compile_instance::set_arguments)
1754         (compile_instance::set_source_file)
1755         (compile_instance::compile): Define.
1756
1757 2018-08-10  Keith Seitz  <keiths@redhat.com>
1758
1759         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
1760         * compile/compile-c-types.c: Define GCC_METHODN macros and include
1761         gcc-c-fe.def to define C plugin.
1762         (delete_instance): Delete `c_plugin'.
1763         (new_compile_instance): Initialize `c_plugin'.
1764         * compile/compile-c.h: Include gcc_c_plugin.h.
1765         (struct compile_c_instance) <c_plugin>: New member.
1766         * gcc-c-plugin.h: New file.
1767         Update all callers with API change.
1768
1769 2018-08-10  Keith Seitz  <keiths@redhat.com>
1770
1771         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
1772         (HFILES_NO_SRCDIR): ... to here.
1773         Add compile-internal.h and compile-c.h.
1774         * compile/compile-c-support.c: Include compile-c.h.
1775         * compile/compile-c-symbols.c: Include compile-c.h.
1776         (generate_c_for_variable_locations): Update comment.
1777         * compile/compile-c-types.c: Include compile-c.h.
1778         * compile/compile-c.h: New file -- moved C language declarations
1779         from other files here.
1780         * compile/compile-internal.h: Do not include hashtab.h or
1781         common/enum-flags.h.
1782         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
1783         (gcc_convert_symbol, gcc_symbol_address)
1784         (generate_c_for_variable_locations, c_get_mode_for_size)
1785         (c_get_range_decl_name): Definitions moved to compile-c.h.
1786         * compile/compile-loc2c.c: Include compile-c.h.
1787
1788 2018-08-10  Keith Seitz  <keiths@redhat.com>
1789
1790         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
1791         (c_symbol_substitution_name): ... this.
1792         Update all callers.
1793
1794 2018-08-10  Keith Seitz  <keiths@redhat.com>
1795
1796         * compile/compile-c-support.c (c_compute_program): Use
1797         unique_xmalloc_ptr to eliminate cleanup.
1798         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
1799         Return a unique_xmalloc_ptr and eliminate cleanup.
1800         * compile/compile-internal.h (generate_c_for_variable_locations):
1801         Return unique_xmalloc_ptr and update description.
1802
1803 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
1804
1805         * corelow.c (core_target::get_core_register_section): Rename
1806         min_size to section_min_size.
1807
1808 2018-08-09  Jim Wilson  <jimw@sifive.com>
1809
1810         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
1811         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
1812         * NEWS: Mention new GNU/Linux RISC-V target.
1813         * configure.host: Add riscv*-*-linux*.
1814         * configure.nat: Add riscv*.
1815         * configure.tgt: Add riscv*-*-linux*.
1816         * riscv-linux-nat.c: New file.
1817         * riscv-linux-tdep.c: New file.
1818
1819 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
1820
1821         * infrun.c (resume): Make static, add forward declaration.
1822         (proceed): Update header comment.
1823         * infrun.h (resume): Delete declaration.
1824
1825 2018-08-09  Tom Tromey  <tom@tromey.com>
1826
1827         * riscv-tdep.h: Minor formatting fixes.
1828
1829 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
1830
1831         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
1832         * dwarf-index-cache.c (create_dir_and_check): Likewise.
1833         (test_mkdir_recursive): Likewise.
1834         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
1835
1836 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
1837
1838         * valarith.c (value_subscripted_rvalue): If an array is not in
1839         memory, and we don't know the upper bound, then we can't know that
1840         the requested element exists or not.
1841
1842 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
1843
1844         * target.c (str_comma_list_concat_elem): Fix typo in comment.
1845         (target_options_to_string): Add comment.
1846
1847 2018-08-08  Tom Tromey  <tom@tromey.com>
1848
1849         * unittests/scoped_mmap-selftests.c: Check result of "write".
1850
1851 2018-08-08  Jim Wilson  <jimw@sifive.com>
1852
1853         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
1854         (decode_register_index_short): New.
1855         (decode_j_type_insn, decode_cj_type_insn): New.
1856         (decode_b_type_insn, decode_cb_type_insn): New.
1857         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
1858         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
1859         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
1860         is_c_sw_insn instead of is_sw_insn.
1861         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
1862         (riscv_software_single_step): New.
1863         * riscv-tdep.h (riscv_software_single_step): Declare.
1864
1865         * riscv-tdep.c (riscv_isa_xlen): Drop static.
1866         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
1867
1868 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
1869
1870         PR gdb/18050:
1871         * target.c (dispose_inferior): Don't dispose of inferiors that are
1872         already killed.
1873
1874 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
1875
1876         * remote.c (remote_target::download_tracepoint): Change char* to
1877         const char*.
1878
1879 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
1880
1881         * target.h (target_options_to_string): Return an std::string.
1882         * target.c (str_comma_list_concat_elem): Return void, use
1883         std::string.
1884         (do_option): Likewise.
1885         (target_options_to_string): Return an std::string.
1886         * linux-nat.c (linux_nat_target::wait): Adjust.
1887         * target-debug.h (target_debug_print_options): Adjust.
1888
1889 2018-08-07  Tom Tromey  <tom@tromey.com>
1890
1891         * Makefile.in (CPPFLAGS): New variable.
1892         (INTERNAL_CPPFLAGS): Use it.
1893
1894 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1895
1896         * NEWS: Mention the index cache.
1897
1898 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1899
1900         * common/pathstuff.h (get_standard_cache_dir): New.
1901         * common/pathstuff.c (get_standard_cache_dir): New.
1902         * build-id.h (build_id_to_string): New.
1903         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
1904         DEBUG_STR_SUFFIX): Move to here.
1905         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
1906         DEBUG_STR_SUFFIX): Move from there.
1907         (write_psymtabs_to_index): Make non-static, add basename
1908         parameter.  Write to temporary files, rename when done.
1909         (save_gdb_index_command): Adjust call to
1910         write_psymtabs_to_index.
1911         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
1912         field.
1913         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
1914         (get_gdb_index_contents_from_cache): New.
1915         (get_gdb_index_contents_from_cache_dwz): New.
1916         (dwarf2_initialize_objfile): Read index from cache.
1917         (dwarf2_build_psymtabs): Save to index.
1918         * dwarf-index-cache.h: New file.
1919         * dwarf-index-cache.c: New file.
1920         * dwarf-index-write.h: New file.
1921
1922 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1923
1924         * gnulib/aclocal.m4: Re-generate.
1925         * gnulib/config.in: Re-generate.
1926         * gnulib/configure: Re-generate.
1927         * gnulib/import/Makefile.am: Re-generate.
1928         * gnulib/import/Makefile.in: Re-generate.
1929         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1930         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1931         * gnulib/import/m4/mkdir.m4: New file.
1932         * gnulib/import/mkdir.c: New file.
1933         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
1934         module.
1935
1936 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1937
1938         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
1939         * common/scoped_mmap.c: New file.
1940         * common/scoped_mmap.h (destroy): New method.
1941         (~scoped_mmap, reset): Use destroy.
1942         (scoped_mmap): New move constructor.
1943         (mmap_file): New declaration.
1944         * unittests/scoped_mmap-selftests.c (test_normal,
1945         test_invalid_filename, run_tests): New functions.
1946         (_initialize_scoped_mmap_selftests): Register selftest.
1947
1948 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1949
1950         * dwarf2read.c (read_gdb_index_from_section): Rename to...
1951         (read_gdb_index_from_buffer): ... this.  Remove section
1952         parameter, add buffer parameter.
1953         (get_gdb_index_contents_ftype,
1954         get_gdb_index_contents_dwz_ftype): New typedefs.
1955         (dwarf2_read_gdb_index): Add callback parameters to get the
1956         index contents.
1957         (get_gdb_index_contents_from_section): New.
1958         (dwarf2_initialize_objfile): Update call to
1959         dwarf2_read_gdb_index.
1960
1961 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
1962
1963         * common/filestuff.h (gdb_fopen_cloexec): New overload.
1964         (gdb_open_cloexec): Likewise.
1965         * nat/linux-osdata.c (command_from_pid): Use string_printf.
1966         (commandline_from_pid): Likewise.
1967         (linux_xfer_osdata_threads): Likewise.
1968         (linux_xfer_osdata_fds): Likewise.
1969         * ada-lang.c (is_package_name): Likewise.
1970         * auxv.c (procfs_xfer_auxv): Likewise.
1971         * breakpoint.c (print_one_breakpoint_location): Use
1972         uiout::field_fmt.
1973         (print_one_catch_solib): Use string_printf.
1974         * coff-pe-read.c (add_pe_exported_sym): Likewise.
1975         (add_pe_forwarded_sym): Likewise.
1976         * dwarf2read.c (create_type_unit_group): Likewise.
1977         (build_error_marker_type): Likewise.
1978         * infcall.c (get_function_name): Likewise.
1979         * valprint.c (print_converted_chars_to_obstack): Likewise.
1980         * xtensa-tdep.c (xtensa_register_type): Likewise.
1981
1982 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
1983
1984         * remote.c (remote_target::download_tracepoint): Fix format
1985         string errors.
1986
1987 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1988
1989         * tracefile.c: Include common/byte-vector.h.
1990         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
1991         with trace_regblock_size if needed.  Update uses of buf.
1992
1993 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1994
1995         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
1996         std::vector<unsigned char>.
1997         * tracepoint.c (collection_list::collection_list): Remove
1998         m_regs_mask initializer from initializer list.  Resize
1999         m_regs_mask using the largest remote register number.
2000         (collection_list::add_remote_register): Remove size check on
2001         m_regs_mask.  Use at to access element.
2002         (collection_list::stringify): Change type of temp_buf to
2003         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
2004         stringify the register mask.  Use pack_hex_byte for the register
2005         mask.
2006
2007 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2008
2009         * tracepoint.h (class collection_list) <add_register>: Remove.
2010         <add_remote_register, add_ax_registers, add_local_register>:
2011         Declare.
2012         <add_memrange>: Add scope parameter.
2013         * tracepoint.c (encode_actions_1): Likewise.
2014         (collection_list::add_register): Rename to ...
2015         (collection_list::add_remote_register): ... this.  Update
2016         comment.
2017         (collection_list::add_ax_registers, add_local_register): New
2018         methods.
2019         (collection_list::add_memrange): Add scope parameter.  Call
2020         add_local_register instead of add_register.
2021         (finalize_tracepoint_aexpr): New function.
2022         (collection_list::collect_symbol): Update calls to add_memrange.
2023         Call add_local_register instead of add_register.  Call
2024         add_ax_registers.  Call finalize_tracepoint_aexpr.
2025         (encode_actions_1): Get remote regnos for $reg action.  Call
2026         add_remote_register, add_ax_registers, and add_local_register.
2027         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
2028         (validate_actionline): Call finalize_tracepoint_aexpr.
2029
2030 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2031
2032         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
2033         Replace array buf with gdb::char_vector buf, of size
2034         get_remote_packet_size ().  Replace references to buf and
2035         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
2036         and xsnprintf with snprintf.  Raise errors if the buffer is too
2037         small.
2038
2039 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2040
2041         * remote.c (remote_target::download_tracepoint): Fix the has_more
2042         predicate in the QTDP action list iteration.
2043
2044 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2045
2046         * remote.c (remote_target::download_tracepoint): Fix indentation
2047         in for block.
2048
2049 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2050
2051         * proc-api.c (_initialize_proc_api): Remove c, unused.
2052         * procfs.c (procfs_init_inferior): Remove signals, unused.
2053         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
2054         unused.
2055
2056 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
2057             Andrew Burgess  <andrew.burgess@embecosm.com>
2058
2059         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
2060         'W_STOPCODE (0)' as this could be ambiguous.
2061
2062 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
2063
2064         * ser-tcp.c (net_open): Fix thinko when deciding whether to
2065         disable TCP's Nagle algorithm (use "ai_protocol" instead of
2066         "ai_socktype").
2067
2068 2018-08-02  Tom Tromey  <tom@tromey.com>
2069
2070         PR symtab/16842.
2071         * dwarf2read.c (read_func_scope): Set symtab on template parameter
2072         symbols.
2073         (process_structure_scope): Likewise.
2074
2075 2018-08-02  Xavier Roirand  <roirand@adacore.com>
2076
2077         PR gdb/22629:
2078         * darwin-nat.c (darwin_kill_inferior): Fix handling of
2079         kill inferior.
2080
2081 2018-08-02  Tom Tromey  <tom@tromey.com>
2082
2083         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
2084         (darwin_suspend_inferior, darwin_resume_inferior)
2085         (darwin_decode_notify_message, darwin_resume_inferior_threads)
2086         (darwin_check_new_threads): Check result of get_darwin_inferior.
2087
2088 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
2089
2090         GDB 8.1.1 released.
2091
2092 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
2093
2094         * varobj.c (varobj_get_path_expr_parent): Report an error if
2095         parent is a dynamic varobj.
2096
2097 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
2098
2099         * gnulib/aclocal.m4: Re-generate.
2100         * gnulib/config.in: Re-generate.
2101         * gnulib/configure: Re-generate.
2102         * gnulib/import/Makefile.in: Re-generate.
2103         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2104         * gnulib/import/m4/onceonly.m4: Re-generate.
2105
2106 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
2107
2108         * target-descriptions.c (struct xml_test_tdesc): New.
2109         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
2110         (record_xml_tdesc): Update.
2111         (maintenance_check_xml_descriptions): Update.
2112         * target-descriptions.h (record_xml_tdesc): Update comment.
2113
2114 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2115
2116         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
2117         checking array bounds are defined.
2118
2119 2018-07-30  Tom Tromey  <tom@tromey.com>
2120
2121         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
2122         irreflexivity violation.
2123
2124 2018-07-30  Tom Tromey  <tom@tromey.com>
2125
2126         * cli/cli-decode.c (lookup_cmd): Remove lint code.
2127         * value.c (unpack_long): Remove lint code.
2128         * valops.c (value_ind): Remove lint code.
2129         * valarith.c (value_x_binop, value_x_unop, value_equal)
2130         (value_pos): Remove lint code.
2131
2132 2018-07-28  Tom de Vries  <tdevries@suse.de>
2133
2134         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
2135         with undefined upper bound as <optimized out>.
2136
2137 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
2138
2139         * gcore.in: Rename variable "name" to "prefix".  Expand
2140         "usage" text.
2141
2142 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
2143
2144         * windows-nat.c (windows_nat_target::create_inferior): Update to
2145         call close() in global namespace.
2146
2147 2018-07-26  Tom Tromey  <tom@tromey.com>
2148
2149         * dwarf-index-write.c (add_address_entry): Don't add objfile
2150         offsets.
2151         * dbxread.c (find_stab_function): Rename from
2152         find_stab_function_addr.  Return a bound_minimal_symbol.
2153         (read_dbx_symtab): Use raw_text_low, raw_text_high.
2154         Don't add objfile offsets.
2155         (end_psymtab): Use raw_text_low, raw_text_high,
2156         MSYMBOL_VALUE_RAW_ADDRESS.
2157         (read_ofile_symtab): Update.
2158         (process_one_symbol): Update.
2159         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
2160         offsets.
2161         (dw2_relocate): Remove.
2162         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
2163         searching addrmap.
2164         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
2165         Update.
2166         (process_psymtab_comp_unit_reader, add_partial_symbol)
2167         (add_partial_subprogram, dwarf2_ranges_read): Update.
2168         (load_partial_dies): Update.
2169         (add_address_entry): Don't add objfile offsets.
2170         (dwarf2_build_include_psymtabs): Update.
2171         (create_addrmap_from_aranges): Don't add objfile offsets.
2172         (dw2_find_pc_sect_compunit_symtab): Update.
2173         * mdebugread.c (parse_symbol): Don't add objfile offsets.
2174         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
2175         Update.
2176         (parse_partial_symbols): Don't add objfile offsets.  Use
2177         raw_text_low, raw_text_high.  Update.
2178         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
2179         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
2180         or call 'relocate' quick function.  Clear psymbol_map.
2181         * psympriv.h (struct partial_symbol) <address>: Add section
2182         offset.
2183         <set_unrelocated_address>: Rename from set_address.
2184         <raw_text_low, raw_text_high>: New methods.
2185         <text_low, text_high>: Add objfile parameter.
2186         (add_psymbol_to_bcache): Add 'section' parameter.  Call
2187         set_unrelocated_address.
2188         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
2189         (find_pc_psymbol): Update.
2190         (fixup_psymbol_section, relocate_psymtabs): Remove.
2191         (dump_psymtab, psym_functions): Update.
2192         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
2193         parameter.
2194         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
2195         (start_psymtab_common): Update.
2196         * symfile-debug.c (debug_qf_relocate): Remove.
2197         (debug_sym_quick_functions): Update.
2198         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
2199         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
2200         Update.
2201
2202 2018-07-26  Tom Tromey  <tromey@redhat.com>
2203
2204         * dbxread.c (end_psymtab): Use text_high_valid and
2205         text_low_valid.
2206         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
2207         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
2208         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
2209         Update comment.
2210         <text_low_valid, text_high_valid>: New fields.
2211         <set_text_low, set_text_high>: Update.
2212         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
2213
2214 2018-07-26  Tom Tromey  <tom@tromey.com>
2215
2216         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
2217         Update.
2218         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
2219         textlow and texthigh fields.
2220         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
2221         Update.
2222         * mdebugread.c (parse_lines, parse_partial_symbols)
2223         (psymtab_to_symtab_1): Update.
2224         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
2225         Rename fields.  Update comment.  Now private.
2226         <text_low, text_high, set_text_low, set_text_high>: New methods.
2227         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
2228         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
2229         (start_psymtab_common, maintenance_info_psymtabs)
2230         (maintenance_check_psymtabs): Update.
2231         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
2232         texthigh fields.
2233         (scan_xcoff_symtab): Update.
2234
2235 2018-07-26  Tom Tromey  <tromey@redhat.com>
2236
2237         * psympriv.h (struct partial_symbol) <unrelocated_address,
2238         address, set_address>: New methods.
2239         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
2240         (fixup_psymbol_section, relocate_psymtabs): Update.
2241         (print_partial_symbols): Add 'objfile' parameter.  Update.
2242         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
2243         Update.
2244
2245 2018-07-26  Tom Tromey  <tom@tromey.com>
2246
2247         * dwarf-index-write.c (write_psymbols, debug_names::insert)
2248         (debug_names::write_psymbols): Update.
2249         * psympriv.h (struct partial_symbol): Derive from
2250         general_symbol_info.
2251         <obj_section>: New method.
2252         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
2253         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
2254         (find_pc_sect_psymbol, fixup_psymbol_section)
2255         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
2256         (print_partial_symbols, recursively_search_psymtabs)
2257         (compare_psymbols, psymbol_hash, psymbol_compare)
2258         (add_psymbol_to_bcache, maintenance_check_psymtabs)
2259         (psymbol_name_matches, psym_fill_psymbol_map): Update.
2260
2261 2018-07-26  Tom Tromey  <tromey@redhat.com>
2262
2263         * dbxread.c (end_psymtab): Remove dead code.
2264
2265 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2266
2267         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
2268         DWARF unwinders are disabled.
2269         * dwarf2-frame.c: Add dwarf2read.h include.
2270         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
2271         disabled.
2272         (dwarf2_frame_unwinders_enabled_p): Define.
2273         (show_dwarf_unwinders_enabled_p): New function.
2274         (_initialize_dwarf2_frame): Register switch to control DWARF
2275         unwinder use.
2276         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
2277         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
2278         (show_dwarf_cmdlist): Remove static keyword.
2279         * dwarf2read.h (set_dwarf_cmdlist): Declare.
2280         (show_dwarf_cmdlist): Declare.
2281         * NEWS: Document new feature.
2282
2283 2018-07-26  Tom de Vries  <tdevries@suse.de>
2284
2285         PR breakpoints/23366
2286         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
2287
2288 2018-07-26  Tom de Vries  <tdevries@suse.de>
2289
2290         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
2291         DW_AT_count can't be translated to a dynamic prop.
2292
2293 2018-07-25  Tom de Vries  <tdevries@suse.de>
2294
2295         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
2296         try/catch.
2297
2298 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
2299
2300         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
2301
2302 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
2303
2304         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
2305
2306 2018-07-24  Keith Seitz  <keiths@redhat.comt
2307
2308         PR symtab/23010
2309         * dwarf2read.c (dw2_add_symbol_to_list): New function.
2310         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
2311         instead of add_symbol_to_list.
2312         (read_file_scope): Call prepare_one_comp_unit before reading
2313         any other DIEs.
2314
2315 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
2316
2317         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
2318
2319 2018-07-24  Tom Tromey  <tom@tromey.com>
2320
2321         * utils.c (malloc, realloc, free): Don't declare.
2322         * configure, config.in: Rebuild.
2323         * configure.ac: Don't check for declarations of free, malloc, or
2324         realloc.
2325
2326 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
2327
2328         * aarch64-linux-nat.c
2329         (aarch64_linux_nat_target::stopped_data_address): Remove unused
2330         variable.
2331         * arm-linux-nat.c (fetch_regs): Likewise.
2332         (store_regs): Likewise.
2333         (fetch_vfp_regs): Likewise.
2334         (store_vfp_regs): Likewise.
2335         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
2336         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
2337         (arm_linux_nat_target::insert_watchpoint): Likewise.
2338         (arm_linux_nat_target::remove_watchpoint): Likewise.
2339         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
2340         Likewise.
2341         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
2342         Likewise.
2343         * ppc-linux-nat.c (fetch_register): Likewise.
2344         (fetch_all_gp_regs): Likewise.
2345         (fetch_ppc_registers): Likewise.
2346         (store_all_gp_regs): Likewise.
2347         (store_ppc_registers): Likewise.
2348         (hwdebug_insert_point): Likewise.
2349         (can_use_watchpoint_cond_accel): Likewise.
2350         * remote-sim.c (gdb_os_write_stdout): Likewise.
2351
2352 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
2353             Tom Tromey  <tom@tromey.com>
2354
2355         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
2356         test for it.
2357         * configure: Rebuild.
2358
2359 2018-07-22  Tom Tromey  <tom@tromey.com>
2360
2361         * regformats/regdat.sh: Define xmltarget_${name} inside
2362         #ifndef IN_PROCESS_AGENT.
2363
2364 2018-07-22  Tom Tromey  <tom@tromey.com>
2365
2366         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
2367
2368 2018-07-22  Tom Tromey  <tom@tromey.com>
2369
2370         * symfile.c (reread_symbols): Notify iter, not objfile.
2371
2372 2018-07-22  Tom Tromey  <tom@tromey.com>
2373
2374         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
2375         Use arch_ops.
2376         (ravenscar_thread_target::prepare_to_store): Likewise.
2377
2378 2018-07-22  Tom Tromey  <tom@tromey.com>
2379
2380         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
2381         unused variable.  Call value_fetch_lazy when needed.
2382         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
2383         Remove unused variable.  Call value_fetch_lazy when needed.
2384
2385 2018-07-22  Tom Tromey  <tom@tromey.com>
2386
2387         * m32c-tdep.c (mark_dma): Return void.
2388         (make_regs): Remove unused declarations.
2389
2390 2018-07-22  Tom Tromey  <tom@tromey.com>
2391
2392         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
2393         cmdscm_get_valid_command_smob_arg_unsafe for effect.
2394         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
2395         bkscm_get_valid_block_smob_arg_unsafe for effect.
2396
2397 2018-07-22  Tom Tromey  <tom@tromey.com>
2398
2399         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
2400         value_type.
2401
2402 2018-07-22  Tom Tromey  <tom@tromey.com>
2403
2404         * windows-nat.c (saved_context): Conditionally define.
2405         * remote.c (remote_target::remote_btrace_maybe_reopen):
2406         Conditionally declare "warned".
2407         * inflow.c (sigquit_ours): Conditionally define.
2408         (new_tty): Move "tty" declaration inside #if.
2409         * guile/guile.c (guile_datadir): Conditionally define.
2410         * charset.c (set_be_le_names): Move some declarations inside #if.
2411         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
2412         #if.
2413         (parse_xml_btrace_conf): Likewise.
2414
2415 2018-07-22  Tom Tromey  <tom@tromey.com>
2416
2417         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
2418
2419 2018-07-22  Tom Tromey  <tom@tromey.com>
2420
2421         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
2422         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
2423         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
2424         * buildsym-legacy.c (get_macro_table): Remove unused variable.
2425         * stack.c (frame_apply_level_command): Remove unused variable.
2426         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
2427         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
2428         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
2429         unused variable.
2430         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
2431         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
2432         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
2433         variable.
2434         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
2435         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
2436         variable.
2437         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
2438         Remove unused variable.
2439         * cli/cli-script.c (recurse_read_control_structure): Remove unused
2440         variable.
2441         * common/tdesc.c (print_xml_feature::visit): Remove unused
2442         variable.
2443         * compile/compile-object-load.c (store_regs): Remove unused
2444         variables.
2445         * complaints.c (clear_complaints): Remove unused variable.
2446         * corelow.c (core_target_open): Remove unused variable.
2447         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
2448         variable.
2449         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
2450         variable.
2451         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
2452         variable.
2453         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
2454         variable.
2455         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
2456         variable.
2457         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
2458         variable.
2459         * ia64-tdep.c (examine_prologue): Remove unused variable.
2460         * infcall.c (run_inferior_call): Remove unused variable.
2461         * inferior.c (exit_inferior): Remove unused variable.
2462         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
2463         * linespec.c (decode_line_2): Remove unused variable.
2464         * linux-nat.c (super_close): Remove.
2465         * linux-tdep.c (linux_info_proc): Remove unused variable.
2466         * mi/mi-main.c (mi_execute_command): Remove unused variable.
2467         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
2468         Remove unused variable.
2469         * parse.c (find_minsym_type_and_address): Remove unused variable.
2470         * printcmd.c (info_symbol_command, printf_floating): Remove unused
2471         variable.
2472         * python/py-breakpoint.c (bppy_set_commands): Remove unused
2473         variable.
2474         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
2475         variables.
2476         * record-btrace.c (record_btrace_target::store_registers): Remove
2477         unused variable.
2478         (cmd_show_record_btrace_cpu): Remove unused variable.
2479         * riscv-tdep.c (riscv_register_reggroup_p)
2480         (riscv_push_dummy_call, riscv_return_value): Remove unused
2481         variable.
2482         * rust-exp.y (literal): Remove unused variable.
2483         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
2484         unused variable.
2485         <STRUCTOP_ANONYMOUS>: Likewise.
2486         * s390-linux-tdep.c (s390_linux_init_abi_31)
2487         (s390_linux_init_abi_64): Remove unused variable.
2488         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
2489         (file_select_thread, net_windows_open, _initialize_ser_windows):
2490         Remove unused variables.
2491         * symtab.c (find_pc_sect_line): Remove unused variable.
2492         * target-memory.c (compute_garbled_blocks): Remove unused
2493         variable.
2494         (target_write_memory_blocks): Remove unused variable.
2495         * target.c (target_stack::unpush): Remove unused variables.
2496         * tracepoint.c (start_tracing, all_tracepoint_actions)
2497         (merge_uploaded_trace_state_variables)
2498         (print_one_static_tracepoint_marker): Remove unused variable.
2499         * unittests/basic_string_view/element_access/char/1.cc (test01):
2500         Remove unused variable.
2501         * windows-nat.c (windows_continue, windows_add_all_dlls)
2502         (do_initial_windows_stuff, windows_nat_target::create_inferior):
2503         Remove unused variables.
2504
2505 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
2506
2507         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
2508         attr_profile in HAVE_ELF.
2509         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
2510         HAVE_ELF.
2511
2512 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
2513
2514         * frame.c (frame_register_unwind): Change parameter name.
2515         (frame_unwind_register): Likewise.
2516         (frame_unwind_register_value): Likewise.
2517         (frame_unwind_register_signed): Likewise.
2518         (frame_unwind_register_unsigned): Likewise.
2519         * frame.h (frame_register_unwind): Likewise.
2520         (frame_unwind_register): Likewise.
2521         (frame_unwind_register_value): Likewise.
2522         (frame_unwind_register_signed): Likewise.
2523         (frame_unwind_register_unsigned): Likewise.
2524         (frame_unwind_arch): Likewise.
2525
2526 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
2527
2528         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
2529         ISA maintenance.
2530
2531 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
2532
2533         * mips-linux-nat.c (mips_linux_nat_target::read_description):
2534         Call `get_ptrace_pid' rather than extracting the ptrace PID by
2535         hand.
2536
2537 2018-07-20  Keith Seitz  <keiths@redhat.com>
2538
2539         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
2540         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
2541         m_compunit_symtab, m_language>: Add "m_" prefix.
2542         Update all uses.
2543         * buildsym.c: Update all uses.
2544
2545 2018-07-20  Tom Tromey  <tom@tromey.com>
2546
2547         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
2548         * buildsym.h (record_line_ftype): Remove typedef.
2549
2550 2018-07-20  Tom Tromey  <tom@tromey.com>
2551
2552         * buildsym-legacy.h (augment_type_symtab): Don't declare.
2553         (end_expandable_symtab): Likewise.
2554         (end_symtab_get_static_block): Likewise.
2555         (end_symtab_from_static_block): Likewise.
2556         * buildsym-legacy.c (augment_type_symtab): Remove.
2557         (end_expandable_symtab): Remove.
2558         (end_symtab_get_static_block): Remove.
2559         (end_symtab_from_static_block): Remove.
2560
2561 2018-07-20  Tom Tromey  <tom@tromey.com>
2562
2563         * dwarf2read.c: Include buildsym.h.
2564         (struct dwarf2_cu) <builder>: New method.
2565         (fixup_go_packaging): Update.
2566         (process_full_comp_unit, process_full_type_unit): Update.  Don't
2567         use scoped_free_pendings.
2568         (using_directives): Add "cu" parameter, remove "language".
2569         (read_import_statement, setup_type_unit_groups, )
2570         (read_func_scope, read_lexical_block_scope)
2571         (dwarf2_record_block_ranges, read_namespace): Update.
2572         (lnp_state_machine::lnp_state_machine): Add cu parameter.
2573         (lnp_state_machine::handle_end_sequence): Update.
2574         (class lnp_state_machine) <m_cu>: New member.
2575         <m_record_line_callback>: Remove.
2576         <m_currently_recording_lines>: New member.
2577         (lnp_state_machine::handle_set_file): Update.
2578         (noop_record_line): Remove.
2579         (dwarf_record_line_p): Add cu parameter.
2580         (dwarf_record_line_1, dwarf_finish_line): Likewise.
2581         (lnp_state_machine::record_line)
2582         (lnp_state_machine::lnp_state_machine)
2583         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
2584         (dwarf_decode_lines): Update.
2585         (dwarf2_start_subfile): Add cu parameter.
2586         (dwarf2_start_symtab, new_symbol): Update.
2587         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
2588         Remove dwarf2_per_objfile parameter.
2589         (dwarf_decode_macros): Update.
2590
2591 2018-07-20  Tom Tromey  <tom@tromey.com>
2592
2593         * stabsread.c (define_symbol): Update.
2594         * buildsym-legacy.h (get_buildsym_compunit): Declare.
2595         * dwarf2read.c (new_symbol): Update.
2596         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
2597         * cp-namespace.c: Include buildsym.h.
2598         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
2599         * buildsym-legacy.c (get_buildsym_compunit): New function.
2600
2601 2018-07-20  Tom Tromey  <tom@tromey.com>
2602
2603         * xcoffread.c: Include buildsym-legacy.h.
2604         * windows-nat.c: Include buildsym-legacy.h.
2605         * stabsread.c: Include buildsym-legacy.h.
2606         * mdebugread.c: Include buildsym-legacy.h.
2607         * buildsym-legacy.h: New file.
2608         * buildsym-legacy.c: New file, from buildsym.c.
2609         * go32-nat.c: Include buildsym-legacy.h.
2610         * dwarf2read.c: Include buildsym-legacy.h.
2611         * dbxread.c: Include buildsym-legacy.h.
2612         * cp-namespace.c: Include buildsym-legacy.h.
2613         * coffread.c: Include buildsym-legacy.h.
2614         * buildsym.h: Move some contents to buildsym-legacy.h.
2615         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
2616         buildsym-legacy.c.
2617         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
2618
2619 2018-07-20  Tom Tromey  <tom@tromey.com>
2620
2621         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
2622         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
2623         (buildsym_compunit::buildsym_compunit)
2624         (buildsym_compunit::~buildsym_compunit)
2625         (buildsym_compunit::get_macro_table): Define.
2626
2627 2018-07-20  Tom Tromey  <tom@tromey.com>
2628
2629         * buildsym.c (reset_symtab_globals): Remove.
2630         (buildsym_compunit::end_symtab_from_static_block): Update.
2631         (buildsym_compunit::augment_type_symtab): Update.
2632         (end_symtab_from_static_block): Call free_buildsym_compunit.
2633         (augment_type_symtab, end_symtab, end_expandable_symtab):
2634         Likewise.
2635
2636 2018-07-20  Tom Tromey  <tom@tromey.com>
2637
2638         * arch-utils.c: Do not include buildsym.h.
2639         * mipsread.c: Do not include buildsym.h.
2640         * machoread.c: Do not include buildsym.h.
2641         * elfread.c: Do not include buildsym.h.
2642
2643 2018-07-20  Tom Tromey  <tom@tromey.com>
2644
2645         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
2646         initialization.
2647         (buildsym_compunit): Add new constructor.
2648         (struct buildsym_compunit) <get_last_source_file, finish_block,
2649         record_block_range, start_subfile, patch_subfile_names,
2650         push_subfile, pop_subfile, record_line, get_compunit_symtab,
2651         set_last_source_start_addr, get_last_source_start_addr,
2652         get_local_using_directives, set_local_using_directives,
2653         get_global_using_directives, outermost_context_p,
2654         get_current_context_stack, get_context_stack_depth,
2655         get_current_subfile, get_local_symbols, get_file_symbols,
2656         get_global_symbols, record_debugformat, record_producer,
2657         push_context, pop_context, end_symtab_get_static_block,
2658         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
2659         New public methods.
2660         <record_pending_block, finish_block_internal, make_blockvector,
2661         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
2662         private methods.
2663         Update all users.
2664
2665 2018-05-22  Tom Tromey  <tom@tromey.com>
2666
2667         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
2668         parameter.
2669         (finish_block_internal): Update.
2670
2671 2018-07-20  Tom Tromey  <tom@tromey.com>
2672
2673         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
2674         parameter.
2675         (finish_block_internal): Update.
2676
2677 2018-07-20  Tom Tromey  <tom@tromey.com>
2678
2679         * buildsym.h (EXTERN): Don't define or undef.
2680         * buildsym.c (EXTERN): Don't define.
2681
2682 2018-07-20  Tom Tromey  <tom@tromey.com>
2683
2684         * buildsym.c: Remove TODO comment.
2685
2686 2018-07-20  Tom Tromey  <tom@tromey.com>
2687
2688         * coffread.c (coff_symtab_read): Update.
2689         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
2690         (xcoff_new_init): Update.
2691         * mipsread.c (mipscoff_new_init): Update.
2692         * mdebugread.c (mdebug_build_psymtabs): Update.
2693         * elfread.c (elf_new_init): Update.
2694         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
2695         Update.
2696         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
2697         (coffstab_build_psymtabs, elfstab_build_psymtabs)
2698         (stabsect_build_psymtabs): Update.
2699         * buildsym.h (buildsym_init): Don't declare.
2700         * buildsym.c: Update comment.
2701         (prepare_for_building): Remove.
2702         (start_symtab, restart_symtab): Update.
2703         (reset_symtab_globals): Update comment.
2704         (buildsym_init): Remove.
2705
2706 2018-07-20  Tom Tromey  <tom@tromey.com>
2707
2708         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
2709         * stabsread.c (patch_block_stabs, define_symbol, read_type)
2710         (read_enum_type, common_block_start, common_block_end)
2711         (cleanup_undefined_types_1, finish_global_stabs): Update.
2712         * mdebugread.c (psymtab_to_symtab_1): Update.
2713         * dwarf2read.c (fixup_go_packaging, read_func_scope)
2714         (read_lexical_block_scope, new_symbol): Update.
2715         * dbxread.c (process_one_symbol): Update.
2716         * coffread.c (coff_symtab_read, process_coff_symbol)
2717         (coff_read_enum_type): Update.
2718         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
2719         declare.
2720         (get_local_symbols, get_file_symbols, get_global_symbols): New
2721         functions.
2722         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
2723         m_global_symbols.
2724         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
2725         (~scoped_free_pendings): Update.
2726         (finish_block, prepare_for_building, reset_symtab_globals)
2727         (end_symtab_get_static_block, end_symtab_with_blockvector)
2728         (augment_type_symtab, push_context): Update.
2729         (get_local_symbols, get_file_symbols, get_global_symbols): New
2730         functions.
2731         (buildsym_init): Update.
2732
2733 2018-07-20  Tom Tromey  <tom@tromey.com>
2734
2735         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
2736         (process_full_type_unit): Likewise.
2737         (dwarf2_start_symtab): Set list_in_scope.
2738
2739 2018-07-20  Tom Tromey  <tom@tromey.com>
2740
2741         * dwarf2read.c (process_psymtab_comp_unit_reader)
2742         (build_type_psymtabs_reader): Do not set list_in_scope.
2743
2744 2018-07-20  Tom Tromey  <tom@tromey.com>
2745
2746         * buildsym.c (free_pendings): Remove.
2747         (add_symbol_to_list, scoped_free_pendings)
2748         (finish_block_internal, buildsym_init): Update.
2749
2750 2018-07-20  Tom Tromey  <tom@tromey.com>
2751
2752         * xcoffread.c (read_xcoff_symtab): Update.
2753         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
2754         Update.
2755         * dbxread.c (process_one_symbol): Update.
2756         * coffread.c (coff_symtab_read): Update.
2757         * buildsym.h (finish_block): Update.
2758         * buildsym.c (finish_block): Remove "listhead" argument.
2759         (end_symtab_get_static_block): Update.
2760
2761 2018-07-20  Tom Tromey  <tom@tromey.com>
2762
2763         * buildsym.h (class scoped_free_pendings): Remove constructor.
2764         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
2765         method.
2766         <m_pending_block_obstack, m_pending_blocks>: New members.
2767         (pending_block_obstack, pending_blocks): Remove.
2768         (scoped_free_pendings::scoped_free_pendings): Default.
2769         (~scoped_free_pendings): Update.
2770         (free_pending_blocks): Remove.
2771         (finish_block_internal, record_pending_block, make_blockvector)
2772         (end_symtab_get_static_block, augment_type_symtab, push_context)
2773         (buildsym_init): Update.
2774
2775 2018-07-20  Tom Tromey  <tom@tromey.com>
2776
2777         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
2778         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
2779         members.
2780         (pending_addrmap, pending_addrmap_obstack)
2781         (pending_addrmap_interesting): Remove.
2782         (scoped_free_pendings, record_block_range, make_blockvector)
2783         (prepare_for_building, reset_symtab_globals, buildsym_init):
2784         Update.
2785
2786 2018-07-20  Tom Tromey  <tom@tromey.com>
2787
2788         * xcoffread.c (process_linenos): Update.
2789         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
2790         * mdebugread.c (psymtab_to_symtab_1): Update.
2791         * dwarf2read.c (setup_type_unit_groups)
2792         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
2793         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
2794         * dbxread.c (process_one_symbol): Update.
2795         * coffread.c (coff_symtab_read, enter_linenos)
2796         (process_coff_symbol): Update.
2797         * buildsym.h (current_subfile): Don't declare.
2798         (get_current_subfile): Declare.
2799         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
2800         member.
2801         (start_subfile, free_buildsym_compunit, push_subfile)
2802         (prepare_for_building, start_symtab): Update.
2803         (get_current_subfile): New function.
2804
2805 2018-07-20  Tom Tromey  <tom@tromey.com>
2806
2807         * coffread.c (coff_symtab_read): Update.
2808         * xcoffread.c (read_xcoff_symtab): Update.
2809         * dwarf2read.c (new_symbol): Update.
2810         (read_func_scope, read_lexical_block_scope): Update.
2811         * dbxread.c (process_one_symbol): Update.
2812         * buildsym.h (context_stack, context_stack_depth): Don't declare.
2813         (outermost_context_p): Remove macro.
2814         (outermost_context_p, get_current_context_stack)
2815         (get_context_stack_depth): Declare.
2816         (pop_context): Return struct context_stack.
2817         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
2818         member.
2819         (context_stack_size): Remove.
2820         (INITIAL_CONTEXT_STACK_SIZE): Remove.
2821         (prepare_for_building, end_symtab_get_static_block)
2822         (augment_type_symtab, push_context): Update.
2823         (pop_context): Return struct context_stack.
2824         (outermost_context_p, get_current_context_stack)
2825         (get_context_stack_depth): New functions.
2826         (buildsym_init): Update.
2827
2828 2018-07-20  Tom Tromey  <tom@tromey.com>
2829
2830         * rust-exp.y: Now a pure parser.  Update all rules.
2831         (%union): Move earlier.
2832         (current_parser, work_obstack): Remove globals.
2833         (rust_parser, ~rust_parser): Update.
2834         (class rust_parser) <copy_name, concat3, crate_name, super_name,
2835         lex_character, lex_number, lex_string, lex_identifier,
2836         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
2837         convert_name, convert_params_to_expression,
2838         convert_ast_to_expression, ast_basic_type, ast_operation,
2839         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
2840         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
2841         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
2842         ast_array_type, ast_slice_type, ast_reference_type,
2843         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
2844         (rust_parse): Update.
2845         (rustyyerror, rustyylex): Add parser parameter.
2846         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
2847         (rust_lex_stringish_test, rust_lex_test_sequence)
2848         (rust_lex_test_trailing_dot, rust_lex_test_completion)
2849         (rust_lex_test_push_back, rust_lex_tests): Update.
2850
2851 2018-07-19  Pedro Alves  <palves@redhat.com>
2852
2853         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
2854         gdb::unique_xmalloc_ptr.
2855         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
2856         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
2857         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
2858         copy-initialization.
2859         * guile/scm-pretty-print.c (ppscm_print_children): Use
2860         gdb::unique_xmalloc_ptr instead of cleanups.
2861         (gdbscm_apply_val_pretty_printer): Remove cleanups.
2862         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
2863         gdb::unique_xmalloc_ptr.
2864         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
2865         Adjust to use gdb::unique_xmalloc_ptr.
2866         * guile/scm-utils.c (extract_arg): Adjust.
2867         * guile/scm-value.c (gdbscm_value_field): Adjust to use
2868         gdb::unique_xmalloc_ptr instead of a cleanup.
2869
2870 2018-07-19  Tom Tromey  <tom@tromey.com>
2871
2872         * utils.c (do_value_free_to_mark)
2873         (make_cleanup_value_free_to_mark): Remove.
2874         * utils.h (make_cleanup_value_free_to_mark): Remove.
2875
2876 2018-07-19  Pedro Alves  <palves@redhat.com>
2877
2878         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
2879         forwarding reference.
2880
2881 2018-07-18  Pedro Alves  <palves@redhat.com>
2882
2883         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
2884         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
2885         cleanup.
2886
2887 2018-07-18  Pedro Alves  <palves@redhat.com>
2888
2889         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
2890         exceptions.
2891         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
2892         (gdbscm_wrap): New.
2893         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
2894         directly instead of a cleanup.
2895         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
2896         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
2897         (vlscm_binop_gdbthrow): New, factored out from ...
2898         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
2899         (vlscm_rich_compare): Use gdbscm_wrap.
2900         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
2901         instead of a cleanup.
2902         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
2903         cleanup.
2904         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
2905         Use xfree directly instead of a cleanup.
2906         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
2907         Adjust to use gdbscm_wrap and scoped_value_mark.
2908         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
2909         (gdbscm_value_address, gdbscm_value_dereference)
2910         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
2911         scoped_value_mark.
2912         (gdbscm_value_dynamic_type): Use scoped_value_mark.
2913         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
2914         scoped_value_mark.
2915         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
2916         gdbscm_wrap and scoped_value_mark.
2917         (gdbscm_value_to_string): Use xfree directly instead of a
2918         cleanup.  Move 'buffer' unique_ptr to TRY scope.
2919         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
2920         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
2921         scoped_value_mark.
2922         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
2923         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
2924         scoped_value_mark.
2925         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
2926         gdbscm_wrap.
2927
2928 2018-07-18  Tom de Vries  <tdevries@suse.de>
2929
2930         * findvar.c (default_read_var_value): Also resolve dynamic type for
2931         LOC_OPTIMIZED_OUT vars.
2932
2933 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
2934
2935         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
2936         decoding.
2937
2938 2018-07-17  Tom Tromey  <tom@tromey.com>
2939
2940         * guile/scm-param.c (pascm_set_func, pascm_show_func)
2941         (compute_enum_list, pascm_set_param_value_x)
2942         (gdbscm_parameter_value): Update.
2943         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
2944         (gdbscm_scm_to_host_string): Update.
2945         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
2946         Update.
2947         * guile/scm-cmd.c (cmdscm_add_completion): Update.
2948         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
2949         * guile/scm-string.c (gdbscm_scm_to_string): Return
2950         unique_xmalloc_ptr.
2951         (gdbscm_scm_to_host_string): Likewise.
2952
2953 2018-07-17  Tom Tromey  <tom@tromey.com>
2954
2955         * guile/guile.c (gdbscm_eval_from_control_command): Update.
2956         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
2957         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
2958         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
2959         unique_xmalloc_ptr.
2960
2961 2018-07-17  Tom Tromey  <tom@tromey.com>
2962
2963         * guile/scm-param.c (pascm_signal_setshow_error): Update.
2964         * guile/guile-internal.h (gdbscm_exception_message_to_string):
2965         Update.
2966         * guile/scm-cmd.c (cmdscm_function): Update.
2967         * guile/scm-pretty-print.c
2968         (ppscm_print_exception_unless_memory_error): Update.
2969         * guile/scm-exception.c (gdbscm_exception_message_to_string):
2970         Return unique_xmalloc_ptr.
2971
2972 2018-07-17  Tom Tromey  <tom@tromey.com>
2973
2974         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
2975         Use string_printf.
2976
2977 2018-07-17  Jim Wilson  <jimw@sifive.com>
2978
2979         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
2980         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
2981         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
2982         unecessary braces after EF_RISCV_RVC test.  Delete call to
2983         set_gdbarch_decr_pc_after_break.
2984
2985         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
2986         RISCV_LAST_FP_REGNUM + 1.
2987         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
2988
2989 2018-07-17  Tom Tromey  <tom@tromey.com>
2990
2991         * configure.ac: Remove --disable-gdbcli.
2992         * configure: Rebuild.
2993         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
2994         (SUBDIR_CLI_CFLAGS): Remove.
2995         (SFILES): Use SUBDIR_CLI_SRCS.
2996         (COMMON_OBS): Use SUBDIR_CLI_OBS.
2997
2998 2018-07-17  Tom Tromey  <tom@tromey.com>
2999
3000         PR gdb/18624:
3001         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
3002
3003 2018-07-16  Jim Wilson  <jimw@sifive.com>
3004
3005         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
3006
3007 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3008
3009         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
3010         variable.
3011         (libunwind_frame_sniffer): Likewise.
3012         (libunwind_frame_prev_register): Likewise.
3013         (libunwind_sigtramp_frame_sniffer): Likewise.
3014         * ia64-tdep.c (ia64_access_reg): Likewise.
3015         (ia64_access_rse_reg): Likewise.
3016         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
3017         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
3018
3019 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3020
3021         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
3022
3023 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
3024
3025         * remote-sim.c (gdbsim_target::close,
3026         gdbsim_target::mourn_inferior): Remove unused variables.
3027
3028 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
3029
3030         * ia64-tdep.c (ktab_buf): New global.
3031         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
3032         (get_kernel_table): Adjust.
3033
3034 2018-07-16  Tom Tromey  <tom@tromey.com>
3035
3036         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
3037         * dwarf2read.c (using_directives, new_symbol): Use
3038         outermost_context_p.
3039         * dbxread.c (process_one_symbol): Use outermost_context_p.
3040         * coffread.c (coff_symtab_read): Use outermost_context_p.
3041
3042 2018-07-16  Tom Tromey  <tom@tromey.com>
3043
3044         * dwarf2read.c (using_directives, read_func_scope)
3045         (read_lexical_block_scope): Update.
3046         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
3047         * buildsym.h (local_using_directives, global_using_directives):
3048         Don't declare.
3049         (get_local_using_directives, set_local_using_directives)
3050         (get_global_using_directives): Declare.
3051         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
3052         m_global_using_directives>: New members.
3053         (finish_block_internal, prepare_for_building)
3054         (reset_symtab_globals, end_symtab_get_static_block)
3055         (push_context): Update.
3056         (get_local_using_directives, set_local_using_directives)
3057         (get_global_using_directives): New functions.
3058         (buildsym_init): Update.
3059
3060 2018-07-16  Tom Tromey  <tom@tromey.com>
3061
3062         * xcoffread.c (xcoff_initial_scan): Don't call
3063         free_pending_blocks.
3064         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
3065         * buildsym.h (class scoped_free_pendings): Add constructor.
3066         (free_pending_blocks): Don't declare.
3067         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
3068         (free_pending_blocks): Now static.
3069
3070 2018-07-16  Tom Tromey  <tom@tromey.com>
3071
3072         * buildsym.h (push_subfile, pop_subfile): Update declarations.
3073         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
3074         member.
3075         (struct subfile_stack): Remove.
3076         (subfile_stack): Remove.
3077         (push_subfile, pop_subfile, buildsym_init): Update.
3078
3079 2018-07-16  Tom Tromey  <tom@tromey.com>
3080
3081         * buildsym.c (push_subfile): Use gdb_assert.
3082         (pop_subfile): Use gdb_assert.
3083
3084 2018-07-16  Tom Tromey  <tom@tromey.com>
3085
3086         * buildsym.h (merge_symbol_lists): Remove.
3087         * buildsym.c (merge_symbol_lists): Remove.
3088
3089 2018-07-16  Tom Tromey  <tom@tromey.com>
3090
3091         * stabsread.c (scan_file_globals): Update comment.
3092         * stabsread.h (scan_file_globals): Move from buildsym.h.
3093         * buildsym.h (scan_file_globals): Move to stabsread.h.
3094
3095 2018-07-16  Tom Tromey  <tom@tromey.com>
3096
3097         * xcoffread.c (xcoff_new_init): Update.
3098         * mipsread.c (mipscoff_new_init): Update.
3099         * mdebugread.c (mdebug_build_psymtabs): Update.
3100         * elfread.c (elf_new_init): Update.
3101         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
3102         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
3103         * buildsym.h (buildsym_new_init): Don't declare.
3104         * buildsym.c (buildsym_new_init): Remove.
3105
3106 2018-07-16  Tom Tromey  <tom@tromey.com>
3107
3108         * stabsread.h (within_function): Move from buildsym.h.
3109         * stabsread.c (start_stabs): Clear within_function.
3110         * coffread.c (coff_start_symtab): Clear within_function.
3111         * buildsym.h (within_function): Move to stabsread.h.
3112         * buildsym.c (prepare_for_building): Update.
3113
3114 2018-07-16  Tom Tromey  <tom@tromey.com>
3115
3116         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
3117         * dwarf2read.c (dwarf2_start_symtab): Don't set
3118         processing_gcc_compilation.
3119         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
3120
3121 2018-07-16  Tom Tromey  <tom@tromey.com>
3122
3123         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
3124         (next_symbol_text_func): Move from buildsym.h.
3125         * stabsread.c (hashname): Move from buildsym.c.
3126         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
3127         (next_symbol_text_func, hashname): Move to stabsread.h.
3128         * buildsym.c: Don't include bcache.h
3129         (hashname): Move to stasbread.c.
3130
3131 2018-07-16  Tom Tromey  <tom@tromey.com>
3132
3133         * buildsym.h (context_stack_size): Don't declare.
3134         * buildsym.c (context_stack_size): New global.
3135
3136 2018-07-16  Tom Tromey  <tom@tromey.com>
3137
3138         * dbxread.c (processing_acc_compilation): New global.
3139         * buildsym.h (processing_acc_compilation): Don't declare.
3140
3141 2018-07-16  Tom Tromey  <tom@tromey.com>
3142
3143         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
3144         * dbxread.c (read_ofile_symtab): Update.
3145         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
3146         * buildsym.h (last_source_start_addr): Remove.
3147         (set_last_source_start_addr, get_last_source_start_addr):
3148         Declare.
3149         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
3150         parameter.
3151         (struct buildsym_compunit) <m_last_source_start_addr>: New
3152         member.
3153         (prepare_for_building): Remove start_addr parameter.
3154         (start_symtab, restart_symtab, end_symtab_get_static_block)
3155         (end_symtab_with_blockvector): Update.
3156         (set_last_source_start_addr, get_last_source_start_addr): New
3157         functions.
3158
3159 2018-07-16  Tom Tromey  <tom@tromey.com>
3160
3161         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
3162         member.
3163         (have_line_numbers): Remove.
3164         (record_line, prepare_for_building, end_symtab_get_static_block)
3165         (augment_type_symtab): Update.
3166
3167 2018-07-16  Tom Tromey  <tom@tromey.com>
3168
3169         * buildsym.c (~buildsym_compunit): Free the macro table.
3170         (struct buildsym_compunit) <get_macro_table, release_macros>: New
3171         methods.
3172         <m_pending_macros>: New member.
3173         (pending_macros): Remove.
3174         (~scoped_free_pendings, get_macro_table, prepare_for_building)
3175         (reset_symtab_globals, end_symtab_get_static_block)
3176         (end_symtab_with_blockvector, augment_type_symtab)
3177         (buildsym_init): Update.
3178
3179 2018-07-16  Tom Tromey  <tom@tromey.com>
3180
3181         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
3182         parameter.
3183         (buildsym_compunit::set_last_source_file): New method.
3184         <m_last_source_file>: New member.
3185         (prepare_for_building): Remove "name" parameter.
3186         (start_symtab, restart_symtab, reset_symtab_globals): Update.
3187         (last_source_file): Remove.
3188         (set_last_source_file, get_last_source_file): Update.
3189
3190 2018-07-16  Tom Tromey  <tom@tromey.com>
3191
3192         * buildsym.c (prepare_for_building): Add assert.
3193
3194 2018-07-16  Tom Tromey  <tom@tromey.com>
3195
3196         * buildsym.c (~buildsym_compunit): Update.
3197         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
3198         (start_subfile, patch_subfile_names)
3199         (end_symtab_with_blockvector): Update.
3200
3201 2018-07-16  Tom Tromey  <tom@tromey.com>
3202
3203         * buildsym.c (struct buildsym_compunit): Add constructor,
3204         destructor, initializers.
3205         (start_buildsym_compunit): Remove.
3206         (free_buildsym_compunit): Use "delete".
3207         (start_symtab, restart_symtab): Use "new".
3208
3209 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
3210
3211         * symfile.c (set_objfile_default_section_offset): Remove struct
3212         keyword.
3213
3214 2018-07-14  Stafford Horne  <shorne@gmail.com>
3215
3216         * (Responsible Maintainers): Add myself as or1k maintainer.
3217
3218 2018-07-13  Tom Tromey  <tom@tromey.com>
3219
3220         * symfile.c (set_objfile_default_section_offset): Use extra braces
3221         around initializer.
3222
3223 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
3224
3225         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
3226         non-branching basr.
3227
3228 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3229
3230         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
3231         unittests/cli-utils-selftests.c
3232         * unittests/cli-utils-selftests.c: New file.
3233
3234 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3235
3236         * NEWS: Mention new commands. Mention change to 'thread apply'.
3237
3238 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3239
3240         * thread.c (thr_try_catch_cmd): New function.
3241         (thread_apply_all_command): Handle qcs flags.
3242         (thread_apply_command): Handle qcs flags.
3243         (taas_command): New function.
3244         (tfaas_command): New function.
3245         (_initialize_thread): Update to setup the new commands 'taas
3246         and 'tfaas'. Change doc string for 'thread apply'.
3247
3248 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3249
3250         * stack.c: (trailing_outermost_frame): New function, mostly
3251         extracted from backtrace_command_1.
3252         (leading_innermost_frame): New function.
3253         (backtrace_command_1): Update to call trailing_outermost_frame.
3254         (frame_apply_command_count): New function.
3255         (frame_apply_level_command): New function.
3256         (frame_apply_all_command): New function.
3257         (frame_apply_command): New function.
3258         (faas_command): New function.
3259         (frame_cmd_list): New variable.
3260         (_initialize_stack): Update to setup the new commands 'frame apply'
3261         and 'faas'.
3262
3263 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3264
3265         * cli-utils.c (number_or_range_parser::get_number): Only handle
3266         numbers or convenience var as numbers.
3267         (parse_flags): New function.
3268         (parse_flags_qcs): New function.
3269         (number_or_range_parser::finished): Ensure parsing end is detected
3270         before end of string.
3271         * cli-utils.h (parse_flags): New function.
3272         (parse_flags_qcs): New function.
3273         (number_or_range_parser): Remove m_finished bool.
3274         (number_or_range_parser::skip_range): Set m_in_range to false.
3275
3276 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3277
3278         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
3279         on Windows.
3280
3281 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
3282             Jan Kratochvil  <jan.kratochvil@redhat.com>
3283             Paul Fertser  <fercerpav@gmail.com>
3284             Tsutomu Seki  <sekiriki@gmail.com>
3285             Pedro Alves  <palves@redhat.com>
3286
3287         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
3288         'unittests/parse-connection-spec-selftests.c'.
3289         (COMMON_SFILES): Add 'common/netstuff.c'.
3290         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
3291         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
3292         * common/netstuff.c: New file.
3293         * common/netstuff.h: New file.
3294         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
3295         (wait_for_connect): Update comment.  New parameter
3296         'gdb::optional<int> sock' instead of 'struct serial *scb'.
3297         Use 'sock' directly instead of 'scb->fd'.
3298         (try_connect): New function, with code from 'net_open'.
3299         (net_open): Rewrite main loop to deal with multiple
3300         sockets/addresses.  Handle IPv6-style hostnames; implement
3301         support for IPv6 connections.
3302         * unittests/parse-connection-spec-selftests.c: New file.
3303
3304 2018-07-11  Pedro Alves  <palves@redhat.com>
3305
3306         PR gdb/23377
3307         * remote.c (remote_target::remote_detach_pid): Call
3308         set_current_process.
3309
3310 2018-07-11  Pedro Alves  <palves@redhat.com>
3311
3312         * h8300-tdep.c (h8300_gdbarch_init): Remove
3313         set_gdbarch_ecoff_reg_to_regnum calls.
3314
3315 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
3316
3317         PR c++/23373
3318         * c-typeprint.c (c_type_print_base_struct_union): Don't print
3319         offsets/sizes for static members of a class/struct.
3320
3321 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
3322
3323         * target-descriptions.c (tdesc_register_bitsize): Rename.
3324         * target-descriptions.h (tdesc_register_bitsize): Likewise.
3325         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
3326         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
3327
3328 2018-07-10  Tom Tromey  <tom@tromey.com>
3329
3330         * breakpoint.c (moribund_locations): Now static and a
3331         std::vector.
3332         (breakpoint_init_inferior, moribund_breakpoint_here_p)
3333         (build_bpstat_chain, update_global_location_list)
3334         (breakpoint_retire_moribund): Update.
3335         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
3336         VEC.
3337
3338 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3339
3340         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
3341         (riscv_register_reggroup_p): Use new function, remove unneeded
3342         parenthesis.
3343         (riscv_push_dummy_call): Extend assert to compare against xlen or
3344         flen based on register type.
3345
3346 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3347
3348         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
3349
3350 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3351
3352         * remote.c (show_hardware_watchpoint_limit): New function.
3353         (show_hardware_watchpoint_length_limit): New function.
3354         (show_hardware_breakpoint_limit): New function.
3355         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
3356         where appropriate, update help text.
3357
3358 2018-07-09  Tom Tromey  <tom@tromey.com>
3359
3360         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
3361         (CLIBS): Don't mention NAT_CLIBS.
3362
3363 2018-07-09  Tom Tromey  <tom@tromey.com>
3364
3365         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
3366         (LIBGDB_OBS, clean mostlyclean): Update.
3367         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
3368
3369 2018-07-09  Tom Tromey  <tom@tromey.com>
3370
3371         * Makefile.in (%.c: %.y): Use ECHO_YACC.
3372         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
3373         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
3374
3375 2018-07-09  Tom Tromey  <tom@tromey.com>
3376
3377         * Makefile.in (ALLDEPFILES): Remove exec.c.
3378         (COMMON_OBS): Remove exec.o.
3379         (COMMON_SFILES): Add exec.c.
3380
3381 2018-07-09  Tom Tromey  <tom@tromey.com>
3382
3383         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
3384
3385 2018-07-09  Tom Tromey  <tom@tromey.com>
3386
3387         * Makefile.in (clean mostlyclean): Remove stamp-version.
3388         (version.c): Depend on stamp-version.
3389         (stamp-version): New rule, from version.c rule.
3390
3391 2018-07-09  Tom Tromey  <tom@tromey.com>
3392
3393         * Makefile.in (init.c): Depend on stamp-init.
3394         (stamp-init): New rule, from init.c rule.
3395         (clean mostlyclean): Remove stamp-init.
3396
3397 2018-07-09  Tom Tromey  <tom@tromey.com>
3398
3399         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
3400         SUBDIR_GCC_COMPILE_SRCS.
3401
3402 2018-07-09  Tom Tromey  <tom@tromey.com>
3403
3404         * Makefile.in (init.c): Remove some unused sed rules.
3405
3406 2018-07-09  Tom Tromey  <tom@tromey.com>
3407
3408         * Makefile.in (TSOBS): Remove.
3409         (INIT_FILES): Update.
3410         (LIBGDB_OBS): Update.
3411         (COMMON_SFILES): Add inflow.c.
3412         (SFILES): Remove inflow.c.
3413
3414 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
3415
3416         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
3417
3418 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
3419
3420         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
3421         get_saveloc_name, is_signal_frame_name, step_name,
3422         init_remote_name, create_addr_space_name,
3423         destroy_addr_space_name, search_unwind_table_name,
3424         find_dyn_list_name): Constify.
3425
3426 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
3427
3428         * darwin-nat.c (darwin_pthread_kill): New function.
3429         (darwin_resume_thread): Use darwin_pthread_kill.
3430
3431 2018-07-05  Tom de Vries  <tdevries@suse.de>
3432
3433         * macroexp.c (macro_buffer) <operator=>: New member function.
3434
3435 2018-07-04  Tom Tromey  <tom@tromey.com>
3436
3437         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
3438
3439 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
3440
3441         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
3442         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
3443         * maint.c: Likewise.
3444         * top.c: Likewise.
3445
3446 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
3447
3448         * NEWS: Create a new section for the next release branch.
3449         Rename the section of the current branch, now that it has
3450         been cut.
3451
3452 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
3453
3454         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
3455         * version.in: Bump version to 8.2.50.DATE-git.
3456
3457 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
3458             Pedro Alves  <palves@redhat.com>
3459
3460         * linux-nat.c (linux_init_ptrace): Rename to ...
3461         (linux_init_ptrace_procfs): ... this.  Call
3462         linux_proc_init_warnings.
3463         (linux_nat_target::post_attach)
3464         (linux_nat_target::post_startup_inferior): Adjust.
3465         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
3466         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
3467
3468 2018-07-04  Tom de Vries  <tdevries@suse.de>
3469
3470         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
3471         check ...
3472         (read_comp_unit_head): ... here.
3473
3474 2018-07-03  Tom Tromey  <tom@tromey.com>
3475
3476         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
3477         (stop_tracing, tstatus_command)
3478         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
3479         (print_one_static_tracepoint_marker): Update.
3480         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
3481         std::vector.
3482         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
3483         VEC.
3484         (all_tracepoints, static_tracepoints_here): Return std::vector.
3485
3486 2018-07-03  Tom Tromey  <tom@tromey.com>
3487
3488         * common/ptid.c (ptid_equal): Remove.
3489         * common/ptid.h (ptid_equal): Don't declare.
3490         * ada-tasks.c: Update.
3491         * breakpoint.c: Update.
3492         * common/agent.c: Update.
3493         * corelow.c: Update.
3494         * darwin-nat-info.c: Update.
3495         * darwin-nat.c: Update.
3496         * dcache.c: Update.
3497         * dtrace-probe.c: Update.
3498         * dummy-frame.c: Update.
3499         * fbsd-nat.c: Update.
3500         * frame.c: Update.
3501         * gdbthread.h: Update.
3502         * gnu-nat.c: Update.
3503         * go32-nat.c: Update.
3504         * inf-loop.c: Update.
3505         * inf-ptrace.c: Update.
3506         * infcall.c: Update.
3507         * infcmd.c: Update.
3508         * inflow.c: Update.
3509         * infrun.c: Update.
3510         * linux-fork.c: Update.
3511         * linux-nat.c: Update.
3512         * linux-thread-db.c: Update.
3513         * mi/mi-cmd-var.c: Update.
3514         * mi/mi-interp.c: Update.
3515         * mi/mi-main.c: Update.
3516         * nto-procfs.c: Update.
3517         * ppc-linux-tdep.c: Update.
3518         * procfs.c: Update.
3519         * python/py-inferior.c: Update.
3520         * python/py-record-btrace.c: Update.
3521         * python/py-record.c: Update.
3522         * ravenscar-thread.c: Update.
3523         * regcache.c: Update.
3524         * remote-sim.c: Update.
3525         * remote.c: Update.
3526         * sol-thread.c: Update.
3527         * solib.c: Update.
3528         * target.c: Update.
3529         * tui/tui-stack.c: Update.
3530         * varobj.c: Update.
3531         * windows-nat.c: Update.
3532         * windows-tdep.c: Update.
3533
3534 2018-07-03  Tom Tromey  <tom@tromey.com>
3535
3536         * common/ptid.c (ptid_match): Remove.
3537         * common/ptid.h (ptid_match): Don't declare.
3538         * fbsd-nat.c: Update.
3539         * infcmd.c: Update.
3540         * infrun.c: Update.
3541         * linux-nat.c: Update.
3542         * record-btrace.c: Update.
3543         * regcache.c: Update.
3544         * remote.c: Update.
3545
3546 2018-07-03  Tom Tromey  <tom@tromey.com>
3547
3548         * common/ptid.c (ptid_tid_p): Remove.
3549         * common/ptid.h (ptid_tid_p): Don't declare.
3550         * sol-thread.c: Update.
3551
3552 2018-07-03  Tom Tromey  <tom@tromey.com>
3553
3554         * common/ptid.c (ptid_lwp_p): Remove.
3555         * common/ptid.h (ptid_lwp_p): Don't declare.
3556         * fbsd-nat.c: Update.
3557         * linux-nat.c: Update.
3558         * nat/linux-procfs.c: Update.
3559         * nat/x86-linux-dregs.c: Update.
3560         * sol-thread.c: Update.
3561
3562 2018-07-03  Tom Tromey  <tom@tromey.com>
3563
3564         * common/ptid.c (ptid_is_pid): Remove.
3565         * common/ptid.h (ptid_is_pid): Don't declare.
3566         * infrun.c: Update.
3567         * linux-nat.c: Update.
3568         * mi/mi-interp.c: Update.
3569         * remote.c: Update.
3570         * thread.c: Update.
3571
3572 2018-07-03  Tom Tromey  <tom@tromey.com>
3573
3574         * common/ptid.c (ptid_get_tid): Remove.
3575         * common/ptid.h (ptid_get_tid): Don't declare.
3576         * ada-tasks.c: Update.
3577         * aix-thread.c: Update.
3578         * bsd-uthread.c: Update.
3579         * darwin-nat.c: Update.
3580         * fbsd-nat.c: Update.
3581         * i386-darwin-nat.c: Update.
3582         * infrun.c: Update.
3583         * linux-tdep.c: Update.
3584         * nto-procfs.c: Update.
3585         * ppc-ravenscar-thread.c: Update.
3586         * python/py-infthread.c: Update.
3587         * ravenscar-thread.c: Update.
3588         * sol-thread.c: Update.
3589         * sparc-ravenscar-thread.c: Update.
3590         * windows-nat.c: Update.
3591
3592 2018-07-03  Tom Tromey  <tom@tromey.com>
3593
3594         * common/ptid.c (ptid_get_lwp): Remove.
3595         * common/ptid.h (ptid_get_lwp): Don't declare.
3596         * aarch64-linux-nat.c: Update.
3597         * ada-tasks.c: Update.
3598         * aix-thread.c: Update.
3599         * amd64-linux-nat.c: Update.
3600         * arm-linux-nat.c: Update.
3601         * corelow.c: Update.
3602         * fbsd-nat.c: Update.
3603         * fbsd-tdep.c: Update.
3604         * gnu-nat.c: Update.
3605         * i386-cygwin-tdep.c: Update.
3606         * i386-gnu-nat.c: Update.
3607         * i386-linux-nat.c: Update.
3608         * ia64-linux-nat.c: Update.
3609         * inf-ptrace.c: Update.
3610         * infrun.c: Update.
3611         * linux-fork.c: Update.
3612         * linux-nat.c: Update.
3613         * linux-tdep.c: Update.
3614         * linux-thread-db.c: Update.
3615         * mips-linux-nat.c: Update.
3616         * nat/aarch64-linux-hw-point.c: Update.
3617         * nat/aarch64-linux.c: Update.
3618         * nat/linux-btrace.c: Update.
3619         * nat/linux-osdata.c: Update.
3620         * nat/linux-procfs.c: Update.
3621         * nat/x86-linux-dregs.c: Update.
3622         * obsd-nat.c: Update.
3623         * ppc-fbsd-nat.c: Update.
3624         * ppc-linux-nat.c: Update.
3625         * procfs.c: Update.
3626         * python/py-infthread.c: Update.
3627         * ravenscar-thread.c: Update.
3628         * remote.c: Update.
3629         * s390-linux-nat.c: Update.
3630         * sol-thread.c: Update.
3631         * sol2-tdep.c: Update.
3632         * spu-linux-nat.c: Update.
3633         * x86-linux-nat.c: Update.
3634         * xtensa-linux-nat.c: Update.
3635
3636 2018-07-03  Tom Tromey  <tom@tromey.com>
3637
3638         * common/ptid.c (ptid_get_pid): Remove.
3639         * common/ptid.h (ptid_get_pid): Don't declare.
3640         * aarch64-linux-nat.c: Update.
3641         * ada-lang.c: Update.
3642         * aix-thread.c: Update.
3643         * alpha-bsd-nat.c: Update.
3644         * amd64-fbsd-nat.c: Update.
3645         * amd64-linux-nat.c: Update.
3646         * arm-linux-nat.c: Update.
3647         * arm-nbsd-nat.c: Update.
3648         * auxv.c: Update.
3649         * break-catch-syscall.c: Update.
3650         * breakpoint.c: Update.
3651         * bsd-uthread.c: Update.
3652         * corelow.c: Update.
3653         * ctf.c: Update.
3654         * darwin-nat.c: Update.
3655         * fbsd-nat.c: Update.
3656         * fbsd-tdep.c: Update.
3657         * gcore.c: Update.
3658         * gnu-nat.c: Update.
3659         * hppa-nbsd-nat.c: Update.
3660         * hppa-obsd-nat.c: Update.
3661         * i386-fbsd-nat.c: Update.
3662         * ia64-linux-nat.c: Update.
3663         * inf-ptrace.c: Update.
3664         * infcmd.c: Update.
3665         * inferior.c: Update.
3666         * inferior.h: Update.
3667         * inflow.c: Update.
3668         * infrun.c: Update.
3669         * linux-fork.c: Update.
3670         * linux-nat.c: Update.
3671         * linux-tdep.c: Update.
3672         * linux-thread-db.c: Update.
3673         * m68k-bsd-nat.c: Update.
3674         * mi/mi-interp.c: Update.
3675         * mi/mi-main.c: Update.
3676         * mips-linux-nat.c: Update.
3677         * mips-nbsd-nat.c: Update.
3678         * mips64-obsd-nat.c: Update.
3679         * nat/aarch64-linux-hw-point.c: Update.
3680         * nat/aarch64-linux.c: Update.
3681         * nat/linux-btrace.c: Update.
3682         * nat/linux-osdata.c: Update.
3683         * nat/linux-procfs.c: Update.
3684         * nat/x86-linux-dregs.c: Update.
3685         * nto-procfs.c: Update.
3686         * obsd-nat.c: Update.
3687         * ppc-linux-nat.c: Update.
3688         * ppc-nbsd-nat.c: Update.
3689         * ppc-obsd-nat.c: Update.
3690         * proc-service.c: Update.
3691         * procfs.c: Update.
3692         * python/py-inferior.c: Update.
3693         * python/py-infthread.c: Update.
3694         * ravenscar-thread.c: Update.
3695         * record.c: Update.
3696         * remote-sim.c: Update.
3697         * remote.c: Update.
3698         * rs6000-nat.c: Update.
3699         * s390-linux-nat.c: Update.
3700         * sh-nbsd-nat.c: Update.
3701         * sol-thread.c: Update.
3702         * sparc-nat.c: Update.
3703         * sparc64-tdep.c: Update.
3704         * spu-linux-nat.c: Update.
3705         * spu-tdep.c: Update.
3706         * target-debug.h: Update.
3707         * target.c: Update.
3708         * thread.c: Update.
3709         * tid-parse.c: Update.
3710         * tracefile-tfile.c: Update.
3711         * vax-bsd-nat.c: Update.
3712         * windows-nat.c: Update.
3713         * x86-linux-nat.c: Update.
3714         * x86-nat.c: Update.
3715
3716 2018-07-03  Tom Tromey  <tom@tromey.com>
3717
3718         * common/ptid.c (pid_to_ptid): Remove.
3719         * common/ptid.h (pid_to_ptid): Don't declare.
3720         * aix-thread.c: Update.
3721         * arm-linux-nat.c: Update.
3722         * common/ptid.c: Update.
3723         * common/ptid.h: Update.
3724         * corelow.c: Update.
3725         * ctf.c: Update.
3726         * darwin-nat.c: Update.
3727         * fbsd-nat.c: Update.
3728         * fork-child.c: Update.
3729         * gnu-nat.c: Update.
3730         * go32-nat.c: Update.
3731         * inf-ptrace.c: Update.
3732         * infcmd.c: Update.
3733         * inferior.c: Update.
3734         * infrun.c: Update.
3735         * linux-fork.c: Update.
3736         * linux-nat.c: Update.
3737         * nat/aarch64-linux-hw-point.c: Update.
3738         * nat/fork-inferior.c: Update.
3739         * nat/x86-linux-dregs.c: Update.
3740         * nto-procfs.c: Update.
3741         * obsd-nat.c: Update.
3742         * procfs.c: Update.
3743         * progspace.c: Update.
3744         * remote.c: Update.
3745         * rs6000-nat.c: Update.
3746         * s390-linux-nat.c: Update.
3747         * sol-thread.c: Update.
3748         * spu-linux-nat.c: Update.
3749         * target.c: Update.
3750         * top.c: Update.
3751         * tracefile-tfile.c: Update.
3752         * windows-nat.c: Update.
3753
3754 2018-07-03  Tom Tromey  <tom@tromey.com>
3755
3756         * common/ptid.h (ptid_build): Don't declare.
3757         * common/ptid.c (ptid_build): Remove.
3758         * aix-thread.c: Update.
3759         * bsd-kvm.c: Update.
3760         * bsd-uthread.c: Update.
3761         * common/agent.c: Update.
3762         * common/ptid.c: Update.
3763         * common/ptid.h: Update.
3764         * corelow.c: Update.
3765         * darwin-nat.c: Update.
3766         * fbsd-nat.c: Update.
3767         * gnu-nat.c: Update.
3768         * linux-fork.c: Update.
3769         * linux-nat.c: Update.
3770         * linux-thread-db.c: Update.
3771         * nat/linux-osdata.c: Update.
3772         * nat/linux-procfs.c: Update.
3773         * nto-procfs.c: Update.
3774         * obsd-nat.c: Update.
3775         * proc-service.c: Update.
3776         * procfs.c: Update.
3777         * ravenscar-thread.c: Update.
3778         * remote-sim.c: Update.
3779         * remote.c: Update.
3780         * sol-thread.c: Update.
3781         * target.c: Update.
3782         * windows-nat.c: Update.
3783
3784 2018-07-03  Tom Tromey  <tom@tromey.com>
3785
3786         * infrun.c (follow_exec): Use exit_inferior_silent.
3787         * inferior.c (exit_inferior_num_silent): Remove.
3788         * inferior.h (exit_inferior_num_silent): Don't declare.
3789
3790 2018-07-03  Tom Tromey  <tom@tromey.com>
3791
3792         PR cli/23340:
3793         * darwin-nat.c (darwin_attach_pid): Reset inferior and
3794         inferior_ptid on error.
3795
3796 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
3797             Simon Marchi  <simon.marchi@polymtl.ca>
3798
3799         PR tdep/8282
3800         * disasm.h (gdb_disassembler): Add
3801         `m_disassembler_options_holder'. member
3802         * disasm.c (get_all_disassembler_options): New function.
3803         (gdb_disassembler::gdb_disassembler): Use it.
3804         (gdb_buffered_insn_length_init_dis): Likewise.
3805         (gdb_buffered_insn_length): Adjust accordingly.
3806         (set_disassembler_options): Handle options with arguments.
3807         (show_disassembler_options_sfunc): Likewise.  Add a leading new
3808         line if showing options with descriptions.
3809         (disassembler_options_completer): Adapt to using the
3810         `disasm_options_and_args_t' structure.
3811         * mips-tdep.c (mips_disassembler_options): New variable.
3812         (mips_disassembler_options_o32): Likewise.
3813         (mips_disassembler_options_n32): Likewise.
3814         (mips_disassembler_options_n64): Likewise.
3815         (gdb_print_insn_mips): Don't set `disassembler_options'.
3816         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
3817         functions.
3818         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
3819         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
3820         `gdbarch_disassembler_options_implicit' and
3821         `gdbarch_valid_disassembler_options'.
3822         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
3823         `disasm_options_and_args_t' structure.
3824         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
3825         method.
3826         (valid_disassembler_options): Switch from `disasm_options_t' to
3827         the `disasm_options_and_args_t' structure.
3828         * NEWS: Document `set disassembler-options' support for the MIPS
3829         target.
3830         * gdbarch.h: Regenerate.
3831         * gdbarch.c: Regenerate.
3832
3833 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
3834
3835         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
3836
3837 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
3838
3839         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
3840         parameter in call to amd64_target_description.
3841         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
3842         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
3843         (amd64fbsd_init_abi): Likewise.
3844         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
3845         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
3846         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
3847         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
3848
3849 2018-06-29  Pedro Alves  <palves@redhat.com>
3850
3851         * gdb/amd64-tdep.h (amd64_create_target_description): Add
3852         "segments" parameter.
3853         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
3854         (_initialize_amd64_tdep): Update call to
3855         amd64_create_target_description.
3856         (amd64_target_description): Add "segments" parameter.  Adjust
3857         the implementation to use it.
3858         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
3859         call to amd64_create_target_description.
3860         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
3861         * gdb/arch/amd64.h (amd64_create_target_description): Add
3862         "segments" register.
3863         * gdb/arch/amd64.c (amd64_create_target_description): Add
3864         "segments" parameter.  Call create_feature_i386_64bit_segments
3865         only if SEGMENTS is true.
3866         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
3867         call to amd64_create_target_description.
3868
3869 2018-06-29  Pedro Alves  <palves@redhat.com>
3870
3871         * thread.c (thread_target_id_str): New, factored out from ...
3872         (print_thread_info_1): ... here.  Use it to compute the max
3873         "Target Id" column width.
3874
3875 2018-06-29  Pedro Alves  <palves@redhat.com>
3876
3877         * remote.c (remote_target::extra_thread_info): Delete
3878         'display_buf' and 'n' locals.  from the cache, regardless of
3879         packet mechanims is in use.  Use cache for qThreadExtra and qP
3880         methods too.
3881
3882 2018-06-29  Pedro Alves  <palves@redhat.com>
3883
3884         * blockframe.c (find_pc_sect_containing_function): New function.
3885         * breakpoint.c (print_breakpoint_location): Don't call
3886         find_pc_sect_function.
3887         * linespec.c (create_sals_line_offset): Record the location's
3888         symbol in the sal.
3889         * linespec.c (convert_address_location_to_sals): Fill in sal's
3890         symbol with find_pc_sect_containing_function.
3891         * symtab.c (find_function_start_sal): Rename to ...
3892         (find_function_start_sal_1): ... this.
3893         (find_function_start_sal): Reimplement as wrapper around
3894         find_function_start_sal_1, and use
3895         find_pc_sect_containing_function to fill in the sal's symbol.
3896         (find_function_start_sal(symbol*, bool)): Adjust.
3897         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
3898         comments.
3899         (find_pc_sect_containing_function): Declare.
3900
3901 2018-06-29  Pedro Alves  <palves@redhat.com>
3902
3903         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
3904         true if the the location has no symbol.
3905
3906 2018-06-28  Tom Tromey  <tom@tromey.com>
3907
3908         * NEWS: Mention --enable-codesign.
3909         * silent-rules.mk (ECHO_SIGN): New variable.
3910         * configure.ac: Add --enable-codesign.
3911         * configure: Rebuild.
3912         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
3913         (gdb$(EXEEXT)): Optionally invoke codesign.
3914
3915 2018-06-28  Pedro Alves  <palves@redhat.com>
3916
3917         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
3918         comments.
3919         (switch_to_thread_no_regs): Adjust comment.
3920         * infcmd.c (stop_pc): Delete.
3921         (post_create_inferior, info_program_command): Replace references
3922         to stop_pc with references to thread_info->suspend.stop_pc.
3923         * inferior.h (stop_pc): Delete declaration.
3924         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
3925         (handle_inferior_event_1, handle_signal_stop)
3926         (process_event_stop_test, keep_going_stepped_thread)
3927         (handle_step_into_function, handle_step_into_function_backward)
3928         (print_stop_location): Replace references to stop_pc with
3929         references to thread_info->suspend.stop_pc.
3930         (struct infcall_suspend_state) <stop_pc>: Delete field.
3931         (save_infcall_suspend_state, restore_infcall_suspend_state):
3932         Remove references to inf_stat->stop_pc.
3933         * linux-fork.c (fork_load_infrun_state): Likewise.
3934         * record-btrace.c (record_btrace_set_replay): Likewise.
3935         * record-full.c (record_full_goto_entry): Likewise.
3936         * remote.c (print_one_stopped_thread): Likewise.
3937         * target.c (target_resume): Extend comment.
3938         * thread.c (set_executing_thread): New.
3939         (set_executing): Use it.
3940         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
3941         Remove references to stop_pc.
3942
3943 2018-06-28  Pedro Alves  <palves@redhat.com>
3944
3945         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
3946         Moving fetching stop_pc until after ecs->event_thread is refreshed.
3947
3948 2018-06-28  Tom Tromey  <tom@tromey.com>
3949
3950         * coffread.c (coff_symfile_finish): Update.
3951         * xcoffread.c (xcoff_symfile_finish): Update.
3952         * elfread.c (elf_symfile_finish): Update.
3953         * symfile.h (dwarf2_free_objfile): Don't declare.
3954         * dwarf2read.c (_initialize_dwarf2_read): Use
3955         register_objfile_data_with_cleanup.
3956         (dwarf2_free_objfile): Now static.  Change signature.
3957
3958 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3959
3960         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
3961         option "-o" to add-symbol-file-load to add an offset to each
3962         section's load address.
3963         * symfile.c (set_objfile_default_section_offset): New function.
3964
3965 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3966
3967         * symfile.c (add_symbol_file_command): Make sure that sections
3968         with the same name are sorted in the same order.
3969
3970 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3971
3972         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
3973         require the second argument.  If omitted, load sections at the
3974         addresses specified in the file.
3975
3976 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3977
3978         * symfile.c (symbol_file_command, symbol_file_add_main_1)
3979         (_initialize_symfile): Add option "-o" to symbol-file to add an
3980         offset to each section of the symbol file.
3981
3982 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
3983
3984         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
3985
3986 2018-06-27  Tom Tromey  <tom@tromey.com>
3987
3988         * stack.c (_initialize_stack): Update "func" help text.
3989
3990 2018-06-27  Tom Tromey  <tom@tromey.com>
3991
3992         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
3993         std::vector.
3994         (unwind_infopy_str, pyuw_create_unwind_info)
3995         (unwind_infopy_add_saved_register, pyuw_sniffer)
3996         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
3997         Update.
3998         (struct saved_reg): Add constructor.
3999         <value>: Now a gdbpy_ref<>.
4000
4001 2018-06-27  Tom Tromey  <tom@tromey.com>
4002
4003         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
4004
4005 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4006
4007         * gdb-gdb.py.in: Format using autopep8.
4008
4009 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4010
4011         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
4012         (type_lookup_function): Recognize CORE_ADDR values.
4013
4014 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4015
4016         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
4017         print tag_name.
4018
4019 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4020
4021         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
4022         <__lt__>: Add.
4023
4024 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4025
4026         * gdb-gdb.py: Move to...
4027         * gdb-gdb.py.in: ... here.
4028         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
4029         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
4030         dependencies.
4031         (distclean): Remove gdb-gdb.py when cleaning.
4032         (gdb-gdb.py, gdb-gdb.gdb): New rules.
4033         * configure: Re-generate.
4034
4035 2018-06-27  Pedro Alves  <palves@redhat.com>
4036
4037         * proc-service.c (get_ps_regcache): New.
4038         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
4039         (ps_lsetfpregs): Use it.
4040
4041 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
4042
4043         PR gdb/21695
4044         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
4045         (dwarf_decode_lines_1): Adjust.
4046
4047 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
4048
4049         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
4050         override.
4051         <info_proc>: Likewise.
4052
4053 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
4054
4055         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
4056         to windows_fetch_one_register, and only handle the case of
4057         fetching one register.  Move the code that reloads the context
4058         and iterates over all registers if R is negative to...
4059         (windows_nat_target::fetch_registers): ... here.
4060         (do_windows_store_inferior_registers): Rename to
4061         windows_store_one_register, and only handle the case of storing
4062         one register.  Move the code that handles the case where r is
4063         negative to...
4064         (windows_nat_target::store_registers) ... here.
4065
4066 2018-06-26  Tom Tromey  <tom@tromey.com>
4067
4068         PR rust/22574:
4069         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
4070         * rust-lang.c (rust_print_struct_def): Add podata parameter.
4071         Update.
4072         (rust_internal_print_type): Add podata parameter.
4073         (rust_print_type): Update.
4074
4075 2018-06-26  Tom Tromey  <tom@tromey.com>
4076
4077         * typeprint.h (struct print_offset_data) <update, finish,
4078         maybe_print_hole>: New methods.
4079         <indentation>: New constant.
4080         * typeprint.c (print_offset_data::indentation): Define.
4081         (print_offset_data::maybe_print_hole, print_offset_data::update)
4082         (print_offset_data::finish): Move from c-typeprint.c and rename.
4083         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
4084         (print_spaces_filtered_with_print_options): Update.
4085         (c_print_type_union_field_offset, maybe_print_hole)
4086         (c_print_type_struct_field_offset): Move to typeprint.c and
4087         rename.
4088         (c_type_print_base_struct_union): Update.
4089
4090 2018-06-25  Pedro Alves  <palves@redhat.com>
4091
4092         * gdbthread.h (thread_info_ref, delete_thread)
4093         (delete_thread_silent, first_thread_of_inferior)
4094         (any_thread_of_inferior, switch_to_thread)
4095         (enable_thread_stack_temporaries)
4096         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
4097         (get_last_thread_stack_temporary)
4098         (value_in_thread_stack_temporaries, can_access_registers_thread):
4099         Spell out "struct thread_info" instead of just "thread_info".
4100         * inferior.h (notice_new_inferior): Likewise.
4101
4102 2018-06-25  Pedro Alves  <palves@redhat.com>
4103
4104         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
4105         pass thread_info pointer to delete_thread.
4106         (windows_nat_target::detach): Pass inferior pointer to
4107         detach_inferior.
4108         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
4109         delete_thread.
4110         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
4111         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
4112         and pass a thread_info pointer to delete_thread.
4113         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
4114         pass thread_info pointer to delete_thread.
4115         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
4116         delete_thread_silent call.
4117         * procfs.c (procfs_target::detach): Pass inferior pointer to
4118         detach_inferior.
4119         (procfs_target::wait): Pass thread_info pointer to delete_thread.
4120         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
4121         delete_thread_silent call.
4122         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
4123         pass thread_info pointer to delete_thread.
4124         (windows_nat_target::detach): Pass inferior pointer to
4125         delete_inferior.
4126
4127 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
4128
4129         * regcache.c (readable_regcache::read_part): Fix asserts.
4130         (reg_buffer::raw_collect_part): New function.
4131         (regcache::write_part): Fix asserts.
4132         (reg_buffer::raw_supply_part): New function.
4133         (regcache::transfer_regset_register): New helper function.
4134         (regcache::transfer_regset): Call new functions.
4135         (regcache_supply_regset): Use gdb_byte*.
4136         (regcache::supply_regset): Likewise.
4137         (regcache_collect_regset): Likewise.
4138         (regcache::collect_regset): Likewise.
4139         * regcache.h (reg_buffer::raw_collect_part): New declaration.
4140         (reg_buffer::raw_supply_part): Likewise.
4141         (regcache::transfer_regset_register): Likewise.
4142         (regcache::transfer_regset): Use gdb_byte*.
4143
4144 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
4145
4146         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
4147
4148 2018-06-21  Pedro Alves  <palves@redhat.com>
4149
4150         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
4151         instead of a ptid_t.  All callers adjusted.
4152         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
4153         adjusted.
4154         (print_ada_task_info, display_current_task_id, task_command_1):
4155         Adjust.
4156         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
4157         inferior_thread.
4158         (breakpoint_kind): Adjust.
4159         (remove_breakpoints_pid): Rename to ...
4160         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
4161         pointer.  All callers adjusted.
4162         (bpstat_clear_actions): Use inferior_thread.
4163         (get_bpstat_thread): New.
4164         (bpstat_do_actions): Use it.
4165         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
4166         to take a thread_info pointer.  All callers adjusted.
4167         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
4168         (breakpoint_re_set_thread): Use inferior_thread.
4169         * breakpoint.h (struct inferior): Forward declare.
4170         (bpstat_stop_status): Update.
4171         (remove_breakpoints_pid): Delete.
4172         (remove_breakpoints_inf): New.
4173         * bsd-uthread.c (bsd_uthread_target::wait)
4174         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
4175         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
4176         (maint_btrace_packet_history_cmd)
4177         (maint_btrace_clear_packet_history_cmd): Adjust.
4178         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
4179         inferior_thread.
4180         * cli/cli-interp.c: Include "inferior.h".
4181         * common/refcounted-object.h (struct
4182         refcounted_object_ref_policy): New.
4183         * compile/compile-object-load.c: Include gdbthread.h.
4184         (store_regs): Use inferior_thread.
4185         * corelow.c (core_target::close): Use current_inferior.
4186         (core_target_open): Adjust to use first_thread_of_inferior and use
4187         the current inferior.
4188         * ctf.c (ctf_target::close): Adjust to use current_inferior.
4189         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
4190         <thread>: ... this new field.  All references adjusted.
4191         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
4192         Take a thread_info pointer instead of a ptid_t.
4193         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
4194         (dummy_frame_discard, register_dummy_frame_dtor): Take a
4195         thread_info pointer instead of a ptid_t.
4196         * elfread.c: Include "inferior.h".
4197         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
4198         Use inferior_thread.
4199         * eval.c (evaluate_subexp): Likewise.
4200         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
4201         inferior_thread.
4202         * gdb_proc_service.h (struct thread_info): Forward declare.
4203         (struct ps_prochandle) <ptid>: Delete, replaced by ...
4204         <thread>: ... this new field.  All references adjusted.
4205         * gdbarch.h, gdbarch.c: Regenerate.
4206         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
4207         'thread' parameter.  All implementations and callers adjusted.
4208         * gdbthread.h (thread_info) <set_running>: New method.
4209         (delete_thread, delete_thread_silent): Take a thread_info pointer
4210         instead of a ptid.
4211         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
4212         (first_thread_of_process): Delete, replaced by ...
4213         (first_thread_of_inferior): ... this new function.  All callers
4214         adjusted.
4215         (any_live_thread_of_process): Delete, replaced by ...
4216         (any_live_thread_of_inferior): ... this new function.  All callers
4217         adjusted.
4218         (switch_to_thread, switch_to_no_thread): Declare.
4219         (is_executing): Delete.
4220         (enable_thread_stack_temporaries): Update comment.
4221         <enable_thread_stack_temporaries>: Take a thread_info pointer
4222         instead of a ptid_t.  Incref the thread.
4223         <~enable_thread_stack_temporaries>: Decref the thread.
4224         <m_ptid>: Delete
4225         <m_thr>: New.
4226         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
4227         (get_last_thread_stack_temporary)
4228         (value_in_thread_stack_temporaries, can_access_registers_thread):
4229         Take a thread_info pointer instead of a ptid_t.  All callers
4230         adjusted.
4231         * infcall.c (get_call_return_value): Use inferior_thread.
4232         (run_inferior_call): Work with thread pointers instead of ptid_t.
4233         (call_function_by_hand_dummy): Work with thread pointers instead
4234         of ptid_t.  Use thread_info_ref.
4235         * infcmd.c (proceed_thread_callback): Access thread's state
4236         directly.
4237         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
4238         access thread's state directly.
4239         (continue_command): Use inferior_thread.
4240         (info_program_command): Use find_thread_ptid and access thread
4241         state directly.
4242         (proceed_after_attach_callback): Use thread state directly.
4243         (notice_new_inferior): Take a thread_info pointer instead of a
4244         ptid_t.  All callers adjusted.
4245         (exit_inferior): Take an inferior pointer instead of a pid.  All
4246         callers adjusted.
4247         (exit_inferior_silent): New.
4248         (detach_inferior): Delete.
4249         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
4250         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
4251         (detach_inferior_command, kill_inferior_command): Use
4252         find_inferior_id instead of valid_gdb_inferior_id and
4253         gdb_inferior_id_to_pid.
4254         (inferior_command): Use inferior and thread pointers.
4255         * inferior.h (struct thread_info): Forward declare.
4256         (notice_new_inferior): Take a thread_info pointer instead of a
4257         ptid_t.  All callers adjusted.
4258         (detach_inferior): Delete declaration.
4259         (exit_inferior, exit_inferior_silent): Take an inferior pointer
4260         instead of a pid.  All callers adjusted.
4261         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
4262         (valid_gdb_inferior_id): Delete.
4263         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
4264         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
4265         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
4266         ...
4267         <inf>: ... this new field.
4268         <step_ptid>: Delete, replaced by ...
4269         <step_thread>: ... this new field.
4270         (get_displaced_stepping_state): Take an inferior pointer instead
4271         of a pid.  All callers adjusted.
4272         (displaced_step_in_progress_any_inferior): Adjust.
4273         (displaced_step_in_progress_thread): Take a thread pointer instead
4274         of a ptid_t.  All callers adjusted.
4275         (displaced_step_in_progress, add_displaced_stepping_state): Take
4276         an inferior pointer instead of a pid.  All callers adjusted.
4277         (get_displaced_step_closure_by_addr): Adjust.
4278         (remove_displaced_stepping_state): Take an inferior pointer
4279         instead of a pid.  All callers adjusted.
4280         (displaced_step_prepare_throw, displaced_step_prepare)
4281         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
4282         All callers adjusted.
4283         (start_step_over): Adjust.
4284         (infrun_thread_ptid_changed): Remove bit updating ptids in the
4285         displaced step queue.
4286         (do_target_resume): Adjust.
4287         (fetch_inferior_event): Use inferior_thread.
4288         (context_switch, get_inferior_stop_soon): Take an
4289         execution_control_state pointer instead of a ptid_t.  All callers
4290         adjusted.
4291         (switch_to_thread_cleanup): Delete.
4292         (stop_all_threads): Use scoped_restore_current_thread.
4293         * inline-frame.c: Include "gdbthread.h".
4294         (inline_state) <inline_state>: Take a thread pointer instead of a
4295         ptid_t.  All callers adjusted.
4296         <ptid>: Delete, replaced by ...
4297         <thread>: ... this new field.
4298         (find_inline_frame_state): Take a thread pointer instead of a
4299         ptid_t.  All callers adjusted.
4300         (skip_inline_frames, step_into_inline_frame)
4301         (inline_skipped_frames, inline_skipped_symbol): Take a thread
4302         pointer instead of a ptid_t.  All callers adjusted.
4303         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
4304         (inline_skipped_frames, inline_skipped_symbol): Likewise.
4305         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
4306         pointers directly.
4307         * linux-nat.c (get_detach_signal): Likewise.
4308         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
4309         (thread_db_notice_clone): Adjust.
4310         (thread_db_find_new_threads_silently)
4311         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
4312         a thread pointer instead of a ptid_t.  All callers adjusted.
4313         * mi/mi-cmd-var.c: Include "inferior.h".
4314         (mi_cmd_var_update_iter): Update to use thread pointers.
4315         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
4316         inferior directly.
4317         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
4318         out to ...
4319         (mi_output_running): ... this new function.
4320         (mi_on_resume_1): Adjust to use it.
4321         (mi_user_selected_context_changed): Adjust to use inferior_thread.
4322         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
4323         directly.
4324         (interrupt_thread_callback): : Adjust to use thread and inferior
4325         pointers.
4326         * proc-service.c: Include "gdbthread.h".
4327         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
4328         * progspace-and-thread.c: Include "inferior.h".
4329         * progspace.c: Include "inferior.h".
4330         * python/py-exitedevent.c (create_exited_event_object): Adjust to
4331         hold a reference to an inferior_object.
4332         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
4333         inferior_thread.
4334         * python/py-inferior.c (struct inferior_object): Give the type a
4335         tag name instead of a typedef.
4336         (python_on_normal_stop): No need to check if the current thread is
4337         listed.
4338         (inferior_to_inferior_object): Change return type to
4339         inferior_object.  All callers adjusted.
4340         (find_thread_object): Delete, bits factored out to ...
4341         (thread_to_thread_object): ... this new function.
4342         * python/py-infthread.c (create_thread_object): Use
4343         inferior_to_inferior_object.
4344         (thpy_is_stopped): Use thread pointer directly.
4345         (gdbpy_selected_thread): Use inferior_thread.
4346         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
4347         field, replaced with ...
4348         <thread>: ... this new field.  All users adjusted.
4349         (btpy_insn_or_gap_new): Drop const.
4350         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
4351         callers adjusted.
4352         * python/py-record.c: Include "gdbthread.h".
4353         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
4354         a ptid_t.  All callers adjusted.
4355         (gdbpy_current_recording): Use inferior_thread.
4356         * python/py-record.h (recpy_record_object) <ptid>: Delete
4357         field, replaced with ...
4358         <thread>: ... this new field.  All users adjusted.
4359         (recpy_element_object) <ptid>: Delete
4360         field, replaced with ...
4361         <thread>: ... this new field.  All users adjusted.
4362         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
4363         a ptid_t.  All callers adjusted.
4364         * python/py-threadevent.c: Include "gdbthread.h".
4365         (get_event_thread): Use thread_to_thread_object.
4366         * python/python-internal.h (struct inferior_object): Forward
4367         declare.
4368         (find_thread_object, find_inferior_object): Delete declarations.
4369         (thread_to_thread_object, inferior_to_inferior_object): New
4370         declarations.
4371         * record-btrace.c: Include "inferior.h".
4372         (require_btrace_thread): Use inferior_thread.
4373         (record_btrace_frame_sniffer)
4374         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
4375         (get_thread_current_frame): Use scoped_restore_current_thread and
4376         switch_to_thread.
4377         (get_thread_current_frame): Use thread pointer directly.
4378         (record_btrace_replay_at_breakpoint): Use thread's inferior
4379         pointer directly.
4380         * record-full.c: Include "inferior.h".
4381         * regcache.c: Include "gdbthread.h".
4382         (get_thread_arch_regcache): Use the inferior's address space
4383         directly.
4384         (get_thread_regcache, registers_changed_thread): New.
4385         * regcache.h (get_thread_regcache(thread_info *thread)): New
4386         overload.
4387         (registers_changed_thread): New.
4388         (remote_target) <remote_detach_1>: Swap order of parameters.
4389         (remote_add_thread): <remote_add_thread>: Return the new thread.
4390         (get_remote_thread_info(ptid_t)): New overload.
4391         (remote_target::remote_notice_new_inferior): Use thread pointers
4392         directly.
4393         (remote_target::process_initial_stop_replies): Use
4394         thread_info::set_running.
4395         (remote_target::remote_detach_1, remote_target::detach)
4396         (extended_remote_target::detach): Adjust.
4397         * stack.c (frame_show_address): Use inferior_thread.
4398         * target-debug.h (target_debug_print_thread_info_pp): New.
4399         * target-delegates.c: Regenerate.
4400         * target.c (default_thread_address_space): Delete.
4401         (memory_xfer_partial_1): Use current_inferior.
4402         (target_detach): Use current_inferior.
4403         (target_thread_address_space): Delete.
4404         (generic_mourn_inferior): Use current_inferior.
4405         * target.h (struct target_ops) <thread_address_space>: Delete.
4406         (target_thread_address_space): Delete.
4407         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
4408         pointers directly.
4409         (delete_thread_1, delete_thread, delete_thread_silent): Take a
4410         thread pointer instead of a ptid_t.  Adjust all callers.
4411         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
4412         (first_thread_of_process): Delete, replaced by ...
4413         (first_thread_of_inferior): ... this new function.  All callers
4414         adjusted.
4415         (any_thread_of_process): Rename to ...
4416         (any_thread_of_inferior): ... this, and take an inferior pointer.
4417         (any_live_thread_of_process): Rename to ...
4418         (any_live_thread_of_inferior): ... this, and take an inferior
4419         pointer.
4420         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
4421         (value_in_thread_stack_temporaries)
4422         (get_last_thread_stack_temporary): Take a thread pointer instead
4423         of a ptid_t.  Adjust all callers.
4424         (thread_info::set_running): New.
4425         (validate_registers_access): Use inferior_thread.
4426         (can_access_registers_ptid): Rename to ...
4427         (can_access_registers_thread): ... this, and take a thread
4428         pointer.
4429         (print_thread_info_1): Adjust to compare thread pointers instead
4430         of ptids.
4431         (switch_to_no_thread, switch_to_thread): Make extern.
4432         (scoped_restore_current_thread::~scoped_restore_current_thread):
4433         Use m_thread pointer directly.
4434         (scoped_restore_current_thread::scoped_restore_current_thread):
4435         Use inferior_thread.
4436         (thread_command): Use thread pointer directly.
4437         (thread_num_make_value_helper): Use inferior_thread.
4438         * top.c (execute_command): Use inferior_thread.
4439         * tui/tui-interp.c: Include "inferior.h".
4440         * varobj.c (varobj_create): Use inferior_thread.
4441         (value_of_root_1): Use find_thread_global_id instead of
4442         global_thread_id_to_ptid.
4443
4444 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
4445
4446         * regcache.c (readable_regcache::read_part): Avoid memcpy when
4447         possible.
4448         (regcache::write_part): Likewise.
4449         (readable_regcache::cooked_read_part): Update comment.
4450         (readable_regcache::cooked_write_part): Likewise.
4451         * regcache.h: (readable_regcache::read_part): Likewise.
4452         (regcache::write_part): Likewise.
4453
4454 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
4455             Dirk Schubert  <dirk.schubert@arm.com>
4456
4457         * aarch64-linux-nat.c (post_attach): New.
4458         (aarch64_linux_nat_target::post_attach): Override post_attach to
4459         record the number of hardware debug registers.
4460
4461 2018-06-20  Tom Tromey  <tom@tromey.com>
4462
4463         * python/py-param.c (add_setshow_generic): Make parameters const.
4464         (parmpy_init): Update.
4465
4466 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
4467
4468         * regcache.h (regcache_cooked_read_ftype): Rename to...
4469         (register_read_ftype): ...this, change type to function_view.
4470         (class reg_buffer) <save>: Remove src parameter.
4471         (readonly_detached_regcache) <readonly_detached_regcache>: Make
4472         parameter non-const in first overload.  Remove src parameter in
4473         second overload.
4474         * regcache.c (do_cooked_read): Remove.
4475         (readonly_detached_regcache::readonly_detached_regcache): Make
4476         parameter non-const, adjust call to other constructor.
4477         (reg_buffer::save): Remove src parameter.
4478         * frame.c (do_frame_register_read): Remove.
4479         (frame_save_as_regcache): Use lambda function.
4480         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
4481         parameter to ppu2spu_data *.
4482         (ppu2spu_sniffer): Use lambda function.
4483
4484 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
4485
4486         * record-full.c (record_full_target::insert_breakpoint): Remove
4487         "struct" keyword, add const.
4488
4489 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
4490
4491         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
4492         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
4493         * configure.ac: Remove AC_PREREQ, add missing quoting.
4494         * gnulib/configure.ac: Modernize usage of
4495         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
4496         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
4497         (AUTOMAKE_VERSION): Bump to 1.15.1.
4498         * configure: Re-generate.
4499         * config.in: Re-generate.
4500         * aclocal.m4: Re-generate.
4501         * gnulib/aclocal.m4: Re-generate.
4502         * gnulib/config.in: Re-generate.
4503         * gnulib/configure: Re-generate.
4504         * gnulib/import/Makefile.in: Re-generate.
4505
4506 2018-06-19  Pedro Alves  <palves@redhat.com>
4507
4508         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
4509         (lookup_minimal_symbol_by_pc_section): ... here with
4510         gdb_assert_not_reached added.
4511
4512 2018-06-19  Pedro Alves  <palves@redhat.com>
4513
4514         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
4515         parameter with a block parameter.  Compare location's block symbol
4516         with the frame's block instead of addresses.
4517         (skip_inline_frames): Pass the current block instead of the
4518         frame's address.  Break out as soon as we determine the frame
4519         should not be skipped.
4520
4521 2018-06-18  Tom Tromey  <tom@tromey.com>
4522
4523         * solib-aix.c (solib_aix_get_section_offsets): Return
4524         unique_xmalloc_ptr.
4525         (solib_aix_solib_create_inferior_hook): Update.
4526
4527 2018-06-18  Tom Tromey  <tom@tromey.com>
4528
4529         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
4530
4531 2018-06-18  Tom Tromey  <tom@tromey.com>
4532
4533         * solib-frv.c (frv_relocate_main_executable): Use
4534         unique_xmalloc_ptr.
4535         * solib-dsbt.c (dsbt_relocate_main_executable): Use
4536         unique_xmalloc_ptr.
4537
4538 2018-06-18  Tom Tromey  <tom@tromey.com>
4539
4540         * objfiles.h (inhibit_section_map_updates): Update.
4541         (resume_section_map_updates, resume_section_map_updates_cleanup):
4542         Remove.
4543         * solib-svr4.c (svr4_handle_solib_event): Update.
4544         * objfiles.c (inhibit_section_map_updates): Return
4545         scoped_restore_tmpl<int>.
4546         (resume_section_map_updates, resume_section_map_updates_cleanup):
4547         Remove.
4548
4549 2018-06-18  Tom Tromey  <tom@tromey.com>
4550
4551         * valprint.h (read_string): Update.
4552         * valprint.c (read_string): Change type of "buffer".
4553         (val_print_string): Update.
4554         * python/py-value.c (valpy_string): Update.
4555         * language.h (struct language_defn) <la_get_string>: Change
4556         type of "buffer".
4557         (default_get_string, c_get_string): Update.
4558         * language.c (default_get_string): Change type of "buffer".
4559         * guile/scm-value.c (gdbscm_value_to_string): Update.
4560         * c-lang.c (c_get_string): Change type of "buffer".
4561
4562 2018-06-18  Tom Tromey  <tom@tromey.com>
4563
4564         * ser-mingw.c (struct pipe_state_destroyer): New.
4565         (pipe_state_up): New typedef.
4566         (cleanup_pipe_state): Remove.
4567         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
4568
4569 2018-06-18  Tom Tromey  <tom@tromey.com>
4570
4571         * rust-lang.h (rust_yyerror): Don't declare.
4572         * rust-lang.c (rust_language_defn): Update.
4573         * rust-exp.y (yyerror): Now static.
4574         * parse.c (parse_exp_in_context_1): Update.
4575         * p-lang.h (p_yyerror): Don't declare.
4576         * p-lang.c (p_language_defn): Update.
4577         * p-exp.y (yyerror): Now static.
4578         * opencl-lang.c (opencl_language_defn): Update.
4579         * objc-lang.c (objc_language_defn): Update.
4580         * m2-lang.h (m2_yyerror): Don't declare.
4581         * m2-lang.c (m2_language_defn): Update.
4582         * m2-exp.y (yyerror): Now static.
4583         * language.h (struct language_defn) <la_error>: Remove.
4584         * language.c (unk_lang_error): Remove.
4585         (unknown_language_defn, auto_language_defn): Remove.
4586         * go-lang.h (go_yyerror): Don't declare.
4587         * go-lang.c (go_language_defn): Update.
4588         * go-exp.y (yyerror): Now static.
4589         * f-lang.h (f_yyerror): Don't declare.
4590         * f-lang.c (f_language_defn): Update.
4591         * f-exp.y (yyerror): Now static.
4592         * d-lang.h (d_yyerror): Don't declare.
4593         * d-lang.c (d_language_defn): Update.
4594         * d-exp.y (yyerror): Now static.
4595         * c-lang.h (c_yyerror): Don't declare.
4596         * c-lang.c (c_language_defn, cplus_language_defn)
4597         (asm_language_defn, minimal_language_defn): Update.
4598         * c-exp.y (yyerror): Now static.
4599         * ada-lang.h (ada_yyerror): Don't declare.
4600         * ada-lang.c (ada_language_defn): Update.
4601         * ada-exp.y (yyerror): Now static.
4602
4603 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
4604
4605         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
4606         (store_sveregs_to_thread): Likewise.
4607         (aarch64_linux_fetch_inferior_registers): Check for SVE.
4608         (aarch64_linux_store_inferior_registers): Likewise.
4609         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
4610         function.
4611         (aarch64_sve_regs_copy_to_regcache): Likewise.
4612         (aarch64_sve_regs_copy_from_regcache): Likewise.
4613         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
4614         declaration.
4615         (aarch64_sve_regs_copy_to_regcache): Likewise.
4616         (aarch64_sve_regs_copy_from_regcache): Likewise.
4617         (sve_context): Structure from Linux headers.
4618         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
4619         (SVE_SIG_ZREG_SIZE): Likewise.
4620         (SVE_SIG_PREG_SIZE): Likewise.
4621         (SVE_SIG_FFR_SIZE): Likewise.
4622         (SVE_SIG_REGS_OFFSET): Likewise.
4623         (SVE_SIG_ZREGS_OFFSET): Likewise.
4624         (SVE_SIG_ZREG_OFFSET): Likewise.
4625         (SVE_SIG_ZREGS_SIZE): Likewise.
4626         (SVE_SIG_PREGS_OFFSET): Likewise.
4627         (SVE_SIG_PREG_OFFSET): Likewise.
4628         (SVE_SIG_PREGS_SIZE): Likewise.
4629         (SVE_SIG_FFR_OFFSET): Likewise.
4630         (SVE_SIG_REGS_SIZE): Likewise.
4631         (SVE_SIG_CONTEXT_SIZE): Likewise.
4632         (SVE_PT_REGS_MASK): Likewise.
4633         (SVE_PT_REGS_FPSIMD): Likewise.
4634         (SVE_PT_REGS_SVE): Likewise.
4635         (SVE_PT_VL_INHERIT): Likewise.
4636         (SVE_PT_VL_ONEXEC): Likewise.
4637         (SVE_PT_REGS_OFFSET): Likewise.
4638         (SVE_PT_FPSIMD_OFFSET): Likewise.
4639         (SVE_PT_FPSIMD_SIZE): Likewise.
4640         (SVE_PT_SVE_ZREG_SIZE): Likewise.
4641         (SVE_PT_SVE_PREG_SIZE): Likewise.
4642         (SVE_PT_SVE_FFR_SIZE): Likewise.
4643         (SVE_PT_SVE_FPSR_SIZE): Likewise.
4644         (SVE_PT_SVE_FPCR_SIZE): Likewise.
4645         (__SVE_SIG_TO_PT): Likewise.
4646         (SVE_PT_SVE_OFFSET): Likewise.
4647         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
4648         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
4649         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
4650         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
4651         (SVE_PT_SVE_PREG_OFFSET): Likewise.
4652         (SVE_PT_SVE_PREGS_SIZE): Likewise.
4653         (SVE_PT_SVE_FFR_OFFSET): Likewise.
4654         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
4655         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
4656         (SVE_PT_SVE_SIZE): Likewise.
4657         (SVE_PT_SIZE): Likewise.
4658         (HAS_SVE_STATE): New define.
4659
4660 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
4661
4662         * nat/aarch64-sve-linux-sigcontext.h: New file.
4663         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
4664         new files.
4665         (SVE_VQ_MIN): Likewise.
4666         (SVE_VQ_MAX): Likewise.
4667         (SVE_VL_MIN): Likewise.
4668         (SVE_VL_MAX): Likewise.
4669         (SVE_NUM_ZREGS): Likewise.
4670         (SVE_NUM_PREGS): Likewise.
4671         (sve_vl_valid): Likewise.
4672         (struct user_sve_header): Likewise.
4673
4674 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
4675             Richard Bunt <Richard.Bunt@arm.com>
4676
4677         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
4678         was requested by GDB.
4679
4680 2018-06-15  Tom de Vries  <tdevries@suse.de>
4681
4682         * MAINTAINERS (Write After Approval): Add Tom de Vries.
4683
4684 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
4685
4686         * gnulib/update-gnulib.sh: Print expected versions of
4687         autoconf/aclocal.
4688
4689 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
4690
4691         * arch-utils.c (default_type_align): Use type_length_units.
4692         * gdbtypes.c (type_align): Use type_length_units.
4693
4694 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4695
4696         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
4697         of 'define' command.
4698
4699 2018-06-14  Tom de Vries  <tdevries@suse.de>
4700
4701         PR cli/22573
4702         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
4703         get_no_prettyformat_print_options.
4704
4705 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
4706
4707         * sparc-nat.h: Include target.h.
4708         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
4709         <fetch_registers>: Remove this argument in function call.
4710         <store_registers>: Remove this argument in function call, remove
4711         extra semicolon.
4712         <low_forget_process>: Call sparc64_forget_process instead of
4713         sparc_forget_process.
4714
4715 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4716
4717         * procfs.c (_initialize_procfs): Use add_inf_child_target.
4718         (procfs_target::make_corefile_notes): Adjust to new
4719         target_read_alloc return type.
4720
4721 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4722             Stephen Roberts  <stephen.roberts@arm.com>
4723
4724         PR gdb/22882
4725         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
4726         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
4727         Move should_notify_stop local into more inner scope.
4728
4729 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4730             Stephen Roberts  <stephen.roberts@arm.com>
4731
4732         PR gdb/22882
4733         * infrun.c (resume_1): Add call to mark_async_event_handler.
4734
4735 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
4736
4737         * infrun.c (do_target_wait): Change old version of $pc printed.
4738
4739 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
4740
4741         * dwarf2read.c (read_index_from_section): Rename to...
4742         (read_gdb_index_from_section): ... this, update all callers.
4743         (dwarf2_read_index): Rename to...
4744         (dwarf2_read_gdb_index): ... this, update all callers.
4745
4746 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
4747
4748         * gdb/hppa-linux-nat.c
4749         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
4750         hppa_linux_nat_target::fetch_registers.
4751
4752 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4753
4754         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
4755         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
4756         (AARCH64_DWARF_SVE_FFR): Likewise.
4757         (AARCH64_DWARF_SVE_P0): Likewise.
4758         (AARCH64_DWARF_SVE_Z0): Likewise.
4759
4760 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4761
4762         * common/common-regcache.h (raw_compare): New function.
4763         * regcache.c (regcache::raw_compare): Likewise.
4764         * regcache.h (regcache::raw_compare): New declaration.
4765
4766 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
4767
4768         * common/common-regcache.h (reg_buffer_common): New structure.
4769         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
4770         (reg_buffer::raw_supply): Likewise.
4771         (reg_buffer::raw_supply_integer): Likewise.
4772         (reg_buffer::raw_supply_zeroed): Likewise.
4773         (reg_buffer::raw_collect): Likewise.
4774         (reg_buffer::raw_collect_integer): Likewise.
4775         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
4776         (reg_buffer::raw_supply): Likewise.
4777         (reg_buffer::raw_supply_integer): Likewise.
4778         (reg_buffer::raw_supply_zeroed): Likewise.
4779         (reg_buffer::raw_collect): Likewise.
4780         (reg_buffer::raw_collect_integer): Likewise.
4781
4782 2018-06-10  Tom Tromey  <tom@tromey.com>
4783
4784         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
4785         (class remote_state) <stop_reply_queue>: Now std::vector.
4786         (remote_state::~remote_state)
4787         (remote_target::stop_reply_queue_length): Update.
4788         (struct queue_iter_param, remove_child_of_pending_fork)
4789         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
4790         (check_pending_event_prevents_wildcard_vcont_callback)
4791         (remove_stop_reply_for_inferior)
4792         (remove_stop_reply_of_remote_state)
4793         (remote_notif_remove_once_on_match)
4794         (stop_reply_match_ptid_and_ws)
4795         (remote_kill_child_of_pending_fork): Remove.
4796         (remote_target::remove_new_fork_children)
4797         (remote_target::check_pending_events_prevent_wildcard_vcont)
4798         (remote_target::discard_pending_stop_replies)
4799         (remote_target::discard_pending_stop_replies_in_queue)
4800         (remote_target::remote_notif_remove_queued_reply)
4801         (remote_target::queued_stop_reply)
4802         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
4803         (remote_target::wait, remote_target::kill_new_fork_children)
4804         (remote_target::async): Update.
4805
4806 2018-06-10  Tom Tromey  <tom@tromey.com>
4807
4808         * record-full.c (record_full_arch_list_cleanups): Remove.
4809         (record_full_message): Use try/catch.
4810         (record_full_wait_cleanups): Remove.
4811         (record_full_wait_1): Use try/catch.
4812         (record_full_restore): Likewise.
4813
4814 2018-06-10  Tom Tromey  <tom@tromey.com>
4815
4816         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
4817         declare VEC.  Add constructor.
4818         <in_target_beneath>: Now bool.
4819         (record_full_breakpoints): Now a std::vector, static.
4820         (record_full_sync_record_breakpoints)
4821         (record_full_init_record_breakpoints)
4822         (record_full_target::insert_breakpoint)
4823         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
4824
4825 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
4826
4827         * dwarf2read.c (process_cu_includes): Remove struct keyword.
4828         * serial.c (serial_interface_lookup): Remove struct keyword.
4829
4830 2018-06-10  Tom Tromey  <tom@tromey.com>
4831
4832         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
4833         method.
4834         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
4835         a method.
4836         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
4837         method.
4838         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
4839         "beneath" as a method.
4840         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
4841         Use "beneath" as a method.
4842
4843 2018-06-10  Tom Tromey  <tom@tromey.com>
4844
4845         * tracefile.c (struct trace_file_writer_deleter): New.
4846         <operator()>: Rename from trace_file_writer_xfree.
4847         (trace_file_writer_up): New typedef.
4848         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
4849
4850 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
4851
4852         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
4853         <m_registers, m_register_status>: Change type to
4854         std::unique_ptr.
4855         * regcache.c (reg_buffer::reg_buffer): Use new instead of
4856         XCNEWVEC.
4857
4858 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
4859
4860         * common/common-regcache.h (enum register_status): Add
4861         underlying type "signed char".
4862         * regcache.h (reg_buffer) <m_register_status>: Change type to
4863         register_status *.
4864         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
4865         register_status instead of signed char.
4866         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
4867         (reg_buffer::get_register_status): Remove cast.
4868         (readable_regcache::raw_read): Remove cast.
4869         (readable_regcache::cooked_read): Remove cast.
4870
4871 2018-06-09  Tom Tromey  <tom@tromey.com>
4872
4873         * source.c (reverse_search_command, forward_search_command): Use
4874         scoped_fd.
4875
4876 2018-06-09  Tom Tromey  <tom@tromey.com>
4877
4878         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
4879         (serial_ops_list): Now static, std::vector.
4880         (serial_interface_lookup, serial_add_interface): Update.
4881
4882 2018-06-09  Tom Tromey  <tom@tromey.com>
4883
4884         * dwarf2read.c (process_cu_includes): Update.
4885         (process_full_comp_unit): Update.
4886         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
4887         std::vector.
4888
4889 2018-06-08  Paul Koning  <paul_koning@dell.com>
4890
4891         PR gdb/23252
4892
4893         * python/python.c (do_start_initialization):
4894         Avoid call to internal Python API.
4895         (init__gdb_module): New function.
4896
4897 2018-06-08  Gary Benson <gbenson@redhat.com>
4898
4899         * linux-thread-db.c (valprint.h): New include.
4900         (struct check_thread_db_info): New structure.
4901         (check_thread_db_on_load, tdb_testinfo): New static globals.
4902         (check_thread_db, check_thread_db_callback): New functions.
4903         (try_thread_db_load_1): Run integrity checks if requested.
4904         (maintenance_check_libthread_db): New function.
4905         (_initialize_thread_db): Register "maint check libthread-db"
4906         and "maint set/show check-libthread-db".
4907         * NEWS: Mention the above new commands.
4908
4909 2018-06-08  Tom Tromey  <tom@tromey.com>
4910
4911         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
4912         now a method.
4913
4914 2018-06-08  Tom Tromey  <tom@tromey.com>
4915
4916         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
4917
4918 2018-06-08  Tom Tromey  <tom@tromey.com>
4919
4920         * common/btrace-common.h (struct btrace_data): Add constructor,
4921         destructor, move assignment operator.
4922         <empty, clear, fini>: New methods.
4923         <format>: Initialize.
4924         (btrace_data_init, btrace_data_fini, btrace_data_clear)
4925         (btrace_data_empty): Don't declare.
4926         * common/btrace-common.c (btrace_data_init): Remove.
4927         (btrace_data::fini): Rename from btrace_data_fini.
4928         (btrace_data::empty): Rename from btrace_data_empty.
4929         (btrace_data::clear): Rename from btrace_data_clear.  Return
4930         bool.
4931         * btrace.h (make_cleanup_btrace_data): Don't declare.
4932         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
4933         (parse_xml_btrace): Update.
4934         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
4935         (maint_btrace_clear_packet_history_cmd): Update.
4936
4937 2018-06-07  Pedro Alves  <palves@redhat.com>
4938
4939         * target.h (target_ops) <beneath>: Now a method.  All references
4940         updated.
4941         (class target_stack): New.
4942         * target.c (g_target_stack): New.
4943         (g_current_top_target): Delete.
4944         (current_top_target): Get the top target out of g_target_stack.
4945         (target_stack::push, target_stack::unpush): New.
4946         (push_target, unpush_target): Reimplement.
4947         (target_is_pushed): Reimplement in terms of g_target_stack.
4948         (target_ops::beneath, target_stack::find_beneath): New.
4949
4950 2018-06-07  Pedro Alves  <palves@redhat.com>
4951
4952         * target.h (find_target_beneath): Delete declaration.
4953         * target.c (find_target_beneath): Delete definition.
4954         * aix-thread.c: All callers of find_target_beneath adjusted to
4955         call target_ops::beneath instead.
4956         * bsd-uthread.c: Likewise.
4957         * linux-thread-db.c: Likewise.
4958         * ravenscar-thread.c: Likewise.
4959         * sol-thread.c: Likewise.
4960         * spu-multiarch.c: Likewise.
4961
4962 2018-06-07  Pedro Alves  <palves@redhat.com>
4963
4964         * target.h (target_ops) <beneath>: Now a method.  All references
4965         updated.
4966         (target_ops) <m_beneath>: New.
4967         * target.c (target_ops::beneath): New.
4968         * corelow.c: Adjust all references to target_ops::beneath.
4969         * linux-thread-db.c: Likewise.
4970         * make-target-delegates: Likewise.
4971         * record-btrace.c: Likewise.
4972         * record-full.c: Likewise.
4973         * remote.c: Likewise.
4974         * target.c: Likewise.
4975         * target-delegates.c: Regenerate.
4976
4977 2018-06-07  Pedro Alves  <palves@redhat.com>
4978
4979         * target.h (target_stack): Delete.
4980         (current_top_target): Declare function.
4981         * target.c (target_stack): Delete.
4982         (g_current_top_target): New.
4983         (current_top_target): New function.
4984         * auxv.c: Use current_top_target instead of target_stack
4985         throughout.
4986         * avr-tdep.c: Likewise.
4987         * breakpoint.c: Likewise.
4988         * corefile.c: Likewise.
4989         * elfread.c: Likewise.
4990         * eval.c: Likewise.
4991         * exceptions.c: Likewise.
4992         * frame.c: Likewise.
4993         * gdbarch-selftests.c: Likewise.
4994         * gnu-v3-abi.c: Likewise.
4995         * ia64-tdep.c: Likewise.
4996         * ia64-vms-tdep.c: Likewise.
4997         * infcall.c: Likewise.
4998         * infcmd.c: Likewise.
4999         * infrun.c: Likewise.
5000         * linespec.c: Likewise.
5001         * linux-tdep.c: Likewise.
5002         * minsyms.c: Likewise.
5003         * ppc-linux-nat.c: Likewise.
5004         * ppc-linux-tdep.c: Likewise.
5005         * procfs.c: Likewise.
5006         * regcache.c: Likewise.
5007         * remote.c: Likewise.
5008         * rs6000-tdep.c: Likewise.
5009         * s390-linux-nat.c: Likewise.
5010         * s390-tdep.c: Likewise.
5011         * solib-aix.c: Likewise.
5012         * solib-darwin.c: Likewise.
5013         * solib-dsbt.c: Likewise.
5014         * solib-spu.c: Likewise.
5015         * solib-svr4.c: Likewise.
5016         * solib-target.c: Likewise.
5017         * sparc-tdep.c: Likewise.
5018         * sparc64-tdep.c: Likewise.
5019         * spu-tdep.c: Likewise.
5020         * symfile.c: Likewise.
5021         * symtab.c: Likewise.
5022         * target-descriptions.c: Likewise.
5023         * target-memory.c: Likewise.
5024         * target.c: Likewise.
5025         * target.h: Likewise.
5026         * tracefile-tfile.c: Likewise.
5027         * tracepoint.c: Likewise.
5028         * valops.c: Likewise.
5029         * valprint.c: Likewise.
5030         * value.c: Likewise.
5031         * windows-tdep.c: Likewise.
5032         * mi/mi-main.c: Likewise.
5033
5034 2018-06-07  Tom Tromey  <tom@tromey.com>
5035
5036         * valprint.h (build_address_symbolic): Declare.
5037         * printcmd.c (print_address_symbolic): Update.
5038         (build_address_symbolic): Change "name" and "filename" to
5039         std::string.
5040         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
5041         Update.
5042         * defs.h (build_address_symbolic): Remove declaration.
5043
5044 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
5045
5046         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
5047         (aarch64_vnv_type): Add function.
5048         (aarch64_pseudo_register_name): Add V regs for SVE.
5049         (aarch64_pseudo_register_type): Likewise.
5050         (aarch64_pseudo_register_reggroup_p): Likewise.
5051         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
5052         (aarch64_pseudo_read_value): Add V regs for SVE.
5053         (aarch64_pseudo_write_2): Use V0 offset for SVE
5054         (aarch64_pseudo_write): Add V regs for SVE.
5055         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
5056
5057 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
5058
5059         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
5060         (sve_vl_from_vq): Likewise.
5061
5062 2018-06-05  Tom Tromey  <tom@tromey.com>
5063
5064         * cli/cli-cmds.c (show_version): Update.
5065         * top.c (print_gdb_version): Add "interactive" parameter.
5066         Update.
5067         * main.c (captured_main_1): Update.
5068         * top.h (print_gdb_version): Add "interactive" parameter and a
5069         comment.
5070
5071 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
5072
5073         * common/enum-flags.h: Add trailing semicolon to example in
5074         comment.
5075
5076 2018-06-05  Tom Tromey  <tom@tromey.com>
5077
5078         PR cli/12326:
5079         * NEWS: Add entry about pager.
5080         * utils.c (pagination_disabled_for_command): New global.
5081         (prompt_for_continue): Allow "c" response to prompt.
5082         (reinitialize_more_filter): Clear
5083         pagination_disabled_for_command.
5084         (fputs_maybe_filtered): Check pagination_disabled_for_command.
5085
5086 2018-06-04  Tom Tromey  <tom@tromey.com>
5087
5088         * ada-lang.h (ada_lookup_symbol_list): Update.
5089         * ada-lang.c (resolve_subexp): Update.
5090         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
5091         parameter.
5092         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
5093         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
5094         results parameter to std::vector.
5095         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
5096         Update.
5097         * ada-exp.y (block_lookup): Update.
5098         (select_possible_type_sym): Change type of syms.  Remove nsyms
5099         parameter.
5100         (write_var_or_type, write_name_assoc): Update.
5101
5102 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
5103
5104         * windows-nat.c (windows_nat_target::xfer_partial): Return
5105         TARGET_XFER_E_IO if we need to delegate to the target beneath
5106         but BENEATH is NULL.
5107
5108 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
5109
5110         * Makefile.in (config.status): Add configure.nat as a
5111         dependency.
5112
5113 2018-06-04  Tom Tromey  <tom@tromey.com>
5114
5115         * cp-name-parser.y (cpname_state): Add method declarations.
5116         (HANDLE_QUAL): Update.
5117         (cpname_state::d_grab, cpname_state::fill_comp)
5118         (cpname_state::make_operator, cpname_state::make_dtor)
5119         (cpname_state::make_builtin_type, cpname_state::make_name)
5120         (cpname_state::d_qualify, cpname_state::d_int_type)
5121         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
5122         (%union): Move earlier.
5123
5124 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5125
5126         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
5127
5128 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5129
5130         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
5131         (aarch64_pseudo_write_1): Likewise.
5132         (aarch64_pseudo_read_value): Use helper.
5133         (aarch64_pseudo_write): Likewise.
5134
5135 2018-06-04  Pedro Alves  <palves@redhat.com>
5136
5137         * darwin-nat.c (darwin_ops): Delete.
5138         (darwin_attach_pid): Use get_native_target.
5139
5140 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5141
5142         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
5143         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
5144
5145 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5146
5147         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
5148         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
5149         (aarch64_gdbarch_init): Check for SVE.
5150         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
5151
5152 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
5153
5154         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
5155         * aarch64-tdep.h (aarch64_read_description): Likewise.
5156         * arch/aarch64.c (aarch64_create_target_description): Likewise.
5157         * arch/aarch64.h (aarch64_create_target_description): Likewise.
5158         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
5159         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
5160         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
5161
5162 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
5163
5164         * value.c (value_fetch_lazy_bitfield): New.
5165         (value_fetch_lazy_memory): New.
5166         (value_fetch_lazy_register): New.
5167         (value_fetch_lazy): Factor out to smaller functions.
5168
5169 2018-06-01  Tom Tromey  <tom@tromey.com>
5170
5171         * cp-name-parser.y (backslashable, represented): Now const.
5172
5173 2018-06-01  Tom Tromey  <tom@tromey.com>
5174
5175         * cp-name-parser.y: Include parser-defs.h.
5176         (parser_fprintf): Remove declaration.
5177
5178 2018-06-01  Tom Tromey  <tom@tromey.com>
5179
5180         * cp-name-parser.y: Use %pure-parser, %lex-param, and
5181         %parse-param.
5182         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
5183         (global_result): Remove globals.
5184         (struct cpname_state): New.
5185         (yyparse): Don't declare.
5186         (yylex, yyerror): Move declarations after %union.
5187         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
5188         (make_name): Add state parameter.
5189         Update all callers.
5190         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
5191         parameter.
5192         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
5193         Update.
5194         (yylex): Add lvalp, state parameters.
5195         (yyerror): Add state parameter.
5196         (cp_demangled_name_to_comp): Update.
5197
5198 2018-06-01  Tom Tromey  <tom@tromey.com>
5199
5200         * cp-name-parser.y (parser_fprintf): Declare.
5201         (GDB_YY_REMAP_PREFIX): Define.
5202         Include yy-remap.h.  Don't redefine yy* identifiers.
5203
5204 2018-06-01  Tom Tromey  <tom@tromey.com>
5205
5206         * python/py-type.c (typy_legacy_template_argument): Update.
5207         * cp-support.h (cp_demangled_name_to_comp): Update.
5208         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
5209         parameter to be a "std::string *".
5210         (main): Update.
5211
5212 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
5213
5214         * ada-lex.l: Include "diagnostics.h" instead of
5215         "common/diagnostics.h".
5216         * unittests/environ-selftests.c: Likewise.
5217         * common/diagnostics.h: Moved to ../include.
5218
5219 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
5220
5221         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
5222         to language_mode_manual while calling breakpoint_re_set_one.
5223
5224 2018-06-01  Tom Tromey  <tom@tromey.com>
5225
5226         * valops.c (value_cast_structs, destructor_name_p): Update.
5227         * symtab.c (gdb_mangle_name): Update.
5228         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
5229         Update.
5230         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
5231         (pascal_object_print_value_fields, pascal_object_print_value):
5232         Update.
5233         * p-typeprint.c (pascal_type_print_derivation_info): Update.
5234         * linespec.c (find_methods): Update.
5235         * gdbtypes.h (type_name_no_tag): Remove.
5236         (type_name_or_error): Rename from type_name_no_tag_or_error.
5237         * gdbtypes.c (type_name_no_tag): Remove.
5238         (type_name_or_error): Rename from type_name_no_tag_or_error.
5239         (lookup_struct_elt_type, check_typedef): Update.
5240         * expprint.c (print_subexp_standard): Update.
5241         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
5242         * d-namespace.c (d_lookup_nested_symbol): Update.
5243         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
5244         (cp_print_class_member): Update.
5245         * cp-namespace.c (cp_lookup_nested_symbol): Update.
5246         * completer.c (add_struct_fields): Update.
5247         * c-typeprint.c (cp_type_print_derivation_info)
5248         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
5249         Update.
5250         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
5251         (ada_prefer_type, ada_is_exception_sym): Update.
5252
5253 2018-06-01  Tom Tromey  <tom@tromey.com>
5254
5255         * valops.c (enum_constant_from_type, value_namespace_elt)
5256         (value_maybe_namespace_elt): Update.
5257         * valarith.c (find_size_for_pointer_math): Update.
5258         * target-descriptions.c (make_gdb_type): Update.
5259         * symmisc.c (print_symbol): Update.
5260         * stabsread.c (define_symbol, read_type)
5261         (complain_about_struct_wipeout, add_undefined_type)
5262         (cleanup_undefined_types_1): Update.
5263         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
5264         (rust_range_type_p, val_print_struct, rust_print_struct_def)
5265         (rust_internal_print_type, rust_composite_type)
5266         (rust_evaluate_funcall, rust_evaluate_subexp)
5267         (rust_inclusive_range_type_p): Update.
5268         * python/py-type.c (typy_get_tag): Update.
5269         * p-typeprint.c (pascal_type_print_base): Update.
5270         * mdebugread.c (parse_symbol, parse_type): Update.
5271         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
5272         Update.
5273         * guile/scm-type.c (gdbscm_type_tag): Update.
5274         * go-lang.c (sixg_string_p): Update.
5275         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
5276         Update.
5277         * gdbtypes.h (struct main_type) <tag_name>: Remove.
5278         (TYPE_TAG_NAME): Remove.
5279         * gdbtypes.c (type_name_no_tag): Simplify.
5280         (check_typedef, check_types_equal, recursive_dump_type)
5281         (copy_type_recursive, arch_composite_type): Update.
5282         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
5283         in summary mode when needed.
5284         * eval.c (evaluate_funcall): Update.
5285         * dwarf2read.c (fixup_go_packaging, read_structure_type)
5286         (process_structure_scope, read_enumeration_type)
5287         (read_namespace_type, read_module_type, determine_prefix): Update.
5288         * cp-support.c (inspect_type): Update.
5289         * coffread.c (process_coff_symbol, decode_base_type): Update.
5290         * c-varobj.c (c_is_path_expr_parent): Update.
5291         * c-typeprint.c (c_type_print_base_struct_union): Update.
5292         (c_type_print_base_1): Update.  Print struct/class/union/enum in
5293         summary when using C language.
5294         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
5295         (gen_maybe_namespace_elt): Update.
5296         * ada-lang.c (ada_type_name): Simplify.
5297         (empty_record, ada_template_to_fixed_record_type_1)
5298         (template_to_static_fixed_type)
5299         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
5300
5301 2018-06-01  Tom Tromey  <tom@tromey.com>
5302
5303         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
5304         c_print_type.
5305         * c-typeprint.c (c_print_type_1): Add "language" parameter.
5306         (c_print_type): Update.
5307         (c_print_type): New overload.
5308         (c_type_print_varspec_prefix, c_type_print_args)
5309         (c_type_print_varspec_suffix, c_print_type_no_offsets)
5310         (c_type_print_base_struct_union, c_type_print_base_1)
5311         (cp_type_print_method_args): Add "language" parameter.
5312         (c_type_print_base): Update.
5313         * c-lang.h (c_print_type): Add new overload.
5314
5315 2018-06-01  Tom Tromey  <tom@tromey.com>
5316
5317         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
5318         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
5319
5320 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
5321
5322         * aarch64-tdep.c (aarch64_sve_register_names): New const
5323         var.
5324         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
5325         (AARCH64_SVE_Z_REGS_NUM): New define.
5326         (AARCH64_SVE_P_REGS_NUM): Likewise.
5327         (AARCH64_SVE_NUM_REGS): Likewise.
5328
5329 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
5330
5331         * nat/linux-ptrace.h [__alpha__]
5332         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
5333         definitions.
5334
5335 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
5336
5337         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
5338         the endianness selected.
5339         * NEWS: Document `set endian auto' mode operation update.
5340
5341 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
5342
5343         * Makefile.in: Add new header.
5344         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
5345         (sve_vl_from_vg): Likewise.
5346         (sve_vq_from_vl): Likewise.
5347         (sve_vl_from_vq): Likewise.
5348         (sve_vq_from_vg): Likewise.
5349         (sve_vg_from_vq): Likewise.
5350         * configure.nat: Add new c file.
5351         * nat/aarch64-sve-linux-ptrace.c: New file.
5352         * nat/aarch64-sve-linux-ptrace.h: New file.
5353
5354 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
5355
5356         * aarch64-linux-nat.c (aarch64_linux_read_description):
5357         Add parmeter zero.
5358         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
5359         Likewise.
5360         * aarch64-tdep.c (tdesc_aarch64_list): Add.
5361         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
5362         (aarch64_gdbarch_init): Add parmeter zero.
5363         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
5364         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
5365         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
5366         parmeter.
5367         * doc/gdb.texinfo: Describe SVE feature
5368         * features/aarch64-sve.c: New file.
5369
5370 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
5371
5372         PR gdb/23210
5373         * gdbarch.sh (significant_addr_bit): Default to zero when
5374         not set by target architecture.
5375         * gdbarch.c: Re-generated.
5376         * utils.c (address_significant): Update.
5377
5378 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
5379
5380         * stack.c (func_command): Remove trailing newline in call to error.
5381
5382 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5383
5384         * regcache.h (regcache_raw_collect): Remove, update callers to
5385         use regcache::raw_collect.
5386         * regcache.c (regcache_raw_collect): Remove.
5387
5388 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5389
5390         * regcache.h (regcache_raw_supply): Remove, update callers to
5391         use detached_regcache::raw_supply.
5392         * regcache.c (regcache_raw_supply): Remove.
5393
5394 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5395
5396         * regcache.h (regcache_cooked_write_part): Remove, update
5397         callers to use regcache::cooked_write_part.
5398         * regcache.c (regcache_cooked_write_part): Remove.
5399
5400 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5401
5402         * regcache.h (regcache_cooked_read_part): Remove, update callers
5403         to use readable_regcache::cooked_read_part.
5404         * regcache.c (regcache_cooked_read_part): Remove.
5405
5406 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5407
5408         * regcache.h (regcache_cooked_read_value): Remove, update
5409         callers to use readable_regcache::cooked_read_value.
5410         * regcache.c (regcache_cooked_read_value): Remove.
5411
5412 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5413
5414         * regcache.h (regcache_cooked_write): Remove, update callers to
5415         use regcache::cooked_write.
5416         * regcache.c (regcache_cooked_write): Remove.
5417
5418 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5419
5420         * regcache.h (regcache_invalidate): Remove, update callers to
5421         use detached_regcache::invalidate instead.
5422         * regcache.c (regcache_invalidate): Remove.
5423
5424 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5425
5426         * regcache.h (regcache_raw_write_part): Remove, update callers
5427         to use regcache::raw_write_part instead.
5428         * regcache.c (regcache_raw_write_part): Remove.
5429
5430 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5431
5432         * regcache.h (regcache_raw_read_part): Remove, update callers to
5433         use readable_regcache::raw_read_part instead.
5434         * regcache.c (regcache_raw_read_part): Remove.
5435
5436 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5437
5438         * regcache.h (regcache_cooked_read): Remove, update callers to
5439         use readable_regcache::cooked_read instead.
5440         * regcache.c (regcache_cooked_read): Remove.
5441
5442 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5443
5444         * regcache.h (regcache_raw_write): Remove, update callers to use
5445         regcache::raw_write instead.
5446         * regcache.c (regcache_raw_write): Remove.
5447
5448 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5449
5450         * regcache.h (regcache_raw_read): Remove, update callers to use
5451         readable_regcache::raw_read instead.
5452         * regcache.c (regcache_raw_read): Remove.
5453
5454 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5455
5456         * regcache.h (regcache_raw_update): Remove, update callers to
5457         use readable_regcache::raw_update instead.
5458         * regcache.c (regcache_raw_update): Remove.
5459
5460 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5461
5462         * regcache.h (regcache_register_status): Remove, update callers
5463         to use reg_buffer::get_register_status directly instead.
5464         * regcache.c (regcache_register_status): Remove.
5465
5466 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5467
5468         * regcache.h (regcache_get_ptid): Remove, update all callers to
5469         call regcache::ptid instead.
5470         * regcache.c (regcache_get_ptid): Remove.
5471
5472 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
5473
5474         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
5475
5476 2018-05-30  Pedro Alves  <palves@redhat.com>
5477
5478         * common/common-exceptions.h (exception_rethrow): Use
5479         ATTRIBUTE_NORETURN.
5480
5481 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
5482
5483         * breakpoint.c (print_solib_event, check_status_catch_solib):
5484         Remove struct keyword in range-based for loops.
5485         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
5486         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
5487         Likewise.
5488         * linespec.c (find_superclass_methods, search_minsyms_for_name):
5489         Likewise.
5490         * symfile.c (addr_info_make_relative): Likewise.
5491         * thread.c (value_in_thread_stack_temporaries): Likewise.
5492
5493 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
5494
5495         PR gdb/16841
5496         * valops.c (value_struct_elt_for_reference): Call check_typedef on
5497         aggregate type to get its real type before accessing it.
5498
5499 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
5500
5501         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
5502         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
5503         * coff-pe-read.c (add_pe_forwarded_sym): Replace
5504         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
5505         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
5506         * jit.c (jit_breakpoint_re_set_internal): Likewise.
5507         * printcmd.c (info_address_command): Likewise.
5508
5509 2018-05-29  Tom Tromey  <tom@tromey.com>
5510
5511         * windows-nat.c (handle_exception): Update fall-through comment.
5512
5513 2018-05-29  Tom Tromey  <tom@tromey.com>
5514
5515         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
5516         (struct program_space) <added_solibs>: Now a std::vector.
5517         * breakpoint.c (print_solib_event): Update.
5518         (check_status_catch_solib): Update.
5519         * progspace.c (clear_program_space_solib_cache): Update.
5520         * solib.c (update_solib_list): Update.
5521
5522 2018-05-29  Tom Tromey  <tom@tromey.com>
5523
5524         * python/py-type.c (typy_richcompare): Update.
5525         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
5526         * gdbtypes.h (types_deeply_equal): Return bool.
5527         (types_equal): Likewise.
5528         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
5529         declare VEC.
5530         (check_types_equal): Change worklist to std::vector.  Return
5531         bool.
5532         (struct type_equality_entry): Add constructor.
5533         (compare_maybe_null_strings): Return bool.
5534         (check_types_worklist): Return bool.  Change worklist to
5535         std::vector.
5536         (types_deeply_equal): Use std::vector.
5537         (types_equal): Return bool.
5538         (compare_maybe_null_strings): Simplify.
5539
5540 2018-05-29  Tom Tromey  <tom@tromey.com>
5541
5542         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
5543
5544 2018-05-29  Tom Tromey  <tom@tromey.com>
5545
5546         * objc-lang.h: Don't include cp-support.h.
5547         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
5548         declare VEC.
5549
5550 2018-05-27  Tom Tromey  <tom@tromey.com>
5551
5552         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
5553
5554 2018-05-25  Tom Tromey  <tom@tromey.com>
5555
5556         * value.c (value::location): Initialize.
5557
5558 2018-05-25  Tom Tromey  <tom@tromey.com>
5559
5560         * dbxread.c (init_bincl_list): Remove.
5561         (bincl_list): Now a std::vector.
5562         (bincls_allocated, next_bincl): Remove.
5563         (free_bincl_list, do_free_bincl_list_cleanup)
5564         (make_cleanup_free_bincl_list): Remove.
5565         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
5566         unique_xmalloc_ptr.
5567         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
5568         (struct header_file_location): Add constructor.
5569         (add_bincl_to_list): Remove.
5570
5571 2018-05-25  Tom Tromey  <tom@tromey.com>
5572
5573         * tui/tui.c (tui_enable): Update.
5574         * mi/mi-interp.c (mi_interp::init): Update.
5575         * interps.h (class interp) <name>: New method.
5576         <m_name>: Rename from name.
5577         (~scoped_restore_interp): Update.
5578         * interps.c (interp::interp): Update.
5579         (interp_add, interp_set, interp_lookup_existing)
5580         (current_interp_named_p): Update.
5581
5582 2018-05-25  Tom Tromey  <tom@tromey.com>
5583
5584         * interps.c (interp_name): Remove.
5585         * mi/mi-interp.c (mi_interp::init): Update.
5586         * interps.h (interp_name): Remove.
5587         (~scoped_restore_interp): Update.
5588         * tui/tui.c (tui_enable): Update.
5589
5590 2018-05-25  Tom Tromey  <tom@tromey.com>
5591
5592         * utils.c (fputs_maybe_filtered): Update.
5593         * linespec.c (decode_line_full): Update.
5594         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
5595         (mi_print_breakpoint_for_event, mi_solib_loaded)
5596         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
5597         (mi_user_selected_context_changed): Update.
5598         * mi/mi-main.c (mi_execute_command): Update.
5599         * cli/cli-script.c (execute_control_command): Update.
5600         * python/python.c (execute_gdb_command): Update.
5601         * solib.c (info_sharedlibrary_command): Update.
5602         * interps.c (interp_ui_out): Remove.
5603         * interps.h (interp_ui_out): Remove.
5604
5605 2018-05-25  Tom Tromey  <tom@tromey.com>
5606
5607         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
5608         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
5609         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
5610
5611 2018-05-25  Tom Tromey  <tom@tromey.com>
5612
5613         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
5614         * interps.c (interp_exec): Use scoped_restore.
5615
5616 2018-05-25  Tom Tromey  <tom@tromey.com>
5617
5618         * remote.c (remote_target::remote_file_get): Use
5619         gdb::byte_vector.
5620         (remote_target::remote_file_put): Likewise.
5621
5622 2018-05-25  Tom Tromey  <tom@tromey.com>
5623
5624         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
5625         a std::string.
5626         (get_pe_section_index, add_pe_exported_sym): Update.
5627         (read_pe_exported_syms): Use gdb::def_vector.
5628
5629 2018-05-25  Tom Tromey  <tom@tromey.com>
5630
5631         * frame.c (remove_prev_frame): Remove.
5632         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
5633
5634 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
5635
5636         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
5637         Remove prototypes.
5638         * mips-linux-nat.c (supply_fpregset): Always call
5639         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
5640         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
5641         `mips_fill_fpregset'.
5642         * mips-linux-tdep.c (mips_supply_fpregset)
5643         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
5644         (mips_fill_fpregset_wrapper): Remove functions.
5645         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
5646         (mips_linux_fpregset): Remove variable.
5647         (mips_linux_iterate_over_regset_sections): Use
5648         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
5649         (mips_linux_o32_sigframe_init): Remove comment.
5650
5651 2018-05-25  Pedro Alves  <palves@redhat.com>
5652
5653         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
5654         (struct readahead_cache, struct packet_reg, struct
5655         remote_arch_state, class remote_state): Move higher up in the
5656         file.
5657         (remote_target::m_remote_state): Now an object instead of a pointer.
5658         (remote_target::get_remote_state): Adjust.
5659
5660 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
5661
5662         * stack.c (select_and_print_frame): Delete.
5663         (struct function_bounds): Move struct within function.
5664         (func_command): Most content moved into new function
5665         find_frame_for_function, use new function, print result, add
5666         function comment.
5667         (find_frame_for_function): New function, now returns a result.
5668
5669 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5670
5671         * stack.c (iterate_over_block_arg_vars): Fix comment.
5672         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
5673
5674 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
5675
5676         PR gdb/23203
5677         * frame.c
5678         (scoped_restore_selected_frame::scoped_restore_selected_frame):
5679         Define.
5680         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
5681         Define.
5682         * frame.h (class scoped_restore_selected_frame): New class.
5683         * stack.c (print_frame_local_vars): Remove catching and rethrowing
5684         of any exception, use scoped_restore_selected_frame to restore the
5685         frame instead.
5686
5687 2018-05-24  Pedro Alves  <palves@redhat.com>
5688
5689         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
5690         override.
5691
5692 2018-05-23  Tom Tromey  <tom@tromey.com>
5693
5694         * complaints.c (struct complaints): Remove.
5695         (symfile_complaint_book): Remove.
5696         (series): New global.
5697         (complaint_internal): Update.
5698         (clear_complaints): Update.
5699
5700 2018-05-23  Tom Tromey  <tom@tromey.com>
5701
5702         * complaints.c (counters): New global.
5703         (struct complain): Remove.
5704         (struct complaints) <root>: Remove.
5705         (complaint_sentinel): Remove.
5706         (symfile_complaint_book): Update.
5707         (find_complaint) Remove.
5708         (complaint_internal, clear_complaints): Update.
5709
5710 2018-05-23  Tom Tromey  <tom@tromey.com>
5711
5712         * complaints.c (struct complain) <file, line>: Remove.
5713         (find_complaint): Remove file, line parameters.
5714         (complaint_internal): Update.
5715
5716 2018-05-23  Tom Tromey  <tom@tromey.com>
5717
5718         * complaints.c (vcomplaint): Remove.
5719         (complaint_internal) Merge in contents of vcomplaint.
5720
5721 2018-05-23  Tom Tromey  <tom@tromey.com>
5722
5723         * complaints.c (struct complaints) <explanation>: Remove.
5724         (symfile_explanations): Remove.
5725         (symfile_complaint_book): Update.
5726         (vcomplaint): Update.
5727         (struct explanation): Remove.
5728
5729 2018-05-23  Tom Tromey  <tom@tromey.com>
5730
5731         * complaints.c (symfile_complaints): Remove.
5732         (complaint_internal): Remove "complaints" parameter.
5733         (clear_complaints, vcomplaint): Remove "c" parameter.
5734         (get_complaints): Remove.
5735         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
5736         (dwarf2_debug_line_missing_file_complaint)
5737         (dwarf2_debug_line_missing_end_sequence_complaint)
5738         (dwarf2_complex_location_expr_complaint)
5739         (dwarf2_const_value_length_mismatch_complaint)
5740         (dwarf2_section_buffer_overflow_complaint)
5741         (dwarf2_macro_malformed_definition_complaint)
5742         (dwarf2_invalid_attrib_class_complaint)
5743         (create_addrmap_from_index, dw2_symtab_iter_next)
5744         (dw2_expand_marked_cus)
5745         (dw2_debug_names_iterator::find_vec_in_debug_names)
5746         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
5747         (create_debug_type_hash_table, init_cutu_and_read_dies)
5748         (partial_die_parent_scope, add_partial_enumeration)
5749         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
5750         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
5751         (read_import_statement, read_file_scope, create_dwo_cu_reader)
5752         (create_cus_hash_table, create_dwp_hash_table)
5753         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
5754         (dwarf2_rnglists_process, dwarf2_ranges_process)
5755         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
5756         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
5757         (handle_struct_member_die, process_structure_scope)
5758         (read_array_type, read_common_block, read_module_type)
5759         (read_tag_pointer_type, read_typedef, read_base_type)
5760         (read_subrange_type, load_partial_dies, partial_die_info::read)
5761         (partial_die_info::read, partial_die_info::read)
5762         (partial_die_info::read, read_checked_initial_length_and_offset)
5763         (dwarf2_string_attr, read_formatted_entries)
5764         (dwarf_decode_line_header)
5765         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5766         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
5767         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
5768         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
5769         (get_signatured_type, get_DW_AT_signature_type)
5770         (decode_locdesc, file_file_name, consume_improper_spaces)
5771         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
5772         (dwarf_decode_macro_bytes, dwarf_decode_macros)
5773         (dwarf2_symbol_mark_computed, set_die_type)
5774         (read_attribute_value): Update.
5775         * stap-probe.c (handle_stap_probe, get_stap_base_address):
5776         Update.
5777         * dbxread.c (unknown_symtype_complaint)
5778         (lbrac_mismatch_complaint, repeated_header_complaint)
5779         (set_namestring, function_outside_compilation_unit_complaint)
5780         (read_dbx_symtab, process_one_symbol): Update.
5781         * gdbtypes.c (stub_noname_complaint): Update.
5782         * windows-nat.c (handle_unload_dll): Update.
5783         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
5784         (decode_base_type): Update.
5785         * xcoffread.c (bf_notfound_complaint, ef_complaint)
5786         (eb_complaint, record_include_begin, record_include_end)
5787         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
5788         (process_xcoff_symbol, read_symbol)
5789         (function_outside_compilation_unit_complaint)
5790         (scan_xcoff_symtab): Update.
5791         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
5792         * buildsym.c (finish_block_internal, make_blockvector)
5793         (end_symtab_get_static_block, augment_type_symtab): Update.
5794         * dtrace-probe.c (dtrace_process_dof)
5795         (dtrace_static_probe_ops::get_probes): Update.
5796         * complaints.h (struct complaint): Don't declare.
5797         (symfile_complaints): Remove.
5798         (complaint_internal): Remove "complaints" parameter.
5799         (complaint): Likewise.
5800         (clear_complaints): Likewise.
5801         * symfile.c (syms_from_objfile_1, finish_new_objfile)
5802         (reread_symbols): Update.
5803         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
5804         (dwarf2_frame_cache, decode_frame_entry): Update.
5805         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
5806         * objc-lang.c (lookup_objc_class, lookup_child_selector)
5807         (info_selectors_command): Update.
5808         * macrotab.c (macro_include, check_for_redefinition)
5809         (macro_undef): Update.
5810         * objfiles.c (filter_overlapping_sections): Update.
5811         * stabsread.c (invalid_cpp_abbrev_complaint)
5812         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
5813         (define_symbol, error_type, read_type, rs6000_builtin_type)
5814         (stabs_method_name_from_physname, read_member_functions)
5815         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
5816         (attach_fields_to_type, complain_about_struct_wipeout)
5817         (read_range_type, read_args, common_block_start)
5818         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
5819         Update.
5820         * mdebugread.c (index_complaint, unknown_ext_complaint)
5821         (basic_type_complaint, bad_tag_guess_complaint)
5822         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
5823         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
5824         (parse_procedure, parse_lines)
5825         (function_outside_compilation_unit_complaint)
5826         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
5827         (bad_tag_guess_complaint, reg_value_complaint): Update.
5828         * cp-support.c (demangled_name_complaint): Update.
5829         * macroscope.c (sal_macro_scope): Update.
5830         * dwarf-index-write.c (class debug_names): Update.
5831
5832 2018-05-23  Tom Tromey  <tom@tromey.com>
5833
5834         * complaints.c (clear_complaints): Remove "noisy" parameter.
5835         * complaints.h (clear_complaints): Update.
5836         * symfile.c (syms_from_objfile_1, finish_new_objfile)
5837         (reread_symbols): Update.
5838
5839 2018-05-23  Tom Tromey  <tom@tromey.com>
5840
5841         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
5842         SUBSEQUENT_MESSAGE.
5843         (vcomplaint, clear_complaints): Update.
5844         (symfile_explanations): Remove some messages.
5845
5846 2018-05-23  Tom Tromey  <tom@tromey.com>
5847
5848         * complaints.c (internal_complaint): Remove.
5849         * complaints.h (internal_complaint): Remove.
5850
5851 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
5852
5853         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
5854
5855 2018-05-22  Pedro Alves  <palves@redhat.com>
5856
5857         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
5858         (remote_fileio_badfd, remote_fileio_return_errno)
5859         (remote_fileio_return_success, remote_fileio_func_open)
5860         (remote_fileio_func_open, remote_fileio_func_close)
5861         (remote_fileio_func_read, remote_fileio_func_write)
5862         (remote_fileio_func_lseek, remote_fileio_func_rename)
5863         (remote_fileio_func_unlink, remote_fileio_func_stat)
5864         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
5865         (remote_fileio_func_isatty, remote_fileio_func_system): Add
5866         remote_target parameter.
5867         (remote_fio_func_map) <func>: Add remote_target parameter.
5868         (do_remote_fileio_request, remote_fileio_request):
5869         * remote-fileio.h (remote_fileio_request):
5870         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
5871         remote_target parameter.
5872         (remote_notif_process, handle_notification): Adjust to pass down
5873         the remote.
5874         (remote_notif_state_allocate): Add remote_target parameter.  Save
5875         it.
5876         * remote-notif.h (struct remote_target): Forward declare.
5877         (struct notif_client) <parse, ack, can_get_pending_events>: Add
5878         remote_target parameter.
5879         (struct remote_notif_state) <remote>: New field.
5880         (remote_notif_ack, remote_notif_parse): Add remote_target
5881         parameter.
5882         (remote_notif_state_allocate, remote_notif_state_allocate): Add
5883         remote_target parameter.
5884         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
5885         (threads_listing_context, rmt_thread_action, protocol_feature)
5886         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
5887         (packet_result, struct threads_listing_context, remote_state):
5888         Move definitions and declarations higher up.
5889         (remote_target) <~remote_target>: Declare.
5890         (remote_download_command_source, remote_file_put, remote_file_get)
5891         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
5892         (remote_hostio_pread_vFile, remote_hostio_send_command)
5893         (remote_hostio_set_filesystem, remote_hostio_open)
5894         (remote_hostio_close, remote_hostio_unlink, remote_state)
5895         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
5896         (get_memory_write_packet_size, get_memory_read_packet_size)
5897         (append_pending_thread_resumptions, remote_detach_1)
5898         (append_resumption, remote_resume_with_vcont)
5899         (add_current_inferior_and_thread, wait_ns, wait_as)
5900         (process_stop_reply, remote_notice_new_inferior)
5901         (process_initial_stop_replies, remote_add_thread)
5902         (btrace_sync_conf, remote_btrace_maybe_reopen)
5903         (remove_new_fork_children, kill_new_fork_children)
5904         (discard_pending_stop_replies, stop_reply_queue_length)
5905         (check_pending_events_prevent_wildcard_vcont)
5906         (discard_pending_stop_replies_in_queue, stop_reply)
5907         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
5908         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
5909         (remote_interrupt_as, remote_interrupt_ns)
5910         (remote_get_noisy_reply, remote_query_attached)
5911         (remote_add_inferior, remote_current_thread, get_current_thread)
5912         (set_thread, set_general_thread, set_continue_thread)
5913         (set_general_process, write_ptid)
5914         (remote_unpack_thread_info_response, remote_get_threadinfo)
5915         (parse_threadlist_response, remote_get_threadlist)
5916         (remote_threadlist_iterator, remote_get_threads_with_ql)
5917         (remote_get_threads_with_qxfer)
5918         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
5919         (get_offsets, remote_check_symbols, remote_supported_packet)
5920         (remote_query_supported, remote_packet_size)
5921         (remote_serial_quit_handler, remote_detach_pid)
5922         (remote_vcont_probe, remote_resume_with_hc)
5923         (send_interrupt_sequence, interrupt_query)
5924         (remote_notif_get_pending_events, fetch_register_using_p)
5925         (send_g_packet, process_g_packet, fetch_registers_using_g)
5926         (store_register_using_P, store_registers_using_G)
5927         (set_remote_traceframe, check_binary_download)
5928         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
5929         (remote_xfer_live_readonly_partial, remote_read_bytes)
5930         (remote_send_printf, remote_flash_write, readchar)
5931         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
5932         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
5933         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
5934         (extended_remote_disable_randomization, extended_remote_run)
5935         (send_environment_packet, extended_remote_environment_support)
5936         (extended_remote_set_inferior_cwd, remote_write_qxfer)
5937         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
5938         (packet_command): Now methods of ...
5939         (remote_target): ... this class.
5940         (m_remote_state) <remote_target>: New field.
5941         (struct remote_state) <stop_reply_queue,
5942         remote_async_inferior_event_token, wait_forever_enabled_p>: New
5943         fields.
5944         (remote_state::remote_state): Allocate stop_reply_queue.
5945         (remote_state): Delete global.
5946         (get_remote_state_raw): Delete.
5947         (remote_target::get_remote_state): Allocate m_remote_state on
5948         demand.
5949         (get_current_remote_target): New.
5950         (remote_ops, extended_remote_ops): Delete.
5951         (wait_forever_enabled_p, remote_async_inferior_event_token):
5952         Delete, moved to struct remote_state.
5953         (remote_target::close): Delete self.  Destruction bits split to
5954         ...
5955         (remote_target::~remote_target): ... this.
5956         (show_memory_packet_size): Adjust to use
5957         get_current_remote_target.
5958         (struct protocol_feature) <func>: Add remote_target parameter.
5959         All callers adjusted.
5960         (curr_quit_handler_target): New.
5961         (remote_serial_quit_handler): Reimplement.
5962         (remote_target::open_1): Adjust to use get_current_remote_target.
5963         Heap-allocate remote_target/extended_remote_target instances.
5964         (vcont_builder::vcont_builder): Add remote_target parameter, and
5965         save it in m_remote.  All callers adjusted.
5966         (vcont_builder::m_remote): New field.
5967         (vcont_builder::restart, vcont_builder::flush)
5968         (vcont_builder::push_action): Use it.
5969         (remote_target::commit_resume): Use it.
5970         (struct queue_iter_param) <remote>: New field.
5971         (remote_target::remove_new_fork_children): Fill in 'remote' field.
5972         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
5973         (check_pending_event_prevents_wildcard_vcont_callback)
5974         (remote_target::check_pending_events_prevent_wildcard_vcont)
5975         (remote_target::discard_pending_stop_replies)
5976         (remote_target::discard_pending_stop_replies_in_queue)
5977         (remote_target::remote_notif_remove_queued_reply): Fill in
5978         'remote' field.
5979         (remote_notif_get_pending_events): New.
5980         (remote_target::readchar, remote_target::remote_serial_write):
5981         Save/restore curr_quit_handler_target.
5982         (putpkt): New.
5983         (kill_new_fork_children): Fill in 'remote' field.
5984         (packet_command): Use get_current_remote_target, defer to
5985         remote_target method of same name.
5986         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
5987         parameter, and save it in m_remote.  All callers adjusted.
5988         (scoped_remote_fd::release): Use m_remote.
5989         (scoped_remote_fd::m_remote): New field.
5990         (remote_file_put, remote_file_get, remote_file_delete): Use
5991         get_current_remote_target, defer to remote_target method of same
5992         name.
5993         (remote_btrace_reset): Add remote_state paremeter.  Update all
5994         callers.
5995         (remote_async_inferior_event_handler). Pass down 'data'.
5996         (remote_new_objfile): Use get_current_remote_target.
5997         (remote_target::vcont_r_supported): New.
5998         (set_range_stepping): Use get_current_remote_target and
5999         remote_target::vcont_r_supported.
6000         (_initialize_remote): Don't allocate 'remote_state' and
6001         'stop_reply_queue' globals.
6002         * remote.h (struct remote_target): Forward declare.
6003         (getpkt, putpkt, remote_notif_get_pending_events): Add
6004         'remote_target' parameter.
6005
6006 2018-05-22  Pedro Alves  <palves@redhat.com>
6007
6008         * remote.c (vcont_builder): Now a class.  Make all data members
6009         private.
6010         (vcont_builder) <vcont_builder, restart, flush, push_action>:
6011         Declare methods.
6012         (vcont_builder_restart): Rename to ...
6013         (vcont_builder::restart): ... this.
6014         (vcont_builder_flush): Rename to ...
6015         (vcont_builder::flush): ... this.
6016         (vcont_builder_push_action): Rename to ...
6017         (vcont_builder::push_action): ... this.
6018         (remote_target::commit_resume): Adjust.
6019
6020 2018-05-22  Pedro Alves  <palves@redhat.com>
6021
6022         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
6023         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
6024         (get_fixed_memory_packet_size): New.
6025         (get_memory_packet_size): Use it.
6026         (set_memory_packet_size): Don't override the config size with
6027         DEFAULT_MAX_MEMORY_PACKET_SIZE.
6028         (show_memory_packet_size): Use get_fixed_memory_packet_size.
6029         Don't refer to get_memory_packet_size if not connected to a remote
6030         target.  Show "(default)" if configured size is 0.
6031
6032 2018-05-22  Pedro Alves  <palves@redhat.com>
6033
6034         * remote.c (remote_target::mourn_inferior): Move
6035         discard_pending_stop_replies call here from ...
6036         (_initialize_remote): ... here.
6037
6038 2018-05-22  Pedro Alves  <palves@redhat.com>
6039
6040         * remote.c (compare_section_command): Remove set_general_process
6041         call.
6042
6043 2018-05-22  Pedro Alves  <palves@redhat.com>
6044
6045         * remote.c (struct packet_reg, struct remote_arch_state):
6046         Move higher up in the file.
6047         (remote_state) <m_arch_states>: Store remote_arch_state values
6048         instead of remote_arch_state pointers.
6049         (remote_state::get_remote_arch_state): Adjust.
6050
6051 2018-05-22  Pedro Alves  <palves@redhat.com>
6052
6053         * remote.c: Include <unordered_map>.
6054         (remote_state): Now a class.
6055         (remote_state) <get_remote_arch_state>: Declare method.
6056         <get_remote_arch_state>: New field.
6057         (remote_arch_state) <remote_arch_state>: Declare ctor.
6058         <regs>: Now a unique_ptr.
6059         (remote_gdbarch_data_handle): Delete.
6060         (get_remote_arch_state): Delete.
6061         (remote_state::get_remote_arch_state): New.
6062         (get_remote_state): Adjust to call remote_state's
6063         get_remote_arch_state method.
6064         (init_remote_state): Delete, bits factored out to ...
6065         (remote_arch_state::remote_arch_state): ... this new method.
6066         (get_remote_packet_size, get_memory_packet_size)
6067         (process_g_packet, remote_target::fetch_registers)
6068         (remote_target::prepare_to_store, store_registers_using_G)
6069         (remote_target::store_registers, remote_target::get_trace_status):
6070         Adjust to call remote_state's method.
6071         (_initialize_remote): Remove reference to
6072         remote_gdbarch_data_handle.
6073
6074 2018-05-22  Pedro Alves  <palves@redhat.com>
6075
6076         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
6077         pread>: New method declarations.
6078         (remote_target::open_1): Adjust.
6079         (readahead_cache_invalidate): Rename to ...
6080         (readahead_cache::invalidate): ... this, and adjust to be a class
6081         method.
6082         (readahead_cache_invalidate_fd): Rename to ...
6083         (readahead_cache::invalidate_fd): ... this, and adjust to be a
6084         class method.
6085         (remote_hostio_pwrite): Adjust.
6086         (remote_hostio_pread_from_cache): Rename to ...
6087         (readahead_cache::pread): ... this, and adjust to be a class
6088         method.
6089         (remote_hostio_close): Adjust.
6090
6091 2018-05-22  Pedro Alves  <palves@redhat.com>
6092
6093         * remote.c (remote_hostio_close_cleanup): Delete.
6094         (class scoped_remote_fd): New.
6095         (remote_file_put, remote_file_get): Use it.
6096
6097 2018-05-22  Pedro Alves  <palves@redhat.com>
6098
6099         (struct vCont_action_support): Use bool and initialize all fields.
6100         (struct readahead_cache): Initialize all fields.
6101         (remote_state): Use bool and initialize all fields.
6102         (remote_state::remote_state, remote_state::~remote_state): New.
6103         (new_remote_state): Delete.
6104         (_initialize_remote): Use new to allocate remote_state.
6105
6106 2018-05-22  Pedro Alves  <palves@redhat.com>
6107             張俊芝  <zjz@zjz.name>
6108
6109         PR gdb/22973
6110         * c-exp.y: Include "c-support.h".
6111         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
6112         of tolower.  Use c_ident_is_alpha to scan names.
6113         * c-lang.c: Include "c-support.h".
6114         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
6115         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
6116         * c-support.h: New file, with bits factored out from ...
6117         * cp-name-parser.y: ... this file.
6118         Include "c-support.h".
6119         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
6120         c-support.h and renamed.
6121         (symbol_end, yylex): Adjust.
6122
6123 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6124
6125         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
6126         parameter type to CORE_ADDR.
6127         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
6128         parameter type in declaration to CORE_ADDR.
6129         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
6130         target_auxv_search to get AT_HWCAP and use the result to get the
6131         target description.
6132         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
6133         to CORE_ADDR. Remove the cast of the return value to unsigned
6134         long. Fix error predicate of target_auxv_search.
6135         (ppc_linux_nat_target::read_description): Change the type of the
6136         hwcap variable to CORE_ADDR.
6137
6138 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6139
6140         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
6141         if the size of fpscr is larger than 32 bits.
6142
6143 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6144
6145         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
6146         (ppc32_linux_vsxregmap): New global.
6147         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
6148         regcache_supply_regset, and regcache_collect_regset.
6149         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
6150         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
6151         (fetch_vsx_register, store_vsx_register): Remove.
6152         (fetch_vsx_registers): Add regno parameter. Get regset using
6153         ppc_linux_vsxregset. Use regset to supply registers.
6154         (store_vsx_registers): Add regno parameter. Get regset using
6155         ppc_linux_vsxregset. Use regset to collect registers.
6156         (fetch_register): Call fetch_vsx_registers instead of
6157         fetch_vsx_register.
6158         (store_register): Call store_vsx_registers instead of
6159         store_vsx_register.
6160         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
6161         new regno parameter.
6162         (store_ppc_registers): Call store_vsx_registers with -1 for the
6163         new regno parameter.
6164         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
6165         (ppc_collect_vsxregset): Remove.
6166
6167 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6168
6169         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
6170         offset fields.
6171         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
6172         for vector register offset fields.
6173         (ppc64_fbsd_reg_offsets): Likewise.
6174         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
6175         to vector register offset fields.
6176         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
6177         to vector register offset fields.
6178         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
6179         vector register offset fields.
6180         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
6181         initializers for vector register offset fields.
6182         (rs6000_aix64_reg_offsets): Likewise.
6183         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
6184         (ppc_supply_vrregset): Remove.
6185         (ppc_collect_vrregset): Remove.
6186         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
6187         (ppc_linux_vrregset) : New function.
6188         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
6189         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
6190         (ppc32_linux_vrregset): Remove.
6191         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
6192         and use result instead of ppc32_linux_vrregset.
6193         (ppc32_linux_reg_offsets): Remove initializers for vector register
6194         offset fields.
6195         (ppc64_linux_reg_offsets): Likewise.
6196         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
6197         * ppc-linux-nat.c: Include regset.h.
6198         (gdb_vrregset_t): Adjust comment to account for little-endian
6199         mode.
6200         (supply_vrregset, fill_vrregset): Remove.
6201         (fetch_altivec_register, store_altivec_register): Remove.
6202         (fetch_altivec_registers): Add regno parameter. Get regset using
6203         ppc_linux_vrregset. Use regset to supply registers.
6204         (store_altivec_registers): Add regno parameter. Get regset using
6205         ppc_linux_vrregset. Use regset to collect registers.
6206         (fetch_register): Call fetch_altivec_registers instead of
6207         fetch_altivec_register.
6208         (store_register): Call store_altivec_registers instead of
6209         store_altivec_register.
6210         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
6211         the new regno parameter.
6212         (store_ppc_registers): Call store_altivec_registers with -1 for
6213         the new regno parameter.
6214
6215 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6216
6217         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
6218         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
6219         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
6220         (gdb_vrregset_t): Change array type size to
6221         PPC_LINUX_SIZEOF_VRREGSET.
6222         (gdb_vsxregset_t): Change array type size to
6223         PPC_LINUX_SIZEOF_VSXREGSET.
6224         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
6225         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
6226         PPC_LINUX_SIZEOF_VSXREGSET.
6227
6228 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6229
6230         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
6231         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
6232         nat/ppc-linux.c.
6233         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
6234         ppc_linux_target_wordsize with tid.
6235         (ppc_linux_nat_target::read_description): Call ppc_linux_target
6236         wordsize with tid.
6237         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
6238         (ppc64_64bit_inferior_p): Add static and inline specifiers.
6239         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
6240         tid parameter. Remove static specifier.
6241         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
6242         (ppc_linux_target_wordsize): New declaration.
6243
6244 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
6245
6246         * arch/ppc-linux-common.c: New file.
6247         * arch/ppc-linux-common.h: New file.
6248         * arch/ppc-linux-tdesc.h: New file.
6249         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
6250         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
6251         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
6252         arch/ppc-linux-tdesc.h.
6253         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
6254         arch/ppc-linux-tdesc.h.
6255         (ppc_linux_nat_target::read_description): Remove target
6256         description matching code. Fill a ppc_linux_features struct and
6257         call ppc_linux_match_description with it. Move comment about ISA
6258         2.05 to ppc-linux-common.c.
6259         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
6260         arch/ppc-linux-tdesc.h.
6261         (ppc_linux_core_read_description): Remove target description
6262         matching code. Fill a ppc_linux_features struct and call
6263         ppc_linux_match_description with it.
6264         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
6265         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
6266         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
6267         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
6268         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
6269         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
6270         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
6271         (tdesc_powerpc_e500l): Remove.
6272
6273 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
6274
6275         * ada-lang.c (catch_assert_command): Pass empty string instead
6276         of NULL for excep_string argument.
6277
6278 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
6279
6280         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
6281         the width of the requested register exceeds the width of the
6282         `ptrace' data type.
6283
6284 2018-05-21  Tom Tromey  <tom@tromey.com>
6285
6286         * printcmd.c (output_command): Remove.
6287         (output_command_const): Rename to output_command.
6288         * valprint.h (output_command): Rename from output_command_const.
6289         * tracepoint.c (trace_dump_actions): Call output_command.
6290
6291 2018-05-21  Tom Tromey  <tom@tromey.com>
6292
6293         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
6294         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
6295         * ada-lang.h (create_ada_exception_catchpoint): Update.
6296         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
6297         std::string.
6298         (create_excep_cond_exprs, ~ada_catchpoint)
6299         (should_stop_exception, print_one_exception)
6300         (print_mention_exception, print_recreate_exception): Update.
6301         (ada_get_next_arg): Remove.
6302         (catch_ada_exception_command_split): Use std::string.  Change type
6303         of "excep_string", "cond_string".
6304         (catch_ada_exception_command): Update.
6305         (create_ada_exception_catchpoint): Change type of excep_string.
6306         (ada_exception_sal): Remove excep_string parameter.
6307         (~ada_catchpoint): Remove.
6308
6309 2018-05-21  Tom Tromey  <tom@tromey.com>
6310
6311         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
6312         cleanup.
6313
6314 2018-05-21  Tom Tromey  <tom@tromey.com>
6315
6316         * ada-lang.c (ada_exception_message_1, ada_exception_message):
6317         Return unique_xmalloc_ptr.
6318         (print_it_exception): Update.
6319
6320 2018-05-21  Tom Tromey  <tom@tromey.com>
6321
6322         * tracepoint.c (trace_dump_actions): Use std::string.
6323
6324 2018-05-21  Tom Tromey  <tom@tromey.com>
6325
6326         * symfile.c (reread_symbols): Use std::string for original_name.
6327
6328 2018-05-21  Tom Tromey  <tom@tromey.com>
6329
6330         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
6331         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
6332         constructor.
6333
6334 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
6335
6336         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
6337         instance to...
6338         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
6339         * objfiles.c (get_objfile_bfd_data): Allocate
6340         objfile_per_bfd_storage with obstack_new when allocating on
6341         obstack.
6342
6343 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
6344
6345         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
6346         OBSTACK_ZALLOC.
6347         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
6348         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
6349         * mdebugread.c (mdebug_build_psymtabs): Likewise.
6350         (add_pending): Likewise.
6351         (parse_symbol): Likewise.
6352         (parse_partial_symbols): Likewise.
6353         (psymtab_to_symtab_1): Likewise.
6354         (new_psymtab): Likewise.
6355         (elfmdebug_build_psymtabs): Likewise.
6356         * minsyms.c (terminate_minimal_symbol_table): Likewise.
6357         * objfiles.c (get_objfile_bfd_data): Likewise.
6358         (objfile_register_static_link): Likewise.
6359         * psymtab.c (allocate_psymtab): Likewise.
6360         * stabsread.c (read_member_functions): Likewise.
6361         * xcoffread.c (xcoff_end_psymtab): Likewise.
6362
6363 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
6364
6365         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
6366         compiler supports std::is_trivially_constructible.
6367         * common/poison.h: Include obstack.h.
6368         (IsMallocable): Define to is_trivially_constructible if the
6369         compiler supports it, define to true_type otherwise.
6370         (xobnew): New.
6371         (XOBNEW): Redefine.
6372         (xobnewvec): New.
6373         (XOBNEWVEC): Redefine.
6374         * gdb_obstack.h (obstack_zalloc): New.
6375         (OBSTACK_ZALLOC): Redefine.
6376         (obstack_calloc): New.
6377         (OBSTACK_CALLOC): Redefine.
6378         (obstack_new): New.
6379         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
6380         (gdbarch_obstack): New declaration in gdbarch.h, definition in
6381         gdbarch.c.
6382         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
6383         obstack_calloc/obstack_zalloc.
6384         (gdbarch_obstack_zalloc): Remove.
6385         * target-descriptions.c (tdesc_data_init): Use obstack_new.
6386
6387 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6388
6389         * stack.c (backtrace_command_1): Remove useless variable int i.
6390
6391 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6392
6393         * stack.c (print_frame_info): Fix comment.
6394
6395 2018-05-18  Tom Tromey  <tom@tromey.com>
6396
6397         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
6398         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
6399         (~dwarf2_per_objfile): Update
6400         (dwarf2_get_dwz_file): Use new.
6401         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
6402         unique_ptr.
6403
6404 2018-05-18  Tom Tromey  <tom@tromey.com>
6405
6406         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
6407         unique_ptr.
6408         * dwarf2read.c (struct dwp_file): Add constructor and
6409         initializers.
6410         (open_and_init_dwp_file): Return a unique_ptr.
6411         (dwarf2_per_objfile, create_dwp_hash_table)
6412         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
6413         (lookup_dwo_unit_in_dwp): Update.
6414         (open_and_init_dwp_file, get_dwp_file): Update.
6415
6416 2018-05-18  Tom Tromey  <tom@tromey.com>
6417
6418         * dwarf2read.c (dwarf2_per_objfile): Update.
6419         (struct mapped_index): Add initializers.
6420         (dwarf2_read_index): Use new.
6421         (dw2_symtab_iter_init): Update.
6422         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
6423         unique_ptr.
6424
6425 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
6426
6427         * dwarf2read.c (mapped_index) <total_size>: Remove.
6428
6429 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
6430
6431         * unittests/format_pieces-selftests.c (test_format_specifier):
6432         Add ARI comments.
6433
6434 2018-05-18  Tom Tromey  <tom@tromey.com>
6435
6436         * c-typeprint.c (maybe_print_hole): New function.
6437         (c_print_type_struct_field_offset): Update.
6438         (c_type_print_base_struct_union): Call maybe_print_hole.
6439
6440 2018-05-17  Keith Seitz  <keiths@redhat.com>
6441
6442         * breakpoint.c (build_bpstat_chain): New function, moved from
6443         bpstat_stop_status.
6444         (bpstat_stop_status): Add optional parameter, `stop_chain'.
6445         If no stop chain is passed, call build_bpstat_chain to build it.
6446         * breakpoint.h (build_bpstat_chain): Declare.
6447         (bpstat_stop_status): Move documentation here from breakpoint.c.
6448         * infrun.c (handle_signal_stop): Before eliding inlined frames,
6449         build the stop chain and pass it to skip_inline_frames.
6450         Pass this stop chain to bpstat_stop_status.
6451         * inline-frame.c: Include breakpoint.h.
6452         (stopped_by_user_bp_inline_frame): New function.
6453         (skip_inline_frames): Add parameter `stop_chain'.
6454         Move documention to inline-frame.h.
6455         If non-NULL, use stopped_by_user_bp_inline_frame to determine
6456         whether the frame should be elided.
6457         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
6458         Add moved documentation and update for new parameter.
6459
6460 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
6461
6462         PR cli/14975
6463         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6464         unittests/format_pieces-selftests.c.
6465         * common/format.h (format_piece) <operator==>: New.
6466         (format_pieces) <operator[]>: Remove.
6467         * common/format.c (format_pieces::format_pieces): Handle \e.
6468         * unittests/format_pieces-selftests.c: New.
6469
6470 2018-05-17  Tom Tromey  <tom@tromey.com>
6471
6472         PR symtab/23010:
6473         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
6474         (dw2_instantiate_symtab): Add skip_partial parameter.
6475         (dw2_find_last_source_symtab, dw2_map_expand_apply)
6476         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
6477         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
6478         (dw2_expand_symtabs_matching_one)
6479         (dw2_find_pc_sect_compunit_symtab)
6480         (dw2_debug_names_lookup_symbol)
6481         (dw2_debug_names_expand_symtabs_for_function): Update.
6482         (init_cutu_and_read_dies): Add skip_partial parameter.
6483         (process_psymtab_comp_unit, build_type_psymtabs_1)
6484         (process_skeletonless_type_unit, load_partial_comp_unit)
6485         (psymtab_to_symtab_1): Update.
6486         (load_full_comp_unit): Add skip_partial parameter.
6487         (process_imported_unit_die, dwarf2_read_addr_index)
6488         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
6489         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
6490         (read_signatured_type): Update.
6491
6492 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
6493
6494         * value.c (release_value): Remove unused variable.
6495         (record_latest_value): Likewise.
6496         (access_value_history): Likewise.
6497         (preserve_values): Likewise.
6498
6499 2018-05-17  Tom Tromey  <tom@tromey.com>
6500
6501         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
6502         Initialize.
6503
6504 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
6505
6506         PR gdb/22286
6507         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
6508         Also handle registers whose width is not a multiple of
6509         PTRACE_TYPE_RET.
6510         (linux_nat_trad_target::store_register): Likewise.
6511
6512 2018-05-16  Tom Tromey  <tom@tromey.com>
6513
6514         * gdbcore.h (core_bfd): Redefine.
6515         * corelow.c (core_target::close): Update.
6516         (core_target_open): Update.
6517         * progspace.h (struct program_space) <cbfd>: Now a
6518         gdb_bfd_ref_ptr.
6519
6520 2018-05-16  Tom Tromey  <tom@tromey.com>
6521
6522         PR cli/19551:
6523         * symfile-add-flags.h (enum symfile_add_flags)
6524         <SYMFILE_NOT_FILENAME>: New constant.
6525         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
6526         objfile name from BFD.
6527         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
6528         * minidebug.c (find_separate_debug_file_in_section): Put
6529         ".gnu_debugdata" into BFD's file name.
6530
6531 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
6532
6533         * regcache.c (regcache_read_ftype, regcache_write_ftype):
6534         Remove.
6535
6536 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
6537
6538         PR binutils/21446
6539         * aarch64-tdep.c (aarch64_analyze_prologue,
6540         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
6541         Indicate not interested in errors.
6542
6543 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
6544
6545         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
6546         Supply the MIPS_ZERO_REGNUM register.
6547
6548 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
6549
6550         * mips-tdep.c (mask_address_var): Make variable static.
6551
6552 2018-05-14  Tom Tromey  <tom@tromey.com>
6553
6554         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
6555
6556 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
6557
6558         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
6559         FXSAVE_ADDR for the mxcsr register.
6560
6561 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
6562
6563         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
6564
6565 2018-05-11  Pedro Alves  <palves@redhat.com>
6566
6567         * corelow.c (core_target) <core_target>: No longer inline.
6568         Initialize m_core_gdbarch, m_core_vec and build the section table
6569         here.
6570         <~core_target>: New.
6571         <core_gdbarch, get_core_register_section>: New methods.
6572         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
6573         factored out from ...
6574         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
6575         (core_ops): Delete.
6576         (sniff_core_bfd): Add gdbarch parameter.
6577         (core_close): Delete, merged into ...
6578         (core_target::close): ... here.  Delete self.
6579         (core_close_cleanup): Delete.
6580         (core_target_open): Allocate a core_target on the heap.  Use a
6581         unique_ptr instead of a cleanup.  Bits moved into the core_target
6582         ctor.  Adjust to use core_target methods instead of globals.
6583         (get_core_register_section): Rename to ...
6584         (core_target::get_core_register_section): ... this and adjust.
6585         (struct get_core_registers_cb_data): New.
6586         (get_core_registers_cb): Use it.  Use bool.
6587         (core_target::fetch_registers, core_target::files_info)
6588         (core_target::xfer_partial, core_target::read_description)
6589         (core_target::pid_to, core_target::thread_name): Adjust to
6590         reference class fields instead of globals.
6591         * target.h (struct target_ops_deleter, target_ops_up): New.
6592
6593 2018-05-11  Pedro Alves  <palves@redhat.com>
6594
6595         * corefile.c (core_file_command): Move to corelow.c.
6596         * corelow.c (the_core_target): Delete.
6597         (core_file_command): Moved from corefile.c.  Check exec_bfd
6598         instead of the_core_target.  Use target_detach instead of calling
6599         into the_core_target directly.
6600         (maybe_say_no_core_file_now): New.
6601         (core_target::detach): Use it.
6602         (_initialize_corelow): Remove references to the_core_target.
6603         * gdbcore.h (the_core_target): Delete.
6604
6605 2018-05-11  Tom Tromey  <tromey@redhat.com>
6606             Pedro Alves  <palves@redhat.com>
6607
6608         * corefile.c (core_bfd): Remove.
6609         * gdbcore.h (core_bfd): Now a macro.
6610         * progspace.h (struct program_space) <cbfd>: New field.
6611
6612 2018-05-11  Tom Tromey  <tom@tromey.com>
6613
6614         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
6615         gdb::def_vector.
6616
6617 2018-05-10  Tom Tromey  <tom@tromey.com>
6618
6619         * configure: Rebuild.
6620         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
6621
6622 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
6623
6624         PR server/23158:
6625         * regformats/regdat.sh: Adjust script, following the addition
6626         of the new expedite_regs parameter to init_target_desc.
6627
6628 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
6629     
6630         PR gdb/23127
6631         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
6632         set_gdbarch_significant_addr_bit.
6633         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
6634         set_gdbarch_significant_addr_bit.
6635         * utils.c (address_significant): Update to sign extend addr.
6636
6637 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
6638
6639         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
6640         (xtensa_linux_init_abi): Limit tdep->num_regs by
6641         tdep->num_nopriv_regs.
6642         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
6643         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
6644         not initialized.
6645
6646 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
6647
6648         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
6649
6650 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
6651
6652         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
6653         (I387_MXCSR_INIT_VAL): New constant.
6654         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
6655         buffer if it was supplied by the inferior.
6656         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
6657         (i387_xsave_get_clear_bv): New function.
6658         (i387_supply_xsave): Only read x87 control registers from the
6659         xsave buffer if the feature is enabled, and the state will have
6660         been written, otherwise, provide a suitable default.
6661         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
6662         including x87 control registers.  Update control registers if they
6663         have changed from the default value, and mark features as enabled
6664         as required.
6665         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
6666
6667 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
6668
6669         * spu-tdep.c (info_spu_event_command): Fix output formatting.
6670
6671 2018-05-07  Tom Tromey  <tom@tromey.com>
6672
6673         * configure: Rebuild.
6674         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
6675
6676 2018-05-07  Tom Tromey  <tom@tromey.com>
6677
6678         PR tdep/20362:
6679         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
6680         bit.  Use correct value for VDIV.
6681
6682 2018-05-04  Tom Tromey  <tom@tromey.com>
6683
6684         * configure: Rebuild.
6685         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
6686
6687 2018-05-04  Tom Tromey  <tom@tromey.com>
6688
6689         * linux-record.c (record_linux_system_call) <case
6690         RECORD_SYS_RECVFROM>: Add "break".
6691
6692 2018-05-04  Tom Tromey  <tom@tromey.com>
6693
6694         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
6695         Add missing "break".
6696         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
6697         Add missing "break".
6698
6699 2018-05-04  Tom Tromey  <tom@tromey.com>
6700
6701         * rs6000-tdep.c (ppc_process_record_op4)
6702         (ppc_process_record_op63): Add fall-through comment.
6703
6704 2018-05-04  Tom Tromey  <tom@tromey.com>
6705
6706         * i386-tdep.c (i386_process_record): Add fall-through comment.
6707
6708 2018-05-04  Tom Tromey  <tom@tromey.com>
6709
6710         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
6711         comment.
6712
6713 2018-05-04  Tom Tromey  <tom@tromey.com>
6714
6715         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
6716         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
6717         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
6718         comment.
6719         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
6720         comment.
6721         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
6722         comment.
6723
6724 2018-05-04  Tom Tromey  <tom@tromey.com>
6725
6726         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
6727
6728 2018-05-04  Tom Tromey  <tom@tromey.com>
6729
6730         * s390-tdep.c (s390_process_record): Fix fall-through comments.
6731         * xcoffread.c (scan_xcoff_symtab): Move comment later.
6732         * symfile.c (section_is_mapped): Fix fall-through comment.
6733         * stabsread.c (define_symbol, read_member_functions): Fix
6734         fall-through comment.
6735         * s390-linux-tdep.c (s390_process_record): Fix fall-through
6736         comment.
6737         * remote.c (remote_wait_as): Fix fall-through comment.
6738         * p-exp.y (yylex): Fix fall-through comment.
6739         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
6740         comment.
6741         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
6742         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
6743         * jv-exp.y (yylex): Fix fall-through comment.
6744         * go-exp.y (lex_one_token): Fix fall-through comment.
6745         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
6746         fall-through comment.
6747         * f-exp.y (yylex): Fix fall-through comment.
6748         * dwarf2read.c (process_die): Fix fall-through comments.
6749         * dbxread.c (process_one_symbol): Fix fall-through comment.
6750         * d-exp.y (lex_one_token): Fix fall-through comment.
6751         * cp-name-parser.y (yylex): Fix fall-through comment.
6752         * coffread.c (coff_symtab_read): Fix fall-through comment.
6753         * c-exp.y (lex_one_token): Fix fall-through comment.
6754         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
6755         comment.
6756         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
6757         comment.
6758
6759 2018-05-04  Tom Tromey  <tom@tromey.com>
6760
6761         PR python/22730:
6762         * NEWS: Mention gdb.execute change.
6763         * gdbcmd.h (execute_control_command): Don't declare.
6764         * python/python.c (execute_gdb_command): Use read_command_lines_1,
6765         execute_control_commands, execute_control_commands_to_string.
6766         * cli/cli-script.h (execute_control_commands)
6767         (execute_control_commands_to_string): Declare.
6768         (execute_control_command): Add from_tty parameter.
6769         * cli/cli-script.c (execute_control_commands)
6770         (execute_control_commands_to_string): New functions.
6771         (execute_user_command): Use execute_control_commands.
6772         (execute_control_command_1): Add "from_tty" parameter.  Update.
6773         (execute_control_command): Likewise.
6774
6775 2018-05-04  Tom Tromey  <tom@tromey.com>
6776
6777         PR python/22731:
6778         * NEWS: Mention that breakpoint commands are writable.
6779         * python/py-breakpoint.c (bppy_set_commands): New function.
6780         (breakpoint_object_getset) <"commands">: Use it.
6781
6782 2018-05-04  Tom Tromey  <tom@tromey.com>
6783
6784         * tracepoint.c (actions_command): Update.
6785         * mi/mi-cmd-break.c (mi_command_line_array)
6786         (mi_command_line_array_cnt, mi_command_line_array_ptr)
6787         (mi_read_next_line): Remove.
6788         (mi_cmd_break_commands): Update.
6789         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
6790         function_view.
6791         * cli/cli-script.c (get_command_line): Update.
6792         (process_next_line): Use function_view.  Constify.
6793         (recurse_read_control_structure, read_command_lines)
6794         (read_command_lines_1): Change argument types to function_view.
6795         (do_define_command, document_command): Update.
6796         * breakpoint.h (check_tracepoint_command): Don't declare.
6797         * breakpoint.c (check_tracepoint_command): Remove.
6798         (commands_command_1, create_tracepoint_from_upload): Update.
6799
6800 2018-05-04  Tom Tromey  <tom@tromey.com>
6801
6802         PR gdb/11750:
6803         * cli/cli-script.h (enum command_control_type) <define_control>:
6804         New constant.
6805         * cli/cli-script.c (multi_line_command_p): Handle define_control.
6806         (build_command_line, execute_control_command_1)
6807         (process_next_line): Likewise.
6808         (do_define_command): New function, extracted from define_command.
6809         (define_command): Use it.
6810
6811 2018-05-04  Tom Tromey  <tom@tromey.com>
6812
6813         * tracepoint.c (actions_command): Update.
6814         * cli/cli-script.h (read_command_lines): Update.
6815         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
6816         (MAX_TMPBUF): Remove define.
6817         (define_command): Use string_printf.
6818         (document_command): Likewise.
6819         * breakpoint.c (commands_command_1): Update.
6820
6821 2018-05-04  Tom Tromey  <tom@tromey.com>
6822
6823         * top.c (execute_command): Update.
6824         * cli/cli-script.h (print_command_lines): Now varargs.
6825         * cli/cli-script.c (print_command_lines): Now varargs.
6826         (execute_control_command_1) <case while_control, case if_control>:
6827         Update.
6828
6829 2018-05-04  Tom Tromey  <tom@tromey.com>
6830
6831         * tracepoint.c (all_tracepoint_actions): Rename from
6832         all_tracepoint_actions_and_cleanup.  Change return type.
6833         (actions_command, encode_actions_1, encode_actions)
6834         (trace_dump_actions, tdump_command): Update.
6835         * remote.c (remote_download_command_source): Update.
6836         * python/python.c (gdbpy_eval_from_control_command)
6837         (python_command, python_interactive_command): Update.
6838         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
6839         * guile/guile.c (guile_command)
6840         (gdbscm_eval_from_control_command, guile_command): Update.
6841         * compile/compile.c (compile_code_command)
6842         (compile_print_command, compile_to_object): Update.
6843         * cli/cli-script.h (struct command_lines_deleter): New.
6844         (counted_command_line): New typedef.
6845         (struct command_line): Add constructor, destructor.
6846         <body_list>: Remove.
6847         <body_list_0, body_list_1>: New members.
6848         (command_line_up): Remove typedef.
6849         (read_command_lines, read_command_lines_1, get_command_line):
6850         Update.
6851         (copy_command_lines): Don't declare.
6852         * cli/cli-script.c (build_command_line): Use "new".
6853         (get_command_line): Return counted_command_line.
6854         (print_command_lines, execute_user_command)
6855         (execute_control_command_1, while_command, if_command): Update.
6856         (realloc_body_list): Remove.
6857         (process_next_line, recurse_read_control_structure): Update.
6858         (read_command_lines, read_command_lines_1): Return counted_command_line.
6859         (free_command_lines): Use "delete".
6860         (copy_command_lines): Remove.
6861         (define_command, document_command, show_user_1): Update.
6862         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
6863         a counted_command_line.
6864         * breakpoint.h (counted_command_line): Remove typedef.
6865         (breakpoint_set_commands): Update.
6866         * breakpoint.c (check_no_tracepoint_commands)
6867         (validate_commands_for_breakpoint): Update.
6868         (breakpoint_set_commands): Change commands to be a
6869         counted_command_line.
6870         (commands_command_1, update_dprintf_command_list)
6871         (create_tracepoint_from_upload): Update.
6872
6873 2018-05-04  Tom Tromey  <tom@tromey.com>
6874
6875         * cli/cli-decode.h (cmd_list_element): New constructor.
6876         (~cmd_list_element): New destructor.
6877         (struct cmd_list_element): Add initializers.
6878         * cli/cli-decode.c (do_add_cmd): Use "new".
6879         (delete_cmd): Use "delete".
6880
6881 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
6882             Pedro Alves <palves@redhat.com>
6883
6884         PR breakpoints/19806 and support for PR external/20207.
6885         * NEWS: Mention Aarch64 watchpoint improvements.
6886         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
6887         watchpoints and PR external/20207 watchpoints.
6888         * nat/aarch64-linux-hw-point.c
6889         (kernel_supports_any_contiguous_range): New.
6890         (aarch64_watchpoint_offset): New.
6891         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
6892         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
6893         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
6894         (aarch64_align_watchpoint): New parameters aligned_offset_p and
6895         next_addr_orig_p.  Support PR external/20207 watchpoints.
6896         (aarch64_downgrade_regs): New.
6897         (aarch64_dr_state_insert_one_point): New parameters offset and
6898         addr_orig.
6899         (aarch64_dr_state_remove_one_point): Likewise.
6900         (aarch64_handle_breakpoint): Update caller.
6901         (aarch64_handle_aligned_watchpoint): Likewise.
6902         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
6903         aligned_offset.
6904         (aarch64_linux_set_debug_regs): Remove const from state.  Call
6905         aarch64_downgrade_regs.
6906         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
6907         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
6908         (DR_CONTROL_MASK): ... this.
6909         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
6910         (unsigned int aarch64_watchpoint_offset): New prototype.
6911         (aarch64_linux_set_debug_regs): Remove const from state.
6912         * utils.c (align_up, align_down): Move to ...
6913         * common/common-utils.c (align_up, align_down): ... here.
6914         * utils.h (align_up, align_down): Move to ...
6915         * common/common-utils.h (align_up, align_down): ... here.
6916
6917 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
6918
6919         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
6920         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
6921         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
6922         Re-implement to match the ABI as summarized in GCC's
6923         gcc/config/sparc/sparc.c.  All callers updated.
6924         (sparc32_store_arguments): Remove assertion.
6925
6926 2018-05-04  Tom Tromey  <tom@tromey.com>
6927
6928         * printcmd.c: Don't include tui.h.
6929         (decode_format): Use skip_spaces.
6930
6931 2018-05-04  Tom Tromey  <tom@tromey.com>
6932
6933         PR gdb/22619:
6934         * printcmd.c (last_count): New global.
6935         (x_command): Use saved count when repeating.
6936
6937 2018-05-04  Tom Tromey  <tom@tromey.com>
6938
6939         * nto-procfs.c (do_closedir_cleanup): Remove.
6940         (procfs_pidlist): Use gdb_dir_up.
6941         * procfs.c (do_closedir_cleanup): Remove.
6942         (proc_update_threads): Use gdb_dir_up.
6943         * common/filestuff.h (struct gdb_dir_deleter): New.
6944         (gdb_dir_up): New typedef.
6945
6946 2018-05-04  Tom Tromey  <tom@tromey.com>
6947
6948         * ada-lang.c (print_mention_exception): Use std::string.
6949
6950 2018-05-04  Tom Tromey  <tom@tromey.com>
6951
6952         * ada-lang.c (create_excep_cond_exprs): Update.
6953         (ada_exception_catchpoint_cond_string): Use std::string.
6954
6955 2018-05-04  Tom Tromey  <tom@tromey.com>
6956
6957         * ada-lang.c (xget_renaming_scope): Return std::string.
6958         (old_renaming_is_invisible): Update.
6959
6960 2018-05-04  Tom Tromey  <tom@tromey.com>
6961
6962         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
6963         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
6964
6965 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
6966
6967         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
6968
6969 2018-05-04  Tom Tromey  <tom@tromey.com>
6970
6971         * remote.c (remote_query_supported_append): Change type.
6972         (remote_check_symbols): Update.
6973
6974 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
6975
6976         PR gdb/11420
6977         * configure.ac: Prepend libpython.
6978         * python/python-config.py: Likewise.
6979         * configure: Regenerate.
6980
6981 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
6982
6983         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
6984
6985 2018-05-03  Pedro Alves  <palves@redhat.com>
6986
6987         * s390-linux-nat.c
6988         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
6989         override.  Write 'true' instead of '1'.
6990         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
6991         declaration.
6992
6993 2018-05-02  Pedro Alves  <palves@redhat.com>
6994
6995         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
6996         add_inf_child_target.
6997         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
6998         add_inf_child_target.
6999         * aix-thread.c (aix_thread_target_info): New.
7000         (aix_thread_target) <shortname, longname, doc>: Delete.
7001         <info>: New.
7002         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
7003         add_inf_child_target.
7004         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
7005         add_inf_child_target.
7006         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
7007         add_inf_child_target.
7008         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
7009         add_inf_child_target.
7010         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
7011         add_inf_child_target.
7012         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
7013         add_inf_child_target.
7014         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
7015         add_inf_child_target.
7016         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
7017         add_inf_child_target.
7018         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
7019         add_inf_child_target.
7020         * bfd-target.c (target_bfd_target_info): New.
7021         (target_bfd) <shortname, longname, doc>: Delete.
7022         <info>: New.
7023         * bsd-kvm.c (bsd_kvm_target_info): New.
7024         (bsd_kvm_target) <shortname, longname, doc>: Delete.
7025         <info>: New.
7026         (bsd_kvm_target::open): Rename to ...
7027         (bsd_kvm_target_open): ... this.  Adjust.
7028         * bsd-uthread.c (bsd_uthread_target_info): New.
7029         (bsd_uthread_target) <shortname, longname, doc>: Delete.
7030         <info>: New.
7031         * corefile.c (core_file_command): Adjust.
7032         * corelow.c (core_target_info): New.
7033         (core_target) <shortname, longname, doc>: Delete.
7034         <info>: New.
7035         (core_target::open): Rename to ...
7036         (core_target_open): ... this.  Adjust.
7037         * ctf.c (ctf_target_info): New.
7038         (ctf_target) <shortname, longname, doc>: Delete.
7039         <info>: New.
7040         (ctf_target::open): Rename to ...
7041         (ctf_target_open): ... this.
7042         (_initialize_ctf): Adjust.
7043         * exec.c (exec_target_info): New.
7044         (exec_target) <shortname, longname, doc>: Delete.
7045         <info>: New.
7046         (exec_target::open): Rename to ...
7047         (exec_target_open): ... this.
7048         * gdbcore.h (core_target_open): Declare.
7049         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
7050         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
7051         add_inf_child_target.
7052         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
7053         add_inf_child_target.
7054         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
7055         add_inf_child_target.
7056         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
7057         add_inf_child_target.
7058         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
7059         add_inf_child_target.
7060         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
7061         add_inf_child_target.
7062         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
7063         add_inf_child_target.
7064         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
7065         add_inf_child_target.
7066         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
7067         add_inf_child_target.
7068         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
7069         add_inf_child_target.
7070         * inf-child.c (inf_child_target_info): New.
7071         (inf_child_target::info): New.
7072         (inf_child_open_target): Remove 'target' parameter.  Use
7073         get_native_target instead.
7074         (inf_child_target::open): Delete.
7075         (add_inf_child_target): New.
7076         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
7077         Delete.
7078         <info>: New.
7079         (add_inf_child_target): Declare.
7080         (inf_child_open_target): Declare.
7081         * linux-thread-db.c (thread_db_target_info): New.
7082         (thread_db_target) <shortname, longname, doc>: Delete.
7083         <info>: New.
7084         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
7085         add_inf_child_target.
7086         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
7087         add_inf_child_target.
7088         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
7089         add_inf_child_target.
7090         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
7091         add_inf_child_target.
7092         * make-target-delegates (print_class): Adjust.
7093         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
7094         add_inf_child_target.
7095         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
7096         add_inf_child_target.
7097         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
7098         add_inf_child_target.
7099         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
7100         add_inf_child_target.
7101         * nto-procfs.c (nto_native_target_info): New.
7102         (nto_procfs_target_native) <shortname, longname, doc>:
7103         Delete.
7104         <info>: New.
7105         (nto_procfs_target_info): New.
7106         (nto_procfs_target_procfs) <shortname, longname, doc>:
7107         Delete.
7108         <info>: New.
7109         (init_procfs_targets): Adjust.
7110         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
7111         add_inf_child_target.
7112         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
7113         add_inf_child_target.
7114         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
7115         add_inf_child_target.
7116         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
7117         add_inf_child_target.
7118         * ravenscar-thread.c (ravenscar_target_info): New.
7119         (ravenscar_thread_target) <shortname, longname, doc>:
7120         Delete.
7121         <info>: New.
7122         * record-btrace.c (record_btrace_target_info):
7123         (record_btrace_target) <shortname, longname, doc>: Delete.
7124         <info>: New.
7125         (record_btrace_target::open): Rename to ...
7126         (record_btrace_target_open): ... this.  Adjust.
7127         * record-full.c (record_longname, record_doc): New.
7128         (record_full_base_target) <shortname, longname, doc>: Delete.
7129         <info>: New.
7130         (record_full_target_info): New.
7131         (record_full_target): <shortname>: Delete.
7132         <info>: New.
7133         (record_full_core_open_1, record_full_open_1): Update comments.
7134         (record_full_base_target::open): Rename to ...
7135         (record_full_open): ... this.
7136         (cmd_record_full_restore): Update.
7137         (_initialize_record_full): Update.
7138         * remote-sim.c (remote_sim_target_info): New.
7139         (gdbsim_target) <shortname, longname, doc>: Delete.
7140         <info>: New.
7141         (gdbsim_target::open): Rename to ...
7142         (gdbsim_target_open): ... this.
7143         (_initialize_remote_sim): Adjust.
7144         * remote.c (remote_doc): New.
7145         (remote_target_info): New.
7146         (remote_target) <shortname, longname, doc>: Delete.
7147         <info>: New.
7148         (extended_remote_target_info): New.
7149         (extended_remote_target) <shortname, longname, doc>: Delete.
7150         <info>: New.
7151         (remote_target::open_1): Make static.  Adjust.
7152         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
7153         * s390-linux-nat.c (_initialize_s390_nat): Use
7154         add_inf_child_target.
7155         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
7156         add_inf_child_target.
7157         * sol-thread.c (thread_db_target_info): New.
7158         (sol_thread_target) <shortname, longname, doc>: Delete.
7159         <info>: New.
7160         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
7161         add_inf_child_target.
7162         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
7163         add_inf_child_target.
7164         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
7165         add_inf_child_target.
7166         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
7167         add_inf_child_target.
7168         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
7169         add_inf_child_target.
7170         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
7171         add_inf_child_target.
7172         * spu-linux-nat.c (_initialize_spu_nat): Use
7173         add_inf_child_target.
7174         * spu-multiarch.c (spu_multiarch_target_info): New.
7175         (spu_multiarch_target) <shortname, longname, doc>: Delete.
7176         <info>: New.
7177         * target-delegates.c: Regenerate.
7178         * target.c: Include <unordered_map>.
7179         (target_ops_p): Delete.
7180         (DEF_VEC_P(target_ops_p)): Delete.
7181         (target_factories): New.
7182         (test_target_info): New.
7183         (test_target_ops::info): New.
7184         (open_target): Adjust to use target_factories.
7185         (add_target_with_completer): Rename to ...
7186         (add_target): ... this.  Change prototype.  Register target_info
7187         and open callback in target_factories.  Register target_info in
7188         command context instead of target_ops.
7189         (add_target): Delete old implementation.
7190         (add_deprecated_target_alias): Change prototype.  Adjust.
7191         (the_native_target): New.
7192         (set_native_target, get_native_target): New.
7193         (find_default_run_target): Use the_native_target.
7194         (find_attach_target, find_run_target): Simplify.
7195         (target_ops::open): Delete.
7196         (dummy_target_info): New.
7197         (dummy_target::shortname, dummy_target::longname)
7198         (dummy_target::doc): Delete.
7199         (dummy_target::info): New.
7200         (debug_target::shortname, debug_target::longname)
7201         (debug_target::doc): Delete.
7202         (debug_target::info): New.
7203         * target.h (struct target_info): New.
7204         (target_ops::~target_ops): Add comment.
7205         (target_ops::info): New.
7206         (target_ops::shortname, target_ops::longname, target_ops::doc): No
7207         longer virtual.  Implement in terms of target_info.
7208         (set_native_target, get_native_target): Declare.
7209         (target_open_ftype): New.
7210         (add_target, add_target_with_completer)
7211         (add_deprecated_target_alias): Change prototype.
7212         (test_target) <shortname, longname, doc>: Delete.
7213         <info>: New.
7214         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
7215         add_inf_child_target.
7216         * tracefile-tfile.c (tfile_target_info): New.
7217         (tfile_target) <shortname, longname, doc>: Delete.
7218         <info>: New.
7219         (tfile_target::open): Rename to ...
7220         (tfile_target_open): ... this.
7221         (_initialize_tracefile_tfile): Adjust.
7222         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
7223         add_inf_child_target.
7224         * windows-nat.c (_initialize_windows_nat): Use
7225         add_inf_child_target.
7226         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
7227         add_inf_child_target.
7228
7229 2018-05-02  Pedro Alves  <palves@redhat.com>
7230
7231         * linux-nat.h (linux_nat_target) <low_new_thread,
7232         low_delete_thread, low_new_fork, low_forget_process,
7233         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
7234         New virtual methods.
7235         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
7236         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
7237         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
7238         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
7239         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
7240         Delete.
7241         * linux-fork.c (delete_fork): Adjust to call low method.
7242         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
7243         (linux_nat_new_fork, linux_nat_forget_process_hook)
7244         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
7245         (linux_nat_status_is_event):
7246         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
7247         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
7248         to call low method.
7249         (sigtrap_is_event): Rename to ...
7250         (linux_nat_target::low_status_is_event): ... this.
7251         (linux_nat_set_status_is_event): Delete.
7252         (save_stop_reason, linux_nat_wait_1)
7253         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
7254         low methods.
7255         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
7256         (linux_nat_set_new_fork, linux_nat_set_forget_process)
7257         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
7258         (linux_nat_set_prepare_to_resume): Delete.
7259         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
7260         low virtual methods.
7261         * amd64-linux-nat.c: Likewise.
7262         * arm-linux-nat.c: Likewise.
7263         * i386-linux-nat.c: Likewise.
7264         * ia64-linux-nat.c: Likewise.
7265         * mips-linux-nat.c: Likewise.
7266         * ppc-linux-nat.c: Likewise.
7267         * s390-linux-nat.c: Likewise.
7268         * sparc64-linux-nat.c: Likewise.
7269         * x86-linux-nat.c: Likewise.
7270         * x86-linux-nat.h: Include "nat/x86-linux.h".
7271         (x86_linux_nat_target) <low_new_fork, low_forget_process,
7272         low_prepare_to_resume, low_new_thread, low_delete_thread>:
7273         Override methods.
7274
7275 2018-05-02  Pedro Alves  <palves@redhat.com>
7276
7277         * target.h (target_ops)
7278         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
7279         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
7280         stopped_by_watchpoint, have_continuable_watchpoint,
7281         stopped_data_address, watchpoint_addr_within_range,
7282         can_accel_watchpoint_condition, can_run, thread_alive,
7283         has_all_memory, has_memory, has_stack, has_registers,
7284         has_execution, can_async_p, is_async_p, supports_non_stop,
7285         always_non_stop_p, can_execute_reverse, supports_multi_process,
7286         supports_enable_disable_tracepoint,
7287         supports_disable_randomization, supports_string_tracing,
7288         supports_evaluation_of_breakpoint_conditions,
7289         can_run_breakpoint_commands, filesystem_is_local,
7290         can_download_tracepoint, get_trace_state_variable_value,
7291         set_trace_notes, get_tib_address, use_agent, can_use_agent,
7292         record_is_replaying, record_will_replay,
7293         augmented_libraries_svr4_read>: Adjust to return bool.
7294         * aarch64-linux-nat.c: All implementations adjusted.
7295         * aix-thread.c: All implementations adjusted.
7296         * arm-linux-nat.c: All implementations adjusted.
7297         * breakpoint.c: All implementations adjusted.
7298         * bsd-kvm.c: All implementations adjusted.
7299         * bsd-uthread.c: All implementations adjusted.
7300         * corelow.c: All implementations adjusted.
7301         * ctf.c: All implementations adjusted.
7302         * darwin-nat.c: All implementations adjusted.
7303         * darwin-nat.h: All implementations adjusted.
7304         * exec.c: All implementations adjusted.
7305         * fbsd-nat.c: All implementations adjusted.
7306         * fbsd-nat.h: All implementations adjusted.
7307         * gnu-nat.c: All implementations adjusted.
7308         * gnu-nat.h: All implementations adjusted.
7309         * go32-nat.c: All implementations adjusted.
7310         * ia64-linux-nat.c: All implementations adjusted.
7311         * inf-child.c: All implementations adjusted.
7312         * inf-child.h: All implementations adjusted.
7313         * inf-ptrace.c: All implementations adjusted.
7314         * inf-ptrace.h: All implementations adjusted.
7315         * linux-nat.c: All implementations adjusted.
7316         * linux-nat.h: All implementations adjusted.
7317         * mips-linux-nat.c: All implementations adjusted.
7318         * nto-procfs.c: All implementations adjusted.
7319         * ppc-linux-nat.c: All implementations adjusted.
7320         * procfs.c: All implementations adjusted.
7321         * ravenscar-thread.c: All implementations adjusted.
7322         * record-btrace.c: All implementations adjusted.
7323         * record-full.c: All implementations adjusted.
7324         * remote-sim.c: All implementations adjusted.
7325         * remote.c: All implementations adjusted.
7326         * s390-linux-nat.c: All implementations adjusted.
7327         * sol-thread.c: All implementations adjusted.
7328         * spu-multiarch.c: All implementations adjusted.
7329         * target-delegates.c: All implementations adjusted.
7330         * target.c: All implementations adjusted.
7331         * target.h: All implementations adjusted.
7332         * tracefile-tfile.c: All implementations adjusted.
7333         * tracefile.c: All implementations adjusted.
7334         * tracefile.h: All implementations adjusted.
7335         * windows-nat.c: All implementations adjusted.
7336         * x86-linux-nat.h: All implementations adjusted.
7337         * x86-nat.h: All implementations adjusted.
7338
7339 2018-05-02  Pedro Alves  <palves@redhat.com>
7340
7341         * make-target-delegates (scan_target_h): Don't trim lines here.
7342         Replace sequences of tabs and/or whitespace with a single
7343         whitespace.
7344         (top level, parsing methods): Trim each line before processing it
7345         here.
7346
7347 2018-05-02  Pedro Alves  <palves@redhat.com>
7348             John Baldwin  <jhb@freebsd.org>
7349
7350         * target.h (enum strata) <debug_stratum>: New.
7351         (struct target_ops) <all delegation methods>: Replace by C++
7352         virtual methods, and drop "to_" prefix.  All references updated
7353         throughout.
7354         <to_shortname, to_longname, to_doc, to_data,
7355         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
7356         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
7357         virtual methods.  All references updated throughout.
7358         <can_attach, supports_terminal_ours, can_create_inferior,
7359         get_thread_control_capabilities, attach_no_wait>: New
7360         virtual methods.
7361         <insert_breakpoint, remove_breakpoint>: Now
7362         TARGET_DEFAULT_NORETURN methods.
7363         <info_proc>: Now returns bool.
7364         <to_magic>: Delete.
7365         (OPS_MAGIC): Delete.
7366         (current_target): Delete.  All references replaced by references
7367         to ...
7368         (target_stack): ... this.  New.
7369         (target_shortname, target_longname): Adjust.
7370         (target_can_run): Now a function declaration.
7371         (default_child_has_all_memory, default_child_has_memory)
7372         (default_child_has_stack, default_child_has_registers)
7373         (default_child_has_execution): Remove target_ops parameter.
7374         (complete_target_initialization): Delete.
7375         (memory_breakpoint_target): New template class.
7376         (test_target_ops): Refactor as a C++ class with virtual methods.
7377         * make-target-delegates (NAME_PART): Tighten.
7378         (POINTER_PART, CP_SYMBOL): New.
7379         (SIMPLE_RETURN_PART): Reimplement.
7380         (VEC_RETURN_PART): Expect less.
7381         (RETURN_PART, VIRTUAL_PART): New.
7382         (METHOD): Adjust to C++ virtual methods.
7383         (scan_target_h): Remove reference to C99.
7384         (dname): Output "target_ops::" prefix.
7385         (write_function_header): Adjust to output a C++ class method.
7386         (write_declaration): New.
7387         (write_delegator): Adjust to output a C++ class method.
7388         (tdname): Output "dummy_target::" prefix.
7389         (write_tdefault, write_debugmethod): Adjust to output a C++ class
7390         method.
7391         (tdefault_names, debug_names): Delete.
7392         (return_types, tdefaults, styles, argtypes_array): New.
7393         (top level): All methods are delegators.
7394         (print_class): New.
7395         (top level): Print dummy_target and debug_target classes.
7396         * target-delegates.c: Regenerate.
7397         * target-debug.h (target_debug_print_enum_info_proc_what)
7398         (target_debug_print_thread_control_capabilities)
7399         (target_debug_print_thread_info_p): New.
7400         * target.c (dummy_target): Delete.
7401         (the_dummy_target, the_debug_target): New.
7402         (target_stack): Now extern.
7403         (set_targetdebug): Push/unpush debug target.
7404         (default_child_has_all_memory, default_child_has_memory)
7405         (default_child_has_stack, default_child_has_registers)
7406         (default_child_has_execution): Remove target_ops parameter.
7407         (complete_target_initialization): Delete.
7408         (add_target_with_completer): No longer call
7409         complete_target_initialization.
7410         (target_supports_terminal_ours): Use regular delegation.
7411         (update_current_target): Delete.
7412         (push_target): No longer check magic number.  Don't call
7413         update_current_target.
7414         (unpush_target): Don't call update_current_target.
7415         (target_is_pushed): No longer check magic number.
7416         (target_require_runnable): Skip for all stratums over
7417         process_stratum.
7418         (target_ops::info_proc): New.
7419         (target_info_proc): Use find_target_at and
7420         find_default_run_target.
7421         (target_supports_disable_randomization): Use regular delegation.
7422         (target_get_osdata): Use find_target_at.
7423         (target_ops::open, target_ops::close, target_ops::can_attach)
7424         (target_ops::attach, target_ops::can_create_inferior)
7425         (target_ops::create_inferior, target_ops::can_run)
7426         (target_can_run): New.
7427         (default_fileio_target): Use regular delegation.
7428         (target_ops::fileio_open, target_ops::fileio_pwrite)
7429         (target_ops::fileio_pread, target_ops::fileio_fstat)
7430         (target_ops::fileio_close, target_ops::fileio_unlink)
7431         (target_ops::fileio_readlink): New.
7432         (target_fileio_open_1, target_fileio_unlink)
7433         (target_fileio_readlink): Always call the target method.  Handle
7434         FILEIO_ENOSYS.
7435         (return_zero, return_zero_has_execution): Delete.
7436         (init_dummy_target): Delete.
7437         (dummy_target::dummy_target, dummy_target::shortname)
7438         (dummy_target::longname, dummy_target::doc)
7439         (debug_target::debug_target, debug_target::shortname)
7440         (debug_target::longname, debug_target::doc): New.
7441         (target_supports_delete_record): Use regular delegation.
7442         (setup_target_debug): Delete.
7443         (maintenance_print_target_stack): Skip debug_stratum.
7444         (initialize_targets): Instantiate the_dummy_target and
7445         the_debug_target.
7446         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
7447         use target_stack.
7448         (target_auxv_search, fprint_target_auxv): Adjust.
7449         (info_auxv_command): Adjust to use target_stack.
7450         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
7451         * exceptions.c (print_flush): Handle a NULL target_stack.
7452         * regcache.c (target_ops_no_register): Refactor as class with
7453         virtual methods.
7454
7455         * exec.c (exec_target): New class.
7456         (exec_ops): Now an exec_target.
7457         (exec_open, exec_close_1, exec_get_section_table)
7458         (exec_xfer_partial, exec_files_info, exec_has_memory)
7459         (exec_make_note_section): Refactor as exec_target methods.
7460         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
7461         Delete.
7462         (exec_target::find_memory_regions): New.
7463         (_initialize_exec): Don't call init_exec_ops.
7464         * gdbcore.h (exec_file_clear): Delete.
7465
7466         * corefile.c (core_target): Delete.
7467         (core_file_command): Adjust.
7468         * corelow.c (core_target): New class.
7469         (the_core_target): New.
7470         (core_close): Remove target_ops parameter.
7471         (core_close_cleanup): Adjust.
7472         (core_target::close): New.
7473         (core_open, core_detach, get_core_registers, core_files_info)
7474         (core_xfer_partial, core_thread_alive, core_read_description)
7475         (core_pid_to_str, core_thread_name, core_has_memory)
7476         (core_has_stack, core_has_registers, core_info_proc): Rework as
7477         core_target methods.
7478         (ignore, core_remove_breakpoint, init_core_ops): Delete.
7479         (_initialize_corelow): Initialize the_core_target.
7480         * gdbcore.h (core_target): Delete.
7481         (the_core_target): New.
7482
7483         * ctf.c: (ctf_target): New class.
7484         (ctf_ops): Now a ctf_target.
7485         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
7486         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
7487         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
7488         methods.
7489         (init_ctf_ops): Delete.
7490         (_initialize_ctf): Don't call it.
7491         * tracefile-tfile.c (tfile_target): New class.
7492         (tfile_ops): Now a tfile_target.
7493         (tfile_open, tfile_close, tfile_files_info)
7494         (tfile_get_tracepoint_status, tfile_trace_find)
7495         (tfile_fetch_registers, tfile_xfer_partial)
7496         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
7497         Refactor as tfile_target methods.
7498         (tfile_xfer_partial_features): Remove target_ops parameter.
7499         (init_tfile_ops): Delete.
7500         (_initialize_tracefile_tfile): Don't call it.
7501         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
7502         (tracefile_has_stack, tracefile_has_registers)
7503         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
7504         tracefile_target methods.
7505         (init_tracefile_ops): Delete.
7506         (tracefile_target::tracefile_target): New.
7507         * tracefile.h: Include "target.h".
7508         (tracefile_target): New class.
7509         (init_tracefile_ops): Delete.
7510
7511         * spu-multiarch.c (spu_multiarch_target): New class.
7512         (spu_ops): Now a spu_multiarch_target.
7513         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
7514         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
7515         (spu_search_memory, spu_mourn_inferior): Refactor as
7516         spu_multiarch_target methods.
7517         (init_spu_ops): Delete.
7518         (_initialize_spu_multiarch): Remove references to init_spu_ops,
7519         complete_target_initialization.
7520
7521         * ravenscar-thread.c (ravenscar_thread_target): New class.
7522         (ravenscar_ops): Now a ravenscar_thread_target.
7523         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
7524         (ravenscar_thread_alive, ravenscar_pid_to_str)
7525         (ravenscar_fetch_registers, ravenscar_store_registers)
7526         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
7527         (ravenscar_stopped_by_hw_breakpoint)
7528         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
7529         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
7530         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
7531         methods.
7532         (init_ravenscar_thread_ops): Delete.
7533         (_initialize_ravenscar): Remove references to
7534         init_ravenscar_thread_ops and complete_target_initialization.
7535
7536         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
7537         (bsd_uthread_target): New class.
7538         (bsd_uthread_ops): Now a bsd_uthread_target.
7539         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
7540         (bsd_uthread_close, bsd_uthread_mourn_inferior)
7541         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
7542         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
7543         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
7544         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
7545         (bsd_uthread_target): Delete function.
7546         (_initialize_bsd_uthread): Remove reference to
7547         complete_target_initialization.
7548
7549         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
7550         (target_bfd): ... this new class.
7551         (target_bfd_xfer_partial, target_bfd_get_section_table)
7552         (target_bfd_close): Refactor as target_bfd methods.
7553         (target_bfd::~target_bfd): New.
7554         (target_bfd_reopen): Adjust.
7555         (target_bfd::close): New.
7556
7557         * record-btrace.c (record_btrace_target): New class.
7558         (record_btrace_ops): Now a record_btrace_target.
7559         (record_btrace_open, record_btrace_stop_recording)
7560         (record_btrace_disconnect, record_btrace_close)
7561         (record_btrace_async, record_btrace_info)
7562         (record_btrace_insn_history, record_btrace_insn_history_range)
7563         (record_btrace_insn_history_from, record_btrace_call_history)
7564         (record_btrace_call_history_range)
7565         (record_btrace_call_history_from, record_btrace_record_method)
7566         (record_btrace_is_replaying, record_btrace_will_replay)
7567         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
7568         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
7569         (record_btrace_store_registers, record_btrace_prepare_to_store)
7570         (record_btrace_to_get_unwinder)
7571         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
7572         (record_btrace_commit_resume, record_btrace_wait)
7573         (record_btrace_stop, record_btrace_can_execute_reverse)
7574         (record_btrace_stopped_by_sw_breakpoint)
7575         (record_btrace_supports_stopped_by_sw_breakpoint)
7576         (record_btrace_stopped_by_hw_breakpoint)
7577         (record_btrace_supports_stopped_by_hw_breakpoint)
7578         (record_btrace_update_thread_list, record_btrace_thread_alive)
7579         (record_btrace_goto_begin, record_btrace_goto_end)
7580         (record_btrace_goto, record_btrace_stop_replaying_all)
7581         (record_btrace_execution_direction)
7582         (record_btrace_prepare_to_generate_core)
7583         (record_btrace_done_generating_core): Refactor as
7584         record_btrace_target methods.
7585         (init_record_btrace_ops): Delete.
7586         (_initialize_record_btrace): Remove reference to
7587         init_record_btrace_ops.
7588         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
7589         the execution_direction global.
7590         (record_full_base_target, record_full_target)
7591         (record_full_core_target): New classes.
7592         (record_full_ops): Now a record_full_target.
7593         (record_full_core_ops): Now a record_full_core_target.
7594         (record_full_target::detach, record_full_target::disconnect)
7595         (record_full_core_target::disconnect)
7596         (record_full_target::mourn_inferior, record_full_target::kill):
7597         New.
7598         (record_full_open, record_full_close, record_full_async): Refactor
7599         as methods of the record_full_base_target class.
7600         (record_full_resume, record_full_commit_resume): Refactor
7601         as methods of the record_full_target class.
7602         (record_full_wait, record_full_stopped_by_watchpoint)
7603         (record_full_stopped_data_address)
7604         (record_full_stopped_by_sw_breakpoint)
7605         (record_full_supports_stopped_by_sw_breakpoint)
7606         (record_full_stopped_by_hw_breakpoint)
7607         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
7608         methods of the record_full_base_target class.
7609         (record_full_store_registers, record_full_xfer_partial)
7610         (record_full_insert_breakpoint, record_full_remove_breakpoint):
7611         Refactor as methods of the record_full_target class.
7612         (record_full_can_execute_reverse, record_full_get_bookmark)
7613         (record_full_goto_bookmark, record_full_execution_direction)
7614         (record_full_record_method, record_full_info, record_full_delete)
7615         (record_full_is_replaying, record_full_will_replay)
7616         (record_full_goto_begin, record_full_goto_end, record_full_goto)
7617         (record_full_stop_replaying): Refactor as methods of the
7618         record_full_base_target class.
7619         (record_full_core_resume, record_full_core_kill)
7620         (record_full_core_fetch_registers)
7621         (record_full_core_prepare_to_store)
7622         (record_full_core_store_registers, record_full_core_xfer_partial)
7623         (record_full_core_insert_breakpoint)
7624         (record_full_core_remove_breakpoint)
7625         (record_full_core_has_execution): Refactor
7626         as methods of the record_full_core_target class.
7627         (record_full_base_target::supports_delete_record): New.
7628         (init_record_full_ops): Delete.
7629         (init_record_full_core_ops): Delete.
7630         (record_full_save): Refactor as method of the
7631         record_full_base_target class.
7632         (_initialize_record_full): Remove references to
7633         init_record_full_ops and init_record_full_core_ops.
7634
7635         * remote.c (remote_target, extended_remote_target): New classes.
7636         (remote_ops): Now a remote_target.
7637         (extended_remote_ops): Now an extended_remote_target.
7638         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
7639         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
7640         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
7641         (remote_pass_signals, remote_set_syscall_catchpoint)
7642         (remote_program_signals, )
7643         (remote_thread_always_alive): Remove target_ops parameter.
7644         (remote_thread_alive, remote_thread_name)
7645         (remote_update_thread_list, remote_threads_extra_info)
7646         (remote_static_tracepoint_marker_at)
7647         (remote_static_tracepoint_markers_by_strid)
7648         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
7649         (remote_open): Refactor as methods of remote_target.
7650         (extended_remote_open, extended_remote_detach)
7651         (extended_remote_attach, extended_remote_post_attach):
7652         (extended_remote_supports_disable_randomization)
7653         (extended_remote_create_inferior): : Refactor as method of
7654         extended_remote_target.
7655         (remote_set_permissions, remote_open_1, remote_detach)
7656         (remote_follow_fork, remote_follow_exec, remote_disconnect)
7657         (remote_resume, remote_commit_resume, remote_stop)
7658         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
7659         (remote_terminal_ours, remote_wait, remote_fetch_registers)
7660         (remote_prepare_to_store, remote_store_registers)
7661         (remote_flash_erase, remote_flash_done, remote_files_info)
7662         (remote_kill, remote_mourn, remote_insert_breakpoint)
7663         (remote_remove_breakpoint, remote_insert_watchpoint)
7664         (remote_watchpoint_addr_within_range)
7665         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
7666         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
7667         (remote_supports_stopped_by_sw_breakpoint)
7668         (remote_stopped_by_hw_breakpoint)
7669         (remote_supports_stopped_by_hw_breakpoint)
7670         (remote_stopped_by_watchpoint, remote_stopped_data_address)
7671         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
7672         (remote_verify_memory): Refactor as methods of remote_target.
7673         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
7674         parameter.
7675         (remote_xfer_partial, remote_get_memory_xfer_limit)
7676         (remote_search_memory, remote_rcmd, remote_memory_map)
7677         (remote_pid_to_str, remote_get_thread_local_address)
7678         (remote_get_tib_address, remote_read_description): Refactor as
7679         methods of remote_target.
7680         (remote_target::fileio_open, remote_target::fileio_pwrite)
7681         (remote_target::fileio_pread, remote_target::fileio_close): New.
7682         (remote_hostio_readlink, remote_hostio_fstat)
7683         (remote_filesystem_is_local, remote_can_execute_reverse)
7684         (remote_supports_non_stop, remote_supports_disable_randomization)
7685         (remote_supports_multi_process, remote_supports_cond_breakpoints)
7686         (remote_supports_enable_disable_tracepoint)
7687         (remote_supports_string_tracing)
7688         (remote_can_run_breakpoint_commands, remote_trace_init)
7689         (remote_download_tracepoint, remote_can_download_tracepoint)
7690         (remote_download_trace_state_variable, remote_enable_tracepoint)
7691         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
7692         (remote_trace_start, remote_get_trace_status)
7693         (remote_get_tracepoint_status, remote_trace_stop)
7694         (remote_trace_find, remote_get_trace_state_variable_value)
7695         (remote_save_trace_data, remote_get_raw_trace_data)
7696         (remote_set_disconnected_tracing, remote_core_of_thread)
7697         (remote_set_circular_trace_buffer, remote_traceframe_info)
7698         (remote_get_min_fast_tracepoint_insn_len)
7699         (remote_set_trace_buffer_size, remote_set_trace_notes)
7700         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
7701         (remote_disable_btrace, remote_teardown_btrace)
7702         (remote_read_btrace, remote_btrace_conf)
7703         (remote_augmented_libraries_svr4_read, remote_load)
7704         (remote_pid_to_exec_file, remote_can_do_single_step)
7705         (remote_execution_direction, remote_thread_handle_to_thread_info):
7706         Refactor as methods of remote_target.
7707         (init_remote_ops, init_extended_remote_ops): Delete.
7708         (remote_can_async_p, remote_is_async_p, remote_async)
7709         (remote_thread_events, remote_upload_tracepoints)
7710         (remote_upload_trace_state_variables): Refactor as methods of
7711         remote_target.
7712         (_initialize_remote): Remove references to init_remote_ops and
7713         init_extended_remote_ops.
7714
7715         * remote-sim.c (gdbsim_target): New class.
7716         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
7717         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
7718         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
7719         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
7720         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
7721         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
7722         Refactor as methods of gdbsim_target.
7723         (gdbsim_ops): Now a gdbsim_target.
7724         (init_gdbsim_ops): Delete.
7725         (gdbsim_cntrl_c): Adjust.
7726         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
7727
7728         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
7729         (the_amd64_linux_nat_target): New.
7730         (amd64_linux_fetch_inferior_registers)
7731         (amd64_linux_store_inferior_registers): Refactor as methods of
7732         amd64_linux_nat_target.
7733         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
7734         * i386-linux-nat.c: Don't include "linux-nat.h".
7735         (i386_linux_nat_target): New class.
7736         (the_i386_linux_nat_target): New.
7737         (i386_linux_fetch_inferior_registers)
7738         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
7739         as methods of i386_linux_nat_target.
7740         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
7741         * inf-child.c (inf_child_ops): Delete.
7742         (inf_child_fetch_inferior_registers)
7743         (inf_child_store_inferior_registers): Delete.
7744         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
7745         methods of inf_child_target.
7746         (inf_child_target::supports_terminal_ours)
7747         (inf_child_target::terminal_init)
7748         (inf_child_target::terminal_inferior)
7749         (inf_child_target::terminal_ours_for_output)
7750         (inf_child_target::terminal_ours, inf_child_target::interrupt)
7751         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
7752         New.
7753         (inf_child_open, inf_child_disconnect, inf_child_close)
7754         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
7755         (inf_child_post_startup_inferior, inf_child_can_run)
7756         (inf_child_pid_to_exec_file): Refactor as methods of
7757         inf_child_target.
7758         (inf_child_follow_fork): Delete.
7759         (inf_child_target::can_create_inferior)
7760         (inf_child_target::can_attach): New.
7761         (inf_child_target::has_all_memory, inf_child_target::has_memory)
7762         (inf_child_target::has_stack, inf_child_target::has_registers)
7763         (inf_child_target::has_execution): New.
7764         (inf_child_fileio_open, inf_child_fileio_pwrite)
7765         (inf_child_fileio_pread, inf_child_fileio_fstat)
7766         (inf_child_fileio_close, inf_child_fileio_unlink)
7767         (inf_child_fileio_readlink, inf_child_use_agent)
7768         (inf_child_can_use_agent): Refactor as methods of
7769         inf_child_target.
7770         (return_zero, inf_child_target): Delete.
7771         (inf_child_target::inf_child_target): New.
7772         * inf-child.h: Include "target.h".
7773         (inf_child_target): Delete function prototype.
7774         (inf_child_target): New class.
7775         (inf_child_open_target, inf_child_mourn_inferior)
7776         (inf_child_maybe_unpush_target): Delete.
7777         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
7778         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
7779         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
7780         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
7781         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
7782         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
7783         (inf_ptrace_wait, inf_ptrace_xfer_partial)
7784         (inf_ptrace_thread_alive, inf_ptrace_files_info)
7785         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
7786         methods of inf_ptrace_target.
7787         (inf_ptrace_target): Delete function.
7788         * inf-ptrace.h: Include "inf-child.h".
7789         (inf_ptrace_target): Delete function declaration.
7790         (inf_ptrace_target): New class.
7791         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
7792         * linux-nat.c (linux_target): New.
7793         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
7794         (linux_nat_target::~linux_nat_target): New.
7795         (linux_child_post_attach, linux_child_post_startup_inferior)
7796         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
7797         (linux_child_remove_fork_catchpoint)
7798         (linux_child_insert_vfork_catchpoint)
7799         (linux_child_remove_vfork_catchpoint)
7800         (linux_child_insert_exec_catchpoint)
7801         (linux_child_remove_exec_catchpoint)
7802         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
7803         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
7804         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
7805         (linux_nat_stopped_data_address)
7806         (linux_nat_stopped_by_sw_breakpoint)
7807         (linux_nat_supports_stopped_by_sw_breakpoint)
7808         (linux_nat_stopped_by_hw_breakpoint)
7809         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
7810         (linux_nat_kill, linux_nat_mourn_inferior)
7811         (linux_nat_xfer_partial, linux_nat_thread_alive)
7812         (linux_nat_update_thread_list, linux_nat_pid_to_str)
7813         (linux_nat_thread_name, linux_child_pid_to_exec_file)
7814         (linux_child_static_tracepoint_markers_by_strid)
7815         (linux_nat_is_async_p, linux_nat_can_async_p)
7816         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
7817         (linux_nat_supports_multi_process)
7818         (linux_nat_supports_disable_randomization, linux_nat_async)
7819         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
7820         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
7821         (linux_nat_fileio_open, linux_nat_fileio_readlink)
7822         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
7823         methods of linux_nat_target.
7824         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
7825         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
7826         parameter.
7827         (check_stopped_by_watchpoint): Adjust.
7828         (linux_xfer_partial): Delete.
7829         (linux_target_install_ops, linux_target, linux_nat_add_target):
7830         Delete.
7831         (linux_nat_target::linux_nat_target): New.
7832         * linux-nat.h: Include "inf-ptrace.h".
7833         (linux_nat_target): New.
7834         (linux_target, linux_target_install_ops, linux_nat_add_target):
7835         Delete function declarations.
7836         (linux_target): Declare global.
7837         * linux-thread-db.c (thread_db_target): New.
7838         (thread_db_target::thread_db_target): New.
7839         (thread_db_ops): Delete.
7840         (the_thread_db_target): New.
7841         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
7842         (thread_db_update_thread_list, thread_db_pid_to_str)
7843         (thread_db_extra_thread_info)
7844         (thread_db_thread_handle_to_thread_info)
7845         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
7846         (thread_db_resume): Refactor as methods of thread_db_target.
7847         (init_thread_db_ops): Delete.
7848         (_initialize_thread_db): Remove reference to init_thread_db_ops.
7849         * x86-linux-nat.c: Don't include "linux-nat.h".
7850         (super_post_startup_inferior): Delete.
7851         (x86_linux_nat_target::~x86_linux_nat_target): New.
7852         (x86_linux_child_post_startup_inferior)
7853         (x86_linux_read_description, x86_linux_enable_btrace)
7854         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
7855         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
7856         methods of x86_linux_nat_target.
7857         (x86_linux_create_target): Delete.  Bits folded ...
7858         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
7859         pointer.
7860         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
7861         (x86_linux_nat_target): New class.
7862         (x86_linux_create_target): Delete.
7863         (x86_linux_add_target): Now takes a linux_nat_target pointer.
7864         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
7865         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
7866         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
7867         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
7868         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
7869         make extern.
7870         (x86_use_watchpoints): Delete.
7871         * x86-nat.h: Include "breakpoint.h" and "target.h".
7872         (x86_use_watchpoints): Delete.
7873         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
7874         (x86_stopped_by_watchpoint, x86_stopped_data_address)
7875         (x86_insert_watchpoint, x86_remove_watchpoint)
7876         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
7877         (x86_stopped_by_hw_breakpoint): New declarations.
7878         (x86_nat_target): New template class.
7879
7880         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
7881         (the_ppc_linux_nat_target): New.
7882         (ppc_linux_fetch_inferior_registers)
7883         (ppc_linux_can_use_hw_breakpoint)
7884         (ppc_linux_region_ok_for_hw_watchpoint)
7885         (ppc_linux_ranged_break_num_registers)
7886         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
7887         (ppc_linux_insert_mask_watchpoint)
7888         (ppc_linux_remove_mask_watchpoint)
7889         (ppc_linux_can_accel_watchpoint_condition)
7890         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
7891         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
7892         (ppc_linux_watchpoint_addr_within_range)
7893         (ppc_linux_masked_watch_num_registers)
7894         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
7895         (ppc_linux_read_description): Refactor as methods of
7896         ppc_linux_nat_target.
7897         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
7898
7899         * procfs.c (procfs_xfer_partial): Delete forward declaration.
7900         (procfs_target): New class.
7901         (the_procfs_target): New.
7902         (procfs_target): Delete function.
7903         (procfs_auxv_parse, procfs_attach, procfs_detach)
7904         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
7905         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
7906         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
7907         (procfs_create_inferior, procfs_update_thread_list)
7908         (procfs_thread_alive, procfs_pid_to_str)
7909         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
7910         (procfs_stopped_data_address, procfs_insert_watchpoint)
7911         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
7912         (proc_find_memory_regions, procfs_info_proc)
7913         (procfs_make_note_section): Refactor as methods of procfs_target.
7914         (_initialize_procfs): Adjust.
7915         * sol-thread.c (sol_thread_target): New class.
7916         (sol_thread_ops): Now a sol_thread_target.
7917         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
7918         (sol_thread_fetch_registers, sol_thread_store_registers)
7919         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
7920         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
7921         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
7922         (init_sol_thread_ops): Delete.
7923         (_initialize_sol_thread): Adjust.  Remove references to
7924         init_sol_thread_ops and complete_target_initialization.
7925
7926         * windows-nat.c (windows_nat_target): New class.
7927         (windows_fetch_inferior_registers)
7928         (windows_store_inferior_registers, windows_resume, windows_wait)
7929         (windows_attach, windows_detach, windows_pid_to_exec_file)
7930         (windows_files_info, windows_create_inferior)
7931         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
7932         (windows_close, windows_pid_to_str, windows_xfer_partial)
7933         (windows_get_tib_address, windows_get_ada_task_ptid)
7934         (windows_thread_name, windows_thread_alive): Refactor as
7935         windows_nat_target methods.
7936         (do_initial_windows_stuff): Adjust.
7937         (windows_target): Delete function.
7938         (_initialize_windows_nat): Adjust.
7939
7940         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
7941         (darwin_mourn_inferior, darwin_kill_inferior)
7942         (darwin_create_inferior, darwin_attach, darwin_detach)
7943         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
7944         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
7945         (darwin_supports_multi_process): Refactor as darwin_nat_target
7946         methods.
7947         (darwin_resume_to, darwin_files_info): Delete.
7948         (_initialize_darwin_inferior): Rename to ...
7949         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
7950         * darwin-nat.h: Include "inf-child.h".
7951         (darwin_nat_target): New class.
7952         (darwin_complete_target): Delete.
7953         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
7954         (darwin_target): New.
7955         (i386_darwin_fetch_inferior_registers)
7956         (i386_darwin_store_inferior_registers): Refactor as methods of
7957         darwin_nat_target.
7958         (darwin_complete_target): Delete, with ...
7959         (_initialize_i386_darwin_nat): ... bits factored out here.
7960
7961         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
7962         (the_alpha_linux_nat_target): New.
7963         (alpha_linux_register_u_offset): Refactor as
7964         alpha_linux_nat_target method.
7965         (_initialize_alpha_linux_nat): Adjust.
7966         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
7967         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
7968         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
7969         methods of linux_nat_trad_target.
7970         (linux_trad_target): Delete.
7971         * linux-nat-trad.h (linux_trad_target): Delete function.
7972         (linux_nat_trad_target): New class.
7973         * mips-linux-nat.c (mips_linux_nat_target): New class.
7974         (super_fetch_registers, super_store_registers, super_close):
7975         Delete.
7976         (the_mips_linux_nat_target): New.
7977         (mips64_linux_regsets_fetch_registers)
7978         (mips64_linux_regsets_store_registers)
7979         (mips64_linux_fetch_registers, mips64_linux_store_registers)
7980         (mips_linux_register_u_offset, mips_linux_read_description)
7981         (mips_linux_can_use_hw_breakpoint)
7982         (mips_linux_stopped_by_watchpoint)
7983         (mips_linux_stopped_data_address)
7984         (mips_linux_region_ok_for_hw_watchpoint)
7985         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
7986         (mips_linux_close): Refactor as methods of mips_linux_nat.
7987         (_initialize_mips_linux_nat): Adjust to C++ification.
7988
7989         * aix-thread.c (aix_thread_target): New class.
7990         (aix_thread_ops): Now an aix_thread_target.
7991         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
7992         (aix_thread_fetch_registers, aix_thread_store_registers)
7993         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
7994         (aix_thread_thread_alive, aix_thread_pid_to_str)
7995         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
7996         Refactor as methods of aix_thread_target.
7997         (init_aix_thread_ops): Delete.
7998         (_initialize_aix_thread): Remove references to init_aix_thread_ops
7999         and complete_target_initialization.
8000         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
8001         (rs6000_nat_target): New class.
8002         (the_rs6000_nat_target): New.
8003         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
8004         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
8005         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
8006         (super_create_inferior): Delete.
8007         (_initialize_rs6000_nat): Adjust to C++ification.
8008
8009         * arm-linux-nat.c (arm_linux_nat_target): New class.
8010         (the_arm_linux_nat_target): New.
8011         (arm_linux_fetch_inferior_registers)
8012         (arm_linux_store_inferior_registers, arm_linux_read_description)
8013         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
8014         (arm_linux_remove_hw_breakpoint)
8015         (arm_linux_region_ok_for_hw_watchpoint)
8016         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
8017         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
8018         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
8019         arm_linux_nat_target.
8020         (_initialize_arm_linux_nat): Adjust to C++ification.
8021
8022         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
8023         (the_aarch64_linux_nat_target): New.
8024         (aarch64_linux_fetch_inferior_registers)
8025         (aarch64_linux_store_inferior_registers)
8026         (aarch64_linux_child_post_startup_inferior)
8027         (aarch64_linux_read_description)
8028         (aarch64_linux_can_use_hw_breakpoint)
8029         (aarch64_linux_insert_hw_breakpoint)
8030         (aarch64_linux_remove_hw_breakpoint)
8031         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
8032         (aarch64_linux_region_ok_for_hw_watchpoint)
8033         (aarch64_linux_stopped_data_address)
8034         (aarch64_linux_stopped_by_watchpoint)
8035         (aarch64_linux_watchpoint_addr_within_range)
8036         (aarch64_linux_can_do_single_step): Refactor as methods of
8037         aarch64_linux_nat_target.
8038         (super_post_startup_inferior): Delete.
8039         (_initialize_aarch64_linux_nat): Adjust to C++ification.
8040
8041         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
8042         (the_hppa_linux_nat_target): New.
8043         (hppa_linux_fetch_inferior_registers)
8044         (hppa_linux_store_inferior_registers): Refactor as methods of
8045         hppa_linux_nat_target.
8046         (_initialize_hppa_linux_nat): Adjust to C++ification.
8047
8048         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
8049         (the_ia64_linux_nat_target): New.
8050         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
8051         (ia64_linux_stopped_data_address)
8052         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
8053         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
8054         ia64_linux_nat_target methods.
8055         (super_xfer_partial): Delete.
8056         (_initialize_ia64_linux_nat): Adjust to C++ification.
8057
8058         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
8059         (the_m32r_linux_nat_target): New.
8060         (m32r_linux_fetch_inferior_registers)
8061         (m32r_linux_store_inferior_registers): Refactor as
8062         m32r_linux_nat_target methods.
8063         (_initialize_m32r_linux_nat): Adjust to C++ification.
8064
8065         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
8066         (the_m68k_linux_nat_target): New.
8067         (m68k_linux_fetch_inferior_registers)
8068         (m68k_linux_store_inferior_registers): Refactor as
8069         m68k_linux_nat_target methods.
8070         (_initialize_m68k_linux_nat): Adjust to C++ification.
8071
8072         * s390-linux-nat.c (s390_linux_nat_target): New class.
8073         (the_s390_linux_nat_target): New.
8074         (s390_linux_fetch_inferior_registers)
8075         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
8076         (s390_insert_watchpoint, s390_remove_watchpoint)
8077         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
8078         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
8079         (s390_auxv_parse, s390_read_description): Refactor as methods of
8080         s390_linux_nat_target.
8081         (_initialize_s390_nat): Adjust to C++ification.
8082
8083         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
8084         (the_sparc_linux_nat_target): New.
8085         (_initialize_sparc_linux_nat): Adjust to C++ification.
8086         * sparc-nat.c (sparc_fetch_inferior_registers)
8087         (sparc_store_inferior_registers): Remove target_ops parameter.
8088         * sparc-nat.h (sparc_fetch_inferior_registers)
8089         (sparc_store_inferior_registers): Remove target_ops parameter.
8090         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
8091         (the_sparc64_linux_nat_target): New.
8092         (_initialize_sparc64_linux_nat): Adjust to C++ification.
8093
8094         * spu-linux-nat.c (spu_linux_nat_target): New class.
8095         (the_spu_linux_nat_target): New.
8096         (spu_child_post_startup_inferior, spu_child_post_attach)
8097         (spu_child_wait, spu_fetch_inferior_registers)
8098         (spu_store_inferior_registers, spu_xfer_partial)
8099         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
8100         methods.
8101         (_initialize_spu_nat): Adjust to C++ification.
8102
8103         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
8104         (the_tilegx_linux_nat_target): New.
8105         (fetch_inferior_registers, store_inferior_registers):
8106         Refactor as methods.
8107         (_initialize_tile_linux_nat): Adjust to C++ification.
8108
8109         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
8110         (the_xtensa_linux_nat_target): New.
8111         (xtensa_linux_fetch_inferior_registers)
8112         (xtensa_linux_store_inferior_registers): Refactor as
8113         xtensa_linux_nat_target methods.
8114         (_initialize_xtensa_linux_nat): Adjust to C++ification.
8115
8116         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
8117         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
8118         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
8119         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
8120         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
8121         (fbsd_stopped_by_sw_breakpoint)
8122         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
8123         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
8124         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
8125         (fbsd_post_startup_inferior, fbsd_post_attach)
8126         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
8127         (fbsd_set_syscall_catchpoint)
8128         (super_xfer_partial, super_resume, super_wait)
8129         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
8130         (fbsd_handle_debug_trap): Remove target_ops parameter.
8131         (fbsd_nat_add_target): Delete.
8132         * fbsd-nat.h: Include "inf-ptrace.h".
8133         (fbsd_nat_add_target): Delete.
8134         (USE_SIGTRAP_SIGINFO): Define.
8135         (fbsd_nat_target): New class.
8136
8137         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
8138         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
8139         (amd64bsd_target): Delete.
8140         * amd64-bsd-nat.h: New file.
8141         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
8142         "x86-bsd-nat.h".
8143         (amd64_fbsd_nat_target): New class.
8144         (the_amd64_fbsd_nat_target): New.
8145         (amd64fbsd_read_description): Refactor as method of
8146         amd64_fbsd_nat_target.
8147         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
8148         (_initialize_amd64fbsd_nat): Adjust to C++ification.
8149         * amd64-nat.h (amd64bsd_target): Delete function declaration.
8150         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
8151         (i386bsd_store_inferior_registers): Remove target_ops parameter.
8152         (i386bsd_target): Delete.
8153         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
8154         (i386bsd_fetch_inferior_registers)
8155         (i386bsd_store_inferior_registers): Declare.
8156         (i386_bsd_nat_target): New class.
8157         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
8158         (the_i386_fbsd_nat_target): New.
8159         (i386fbsd_resume, i386fbsd_read_description): Refactor as
8160         i386_fbsd_nat_target methods.
8161         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
8162         (_initialize_i386fbsd_nat): Adjust to C++ification.
8163         * x86-bsd-nat.c (super_mourn_inferior): Delete.
8164         (x86bsd_mourn_inferior, x86bsd_target): Delete.
8165         (_initialize_x86_bsd_nat): Adjust to C++ification.
8166         * x86-bsd-nat.h: Include "x86-nat.h".
8167         (x86bsd_target): Delete declaration.
8168         (x86bsd_nat_target): New class.
8169
8170         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
8171         (the_aarch64_fbsd_nat_target): New.
8172         (aarch64_fbsd_fetch_inferior_registers)
8173         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
8174         aarch64_fbsd_nat_target.
8175         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
8176         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
8177         (the_alpha_bsd_nat_target): New.
8178         (alphabsd_fetch_inferior_registers)
8179         (alphabsd_store_inferior_registers): Refactor as
8180         alpha_bsd_nat_target methods.
8181         (_initialize_alphabsd_nat): Refactor as methods of
8182         alpha_bsd_nat_target.
8183         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
8184         (the_amd64_nbsd_nat_target): New.
8185         (_initialize_amd64nbsd_nat): Adjust to C++ification.
8186         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
8187         (the_amd64_obsd_nat_target): New.
8188         (_initialize_amd64obsd_nat): Adjust to C++ification.
8189         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
8190         (the_arm_fbsd_nat_target): New.
8191         (arm_fbsd_fetch_inferior_registers)
8192         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
8193         (_initialize_arm_fbsd_nat): Refactor as methods of
8194         arm_fbsd_nat_target.
8195         (_initialize_arm_fbsd_nat): Adjust to C++ification.
8196         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
8197         (the_arm_netbsd_nat_target): New.
8198         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
8199         arm_netbsd_nat_target.
8200         (_initialize_arm_netbsd_nat): Adjust to C++ification.
8201         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
8202         (the_hppa_nbsd_nat_target): New.
8203         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
8204         hppa_nbsd_nat_target methods.
8205         (_initialize_hppanbsd_nat): Adjust to C++ification.
8206         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
8207         (the_hppa_obsd_nat_target): New.
8208         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
8209         methods of hppa_obsd_nat_target.
8210         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
8211         add_target.
8212         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
8213         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
8214         add_target.
8215         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
8216         (_initialize_i386obsd_nat): Use add_target.
8217         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
8218         (the_m68k_bsd_nat_target): New.
8219         (m68kbsd_fetch_inferior_registers)
8220         (m68kbsd_store_inferior_registers): Refactor as methods of
8221         m68k_bsd_nat_target.
8222         (_initialize_m68kbsd_nat): Adjust to C++ification.
8223         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
8224         (the_mips_fbsd_nat_target): New.
8225         (mips_fbsd_fetch_inferior_registers)
8226         (mips_fbsd_store_inferior_registers): Refactor as methods of
8227         mips_fbsd_nat_target.
8228         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
8229         add_target.
8230         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
8231         (the_mips_nbsd_nat_target): New.
8232         (mipsnbsd_fetch_inferior_registers)
8233         (mipsnbsd_store_inferior_registers): Refactor as methods of
8234         mips_nbsd_nat_target.
8235         (_initialize_mipsnbsd_nat): Adjust to C++ification.
8236         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
8237         (the_mips64_obsd_nat_target): New.
8238         (mips64obsd_fetch_inferior_registers)
8239         (mips64obsd_store_inferior_registers): Refactor as methods of
8240         mips64_obsd_nat_target.
8241         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
8242         add_target.
8243         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
8244         nbsd_nat_target.
8245         * nbsd-nat.h: Include "inf-ptrace.h".
8246         (nbsd_nat_target): New class.
8247         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
8248         (obsd_wait): Refactor as methods of obsd_nat_target.
8249         (obsd_add_target): Delete.
8250         * obsd-nat.h: Include "inf-ptrace.h".
8251         (obsd_nat_target): New class.
8252         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
8253         (the_ppc_fbsd_nat_target): New.
8254         (ppcfbsd_fetch_inferior_registers)
8255         (ppcfbsd_store_inferior_registers): Refactor as methods of
8256         ppc_fbsd_nat_target.
8257         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
8258         add_target.
8259         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
8260         (the_ppc_nbsd_nat_target): New.
8261         (ppcnbsd_fetch_inferior_registers)
8262         (ppcnbsd_store_inferior_registers): Refactor as methods of
8263         ppc_nbsd_nat_target.
8264         (_initialize_ppcnbsd_nat): Adjust to C++ification.
8265         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
8266         (the_ppc_obsd_nat_target): New.
8267         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
8268         methods of ppc_obsd_nat_target.
8269         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
8270         add_target.
8271         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
8272         (the_sh_nbsd_nat_target): New.
8273         (shnbsd_fetch_inferior_registers)
8274         (shnbsd_store_inferior_registers): Refactor as methods of
8275         sh_nbsd_nat_target.
8276         (_initialize_shnbsd_nat): Adjust to C++ification.
8277         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
8278         (inf_ptrace_xfer_partial): Delete.
8279         (sparc_xfer_partial, sparc_target): Delete.
8280         * sparc-nat.h (sparc_fetch_inferior_registers)
8281         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
8282         (sparc_target): Delete function declaration.
8283         (sparc_target): New template class.
8284         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
8285         (_initialize_sparcnbsd_nat): Adjust to C++ification.
8286         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
8287         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
8288         add_target.
8289         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
8290         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
8291         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
8292         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
8293         add_target.
8294         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
8295         (the_vax_bsd_nat_target): New.
8296         (vaxbsd_fetch_inferior_registers)
8297         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
8298         methods.
8299         (_initialize_vaxbsd_nat): Adjust to C++ification.
8300
8301         * bsd-kvm.c (bsd_kvm_target): New class.
8302         (bsd_kvm_ops): Now a bsd_kvm_target.
8303         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
8304         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
8305         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
8306         bsd_kvm_target.
8307         (bsd_kvm_return_one): Delete.
8308         (bsd_kvm_add_target): Adjust to C++ification.
8309
8310         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
8311         (nto_procfs_target_procfs): New classes.
8312         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
8313         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
8314         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
8315         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
8316         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
8317         (procfs_remove_hw_breakpoint, procfs_resume)
8318         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
8319         (procfs_kill_inferior, procfs_store_registers)
8320         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
8321         as methods of nto_procfs_target.
8322         (nto_procfs_ops): Now an nto_procfs_target_procfs.
8323         (nto_native_ops): Delete.
8324         (procfs_open, procfs_native_open): Delete.
8325         (nto_native_ops): Now an nto_procfs_target_native.
8326         (init_procfs_targets): Adjust to C++ification.
8327         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
8328         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
8329         Refactor as methods of nto_procfs_target.
8330
8331         * go32-nat.c (go32_nat_target): New class.
8332         (the_go32_nat_target): New.
8333         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
8334         (go32_store_registers, go32_xfer_partial, go32_files_info)
8335         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
8336         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
8337         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
8338         (go32_pid_to_str): Refactor as methods of go32_nat_target.
8339         (go32_target): Delete.
8340         (_initialize_go32_nat): Adjust to C++ification.
8341
8342         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
8343         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
8344         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
8345         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
8346         gnu_nat_target.
8347         (gnu_target): Delete.
8348         * gnu-nat.h (gnu_target): Delete.
8349         (gnu_nat_target): New class.
8350         * i386-gnu-nat.c (gnu_base_target): New.
8351         (i386_gnu_nat_target): New class.
8352         (the_i386_gnu_nat_target): New.
8353         (_initialize_i386gnu_nat): Adjust to C++ification.
8354
8355 2018-05-02  Pedro Alves  <palves@redhat.com>
8356
8357         * bfd-target.c (target_bfd_xclose): Rename to ...
8358         (target_bfd_close): ... this.
8359         (target_bfd_reopen): Adjust.
8360         * target.c (target_close): Remove references to to_xclose.
8361         * target.h (target_ops::to_xclose): Delete.
8362         (target_ops::to_close): Update comments.
8363
8364 2018-05-02  Pedro Alves  <palves@redhat.com>
8365
8366         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
8367         "linux-nat.h".
8368         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
8369         * inf-ptrace.c (inf_ptrace_register_u_offset)
8370         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
8371         (inf_ptrace_store_register, inf_ptrace_store_registers)
8372         (inf_ptrace_trad_target): Move to ...
8373         * linux-nat-trad.c: ... this new file.
8374         * linux-nat-trad.h: New file.
8375         * linux-nat.c (linux_target_install_ops): Make extern.
8376         (linux_trad_target): Delete.
8377         * linux-nat.h (linux_trad_target): Delete declaration.
8378         (linux_target_install_ops): Declare.
8379         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
8380         "linux-nat.h".
8381
8382 2018-05-02  Pedro Alves  <palves@redhat.com>
8383
8384         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
8385         procfs_target/add_target here.
8386         * procfs.c (procfs_target): Make static.
8387         (_initialize_procfs): Call add_target here.
8388         * procfs.h (struct target_ops): Remove forward declaration.
8389         (procfs_target): Remove declaration.
8390         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
8391
8392 2018-05-02  Pedro Alves  <palves@redhat.com>
8393
8394         * procfs.c (procfs_stopped_by_watchpoint)
8395         (procfs_insert_watchpoint, procfs_remove_watchpoint)
8396         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
8397         Forward declare.
8398         (procfs_use_watchpoints): Delete, move contents...
8399         (procfs_target): ... here.
8400         * procfs.h (procfs_use_watchpoints): Delete declaration.
8401         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
8402         procfs_use_watchpoints.
8403         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
8404         procfs_use_watchpoints.
8405
8406 2018-05-02  Tom Tromey  <tom@tromey.com>
8407
8408         PR python/20084:
8409         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
8410         and var_zuinteger_unlimited.
8411         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
8412         and PARAM_ZUINTEGER_UNLIMITED.
8413         (set_parameter_value): Handle var_zuinteger and
8414         var_zuinteger_unlimited.
8415         (add_setshow_generic): Likewise.
8416         (parmpy_init): Likewise.
8417
8418 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
8419
8420         PR rust/23124
8421         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
8422         pointer is not null before dereferencing it.
8423
8424 2018-04-30  Tom Tromey  <tom@tromey.com>
8425
8426         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
8427         is_mi_like_p.
8428
8429 2018-04-30  Tom Tromey  <tom@tromey.com>
8430
8431         * breakpoint.c (mention): Remove use of is_mi_like_p.
8432         (print_mention_ranged_breakpoint): Likewise.
8433         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
8434         of is_mi_like_p.
8435
8436 2018-04-30  Tom Tromey  <tom@tromey.com>
8437
8438         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
8439
8440 2018-04-30  Tom Tromey  <tom@tromey.com>
8441
8442         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
8443         (info_spu_event_command): Remove some uses of is_mi_like_p.
8444
8445 2018-04-30  Tom Tromey  <tom@tromey.com>
8446
8447         * python/py-framefilter.c (py_print_single_arg)
8448         (enumerate_locals, py_print_args, py_print_frame): Remove some
8449         uses of is_mi_like_p.
8450
8451 2018-04-30  Tom Tromey  <tom@tromey.com>
8452
8453         * ui-out.c: Update.
8454         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
8455         * ui-out.h (ui_out::is_mi_like_p): Now const.
8456         (ui_out::do_is_mi_like_p): Now const.
8457         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
8458
8459 2018-04-30  Tom Tromey  <tom@tromey.com>
8460
8461         * varobj.c (varobj_set_visualizer): Use new_reference.
8462         * python/python.c (gdbpy_decode_line): Use new_reference.
8463         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
8464         new_reference.
8465
8466 2018-04-30  Tom Tromey  <tom@tromey.com>
8467
8468         * varobj.c (install_new_value): Use new_reference.
8469         * value.h (value_incref): Return void.  Swap intro comment with
8470         value_decref.
8471         * value.c (set_value_parent): Use new_reference.
8472         (value_incref): Return void.  Update intro comment.
8473         (release_value): Use new_reference.
8474         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
8475
8476 2018-04-30  Tom Tromey  <tom@tromey.com>
8477
8478         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
8479         * gdb_bfd.h (new_bfd_ref): Remove.
8480         (gdb_bfd_open): Update comment.
8481         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
8482         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
8483         (gdb_bfd_fdopenr): Use new_reference.
8484         * exec.c (exec_file_attach): Use new_reference.
8485
8486 2018-04-30  Tom Tromey  <tom@tromey.com>
8487
8488         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
8489         method.
8490
8491 2018-04-30  Tom Tromey  <tom@tromey.com>
8492
8493         * jit.c (jit_read_code_entry): Use type_align.
8494         * i386-tdep.c (i386_gdbarch_init): Don't call
8495         set_gdbarch_long_long_align_bit.
8496         * gdbarch.sh: Remove long_long_align_bit.
8497         * gdbarch.c, gdbarch.h: Rebuild.
8498         * arc-tdep.c (arc_type_align): New function.
8499         (arc_gdbarch_init): Use arc_type_align.  Don't call
8500         set_gdbarch_long_long_align_bit.
8501
8502 2018-04-30  Tom Tromey  <tom@tromey.com>
8503
8504         * rust-lang.c (rust_type_alignment): Remove.
8505         (rust_composite_type): Use type_align.
8506
8507 2018-04-30  Tom Tromey  <tom@tromey.com>
8508
8509         * NEWS: Mention Type.align.
8510         * python/py-type.c (typy_get_alignof): New function.
8511         (type_object_getset): Add "alignof".
8512
8513 2018-04-30  Tom Tromey  <tom@tromey.com>
8514
8515         PR exp/17095:
8516         * NEWS: Update.
8517         * std-operator.def (UNOP_ALIGNOF): New operator.
8518         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
8519         New.
8520         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
8521         * c-lang.c (c_op_print_tab): Add alignof.
8522         * c-exp.y (ALIGNOF): New token.
8523         (exp): Add "ALIGNOF" production.
8524         (ident_tokens): Add _Alignof and alignof.
8525
8526 2018-04-30  Tom Tromey  <tom@tromey.com>
8527
8528         * i386-tdep.c (i386_type_align): New function.
8529         (i386_gdbarch_init): Update.
8530         * gdbarch.sh (type_align): New method.
8531         * gdbarch.c, gdbarch.h: Rebuild.
8532         * arch-utils.h (default_type_align): Declare.
8533         * arch-utils.c (default_type_align): New function.
8534         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
8535         (struct type) <align_log2>: New field.
8536         <instance_flags>: Now a bitfield.
8537         (TYPE_RAW_ALIGN): New macro.
8538         (type_align, type_raw_align, set_type_align): Declare.
8539         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
8540         functions.
8541         * dwarf2read.c (quirk_rust_enum): Set type alignment.
8542         (get_alignment, maybe_set_alignment): New functions.
8543         (read_structure_type, read_enumeration_type, read_array_type)
8544         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
8545         (read_subrange_type, read_base_type): Set type alignment.
8546
8547 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
8548
8549         * dwarf2read.c (read_index_from_section): Use bool.
8550
8551 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
8552
8553         PR gdb/22950
8554         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
8555         with #ifdef.
8556
8557 2018-04-29  John Reiser  <jreiser@BitWagon.com>
8558
8559         PR build/22873
8560         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
8561         last step, and do it atomically.
8562
8563 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
8564
8565         * compile/compile-c-types.c (convert_int, convert_float):
8566         Update for C FE v1.
8567
8568 2018-04-27  Tom Tromey  <tom@tromey.com>
8569
8570         PR rust/22545:
8571         * rust-lang.c (rust_inclusive_range_type_p): New function.
8572         (rust_range): Handle inclusive ranges.
8573         (rust_compute_range): Likewise.
8574         * rust-exp.y (struct rust_op) <inclusive>: New field.
8575         (DOTDOTEQ): New constant.
8576         (range_expr): Add "..=" productions.
8577         (operator_tokens): Add "..=" token.
8578         (ast_range): Add "inclusive" parameter.
8579         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
8580         ranges.
8581         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
8582         bounds values.
8583         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
8584         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
8585         Update comments.
8586         * expprint.c (print_subexp_standard): Handle new bounds values.
8587         (dump_subexp_body_standard): Likewise.
8588
8589 2018-04-27  Tom Tromey  <tom@tromey.com>
8590
8591         * configure: Rebuild.
8592         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
8593         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
8594         "OVERRIDE".
8595         (class symbol_needs_eval_context): Likewise.
8596         * dwarf2read.c (mock_mapped_index::symbol_name_count)
8597         (mock_mapped_index::symbol_name_at): Use "override".  Remove
8598         "virtual".
8599         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
8600         "override".
8601         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
8602         * aarch64-tdep.c (instruction_reader::read): Use "override".
8603         (instruction_reader_test::read): Likewise.
8604         * arm-tdep.c (instruction_reader::read): Use "override".
8605         (instruction_reader_thumb::read): Likewise.
8606
8607 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
8608
8609         PR remote/9665
8610         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
8611         instead of remote_send.
8612         (remote_send): Remove.
8613
8614 2018-04-26  Pedro Alves  <palves@redhat.com>
8615
8616         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
8617         find_function_start_sal instead of find_pc_line.
8618
8619 2018-04-26  Pedro Alves  <palves@redhat.com>
8620
8621         * breakpoint.c (set_breakpoint_location_function): Handle
8622         mst_data_gnu_ifunc.
8623         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
8624         * elfread.c (elf_symtab_read): Give data symbols with
8625         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
8626         (elf_rel_plt_read): Update comment.
8627         * linespec.c (convert_linespec_to_sals): Handle
8628         mst_data_gnu_ifunc.
8629         (minsym_found): Handle mst_data_gnu_ifunc.
8630         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
8631         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
8632         * parse.c (find_minsym_type_and_address): Handle
8633         mst_data_gnu_ifunc.
8634         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
8635         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
8636         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
8637         comment.
8638         <mst_data_gnu_ifunc>: New enumerator.
8639
8640 2018-04-26  Pedro Alves  <palves@redhat.com>
8641
8642         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
8643         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
8644         'want_trampoline' parameter by a lookup_msym_prefer parameter.
8645         Handle it.
8646         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
8647         (lookup_minimal_symbol_by_pc): Adjust.
8648         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
8649         (lookup_solib_trampoline_symbol_by_pc): Adjust.
8650         * minsyms.h (lookup_msym_prefer): New enum.
8651         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
8652         parameter by a lookup_msym_prefer parameter.
8653
8654 2018-04-26  Pedro Alves  <palves@redhat.com>
8655
8656         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
8657         ends in "@plt" instead of looking at the symbol's section.
8658
8659 2018-04-26  Pedro Alves  <palves@redhat.com>
8660
8661         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
8662         all references.
8663         (find_pc_partial_function_gnu_ifunc): Rename to ...
8664         (find_pc_partial_function): ... this, and remove references to
8665         'is_gnu_ifunc_p'.
8666         (find_pc_partial_function): Delete old implementation.
8667         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
8668
8669 2018-04-26  Pedro Alves  <palves@redhat.com>
8670
8671         * linespec.c (struct bound_minimal_symbol_search_key): New.
8672         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
8673         skip first line if we found a GNU ifunc minimal symbol by name.
8674         (compare_msymbols): Change parameters to work with a destructured
8675         lhs minsym.
8676         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
8677         functions.
8678
8679 2018-04-26  Pedro Alves  <palves@redhat.com>
8680
8681         * breakpoint.c (set_breakpoint_location_function): Don't resolve
8682         ifunc targets here.  Instead, if we have an ifunc minsym, use its
8683         address/name.
8684         (add_location_to_breakpoint): Store the minsym and the objfile in
8685         the breakpoint location.
8686         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
8687         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
8688         Record the minsym in the sal.
8689         * symtab.h (symtab_and_line) <msymbol>: New field.
8690
8691 2018-04-26  Pedro Alves  <palves@redhat.com>
8692
8693         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
8694         unless we actually resolved the ifunc.
8695
8696 2018-04-26  Pedro Alves  <palves@redhat.com>
8697
8698         * c-exp.y (variable production): Prefer ifunc minsyms over
8699         regular function symbols.
8700         * symtab.c (find_gnu_ifunc): New function.
8701         * minsyms.h (lookup_msym_prefer): New enum.
8702         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
8703         parameter by a lookup_msym_prefer parameter.
8704         * symtab.h (find_gnu_ifunc): New declaration.
8705
8706 2018-04-26  Pedro Alves  <palves@redhat.com>
8707
8708         * blockframe.c (find_gnu_ifunc_target_type): New function.
8709         (find_function_type): New.
8710         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
8711         return a value with a memory address.
8712         (eval_call): For calls to GNU ifunc functions, try to find the
8713         type of the target function from the type that the resolver
8714         returns.
8715         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
8716         symbols.
8717         * infcall.c (find_function_return_type): Delete.
8718         (find_function_addr): Add 'function_type' parameter.  For calls to
8719         GNU ifunc functions, try to find the type of the target function
8720         from the type that the resolver returns, and return it via
8721         FUNCTION_TYPE.
8722         (call_function_by_hand_dummy): Adjust to use the function type
8723         returned by find_function_addr.
8724         (find_function_addr): Add 'function_type' parameter and move
8725         description here.
8726         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
8727         declarations.
8728
8729 2018-04-26  Pedro Alves  <palves@redhat.com>
8730
8731         * c-exp.y (variable production): Skip finding an alias for ifunc
8732         symbols.
8733
8734 2018-04-26  Pedro Alves  <palves@redhat.com>
8735
8736         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
8737
8738 2018-04-25  Pedro Alves  <palves@redhat.com>
8739
8740         * infcmd.c (kill_command): Print the pid as string, not the whole
8741         thread's ptid.  Add comment.  s/has been killed/killed/ in output
8742         message.
8743         * remote.c (remote_detach_1): Print the pid as string, not the
8744         whole thread's ptid.
8745
8746 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
8747             Sergio Durigan Junior  <sergiodj@redhat.com>
8748             Pedro Alves  <palves@redhat.com>
8749
8750         * infcmd.c (kill_command): Print message when inferior has
8751         been killed.
8752         * inferior.c (print_inferior_events): Remove 'static'.  Set as
8753         '1'.
8754         (add_inferior): Improve message printed when
8755         'print_inferior_events' is on.
8756         (exit_inferior): Remove message printed when
8757         'print_inferior_events' is on.
8758         (detach_inferior): Improve message printed when
8759         'print_inferior_events' is on.
8760         (initialize_inferiors): Use 'add_inferior_silent' to set
8761         'current_inferior_'.
8762         * inferior.h (print_inferior_events): Declare here as
8763         'extern'.
8764         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
8765         '[Detaching...]' messages when 'print_inferior_events' is on.
8766         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
8767         as prefix/suffix for messages.  Remove periods.  Fix erroneous
8768         'Detaching after fork from child...', replace it by '... from
8769         parent...'.
8770         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
8771         prefix/suffix when printing 'Detaching...' messages.  Print
8772         them when 'print_inferior_events' is on.
8773         * remote.c (remote_detach_1): Print message when detaching
8774         from inferior and '!is_fork_parent'.
8775
8776 2018-04-24  Tom Tromey  <tom@tromey.com>
8777
8778         * cli-out.h: Reindent.
8779
8780 2018-04-24  Tom Tromey  <tom@tromey.com>
8781
8782         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
8783         (cli_ui_out::do_field_string): Use fputs_filtered.
8784         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
8785
8786 2018-04-23  Tom Tromey  <tom@tromey.com>
8787
8788         * guile/scm-frame.c (gdbscm_frame_read_var): Use
8789         gdb::unique_xmalloc_ptr.
8790
8791 2018-04-23  Tom Tromey  <tom@tromey.com>
8792
8793         * configure: Rebuild.
8794
8795 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
8796
8797         PR gdb/23095
8798         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
8799         prepare_for_testing.  Set normal_bp to r_debug_state if target
8800         is bsd.
8801
8802 2018-04-21  Pedro Alves  <palves@redhat.com>
8803             Rajendra SY  <rajendra.sy@gmail.com>
8804
8805         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
8806         * remote.c (extended_remote_attach): In all-stop mode, mark the
8807         thread as executing.
8808
8809 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8810
8811         * thread.c (thread_apply_all_command): Fix comment.
8812         (thread_command): Fix comment.
8813
8814 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
8815
8816         * common/tdesc.h (tdesc_create_feature): Remove xml filename
8817         parameter.
8818         * features/aarch64-core.c (create_feature_aarch64_core):
8819         Regenerate.
8820         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
8821         Likewise.
8822         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
8823         Likewise.
8824         * features/i386/32bit-avx512.c
8825         (create_feature_i386_32bit_avx512): Likewise.
8826         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
8827         Likewise.
8828         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
8829         Likewise.
8830         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
8831         Likewise.
8832         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
8833         Likewise.
8834         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
8835         Likewise.
8836         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
8837         Likewise.
8838         * features/i386/64bit-avx512.c
8839         (create_feature_i386_64bit_avx512): Likewise.
8840         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
8841         Likewise.
8842         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
8843         Likewise.
8844         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
8845         Likewise.
8846         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
8847         Likewise.
8848         * features/i386/64bit-segments.c
8849         (create_feature_i386_64bit_segments): Likewise.
8850         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
8851         Likewise.
8852         * features/i386/x32-core.c
8853         (create_feature_i386_x32_core): Likewise.
8854         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
8855         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
8856         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
8857         * target-descriptions.c: In generated code, don't pass xml
8858         filename.
8859
8860 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8861
8862         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
8863         (print_xml_feature::visit_post): Likewise.
8864         (print_xml_feature::visit): Likewise.
8865         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
8866         (print_xml_feature): Add new class.
8867         * regformats/regdat.sh: Null xmltarget on feature targets.
8868         * target-descriptions.c (struct target_desc): Add xmltarget.
8869         (maintenance_check_tdesc_xml_convert): Add unittest function.
8870         (tdesc_get_features_xml): Add function to get xml.
8871         (maintenance_check_xml_descriptions): Test xml generation.
8872         * xml-tdesc.c (string_read_description_xml): Add function.
8873         * xml-tdesc.h (string_read_description_xml): Add declaration.
8874
8875 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8876
8877         * features/Makefile: Add feature marker to targets with new style
8878         target descriptions.
8879         * regformats/aarch64.dat: Regenerate.
8880         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
8881         * regformats/i386/amd64-avx-linux.dat: Likewise.
8882         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
8883         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
8884         * regformats/i386/amd64-linux.dat: Likewise.
8885         * regformats/i386/amd64-mpx-linux.dat: Likewise.
8886         * regformats/i386/amd64.dat: Likewise.
8887         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
8888         * regformats/i386/i386-avx-linux.dat: Likewise.
8889         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
8890         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
8891         * regformats/i386/i386-linux.dat: Likewise.
8892         * regformats/i386/i386-mmx-linux.dat: Likewise.
8893         * regformats/i386/i386-mpx-linux.dat: Likewise.
8894         * regformats/i386/i386.dat: Likewise.
8895         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
8896         * regformats/i386/x32-avx-linux.dat: Likewise.
8897         * regformats/i386/x32-linux.dat: Likewise.
8898         * regformats/tic6x-c62x-linux.dat: Likewise.
8899         * regformats/tic6x-c64x-linux.dat: Likewise.
8900         * regformats/tic6x-c64xp-linux.dat: Likewise.
8901         * regformats/regdat.sh: Parse feature marker.
8902
8903 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8904
8905         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
8906         (tdesc_osabi_name): Likewise.
8907         * target-descriptions.c (tdesc_architecture_name): Add new
8908         function.
8909         (tdesc_osabi_name): Likewise.
8910
8911 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8912
8913         * common/tdesc.c (tdesc_predefined_type): Move to here.
8914         (tdesc_named_type): Likewise.
8915         (tdesc_create_vector): Likewise.
8916         (tdesc_create_struct): Likewise.
8917         (tdesc_set_struct_size): Likewise.
8918         (tdesc_create_union): Likewise.
8919         (tdesc_create_flags): Likewise.
8920         (tdesc_create_enum): Likewise.
8921         (tdesc_add_field): Likewise.
8922         (tdesc_add_typed_bitfield): Likewise.
8923         (tdesc_add_bitfield): Likewise.
8924         (tdesc_add_flag): Likewise.
8925         (tdesc_add_enum_value): Likewise.
8926         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
8927         (struct tdesc_type_vector): Likewise.
8928         (struct tdesc_type_field): Likewise.
8929         (struct tdesc_type_with_fields): Likewise.
8930         (tdesc_create_enum): Add declaration.
8931         (tdesc_add_typed_bitfield): Likewise.
8932         (tdesc_add_enum_value): Likewise.
8933         * target-descriptions.c (tdesc_type_field): Move from here.
8934         (tdesc_type_builtin): Likewise.
8935         (tdesc_type_vector): Likewise.
8936         (tdesc_type_with_fields): Likewise.
8937         (tdesc_predefined_types): Likewise.
8938         (tdesc_named_type): Likewise.
8939         (tdesc_create_vector): Likewise.
8940         (tdesc_create_struct): Likewise.
8941         (tdesc_set_struct_size): Likewise.
8942         (tdesc_create_union): Likewise.
8943         (tdesc_create_flags): Likewise.
8944         (tdesc_create_enum): Likewise.
8945         (tdesc_add_field): Likewise.
8946         (tdesc_add_typed_bitfield): Likewise.
8947         (tdesc_add_bitfield): Likewise.
8948         (tdesc_add_flag): Likewise.
8949         (tdesc_add_enum_value): Likewise.
8950         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
8951         (tdesc_add_typed_bitfield): Likewise.
8952         (tdesc_add_enum_value): Likewise.
8953
8954 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8955
8956         * common/tdesc.c (tdesc_feature::accept): Move to here.
8957         (tdesc_feature::operator==): Likewise.
8958         (tdesc_create_reg): Likewise.
8959         * common/tdesc.h (tdesc_type_kind): Likewise.
8960         (struct tdesc_type): Likewise.
8961         (struct tdesc_feature): Likewise.
8962         * regformats/regdat.sh: Create a feature.
8963         * target-descriptions.c (tdesc_type_kind): Move from here.
8964         (tdesc_type): Likewise.
8965         (tdesc_type_up): Likewise.
8966         (tdesc_feature): Likewise.
8967         (tdesc_create_reg): Likewise.
8968
8969 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
8970
8971         * Makefile.in: Add arch/tdesc.c
8972         * common/tdesc.c: New file.
8973         * common/tdesc.h (tdesc_element_visitor): Move to here.
8974         (tdesc_element): Likewise.
8975         (tdesc_reg): Likewise.
8976         (tdesc_reg_up): Likewise.
8977         * regformats/regdef.h (reg): Add offset to constructors.
8978         * target-descriptions.c (tdesc_element_visitor): Move from here.
8979         (tdesc_element): Likewise.
8980         (tdesc_reg): Likewise.
8981         (tdesc_reg_up): Likewise.
8982
8983 2018-04-17  Tom Tromey  <tom@tromey.com>
8984
8985         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
8986         discriminant field.
8987
8988 2018-04-17  Tom Tromey  <tom@tromey.com>
8989
8990         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
8991
8992 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
8993
8994         * symtab.c (print_symbol_info): Skip printing filename and line
8995         number when `last' is NULL.
8996         (symtab_symbol_info): Use empty string instead of NULL for first
8997         invocation of print_symbol_info.
8998         (rbreak_command): Pass NULL to `last' parameter of
8999         print_symbol_info.
9000
9001 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
9002
9003         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
9004         instead of nullptr.
9005
9006 2018-04-16  Pedro Alves  <palves@redhat.com>
9007
9008         * MAINTAINERS (sh): Remove.
9009         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
9010         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
9011         (ALLDEPFILES): Remove sh64-tdep.c.
9012         * NEWS: Mentions that support for SH-5/SH64 is removed.
9013         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
9014         (sh*-*-openbsd*): Ditto.
9015         (sh64-*-elf*): Remove.
9016         (sh*): Remove.
9017         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
9018         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
9019         * sh-tdep.c: No longer include "sh64-tdep.h".
9020         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
9021         * sh64-tdep.c, sh64-tdep.h: Remove files.
9022
9023 2018-04-16  Pedro Alves  <palves@redhat.com>
9024
9025         * MAINTAINERS: Remove m88k.
9026         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
9027         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
9028         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
9029         * NEWS: Mention that support for m88k was removed.
9030         * configure.host (m88*-*-*): Remove support.
9031         * configure.nat (m88k-*-*): Remove support.
9032         * configure.tgt (m88*-*-openbsd*): Remove.
9033         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
9034
9035 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
9036
9037         * configure.tgt (x86_tobjs): New variable.
9038         (amd64_tobjs, i386_tobjs): Use it.
9039
9040 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
9041
9042         * symtab.c (print_symbol_info): Precede the symbol definition by
9043         the line number when available.
9044         * NEWS: Advertise this enhancement.
9045
9046 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9047
9048         * NEWS (New options): announce set/show record btrace cpu.
9049         * btrace.c: Include record-btrace.h.
9050         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
9051         the vendor is unknown.
9052         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
9053         Maybe overwrite the btrace configuration's cpu.
9054         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
9055         (btrace_fetch): Add cpu parameter.  Update callers.
9056         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
9057         Maybe overwrite the btrace configuration's cpu.  Skip enabling
9058         errata workarounds if the vendor is unknown.
9059         * python/py-record-btrace.c: Include record-btrace.h.
9060         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
9061         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
9062         * record-btrace.c (record_btrace_cpu_state_kind): New.
9063         (record_btrace_cpu): New.
9064         (set_record_btrace_cpu_cmdlist): New.
9065         (record_btrace_get_cpu): New.
9066         (require_btrace_thread, record_btrace_info)
9067         (record_btrace_resume_thread): Call record_btrace_get_cpu.
9068         (cmd_set_record_btrace_cpu_none): New.
9069         (cmd_set_record_btrace_cpu_auto): New.
9070         (cmd_set_record_btrace_cpu): New.
9071         (cmd_show_record_btrace_cpu): New.
9072         (_initialize_record_btrace): Initialize set/show record btrace cpu
9073         commands.
9074         * record-btrace.h (record_btrace_get_cpu): New.
9075
9076 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9077
9078         * record.c (set_record_command): Fix typo in message.
9079
9080 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9081
9082         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
9083
9084 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
9085
9086         * infrun.c (process_event_stop_test): Call
9087         gdbarch_in_indirect_branch_thunk.
9088         * gdbarch.sh (in_indirect_branch_thunk): New.
9089         * gdbarch.c: Regenerated.
9090         * gdbarch.h: Regenerated.
9091         * x86-tdep.h: New.
9092         * x86-tdep.c: New.
9093         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
9094         (HFILES_NO_SRCDIR): Add x86-tdep.h.
9095         (ALLDEPFILES): Add x86-tdep.c.
9096         * arch-utils.h (default_in_indirect_branch_thunk): New.
9097         * arch-utils.c (default_in_indirect_branch_thunk): New.
9098         * i386-tdep: Include x86-tdep.h.
9099         (i386_in_indirect_branch_thunk): New.
9100         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
9101         function.
9102         * amd64-tdep: Include x86-tdep.h.
9103         (amd64_in_indirect_branch_thunk): New.
9104         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
9105
9106 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
9107
9108         PR gdb/23053
9109         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
9110         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
9111         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
9112         regression.
9113
9114 2018-04-12  Tom Tromey  <tom@tromey.com>
9115
9116         * rust-lang.c (rust_print_struct_def): Remove univariant code.
9117         (rust_evaluate_subexp): Likewise.
9118
9119 2018-04-12  Pedro Alves  <palves@redhat.com>
9120
9121         * procfs.c (procfs_detach): Make forward declaration's prototype
9122         match definition's protototype.
9123         (proc_get_LDT_entry): Remove stale do_cleanups call.
9124
9125 2018-04-12  Pedro Alves  <palves@redhat.com>
9126
9127         * target.h (target_ops::to_has_exited): Delete.
9128         (target_has_exited): Delete.
9129         * target-delegates.c: Regenerate.
9130
9131 2018-04-11  Pedro Alves  <palves@redhat.com>
9132
9133         * target.c (fileio_fh_t::t): Add comment.
9134         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
9135         (target_fileio_close): Handle a NULL target.
9136         (invalidate_fileio_fh): New.
9137         (target_close): Call it.
9138         * remote.c (remote_hostio_send_command): No longer check whether
9139         remote_desc is open.
9140
9141 2018-04-11  Pedro Alves  <palves@redhat.com>
9142
9143         * target.c (fileio_fh_t): Make it a named struct instead of a
9144         typedef.
9145         (fileio_fh_t::is_closed): New method.
9146         (DEF_VEC_O (fileio_fh_t)): Remove.
9147         (fileio_fhandles): Now a std::vector.
9148         (is_closed_fileio_fh): Delete.
9149         (acquire_fileio_fd): Adjust.  Rename parameters.
9150         (release_fileio_fd): Adjust.
9151         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
9152         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
9153         (target_fileio_close): Adjust.
9154
9155 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
9156
9157         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
9158         index.
9159
9160 2018-04-10  Pedro Alves  <palves@redhat.com>
9161
9162         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
9163         (scoped_finish_thread_state): New class.
9164         * infcmd.c (run_command_1): Use it instead of finish_thread_state
9165         cleanup.
9166         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
9167         (fetch_inferior_event, normal_stop): Likewise.
9168         * thread.c (finish_thread_state_cleanup): Delete.
9169
9170 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9171             Pedro Alves  <palves@redhat.com>
9172
9173         * value.c: Include "selftest.h" and "common/array-view.h".
9174         (struct range) <operator ==>: New.
9175         (test_ranges_contain): New.
9176         (check_ranges_vector): New.
9177         (test_insert_into_bit_range_vector): New.
9178         (_initialize_values): Register selftests.
9179         * common/array-view.h (operator==, operator!=): New.
9180
9181 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9182
9183         * common/gdb_vecs.h (unordered_remove): Add overload that takes
9184         an iterator.
9185         * inline-frame.c: Include <algorithm>.
9186         (struct inline_state): Add constructor.
9187         (inline_state_s): Remove.
9188         (DEF_VEC_O(inline_state_s)): Remove.
9189         (inline_states): Change type to std::vector.
9190         (find_inline_frame_state): Adjust to std::vector.
9191         (allocate_inline_frame_state): Remove.
9192         (clear_inline_frame_state): Adjust to std::vector.
9193         (skip_inline_frames): Adjust to std::vector.
9194
9195 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9196
9197         * tracepoint.h (struct trace_state_variable): Add constructor.
9198         <name>: Change type to std::string.
9199         * tracepoint.c (tsv_s): Remove.
9200         (DEF_VEC_O(tsv_s)): Remove.
9201         (tvariables): Change to std::vector.
9202         (create_trace_state_variable): Adjust to std::vector.
9203         (find_trace_state_variable): Likewise.
9204         (find_trace_state_variable_by_number): Likewise.
9205         (delete_trace_state_variable): Likewise.
9206         (trace_variable_command): Adjust to std::string.
9207         (delete_trace_variable_command): Likewise.
9208         (tvariables_info_1): Adjust to std::vector.
9209         (save_trace_state_variables): Likewise.
9210         (start_tracing): Likewise.
9211         (merge_uploaded_trace_state_variables): Adjust to std::vector
9212         and std::string.
9213         * target.h (struct target_ops)
9214         <to_download_trace_state_variable>: Pass reference to
9215         trace_state_variable.
9216         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
9217         * target-delegates.c: Re-generate.
9218         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
9219         (mi_tsv_deleted): Likewise.
9220         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
9221         * remote.c (remote_download_trace_state_variable): Change
9222         pointer to reference and adjust.
9223         * make-target-delegates (parse_argtypes): Handle references.
9224         (write_function_header): Likewise.
9225         (munge_type): Likewise.
9226
9227 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9228
9229         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9230         string_view-selftests.c.
9231         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
9232         testsuite.
9233         * unittests/basic_string_view/cons/char/1.cc: Likewise.
9234         * unittests/basic_string_view/cons/char/2.cc: Likewise.
9235         * unittests/basic_string_view/cons/char/3.cc: Likewise.
9236         * unittests/basic_string_view/element_access/char/1.cc:
9237         Likewise.
9238         * unittests/basic_string_view/element_access/char/empty.cc:
9239         Likewise.
9240         * unittests/basic_string_view/element_access/char/front_back.cc:
9241         Likewise.
9242         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
9243         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
9244         Likewise.
9245         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
9246         Likewise.
9247         * unittests/basic_string_view/modifiers/swap/char/1.cc:
9248         Likewise.
9249         * unittests/basic_string_view/operations/compare/char/1.cc:
9250         Likewise.
9251         * unittests/basic_string_view/operations/compare/char/13650.cc:
9252         Likewise.
9253         * unittests/basic_string_view/operations/copy/char/1.cc:
9254         Likewise.
9255         * unittests/basic_string_view/operations/data/char/1.cc:
9256         Likewise.
9257         * unittests/basic_string_view/operations/find/char/1.cc:
9258         Likewise.
9259         * unittests/basic_string_view/operations/find/char/2.cc:
9260         Likewise.
9261         * unittests/basic_string_view/operations/find/char/3.cc:
9262         Likewise.
9263         * unittests/basic_string_view/operations/find/char/4.cc:
9264         Likewise.
9265         * unittests/basic_string_view/operations/rfind/char/1.cc:
9266         Likewise.
9267         * unittests/basic_string_view/operations/rfind/char/2.cc:
9268         Likewise.
9269         * unittests/basic_string_view/operations/rfind/char/3.cc:
9270         Likewise.
9271         * unittests/basic_string_view/operations/substr/char/1.cc:
9272         Likewise.
9273         * unittests/basic_string_view/operators/char/2.cc: Likewise.
9274         * unittests/string_view-selftests.c: New file.
9275
9276 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9277
9278         * unittests/basic_string_view/capacity/1.cc: New file.
9279         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
9280         * unittests/basic_string_view/cons/char/1.cc: New file.
9281         * unittests/basic_string_view/cons/char/2.cc: New file.
9282         * unittests/basic_string_view/cons/char/3.cc: New file.
9283         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
9284         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
9285         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
9286         * unittests/basic_string_view/element_access/char/1.cc: New file.
9287         * unittests/basic_string_view/element_access/char/2.cc: New file.
9288         * unittests/basic_string_view/element_access/char/empty.cc: New file.
9289         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
9290         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
9291         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
9292         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
9293         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
9294         * unittests/basic_string_view/include.cc: New file.
9295         * unittests/basic_string_view/inserters/char/1.cc: New file.
9296         * unittests/basic_string_view/inserters/char/2.cc: New file.
9297         * unittests/basic_string_view/inserters/char/3.cc: New file.
9298         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
9299         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
9300         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
9301         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
9302         * unittests/basic_string_view/literals/types.cc: New file.
9303         * unittests/basic_string_view/literals/values.cc: New file.
9304         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
9305         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
9306         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
9307         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
9308         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
9309         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
9310         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
9311         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
9312         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
9313         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
9314         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
9315         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
9316         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
9317         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
9318         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
9319         * unittests/basic_string_view/operations/data/char/1.cc: New file.
9320         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
9321         * unittests/basic_string_view/operations/find/char/1.cc: New file.
9322         * unittests/basic_string_view/operations/find/char/2.cc: New file.
9323         * unittests/basic_string_view/operations/find/char/3.cc: New file.
9324         * unittests/basic_string_view/operations/find/char/4.cc: New file.
9325         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
9326         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
9327         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
9328         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
9329         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
9330         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
9331         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
9332         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
9333         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
9334         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
9335         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
9336         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
9337         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
9338         * unittests/basic_string_view/operators/char/2.cc: New file.
9339         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
9340         * unittests/basic_string_view/range_access/char/1.cc: New file.
9341         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
9342         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
9343         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
9344         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
9345         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
9346         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
9347         * unittests/basic_string_view/requirements/typedefs.cc: New file.
9348         * unittests/basic_string_view/typedefs.cc: New file.
9349         * unittests/basic_string_view/types/1.cc: New file.
9350
9351 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9352
9353         * common/gdb_string_view.h: Remove libstdc++ implementation
9354         details, adjust to gdb reality.
9355         * common/gdb_string_view.tcc: Likewise.
9356         * cli/cli-script.c (struct string_view): Remove.
9357         (user_args) <m_args>: Change element type to gdb::string_view.
9358         (user_args::insert_args): Adjust.
9359
9360 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9361
9362         * common/gdb_string_view.h: New file.
9363         * common/gdb_string_view.tcc: New file.
9364
9365 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
9366
9367         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
9368         * configure: Re-generate.
9369
9370 2018-04-09  Pedro Alves  <palves@redhat.com>
9371
9372         * gdbarch.sh: Include "observable.h" instead of "observer.h".
9373         (set_target_gdbarch): Call
9374         gdb::observers::architecture_changed.notify instead of
9375         observer_notify_architecture_changed.
9376
9377 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9378
9379         * tracepoint.c (struct current_traceframe_cleanup): Remove.
9380         (do_restore_current_traceframe_cleanup): Remove.
9381         (restore_current_traceframe_cleanup_dtor): Remove.
9382         (make_cleanup_restore_current_traceframe): Remove.
9383         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
9384         New.
9385         * tracepoint.h (struct scoped_restore_current_traceframe): New.
9386         * infrun.c (fetch_inferior_event): Use
9387         scoped_restore_current_traceframe.
9388
9389 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9390
9391         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
9392         Remove.
9393         <n_allocated_type_units>: Remove.
9394         <all_type_units>: Change to std::vector.
9395         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
9396         to std::vector change.
9397         (dwarf2_per_objfile::get_cutu): Likewise.
9398         (dwarf2_per_objfile::get_tu): Likewise.
9399         (create_signatured_type_table_from_index): Likewise.
9400         (create_signatured_type_table_from_debug_names): Likewise.
9401         (dw2_symtab_iter_next): Likewise.
9402         (dw2_print_stats): Likewise.
9403         (dw2_expand_all_symtabs): Likewise.
9404         (dw2_expand_marked_cus): Likewise.
9405         (dw2_debug_names_iterator::next): Likewise.
9406         (dwarf2_initialize_objfile): Likewise.
9407         (add_signatured_type_cu_to_table): Likewise.
9408         (create_all_type_units): Likewise.
9409         (add_type_unit): Likewise.
9410         (struct tu_abbrev_offset): Add constructor.
9411         (build_type_psymtabs_1): Adjust to std::vector change.
9412         (print_tu_stats): Likewise.
9413         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
9414         (write_debug_names): Likewise.
9415
9416 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9417
9418         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
9419         Make an std::vector.
9420         <n_comp_units>: Remove.
9421         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
9422         to std::vector change.
9423         (dwarf2_per_objfile::get_cutu): Likewise.
9424         (dwarf2_per_objfile::get_cu): Likewise.
9425         (create_cus_from_index): Likewise.
9426         (create_addrmap_from_index): Likewise.
9427         (create_addrmap_from_aranges): Likewise.
9428         (dwarf2_read_index): Likewise.
9429         (dw2_find_last_source_symtab): Likewise.
9430         (dw2_map_symtabs_matching_filename): Likewise.
9431         (dw2_symtab_iter_next): Likewise.
9432         (dw2_print_stats): Likewise.
9433         (dw2_expand_all_symtabs): Likewise.
9434         (dw2_expand_symtabs_with_fullname): Likewise.
9435         (dw2_expand_marked_cus): Likewise.
9436         (dw2_map_symbol_filenames): Likewise.
9437         (create_cus_from_debug_names): Likewise.
9438         (dwarf2_read_debug_names): Likewise.
9439         (dw2_debug_names_iterator::next): Likewise.
9440         (dwarf2_initialize_objfile): Likewise.
9441         (set_partial_user): Likewise.
9442         (dwarf2_build_psymtabs_hard): Likewise.
9443         (read_comp_units_from_section): Remove arguments, adjust to
9444         std::vector change.
9445         (create_all_comp_units): Adjust to std::vector and
9446         read_comp_units_from_section changes.
9447         (dwarf2_find_containing_comp_unit): Adjust to std::vector
9448         change.
9449         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
9450         (psyms_seen_size): Likewise.
9451         (write_gdbindex): Likewise.
9452         (write_debug_names): Likewise.
9453
9454 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9455
9456         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
9457         with dwarf2_per_objfile.
9458         (create_cus_from_index): Likewise.
9459         (create_signatured_type_table_from_index): Likewise.
9460         (dwarf2_read_index): Likewise.
9461         (dwarf2_initialize_objfile): Likewise.
9462         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
9463         per_cu rather than get_dwarf2_per_objfile.
9464
9465 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9466
9467         * dwarf2read.h (struct signatured_type): Forward declare.
9468         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
9469         New methods.
9470         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
9471         (dw2_get_cutu): ...this.
9472         (dwarf2_per_objfile::get_cu): Rename from...
9473         (dw2_get_cu): ...this.
9474         (dwarf2_per_objfile::get_tu): New.
9475         (create_addrmap_from_index): Adjust.
9476         (create_addrmap_from_aranges): Adjust.
9477         (dw2_find_last_source_symtab): Adjust.
9478         (dw2_map_symtabs_matching_filename): Adjust.
9479         (dw2_symtab_iter_next): Adjust.
9480         (dw2_print_stats): Adjust.
9481         (dw2_expand_all_symtabs): Adjust.
9482         (dw2_expand_symtabs_with_fullname): Adjust.
9483         (dw2_expand_marked_cus): Adjust.
9484         (dw_expand_symtabs_matching_file_matcher): Adjust.
9485         (dw2_map_symbol_filenames): Adjust.
9486         (dw2_debug_names_iterator::next): Adjust.
9487         (dwarf2_initialize_objfile): Adjust.
9488         (set_partial_user): Adjust.
9489         (dwarf2_build_psymtabs_hard): Adjust.
9490
9491 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9492
9493         * dwarf2read.c (create_signatured_type_table_from_debug_names):
9494         Remove unused variables.
9495         (dw2_map_symtabs_matching_filename): Likewise.
9496         (dwarf2_record_block_ranges): Likewise.
9497         (dwarf2_read_addr_index): Likewise.
9498         (follow_die_offset): Likewise.
9499
9500 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9501
9502         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
9503         to symbol_file_add_main.
9504
9505 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9506
9507         PR mi/22299
9508         * mi/mi-console.c (do_fputc_async_safe): New.
9509         (mi_console_file::write_async_safe): New.
9510         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
9511         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
9512         New.
9513         * ui-file.c (ui_file::putstrn): Adjust call to
9514         fputstrn_unfiltered.
9515         * utils.c (printchar): Replace do_fputs and do_fprintf
9516         parameters by do_fputc.
9517         (fputstr_filtered): Adjust call to printchar.
9518         (fputstr_unfiltered): Likewise.
9519         (fputstrn_filtered): Likewise.
9520         (fputstrn_unfiltered): Add do_fputc parameter, pass to
9521         printchar.
9522         * utils.h (do_fputc_ftype): New typedef.
9523         (fputstrn_unfiltered): Add do_fputc parameter.
9524
9525 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
9526
9527         * regformats/i386/i386-avx.dat: Remove.
9528
9529 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
9530
9531         PR gdb/22979
9532         * amd64-tdep.c (amd64_none_init_abi): New function.
9533         (amd64_x32_none_init_abi): New function.
9534         (_initialize_amd64_tdep): Register handlers for x86-64 and
9535         x64_32 with GDB_OSABI_NONE.
9536         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
9537         GDB_OSABI_NONE osabi.
9538
9539 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
9540
9541         PR gdb/22980
9542         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
9543         GDB_OSABI_NONE.
9544         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
9545         * osabi.c (gdb_osabi_names): Add "unknown" entry.
9546
9547 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
9548
9549         * common/byte-vector.h (char_vector): New type.
9550         * target.h (target_read_alloc): Return
9551         gdb::optional<byte_vector>.
9552         (target_read_stralloc): Return gdb::optional<char_vector>.
9553         (target_get_osdata): Return gdb::optional<char_vector>.
9554         * target.c (target_read_alloc_1): Templatize.  Replacement
9555         manual memory management with vector.
9556         (target_read_alloc): Change return type, adjust.
9557         (target_read_stralloc): Change return type, adjust.
9558         (target_get_osdata): Change return type, adjust.
9559         * auxv.c (struct auxv_info) <length>: Remove.
9560         <data>: Change type to gdb::optional<byte_vector>.
9561         (auxv_inferior_data_cleanup): Free auxv_info with delete.
9562         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
9563         (target_auxv_search): Adjust.
9564         (fprint_target_auxv): Adjust.
9565         * avr-tdep.c (avr_io_reg_read_command): Adjust.
9566         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
9567         (linux_make_corefile_notes): Adjust.
9568         * osdata.c (get_osdata): Adjust.
9569         * remote.c (remote_get_threads_with_qxfer): Adjust.
9570         (remote_memory_map): Adjust.
9571         (remote_traceframe_info): Adjust.
9572         (btrace_read_config): Adjust.
9573         (remote_read_btrace): Adjust.
9574         (remote_pid_to_exec_file): Adjust.
9575         * solib-aix.c (solib_aix_get_library_list): Adjust.
9576         * solib-dsbt.c (decode_loadmap): Don't free buf.
9577         (dsbt_get_initial_loadmaps): Adjust.
9578         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
9579         * solib-target.c (solib_target_current_sos): Adjust.
9580         * tracepoint.c (sdata_make_value): Adjust.
9581         * xml-support.c (xinclude_start_include): Adjust.
9582         (xml_fetch_content_from_file): Adjust.
9583         * xml-support.h (xml_fetch_another): Change return type.
9584         (xml_fetch_content_from_file): Change return type.
9585         * xml-syscall.c (xml_init_syscalls_info): Adjust.
9586         * xml-tdesc.c (file_read_description_xml): Adjust.
9587         (fetch_available_features_from_target): Change return type.
9588         (target_fetch_description_xml): Adjust.
9589         (target_read_description_xml): Adjust.
9590
9591 2018-04-06  Tom Tromey  <tom@tromey.com>
9592
9593         * value.c (~value): Update.
9594         (struct value) <contents>: Now unique_xmalloc_ptr.
9595         (value_contents_bits_eq, allocate_value_contents)
9596         (value_contents_raw, value_contents_all_raw)
9597         (value_contents_for_printing, value_contents_for_printing_const)
9598         (set_value_enclosing_type): Update.
9599
9600 2018-04-06  Tom Tromey  <tom@tromey.com>
9601
9602         * value.c (range_s): Remove typedef, VEC.
9603         (struct range): Add operator<.
9604         (range_lessthan): Remove.
9605         (ranges_contain): Change type.
9606         (~value): Update.
9607         (struct value) <unavailable, optimized_out>: Now std::vector.
9608         (value_entirely_available)
9609         (value_entirely_covered_by_range_vector)
9610         (value_entirely_unavailable, value_entirely_optimized_out):
9611         Update.
9612         (insert_into_bit_range_vector): Change argument type.
9613         (find_first_range_overlap): Likewise.
9614         (struct ranges_and_idx, value_contents_bits_eq)
9615         (require_not_optimized_out, require_available): Update.
9616         (ranges_copy_adjusted): Change argument types.
9617         (value_optimized_out, value_copy, value_fetch_lazy): Update.
9618
9619 2018-04-06  Tom Tromey  <tom@tromey.com>
9620
9621         * value.c (~value): Update.
9622         (struct value) <parent>: Now a value_ref_ptr.
9623         (value_parent, set_value_parent, value_address, value_copy):
9624         Update.
9625
9626 2018-04-06  Tom Tromey  <tom@tromey.com>
9627
9628         * value.c (struct value): Add constructor, destructor, and member
9629         initializers.
9630         (allocate_value_lazy, value_decref): Update.
9631
9632 2018-04-06  Tom Tromey  <tom@tromey.com>
9633
9634         * value.c (struct value) <released, next>: Remove.
9635         (all_values): Now a std::vector.
9636         (allocate_value_lazy): Update.
9637         (value_next): Remove.
9638         (value_mark, value_free_to_mark, release_value)
9639         (value_release_to_mark): Update.
9640
9641 2018-04-06  Tom Tromey  <tom@tromey.com>
9642
9643         * value.h (fetch_subexp_value, value_release_to_mark): Update.
9644         (free_value_chain): Remove.
9645         * value.c (free_value_chain): Remove.
9646         (value_release_to_mark): Return a std::vector.
9647         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
9648         std::vector.
9649         (check_condition): Update.
9650         * eval.c (fetch_subexp_value): Change "val_chain" to a
9651         std::vector.
9652         * breakpoint.c (update_watchpoint): Update.
9653         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
9654
9655 2018-04-06  Tom Tromey  <tom@tromey.com>
9656
9657         * value.h (free_all_values): Remove.
9658         * value.c (free_all_values): Remove.
9659
9660 2018-04-06  Tom Tromey  <tom@tromey.com>
9661
9662         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
9663         (value_history_chain, value_history_count): Remove.
9664         (value_history): New global.
9665         (record_latest_value, access_value_history, show_values)
9666         (preserve_values): Update.
9667
9668 2018-04-06  Tom Tromey  <tom@tromey.com>
9669
9670         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
9671         * varobj.c (varobj_set_display_format, varobj_set_value)
9672         (install_default_visualizer, construct_visualizer)
9673         (install_new_value, ~varobj, varobj_get_value_type)
9674         (my_value_of_variable, varobj_editable_p): Update.
9675         * c-varobj.c (c_describe_child, c_value_of_variable)
9676         (cplus_number_of_children, cplus_describe_child): Update.
9677         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
9678         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
9679         (ada_value_of_variable, ada_value_is_changeable_p): Update.
9680
9681 2018-04-06  Tom Tromey  <tom@tromey.com>
9682
9683         * printcmd.c (last_examine_address): Change type to
9684         value_ref_ptr.
9685         (do_examine, x_command): Update.
9686
9687 2018-04-06  Tom Tromey  <tom@tromey.com>
9688
9689         * value.c (release_value): Update.
9690         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
9691         (struct bpstats) <val>: Now a value_ref_ptr.
9692         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
9693         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
9694         (~watchpoint, print_it_watchpoint, watch_command_1)
9695         (invalidate_bp_value_on_memory_change): Update.
9696
9697 2018-04-06  Tom Tromey  <tom@tromey.com>
9698
9699         * varobj.c (varobj_clear_saved_item)
9700         (update_dynamic_varobj_children, install_new_value, ~varobj):
9701         Update.
9702         * value.h (value_incref): Move declaration earlier.
9703         (value_decref): Rename from value_free.
9704         (struct value_ref_policy): New.
9705         (value_ref_ptr): New typedef.
9706         (struct value_deleter): Remove.
9707         (gdb_value_up): Remove typedef.
9708         (release_value): Change return type.
9709         (release_value_or_incref): Remove.
9710         * value.c (set_value_parent): Update.
9711         (value_incref): Change return type.
9712         (value_decref): Rename from value_free.
9713         (value_free_to_mark, free_all_values, free_value_chain): Update.
9714         (release_value): Return value_ref_ptr.
9715         (release_value_or_incref): Remove.
9716         (record_latest_value, set_internalvar, clear_internalvar):
9717         Update.
9718         * stack.c (info_frame_command): Don't call value_free.
9719         * python/py-value.c (valpy_dealloc, valpy_new)
9720         (value_to_value_object): Update.
9721         * printcmd.c (do_examine): Update.
9722         * opencl-lang.c (lval_func_free_closure): Update.
9723         * mi/mi-main.c (register_changed_p): Don't call value_free.
9724         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
9725         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
9726         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
9727         value_free.
9728         * guile/scm-value.c (vlscm_free_value_smob)
9729         (vlscm_scm_from_value): Update.
9730         * frame.c (frame_register_unwind, frame_unwind_register_signed)
9731         (frame_unwind_register_unsigned, get_frame_register_bytes)
9732         (put_frame_register_bytes): Don't call value_free.
9733         * findvar.c (address_from_register): Don't call value_free.
9734         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
9735         * dwarf2loc.c (entry_data_value_free_closure)
9736         (value_of_dwarf_reg_entry, free_pieced_value_closure)
9737         (dwarf2_evaluate_loc_desc_full): Update.
9738         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
9739         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
9740         (~watchpoint, watch_command_1)
9741         (invalidate_bp_value_on_memory_change): Update.
9742         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
9743
9744 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
9745
9746         PR gdb/23022
9747         * warning.m4: Add -Wno-error=deprecated-register.
9748         * configure: Re-generate.
9749
9750 2018-04-05  Tom Tromey  <tom@tromey.com>
9751
9752         * linespec.h: Remove include of "vec.h".
9753
9754 2018-04-05  Tom Tromey  <tom@tromey.com>
9755
9756         * linespec.c (typep): Remove typedef.
9757         (find_methods, find_superclass_methods): Take a std::vector.
9758         (find_method): Use std::vector.
9759
9760 2018-04-05  Tom Tromey  <tom@tromey.com>
9761
9762         * utils.c (compare_strings): Remove.
9763         * utils.h (compare_strings): Remove.
9764         * objc-lang.h (find_imps): Update.
9765         * objc-lang.c (find_methods): Take a std::vector.
9766         (uniquify_strings, find_imps): Likewise.
9767         * linespec.c (find_methods): Take a std::vector.
9768         (decode_objc): Use std::vector.
9769         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
9770         a std::vector.
9771         (find_method, find_function_symbols): Use std::vector.
9772
9773 2018-04-05  Tom Tromey  <tom@tromey.com>
9774
9775         * completer.c (completion_tracker::completion_tracker): Remove
9776         cast.
9777         (completion_tracker::discard_completions): Likewise.
9778         * breakpoint.c (ambiguous_names_p): Remove cast.
9779         * ada-lang.c (_initialize_ada_language): Remove cast.
9780         * utils.h (streq): Update.
9781         (streq_hash): Add new declaration.
9782         * utils.c (streq): Return bool.
9783         (streq_hash): New function.
9784
9785 2018-04-05  Tom Tromey  <tom@tromey.com>
9786
9787         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
9788         Remove a string copy.
9789
9790 2018-04-05  Tom Tromey  <tom@tromey.com>
9791
9792         * linespec.c (filter_results): Use std::vector.
9793         (decode_line_2, decode_line_full): Update.
9794
9795 2018-04-05  Tom Tromey  <tom@tromey.com>
9796
9797         * linespec.c (canonical_to_fullform): Return std::string.
9798         (filter_results): Update.
9799         (struct decode_line_2_item): Add constructor.
9800         <fullform, displayform>: Now std::string.
9801         (decode_line_2_compare_items): Now a std::sort comparator.
9802         (decode_line_2): Update.
9803
9804 2018-04-05  Tom Tromey  <tom@tromey.com>
9805
9806         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
9807         (unexpected_linespec_error): Update.
9808         (linespec_parse_basic, parse_linespec): Update.
9809
9810 2018-04-05  Tom Tromey  <tom@tromey.com>
9811
9812         * linespec.c (linespec_parse_basic): Reindent.
9813
9814 2018-04-05  Tom Tromey  <tom@tromey.com>
9815
9816         * minsyms.h (iterate_over_minimal_symbols): Update.
9817         * minsyms.c (iterate_over_minimal_symbols): Take a
9818         gdb::function_view.
9819         * linespec.c (struct collect_minsyms): Remove.
9820         (compare_msyms): Now a std::sort comparator.
9821         (add_minsym): Add parameters.
9822         (search_minsyms_for_name): Update.  Use std::vector.
9823
9824 2018-04-03  Tom Tromey  <tom@tromey.com>
9825
9826         * mipsread.c (read_alphacoff_dynamic_symtab): Use
9827         gdb::byte_vector.
9828
9829 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
9830
9831         * MAINTAINERS (Write After Approval): Add Weimin Pan.
9832
9833 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
9834
9835         PR gdb/16959
9836         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
9837         printing static type.
9838
9839 2018-04-01  Tom Tromey  <tom@tromey.com>
9840
9841         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
9842         (rs6000_xfer_shared_libraries): Update.
9843
9844 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
9845
9846         * common/gdb_vecs.h (char_ptr): Remove.
9847         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
9848
9849 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
9850
9851         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
9852         with std::vector.
9853         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
9854
9855 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
9856
9857         * tracepoint.h (struct uploaded_tp): Initialize fields.
9858         <actions, step_actions, cmd_strings>: Change type to
9859         std::vector<char *>.
9860         * tracepoint.c (get_uploaded_tp): Allocate with new.
9861         (free_uploaded_tps): Free with delete.
9862         (parse_tracepoint_definition): Adjust to std::vector change.
9863         * breakpoint.c (read_uploaded_action): Likewise.
9864         (create_tracepoint_from_upload): Likewise.
9865         * ctf.c (ctf_write_uploaded_tp): Likewise.
9866         (SET_ARRAY_FIELD): Likewise.
9867         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
9868
9869 2018-03-30  Tom Tromey  <tom@tromey.com>
9870
9871         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
9872         std::unique_ptr.
9873         (svr4_keep_data_in_core): Update.
9874         (svr4_read_so_list): Update.
9875
9876 2018-03-30  Tom Tromey  <tom@tromey.com>
9877
9878         * windows-nat.c (handle_output_debug_string, handle_exception):
9879         Update.
9880         * target.h (target_read_string): Update.
9881         * target.c (target_read_string): Change "string" to
9882         unique_xmalloc_ptr.
9883         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
9884         Update.
9885         * solib-frv.c (frv_current_sos): Update.
9886         * solib-dsbt.c (dsbt_current_sos): Update.
9887         * solib-darwin.c (darwin_current_sos): Update.
9888         * linux-thread-db.c (inferior_has_bug): Update.
9889         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
9890         Update.  Remove alloca.
9891         * ada-lang.c (ada_main_name): Update.
9892
9893 2018-03-30  Tom Tromey  <tom@tromey.com>
9894
9895         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
9896         (struct dwo_file_deleter): New.
9897         (dwo_file_up): New typedef.
9898         (open_and_init_dwo_file): Use dwo_file_up.
9899         (free_dwo_file_cleanup): Remove.
9900
9901 2018-03-30  Tom Tromey  <tom@tromey.com>
9902
9903         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
9904         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
9905
9906 2018-03-30  Tom Tromey  <tom@tromey.com>
9907
9908         * dwarf2read.c (class free_cached_comp_units): New class.
9909         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
9910         (free_cached_comp_units): Remove function.
9911
9912 2018-03-30  Tom Tromey  <tom@tromey.com>
9913
9914         * utils.h (make_cleanup_unpush_target): Remove.
9915         * inf-ptrace.c (struct target_unpusher): New.
9916         (target_unpush_up) New typedef.
9917         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
9918         target_unpush_up.
9919         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
9920
9921 2018-03-27  Tom Tromey  <tom@tromey.com>
9922
9923         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
9924
9925 2018-03-27  Pedro Alves  <palves@redhat.com>
9926             Tom Tromey  <tom@tromey.com>
9927
9928         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
9929         destructor.  Now a class.
9930         (gdb_readline_wrapper_cleanup): Remove function.
9931         (gdb_readline_wrapper): Remove cleanups.
9932
9933 2018-03-27  Tom Tromey  <tom@tromey.com>
9934
9935         * typeprint.h (struct type_print_options) <local_typedefs,
9936         global_typedefs>: Remove "struct" keyword.
9937         (class typedef_hash_table): New class.
9938         (recursively_update_typedef_hash, add_template_parameters)
9939         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
9940         (find_typedef_in_hash): Don't declare.
9941         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
9942         (typedef_hash_table::recursively_update): Rename from
9943         recursively_update_typedef_hash.  Now a member.
9944         (typedef_hash_table::add_template_parameters): Rename from
9945         add_template_parameters.  Now a member.
9946         (typedef_hash_table::typedef_hash_table): Now a constructor;
9947         rename from create_typedef_hash.
9948         (typedef_hash_table::~typedef_hash_table): Now a destructor;
9949         rename from free_typedef_hash.
9950         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
9951         (do_free_global_table): Remove.
9952         (typedef_hash_table::typedef_hash_table): New constructor; renamed
9953         from copy_type_recursive.
9954         (create_global_typedef_table): Remove.
9955         (typedef_hash_table::find_global_typedef): Now a member of
9956         typedef_hash_table.
9957         (typedef_hash_table::find_typedef): Rename from
9958         find_typedef_in_hash; now a member.
9959         (whatis_exp): Update.
9960         * extension.h (struct ext_lang_type_printers): Add constructor and
9961         destructor.
9962         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
9963         declare.
9964         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
9965         Now a constructor; rename from start_ext_lang_type_printers.
9966         (ext_lang_type_printers): Now a destructor; rename from
9967         free_ext_lang_type_printers.
9968         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
9969         Update.
9970         (c_type_print_base_struct_union): Update.  Remove cleanups.
9971
9972 2018-03-27  Tom Tromey  <tom@tromey.com>
9973
9974         * dwarf-index-write.c: Include <cmath>.
9975
9976 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
9977
9978         * NEWS: Add entry describing new "set|show varsize-limit" command.
9979         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
9980         command.
9981         * printcmd.c (_initialize_printcmd): Add "set var" alias of
9982         "set variable".
9983
9984 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
9985
9986         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
9987         dwarf-index-write.c
9988         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
9989         * dwarf-index-common.c: New file.
9990         * dwarf-index-common.h: New file.
9991         * dwarf-index-write.c: New file.
9992         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
9993         (struct dwarf2_section_info): Move from here.
9994         (dwarf2_section_info_def): Likewise.
9995         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
9996         (offset_type): Likewise.
9997         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
9998         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
9999         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
10000         (byte_swap): Likewise.
10001         (MAYBE_SWAP): Likewise.
10002         (dwarf2_per_cu_ptr): Likewise.
10003         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
10004         (struct tu_stats): Likewise.
10005         (struct dwarf2_per_objfile): Likewise.
10006         (struct dwarf2_per_cu_data): Likewise.
10007         (struct signatured_type): Likewise.
10008         (sig_type_ptr): Likewise.
10009         (DEF_VEC_P (sig_type_ptr)): Likewise.
10010         (INDEX4_SUFFIX): Likewise.
10011         (INDEX5_SUFFIX): Likewise.
10012         (DEBUG_STR_SUFFIX): Likewise.
10013         (dwarf2_read_section): Make non-static.
10014         (mapped_index_string_hash): Move from here.
10015         (dwarf5_djb_hash): Likewise.
10016         (file_write): Likewise.
10017         (class data_buf): Likewise.
10018         (struct symtab_index_entry): Likewise.
10019         (struct mapped_symtab): Likewise.
10020         (find_slot): Likewise.
10021         (hash_expand): Likewise.
10022         (add_index_entry): Likewise.
10023         (uniquify_cu_indices): Likewise.
10024         (class c_str_view): Likewise.
10025         (class c_str_view_hasher): Likewise.
10026         (class vector_hasher): Likewise.
10027         (write_hash_table): Likewise.
10028         (psym_index_map): Likewise.
10029         (struct addrmap_index_data): Likewise.
10030         (add_address_entry): Likewise.
10031         (add_address_entry_worker): Likewise.
10032         (write_address_map): Likewise.
10033         (symbol_kind): Likewise.
10034         (write_psymbols): Likewise.
10035         (struct signatured_type_index_data): Likewise.
10036         (write_one_signatured_type): Likewise.
10037         (recursively_count_psymbols): Likewise.
10038         (recursively_write_psymbols): Likewise.
10039         (class debug_names): Likewise.
10040         (check_dwarf64_offsets): Likewise.
10041         (psyms_seen_size): Likewise.
10042         (write_gdbindex): Likewise.
10043         (write_debug_names): Likewise.
10044         (assert_file_size): Likewise.
10045         (write_psymtabs_to_index): Likewise.
10046         (save_gdb_index_command): Likewise.
10047         (_initialize_dwarf2_read): Don't register the "save gdb-index"
10048         command.
10049         * dwarf2read.h: New file.
10050
10051 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
10052
10053         PR gdb/22670
10054         * dwarf2read.c (dwarf2_physname): Do not return the demangled
10055         symbol name if the CU's language stores symbol names in linkage
10056         format.
10057         * language.h (struct language_defn)
10058         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
10059         all instances of this struct.
10060
10061 2018-03-26  Tom Tromey  <tom@tromey.com>
10062
10063         * stack.c (backtrace_command_1): Remove verbose code.
10064
10065 2018-03-26  Tom Tromey  <tom@tromey.com>
10066
10067         * python/py-framefilter.c (py_print_type): Don't catch
10068         exceptions.  Return void.
10069         (py_print_value): Likewise.
10070         (py_print_single_arg): Likewise.
10071         (enumerate_args): Don't catch exceptions.
10072         (py_print_args): Likewise.
10073         (py_print_frame): Likewise.
10074         (gdbpy_apply_frame_filter): Catch exceptions here.
10075
10076 2018-03-26  Tom Tromey  <tom@tromey.com>
10077
10078         * stack.c (_initialize_stack): Remove trailing newlines from help
10079         text.  Add "Usage" line to "backtrace" help.
10080
10081 2018-03-26  Tom Tromey  <tom@tromey.com>
10082
10083         PR python/16486:
10084         * python/py-framefilter.c (py_print_args): Call wrap_hint.
10085
10086 2018-03-26  Tom Tromey  <tom@tromey.com>
10087
10088         * python/py-framefilter.c (py_print_single_arg): Return
10089         EXT_LANG_BT_ERROR from catch.
10090
10091 2018-03-26  Tom Tromey  <tom@tromey.com>
10092
10093         PR backtrace/15584:
10094         * stack.c (backtrace_command_1): Move some code into no-filters
10095         "if".
10096
10097 2018-03-26  Tom Tromey  <tom@tromey.com>
10098
10099         * python/py-framefilter.c (throw_quit_or_print_exception): New
10100         function.
10101         (gdbpy_apply_frame_filter): Use it.
10102
10103 2018-03-26  Tom Tromey  <tom@tromey.com>
10104
10105         PR cli/17716:
10106         * python/py-framefilter.c (py_print_type, py_print_value)
10107         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
10108         RETURN_MASK_ERROR.
10109
10110 2018-03-26  Tom Tromey  <tom@tromey.com>
10111
10112         * python/py-framefilter.c (enumerate_args): Use
10113         gdb::unique_xmalloc_ptr.
10114
10115 2018-03-26  Tom Tromey  <tom@tromey.com>
10116
10117         * python/py-framefilter.c (py_print_frame): Return
10118         EXT_LANG_BT_OK.
10119         (gdbpy_apply_frame_filter): Update comment.
10120         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
10121         Remove.
10122         <EXT_LANG_BT_NO_FILTERS>: Change value.
10123
10124 2018-03-26  Tom Tromey  <tom@tromey.com>
10125
10126         PR backtrace/15582:
10127         * stack.c (backtrace_command): Parse "hide" argument.
10128         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
10129         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
10130         constant.
10131
10132 2018-03-26  Tom Tromey  <tom@tromey.com>
10133
10134         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
10135         add "flags".
10136         (backtrace_command): Remove "fulltrace", add "flags".
10137
10138 2018-03-26  Tom Tromey  <tom@tromey.com>
10139
10140         * stack.c (backtrace_command): Rewrite command line parsing.
10141
10142 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
10143
10144         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
10145
10146 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
10147
10148         * filename-seen-cache.h: Add include guard.
10149
10150 2018-03-26  Keith Seitz  <keiths@redhat.com>
10151
10152         * symfile.c (place_section): Remove "struct" from section_addr_info
10153         in comment.
10154         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
10155         "struct" keyword from section_addr_info.
10156
10157 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
10158
10159         * regformats/regdef.h (reg): Add constructors.
10160
10161 2018-03-25  Pedro Alves  <palves@redhat.com>
10162
10163         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
10164         if then/else bodies in var_func_name extraction.
10165
10166 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
10167
10168         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
10169         lookup_minimal_symbol() to find symbol entry.
10170         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
10171
10172 2018-03-23  Keith Seitz  <keiths@redhat.com>
10173
10174         PR c++/22968
10175         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
10176         nested type definitions for C++, too.
10177
10178 2018-03-23  Tom Tromey  <tom@tromey.com>
10179
10180         * machoread.c (struct oso_el): Add a constructor.  Don't define as
10181         a typedef.
10182         (macho_register_oso): Remove.
10183         (macho_symtab_read): Take a std::vector.
10184         (oso_el_compare_name): Now a std::sort comparator.
10185         (macho_symfile_read_all_oso): Take a std::vector.
10186         (macho_symfile_read): Use std::vector.  Remove cleanups.
10187
10188 2018-03-22  Tom Tromey  <tom@tromey.com>
10189
10190         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
10191         (record_full_goto_bookmark): Use std::string.
10192
10193 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10194
10195         PR tdep/18295
10196         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
10197         a single mask.
10198
10199 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10200
10201         * rs6000-tdep.c (store_insn_p): New function.
10202         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
10203         and cr_reg to their unshifted values. Use store_insn_p to
10204         match LR saves using either R1 or fdata->alloca_reg. Use
10205         store_insn_p to match CR saves. Set alloca_reg_offset
10206         when alloca_reg and framep are set. Remove lr_reg shift
10207         when assigning to fdata->lr_register.
10208
10209 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10210
10211         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
10212         command line args instead of emitting a warning.
10213
10214 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
10215
10216         * tracepoint.h (struct static_tracepoint_marker): Initialize
10217         fields, define default constructor, move constructor and move
10218         assignment, disable the rest.
10219         <str_id, extra>: Make std::string.
10220         (release_static_tracepoint_marker): Remove.
10221         (free_current_marker): Remove.
10222         * tracepoint.c (free_current_marker): Remove.
10223         (parse_static_tracepoint_marker_definition): Adjust to
10224         std::string, use new hex2str overload.
10225         (release_static_tracepoint_marker): Remove.
10226         (print_one_static_tracepoint_marker): Get marker by reference
10227         and adjust to std::string.
10228         (info_static_tracepoint_markers_command): Adjust to std::vector
10229         changes
10230         * target.h (static_tracepoint_marker_p): Remove typedef.
10231         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
10232         (struct target_ops) <to_static_tracepoint_marker_at>: Return
10233         bool.
10234         <to_static_tracepoint_markers_by_strid>: Return std::vector.
10235         * target-debug.h
10236         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
10237         (target_debug_print_std_vector_static_tracepoint_marker): New.
10238         (target_debug_print_struct_static_tracepoint_marker_p): Rename
10239         to...
10240         (target_debug_print_static_tracepoint_marker_p): ... this.
10241         * target-delegates.c: Re-generate.
10242         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
10243         Make std::string.
10244         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
10245         (decode_static_tracepoint_spec): Adjust to std::vector.
10246         (tracepoint_print_one_detail): Adjust to std::string.
10247         (strace_marker_decode_location): Adjust to std::string.
10248         (update_static_tracepoint): Adjust to std::string, remove call
10249         to release_static_tracepoint_marker.
10250         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
10251         Adjust to std::vector.
10252         * remote.c (remote_static_tracepoint_marker_at): Return bool.
10253         (remote_static_tracepoint_markers_by_strid): Adjust to
10254         std::vector.
10255         * common/rsp-low.h (hex2str): New overload with explicit count
10256         of bytes.
10257         * common/rsp-low.c (hex2str): New overload with explicit count
10258         of bytes.
10259         * unittests/rsp-low-selftests.c (test_hex2str): New function.
10260         (_initialize_rsp_low_selftests): Add test_hex2str test.
10261         * unittests/tracepoint-selftests.c
10262         (test_parse_static_tracepoint_marker_definition): Adjust to
10263         std::string.
10264
10265 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
10266
10267         * tracepoint.c (parse_static_tracepoint_marker_definition):
10268         Consider case where the definition is followed by more
10269         definitions.
10270         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10271         tracepoint-selftests.c.
10272         * unittests/tracepoint-selftests.c: New.
10273
10274 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
10275
10276         * MAINTAINERS (Write After Approval): Add Pedro Franco de
10277         Carvalho.
10278
10279 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
10280
10281         * symtab.c (find_pc_sect_line): fixed indentation.
10282
10283 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
10284
10285         * symtab.c (find_pc_sect_line): now uses binary search.
10286
10287 2018-03-19  Tom Tromey  <tom@tromey.com>
10288
10289         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
10290         "IDENT" production.
10291
10292 2018-03-19  Pedro Alves  <palves@redhat.com>
10293             Tom Tromey  <tom@tromey.com>
10294
10295         * unittests/observable-selftests.c: New file.
10296         * common/observable.h: New file.
10297         * observable.h: New file.
10298         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
10299         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
10300         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
10301         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
10302         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
10303         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
10304         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
10305         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
10306         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
10307         python/py-breakpoint.c, python/py-finishbreakpoint.c,
10308         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
10309         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
10310         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
10311         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
10312         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
10313         tui/tui-interp.c, valops.c: Update all users.
10314         * tui/tui-hooks.c (tui_bp_created_observer)
10315         (tui_bp_deleted_observer, tui_bp_modified_observer)
10316         (tui_inferior_exit_observer, tui_before_prompt_observer)
10317         (tui_normal_stop_observer, tui_register_changed_observer):
10318         Remove.
10319         (tui_observers_token): New global.
10320         (attach_or_detach, tui_attach_detach_observers): New functions.
10321         (tui_install_hooks, tui_remove_hooks): Use
10322         tui_attach_detach_observers.
10323         * record-btrace.c (record_btrace_thread_observer): Remove.
10324         (record_btrace_thread_observer_token): New global.
10325         * observer.sh: Remove.
10326         * observer.c: Rename to observable.c.
10327         * observable.c (namespace gdb_observers): Define new objects.
10328         (observer_debug): Move into gdb_observers namespace.
10329         (struct observer, struct observer_list, xalloc_observer_list_node)
10330         (xfree_observer_list_node, generic_observer_attach)
10331         (generic_observer_detach, generic_observer_notify): Remove.
10332         (_initialize_observer): Update.
10333         Don't include observer.inc.
10334         * Makefile.in (generated_files): Remove observer.h, observer.inc.
10335         (clean mostlyclean): Likewise.
10336         (observer.h, observer.inc): Remove targets.
10337         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
10338         (COMMON_SFILES): Use observable.c, not observer.c.
10339         * .gitignore: Remove observer.h.
10340
10341 2018-03-18  Tom Tromey  <tom@tromey.com>
10342
10343         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
10344         gdb::def_vector.
10345         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
10346
10347 2018-03-17  Tom Tromey  <tom@tromey.com>
10348
10349         * auto-load.c (auto_load_objfile_script_1): Use std::string.
10350
10351 2018-03-17  Tom Tromey  <tom@tromey.com>
10352
10353         * target.c (class scoped_target_fd): New.
10354         (target_fileio_close_cleanup): Remove.
10355         (target_fileio_read_alloc_1): Use scoped_target_fd.
10356
10357 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
10358
10359         * silent-rules.mk: New.
10360         * Makefile.in: Include silent-rules.mk
10361         (srcdir, VPATH, top_srcdir): Move up.
10362         (COMPILE): Add ECHO_CXX.
10363         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
10364         (init.c): Add ECHO_INIT_C.
10365         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
10366         (version.c): Add ECHO_GEN.
10367         (printcmd.o): Add ECHO_CXX.
10368         (target-float.o): Add ECHO_CXX.
10369         (ada-exp.o): Add ECHO_CXX.
10370         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
10371         (insight$(EXEEXT)): Add ECHO_CXXLD.
10372         * gnulib/configure.ac: Add AM_SILENT_RULES.
10373         * gnulib/aclocal.m4: Re-generate.
10374         * gnulib/configure: Re-generate.
10375         * gnulib/import/Makefile.in: Re-generate.
10376
10377 2018-03-16  Tom Tromey  <tom@tromey.com>
10378
10379         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
10380         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
10381         * utils.c (do_free_section_addr_info)
10382         (make_cleanup_free_section_addr_info): Remove.
10383         * symfile.h (struct other_sections): Add constructor.
10384         (struct section_addr_info): Remove.
10385         (section_addr_info): New typedef.
10386         (struct sym_fns) <sym_offsets>: Change type of parameter.
10387         (build_section_addr_info_from_objfile)
10388         (relative_addr_info_to_section_offsets, addr_info_make_relative)
10389         (default_symfile_offsets, symbol_file_add)
10390         (symbol_file_add_from_bfd)
10391         (build_section_addr_info_from_section_table): Update.
10392         (alloc_section_addr_info, free_section_addr_info): Don't declare.
10393         * symfile.c (alloc_section_addr_info): Remove.
10394         (build_section_addr_info_from_section_table): Change return type.
10395         Update.
10396         (build_section_addr_info_from_bfd)
10397         (build_section_addr_info_from_objfile): Likewise.
10398         (free_section_addr_info): Remove.
10399         (relative_addr_info_to_section_offsets): Change type of "addrs".
10400         (addrs_section_compar): Now a std::sort comparator.
10401         (addrs_section_sort): Change return type.
10402         (addr_info_make_relative): Change type of "addrs".  Update.
10403         (default_symfile_offsets, syms_from_objfile_1)
10404         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
10405         (symbol_file_add_separate): Update.
10406         (symbol_file_add): Change type of "addrs".  Update.
10407         (add_symbol_file_command): Update.  Remove cleanups.
10408         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
10409         cleanups.
10410         * symfile-debug.c (debug_sym_offsets): Change type of "info".
10411         * solib.c (solib_read_symbols): Update.
10412         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
10413         * machoread.c (macho_symfile_offsets): Update.
10414         * jit.c (jit_bfd_try_read_symtab): Update.
10415
10416 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
10417
10418         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10419         unittests/utils-selftests.c.
10420         * unittests/utils-selftests.c: New file.
10421
10422 2018-03-14  Tom Tromey  <tom@tromey.com>
10423
10424         PR cli/14977:
10425         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
10426         for NULL.
10427
10428 2018-03-14  Tom Tromey  <tom@tromey.com>
10429
10430         PR cli/19918:
10431         * printcmd.c (printf_pointer): Allow "-" in format.
10432
10433 2018-03-14  Tom Tromey  <tom@tromey.com>
10434
10435         * printcmd.c (_initialize_printcmd): Add usage to printf.
10436
10437 2018-03-14  Yao Qi  <qiyao@sourceware.org>
10438
10439         * MAINTAINERS: Update my email address.
10440
10441 2018-03-13  Tom Tromey  <tom@tromey.com>
10442
10443         * machoread.c (macho_check_dsym): Change filenamep to a
10444         std::string*.
10445         (macho_symfile_read): Update.
10446         * symfile.c (load_command): Use std::string.
10447
10448 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
10449
10450         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
10451         to error message string.
10452         (riscv_register_name): Use xsnprintf instead of sprintf.
10453         (riscv_insn::fetch_instruction): Use gdb_assert instead of
10454         internal_error.
10455         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
10456         error.
10457         (riscv_push_dummy_call): Likewise.
10458
10459 2018-03-12  Tom Tromey  <tom@tromey.com>
10460
10461         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
10462         Use gdb::byte_vector.
10463         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
10464
10465 2018-03-12  Yao Qi  <yao.qi@linaro.org>
10466
10467         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
10468         parameter type to readable_regcache.
10469         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
10470         the declaration.
10471
10472 2018-03-11  Tom Tromey  <tom@tromey.com>
10473
10474         * dwarf2read.c (struct nextfield): Add initializers.
10475         (struct nextfnfield): Remove.
10476         (struct fnfieldlist): Add initializers.  Remove "length" and
10477         "head", use std::vector.
10478         (struct decl_field_list): Remove.
10479         (struct field_info): Add initializers.
10480         <fields, baseclasses>: Now std::vector.
10481         <nbaseclasses, nfnfields, typedef_field_list_count,
10482         nested_types_list_count>: Remove.
10483         (dwarf2_add_field, dwarf2_add_type_defn)
10484         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
10485         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
10486         (process_structure_scope): Update.
10487
10488 2018-03-11  Tom Tromey  <tom@tromey.com>
10489
10490         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
10491         for use by std::sort.
10492         (build_type_psymtabs_1): Use std::vector.
10493
10494 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
10495
10496         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
10497         and LIBMPFR in the printed configuration.
10498
10499 2018-03-08  Tom Tromey  <tom@tromey.com>
10500
10501         * source.c (get_filename_and_charpos): Use scoped_fd.
10502         * nto-procfs.c (procfs_open_1): Use scoped_fd.
10503         (procfs_pidlist): Likewise.
10504         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
10505         (iterate_over_mappings): Likewise.
10506
10507 2018-03-08  Tom Tromey  <tom@tromey.com>
10508
10509         * infcall.c (struct call_return_meta_info)
10510         <stack_temporaries_enabled>: Remove.
10511         (get_call_return_value, call_function_by_hand_dummy): Update.
10512         * thread.c (disable_thread_stack_temporaries): Remove.
10513         (enable_thread_stack_temporaries): Remove.
10514         (thread_stack_temporaries_enabled_p): Return bool.
10515         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
10516         (get_last_thread_stack_temporary): Update.
10517         * eval.c (evaluate_subexp): Update.
10518         * gdbthread.h (class enable_thread_stack_temporaries): Now a
10519         class, not a function.
10520         (value_ptr, value_vec): Remove typedefs.
10521         (class thread_info) <stack_temporaries_enabled>: Now bool.
10522         <stack_temporaries>: Now a std::vector.
10523         (thread_stack_temporaries_enabled_p)
10524         (value_in_thread_stack_temporaries): Return bool.
10525
10526 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
10527
10528         * remote.c (putpkt_binary): Fix omitted bytes reporting.
10529         (getpkt_or_notif_sane_1): Likewise.
10530
10531 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
10532
10533         * build-id.c (build_id_to_debug_bfd): Use std::string.
10534
10535 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
10536
10537         * build-id.c (find_separate_debug_file_by_buildid): Return
10538         std::string.
10539         * build-id.h (find_separate_debug_file_by_buildid): Return
10540         std::string.
10541         * coffread.c (coff_symfile_read): Adjust to std::string.
10542         * elfread.c (elf_symfile_read): Adjust to std::string.
10543         * symfile.c (separate_debug_file_exists): Change parameter to
10544         std::string.
10545         (find_separate_debug_file): Return std::string.
10546         (find_separate_debug_file_by_debuglink): Return std::string.
10547         * symfile.h (find_separate_debug_file_by_debuglink): Return
10548         std::string.
10549
10550 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
10551
10552         * common/xml-utils.c (xml_escape_text): Move code to...
10553         (xml_escape_text_append): ... this new function.
10554         * common/xml-utils.h (xml_escape_text_append): New declaration.
10555         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
10556         New function.
10557         (_initialize_xml_utils): register test_xml_escape_text_append as
10558         a selftest.
10559
10560 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
10561
10562         * defs.h: Remove MAX_REGISTER_SIZE.
10563         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
10564         asserts.
10565         * python/py-unwind.c (pyuw_sniffer): Likewise.
10566
10567 2018-03-07  Tom Tromey  <tom@tromey.com>
10568
10569         * linux-tdep.c (linux_info_proc): Update.
10570         * target.h (struct target_ops) <to_fileio_readlink>: Return
10571         optional<string>.
10572         (target_fileio_readlink): Return optional<string>.
10573         * remote.c (remote_hostio_readlink): Return optional<string>.
10574         * inf-child.c (inf_child_fileio_readlink): Return
10575         optional<string>.
10576         * target.c (target_fileio_readlink): Return optional<string>.
10577
10578 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
10579
10580         * regcache.c (cooked_read_test): Add riscv to the list of
10581         architectures that have a save_reggroup.
10582
10583 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10584
10585         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
10586         value is not a dynamic class object.
10587
10588 2018-03-06  Tom Tromey  <tom@tromey.com>
10589
10590         * rust-exp.y: Formatting fixes.
10591
10592 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10593
10594         * riscv-tdep.c (riscv_register_name): Remove target description
10595         support.
10596         (riscv_gdbarch_init): Remove target description check.
10597
10598 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10599
10600         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
10601         comment.
10602         * riscv-tdep.h: Likewise.
10603
10604 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10605
10606         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
10607         (riscv_pseudo_register_write): Delete.
10608         (riscv_gdbarch_init): Remove all use of pseudo registers.
10609
10610 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10611
10612         * record-btrace.c (btrace_print_lines): Replace cleanup
10613         parameter with RAII equivalents.
10614         (btrace_insn_history): Replace cleanup with RAII equivalents.
10615         * ui-out.h (make_cleanup_ui_out_list_begin_end,
10616         make_cleanup_ui_out_tuple_begin_end): Remove.
10617         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
10618         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
10619         make_cleanup_ui_out_list_begin_end): Remove.
10620
10621 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10622
10623         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
10624         parameter types to std::vector.  Use bool.
10625         (record_btrace_wait): Replace VEC(tp_t) with
10626         std::vector<thread_info *>.
10627         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
10628
10629 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
10630
10631         * record-btrace.c (record_btrace_disable_callback): Remove.
10632         (struct scoped_btrace_disable): New.
10633         (record_btrace_open): Use scoped_btrace_disable.
10634
10635 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10636
10637         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
10638         reading values from registers.
10639
10640 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10641
10642         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
10643         where appropriate.
10644
10645 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10646
10647         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
10648         change parameter type.  Use GDB's print functions, and use
10649         core_addr_to_string where appropriate.
10650         (riscv_push_dummy_call): Use core_addr_to_string where
10651         appropriate, update call to riscv_print_arg_location, and reindent
10652         a few lines.
10653         (riscv_return_value): Update call to riscv_print_arg_location.
10654
10655 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10656             Tim Newsome <tim@sifive.com>
10657             Albert Ou <a0u@eecs.berkeley.edu>
10658             Darius Rad <darius@bluespec.com>
10659
10660         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
10661         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
10662         (ALLDEPFILES): Add riscv-tdep.c
10663         * configure.tgt: Add riscv support.
10664         * riscv-tdep.c: New file.
10665         * riscv-tdep.h: New file.
10666         * NEWS: Mention new target.
10667         * MAINTAINERS: Add entry for riscv.
10668
10669 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
10670
10671         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
10672         fields within aggregates.
10673
10674 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
10675
10676         * record-btrace.c (btrace_print_lines): Change type of flags to
10677         gdb_disassembly_flags.
10678
10679 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10680
10681         * fbsd-nat.c: Include "inf-ptrace.h".
10682         (USE_SIGTRAP_SIGINFO): Conditionally define.
10683         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
10684         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
10685         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
10686         function.
10687         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
10688         Likewise.
10689         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
10690         Likewise.
10691         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
10692         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
10693         "supports_stopped_by_hw_breakpoint" target methods.
10694
10695 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10696
10697         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
10698         * fbsd-nat.c (debug_fbsd_nat): New variable.
10699         (show_fbsd_nat_debug): New function.
10700         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
10701         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
10702
10703 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
10704
10705         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
10706         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
10707         prototype.
10708         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
10709         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
10710         method.
10711
10712 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10713
10714         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
10715         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
10716
10717 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10718
10719         * charset.c (struct charset_vector): New.
10720         (charsets): Change type to charset_vector.
10721         (find_charset_names): Adjust.
10722         (add_one): Adjust.
10723         (_initialize_charset): Adjust.
10724
10725 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10726
10727         * progspace.h (struct program_space) <deleted_solibs>: Change
10728         type to std::vector<std::string>.
10729         * progspace.c (clear_program_space_solib_cache): Adjust.
10730         * breakpoint.c (print_solib_event): Adjust.
10731         (check_status_catch_solib): Adjust.
10732         * solib.c (update_solib_list): Adjust.
10733         * ui-out.h (class ui_out) <field_string>: New overload.
10734         * ui-out.c (ui_out::field_string): New overload.
10735
10736 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10737
10738         * progspace.h (struct program_space): Add constructor and
10739         destructor, initialize fields.
10740         (add_program_space): Remove.
10741         * progspace.c (add_program_space): Rename to...
10742         (program_space::program_space): ... this.
10743         (release_program_space): Rename to...
10744         (program_space::~program_space): ... this.
10745         (delete_program_space): Use delete to delete program_space.
10746         (initialize_progspace): Use new to allocate program_space.
10747         * inferior.c (add_inferior_with_spaces): Likewise.
10748         (clone_inferior_command): Likewise.
10749         * infrun.c (follow_fork_inferior): Likewise.
10750         (handle_vfork_child_exec_or_exit): Likewise.
10751
10752 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
10753
10754         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
10755         (delim_string_to_char_ptr_vec): Return std::vector of
10756         gdb::unique_xmalloc_ptr.
10757         (dirnames_to_char_ptr_vec_append): Take std::vector of
10758         gdb::unique_xmalloc_ptr.
10759         (dirnames_to_char_ptr_vec): Return std::vector of
10760         gdb::unique_xmalloc_ptr.
10761         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
10762         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
10763         (delim_string_to_char_ptr_vec): Return an std::vector of
10764         gdb::unique_xmalloc_ptr, adjust the code.
10765         (dirnames_to_char_ptr_vec_append): Take an std::vector of
10766         gdb::unique_xmalloc_ptr, adjust the code.
10767         (dirnames_to_char_ptr_vec): Return an std::vector of
10768         gdb::unique_xmalloc_ptr, adjust the code.
10769         * auto-load.c (auto_load_safe_path_vec): Change type to
10770         std::vector of gdb::unique_xmalloc_ptr.
10771         (auto_load_expand_dir_vars): Return an std::vector of
10772         gdb::unique_xmalloc_ptr, adjust the code.
10773         (auto_load_safe_path_vec_update): Adjust.
10774         (filename_is_in_auto_load_safe_path_vec): Adjust.
10775         (auto_load_objfile_script_1): Adjust.
10776         * build-id.c (build_id_to_debug_bfd): Adjust.
10777         * linux-thread-db.c (thread_db_load_search): Adjust.
10778         * source.c (add_path): Adjust.
10779         (openp): Adjust.
10780         * symfile.c (find_separate_debug_file): Adjust.
10781         * utils.c (do_free_char_ptr_vec): Remove.
10782         (make_cleanup_free_char_ptr_vec): Remove.
10783
10784 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
10785
10786         PR gdb/22907
10787         * common/pathstuff.c: Conditionally include "<windows.h>".
10788
10789 2018-03-01  Georg Sauthoff  <mail@georg.so>
10790
10791         PR gdb/22888
10792         * gcore.in: Quote variables and switch interpreter to bash.
10793
10794 2018-03-01  Tom Tromey  <tom@tromey.com>
10795
10796         * dwarf2read.c (alloc_discriminant_info): Fix default_index
10797         assertion.  Add assertion for discriminant_index.
10798         (quirk_rust_enum): Use correct base type name in univariant case.
10799
10800 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
10801
10802         * record.c (get_call_history_modifiers): Return a
10803         record_print_flags.
10804         (cmd_record_call_history): Adjust.
10805         * record-btrace.c (record_btrace_call_history): Adjust.
10806         (record_btrace_call_history_range): Adjust.
10807         (record_btrace_call_history_from): Adjust.
10808         * target-debug.h (target_debug_print_record_print_flags): New.
10809         * target-delegates.c: Re-generate.
10810         * target.c (target_call_history): Change flags type.
10811         (target_call_history_from): Likewise.
10812         (target_call_history_range): Likewise.
10813         * target.h (struct target_ops) <target_call_history>: Likewise.
10814         (target_call_history_from): Likewise.
10815         (target_call_history_range): Likewise.
10816
10817 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
10818             Simon Marchi  <simon.marchi@polymtl.ca>
10819
10820         * common/common-utils.c: Include "sys/stat.h".
10821         (is_regular_file): Move here from "source.c"; change return
10822         type to "bool".
10823         * common/common-utils.h (is_regular_file): New prototype.
10824         * common/pathstuff.c (contains_dir_separator): New function.
10825         * common/pathstuff.h (contains_dir_separator): New prototype.
10826         * source.c: Don't include "sys/stat.h".
10827         (is_regular_file): Move to "common/common-utils.c".
10828
10829 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
10830
10831         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
10832         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
10833         * auto-load.c: Include "common/pathstuff.h".
10834         * common/common-def.h (current_directory): Move here.
10835         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
10836         function.
10837         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
10838         prototype.
10839         * common/pathstuff.c: New file.
10840         * common/pathstuff.h: New file.
10841         * compile/compile.c: Include "common/pathstuff.h".
10842         * defs.h (current_directory): Move to "common/common-defs.h".
10843         * dwarf2read.c: Include "common/pathstuff.h".
10844         * exec.c: Likewise.
10845         * guile/scm-safe-call.c: Likewise.
10846         * linux-thread-db.c: Likewise.
10847         * main.c: Likewise.
10848         * nto-tdep.c: Likewise.
10849         * objfiles.c: Likewise.
10850         * source.c: Likewise.
10851         * symtab.c: Likewise.
10852         * utils.c: Include "common/pathstuff.h".
10853         (gdb_realpath): Move to "common/pathstuff.c".
10854         (gdb_realpath_keepfile): Likewise.
10855         (gdb_abspath): Likewise.
10856         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
10857         (gdb_realpath_keepfile): Likewise.
10858         (gdb_abspath): Likewise.
10859
10860 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
10861
10862         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
10863         wildcard process pid for super_resume for kernels with a
10864         specific bug.
10865
10866 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
10867
10868         * compile/compile.c (get_args): Add additional comments
10869         explaining function.
10870
10871 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
10872             Tom Tromey  <tom@tromey.com>
10873
10874         * target.h (memory_write_request_s): Remove typedef.  Don't define
10875         VEC.
10876         (target_write_memory_blocks): Change argument to std::vector.
10877         (struct memory_write_request): Add constructor.
10878         * target-memory.c (compare_block_starting_address): Return bool.
10879         Change argument types.
10880         (claim_memory): Change arguments to use std::vector.
10881         (split_regular_and_flash_blocks, blocks_to_erase)
10882         (compute_garbled_blocks): Likewise.
10883         (cleanup_request_data, cleanup_write_requests_vector): Remove.
10884         (target_write_memory_blocks): Change argument to std::vector.
10885         * symfile.c (struct load_section_data): Add constructor and
10886         destructor.  Use std::vector for "requests".
10887         (struct load_progress_data): Add initializers.
10888         (load_section_callback): Update.  Use "new".
10889         (clear_memory_write_data): Remove.
10890         (generic_load): Update.
10891
10892 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
10893
10894         * arch/aarch64.h: Use common/tdesc.h.
10895
10896 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
10897
10898         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
10899         architecture with a 64-bit ABI.
10900
10901 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
10902
10903         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
10904         ahead of target description loading.
10905
10906 2018-02-26  Tom Tromey  <tom@tromey.com>
10907
10908         * stack.c (backtrace_command_1): Update.
10909         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
10910         of "flags".
10911         * python/py-framefilter.c (py_print_frame)
10912         (gdbpy_apply_frame_filter): Change type of "flags".
10913         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
10914         of "flags".
10915         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
10916         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
10917         * extension.h (enum frame_filter_flag): Rename from
10918         frame_filter_flags.
10919         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
10920         (apply_ext_lang_frame_filter): Change type of "flags".
10921         * extension.c (apply_ext_lang_frame_filter): Change type of
10922         "flags".
10923         * extension-priv.h (struct extension_language_ops)
10924         <apply_frame_filter>: Change type of "flags".
10925
10926 2018-02-26  Tom Tromey  <tom@tromey.com>
10927
10928         PR python/16497:
10929         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
10930         off-by-one in py_end computation.
10931         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
10932         PRINT_MORE_FRAMES.
10933         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
10934         constant.
10935
10936 2018-02-26  Tom Tromey  <tom@tromey.com>
10937
10938         * dwarf2read.c (struct variant_field): New.
10939         (struct nextfield) <variant>: New field.
10940         (dwarf2_add_field): Handle DW_TAG_variant_part.
10941         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
10942         discriminated union.
10943         (read_structure_type): Handle DW_TAG_variant_part.
10944         (handle_struct_member_die): New function, extracted from
10945         process_structure_scope.  Handle DW_TAG_variant.
10946         (process_structure_scope): Handle discriminated unions.  Call
10947         handle_struct_member_die.
10948
10949 2018-02-26  Tom Tromey  <tom@tromey.com>
10950
10951         * rust-lang.h (rust_last_path_segment): Declare.
10952         * rust-lang.c (rust_last_path_segment): Now public.  Change
10953         contract.
10954         (struct disr_info): Remove.
10955         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
10956         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
10957         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
10958         (rust_enum_p, rust_enum_variant): New function.
10959         (rust_underscore_fields): Remove "offset" parameter.
10960         (rust_print_enum): New function.
10961         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
10962         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
10963         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
10964         enums.
10965         (rust_internal_print_type): New function, from rust_print_type.
10966         Remove enum code.
10967         (rust_print_type): Call rust_internal_print_type.
10968         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
10969         Update enum handling.
10970         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
10971         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
10972         (rust_union_quirks): New functions.
10973         (process_full_comp_unit, process_full_type_unit): Call
10974         rust_union_quirks.
10975         (process_structure_scope): Update rust_unions if necessary.
10976
10977 2018-02-26  Tom Tromey  <tom@tromey.com>
10978
10979         * value.h (value_union_variant): Declare.
10980         * valops.c (value_union_variant): New function.
10981         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
10982         (struct discriminant_info): New.
10983         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
10984         enumerator.
10985         (struct main_type) <flag_discriminated_union>: New field.
10986
10987 2018-02-26  Tom Tromey  <tom@tromey.com>
10988
10989         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10990         unittests/unpack-selftests.c.
10991         * unittests/unpack-selftests.c: New file.
10992         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
10993
10994 2018-02-26  Yao Qi  <yao.qi@linaro.org>
10995
10996         * dwarf2read.c (struct partial_die_info) <read>: New method.
10997         (read_partial_die): Remove the declaration.
10998         (load_partial_dies): Update.
10999         (partial_die_info::partial_die_info):
11000         (read_partial_die): Change it to partial_die_info::read.
11001
11002 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11003
11004         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
11005         (fixup_partial_die): Remove declaration.
11006         (scan_partial_symbols): Update.
11007         (partial_die_parent_scope): Likewise.
11008         (partial_die_full_name): Likewise.
11009         (fixup_partial_die): Change it to partial_die_info::fixup.
11010
11011 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11012
11013         * dwarf2read.c (read_partial_die): Update the declaration.
11014         (load_partial_dies): Caller update.
11015         (read_partial_die): Remove one argument abbrev_len.
11016
11017 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11018
11019         * dwarf2read.c (struct partial_die_info): Add ctor, delete
11020         assignment operator.
11021         (load_partial_dies): Use ctor and copy ctor.
11022         (read_partial_die): Update.
11023         (dwarf2_cu::find_partial_die): Use ctor.
11024
11025 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11026
11027         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
11028         (find_partial_die_in_comp_unit): Change it to
11029         dwarf2_cu::find_partial_die.
11030         (find_partial_die): Update.
11031
11032 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11033
11034         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
11035         is NULL.
11036
11037 2018-02-26  Yao Qi  <yao.qi@linaro.org>
11038
11039         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
11040
11041 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
11042
11043         * arch/amd64.h: Use common/tdesc.h.
11044         * arch/i386.c: Likewise.
11045         * arch/i386.h: Likewise.
11046         * arch/tic6x.c: Likewise.
11047         * arch/tdesc.h: Move file from here...
11048         * common/tdesc.h: ...to here.
11049         * features/aarch64-core.c: Regenerate.
11050         * features/aarch64-fpu.c: Regenerate.
11051         * features/i386/32bit-avx.c: Regenerate.
11052         * features/i386/32bit-avx512.c: Regenerate.
11053         * features/i386/32bit-core.c: Regenerate.
11054         * features/i386/32bit-linux.c: Regenerate.
11055         * features/i386/32bit-mpx.c: Regenerate.
11056         * features/i386/32bit-pkeys.c: Regenerate.
11057         * features/i386/32bit-sse.c: Regenerate.
11058         * features/i386/64bit-avx.c: Regenerate.
11059         * features/i386/64bit-avx512.c: Regenerate.
11060         * features/i386/64bit-core.c: Regenerate.
11061         * features/i386/64bit-linux.c: Regenerate.
11062         * features/i386/64bit-mpx.c: Regenerate.
11063         * features/i386/64bit-pkeys.c: Regenerate.
11064         * features/i386/64bit-segments.c: Regenerate.
11065         * features/i386/64bit-sse.c: Regenerate.
11066         * features/i386/x32-core.c: Regenerate.
11067         * features/tic6x-c6xp.c: Regenerate.
11068         * features/tic6x-core.c: Regenerate.
11069         * features/tic6x-gp.c: Regenerate.
11070         * target-descriptions.c: Use common/tdesc.h.
11071         * target-descriptions.h: Likewise.
11072
11073 2018-02-24  Tom Tromey  <tom@tromey.com>
11074
11075         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
11076         (try_thread_db_load_from_dir, thread_db_load_search): Use
11077         std::string.
11078         (info_auto_load_libthread_db_compare): Return bool.  Change
11079         argument types.
11080         (info_auto_load_libthread_db): Use std::vector, std::string.
11081         Remove cleanups.
11082
11083 2018-02-24  Tom Tromey  <tom@tromey.com>
11084
11085         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
11086         std::string.
11087         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
11088         std::string*.
11089         * gdbarch.c: Rebuild.
11090         * gdbarch.h: Rebuild.
11091         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
11092         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
11093         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
11094         std::string*.
11095
11096 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
11097
11098         * gdbtypes.h (sect_offset): Change type to uint64_t.
11099         (sect_offset_str): New function.
11100         * dwarf2read.c (create_addrmap_from_aranges): Use
11101         sect_offset_str.
11102         (error_check_comp_unit_head): Likewise.
11103         (create_debug_type_hash_table): Likewise.
11104         (read_cutu_die_from_dwo): Likewise.
11105         (init_cutu_and_read_dies): Likewise.
11106         (init_cutu_and_read_dies_no_follow): Likewise.
11107         (process_psymtab_comp_unit_reader): Likewise.
11108         (partial_die_parent_scope): Likewise.
11109         (peek_die_abbrev): Likewise.
11110         (process_queue): Likewise.
11111         (dwarf2_physname): Likewise.
11112         (read_namespace_alias): Likewise.
11113         (read_import_statement): Likewise.
11114         (create_dwo_cu_reader): Likewise.
11115         (create_cus_hash_table): Likewise.
11116         (lookup_dwo_cutu): Likewise.
11117         (inherit_abstract_dies): Likewise.
11118         (read_func_scope): Likewise.
11119         (read_call_site_scope): Likewise.
11120         (dwarf2_add_member_fn): Likewise.
11121         (read_common_block): Likewise.
11122         (read_module_type): Likewise.
11123         (read_typedef): Likewise.
11124         (read_subrange_type): Likewise.
11125         (load_partial_dies): Likewise.
11126         (read_partial_die): Likewise.
11127         (find_partial_die): Likewise.
11128         (read_str_index): Likewise.
11129         (dwarf2_string_attr): Likewise.
11130         (build_error_marker_type): Likewise.
11131         (lookup_die_type): Likewise.
11132         (dump_die_shallow): Likewise.
11133         (follow_die_ref): Likewise.
11134         (dwarf2_fetch_die_loc_sect_off): Likewise.
11135         (dwarf2_fetch_constant_bytes): Likewise.
11136         (follow_die_sig): Likewise.
11137         (get_signatured_type): Likewise.
11138         (get_DW_AT_signature_type): Likewise.
11139         (dwarf2_find_containing_comp_unit): Likewise.
11140         (set_die_type): Likewise.
11141
11142 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
11143
11144         * arch/aarch64.c: Include "common-defs.h".
11145         * arch/amd64.c: Likewise.
11146         * arch/i386.c: Likewise.
11147
11148 2018-02-21  Tom Tromey  <tom@tromey.com>
11149
11150         * value.h: (extract_field_op): Update.
11151         * eval.c (extract_field_op): Return a const char *.
11152         * expression.h (parse_expression_for_completion): Update.
11153         * completer.c (complete_expression): Update.
11154         (add_struct_fields): Make fieldname const.
11155         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
11156         (mark_completion_tag, parse_exp_in_context_1): Update.
11157         (parse_expression_for_completion): Change "name" to
11158         unique_xmalloc_ptr*.
11159
11160 2018-02-21  Tom Tromey  <tom@tromey.com>
11161
11162         * infcall.c (call_function_by_hand_dummy): Use std::vector.
11163
11164 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11165
11166         * avr-tdep.c (avr_read_pc): Change parameter type to
11167         readable_regcache.
11168         * gdbarch.sh (read_pc): Likewise.
11169         * gdbarch.c: Re-generated.
11170         * gdbarch.h: Re-generated.
11171         * hppa-tdep.c (hppa_read_pc): Change parameter type to
11172         readable_regcache.
11173         * ia64-tdep.c (ia64_read_pc): Likewise.
11174         * mips-tdep.c (mips_read_pc): Likewise.
11175         * spu-tdep.c (spu_read_pc): Likewise.
11176
11177 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11178
11179         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
11180         * regcache-dump.c: New file.
11181         * regcache.c: Move register_dump to regcache-dump.c.
11182         (maintenance_print_registers): Likewise.
11183         (maintenance_print_raw_registers): Likewise.
11184         (maintenance_print_cooked_registers): Likewise.
11185         (maintenance_print_register_groups): Likewise.
11186         (maintenance_print_remote_registers): Likewise.
11187         (_initialize_regcache): Likewise.
11188         * regcache.h (register_dump): Moved from regcache.c.
11189
11190 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11191
11192         * regcache.c (regcache::regcache): Update.
11193         (regcache::invalidate): Move it to detached_regcache::invalidate.
11194         (get_thread_arch_aspace_regcache): Update.
11195         (regcache::raw_update): Update.
11196         (regcache::cooked_read): Remove some code.
11197         (regcache::cooked_read_value): Likewise.
11198         (regcache::raw_write): Remove assert on m_readonly_p.
11199         (regcache::raw_supply_integer): Move it to
11200         detached_regcache::raw_supply_integer.
11201         (regcache::raw_supply_zeroed): Likewise.
11202         * regcache.h (detached_regcache) <raw_supply_integer>: New
11203         declaration.
11204         <raw_supply_zeroed, invalidate>: Likewise.
11205         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
11206         <invalidate>: Likewise.
11207         <m_readonly_p>: Removed.
11208
11209 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11210
11211         * infcmd.c (get_return_value): Let stop_regs point to
11212         get_current_regcache.
11213         * regcache.c (regcache::regcache): Remove.
11214         (register_dump_reg_buffer): New class.
11215         (regcache_print): Adjust.
11216         * regcache.h (regcache): Remove constructors.
11217
11218 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11219
11220         * regcache.c (class register_dump): New class.
11221         (register_dump_regcache, register_dump_none): New class.
11222         (register_dump_remote, register_dump_groups): New class.
11223         (regcache_print): Update.
11224         * regcache.h (regcache_dump_what): Move it to regcache.c.
11225         (regcache) <dump>: Remove.
11226
11227 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11228
11229         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
11230          reg_buffer_rw *.
11231         (jit_unwind_reg_set_impl): Call raw_supply.
11232         (jit_frame_sniffer): Use reg_buffer_rw.
11233         * record-full.c (record_full_core_regbuf): Change its type.
11234         (record_full_core_open_1): Use reg_buffer_rw.
11235         (record_full_close): Likewise.
11236         (record_full_core_fetch_registers): Use regcache->raw_supply.
11237         (record_full_core_store_registers): Likewise.
11238         * regcache.c (regcache::get_register_status): Move it to
11239         reg_buffer.
11240         (regcache_raw_set_cached_value): Remove.
11241         (regcache::raw_set_cached_value): Remove.
11242         (regcache::raw_write): Call raw_supply.
11243         (regcache::raw_supply): Move it to reg_buffer_rw.
11244         * regcache.h (regcache_raw_set_cached_value): Remove.
11245         (reg_buffer_rw): New class.
11246
11247 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11248
11249         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
11250         readonly_detached_regcache.
11251         (dummy_frame_prev_register): Use regcache->cooked_read.
11252         * frame.c (frame_save_as_regcache): Change return type.
11253         (frame_pop): Update.
11254         * frame.h (frame_save_as_regcache): Update declaration.
11255         * inferior.h (get_infcall_suspend_state_regcache): Update
11256         declaration.
11257         * infrun.c (infcall_suspend_state) <registers>: use
11258         readonly_detached_regcache.
11259         (save_infcall_suspend_state): Don't use regcache_dup.
11260         (get_infcall_suspend_state_regcache): Change return type.
11261         * linux-fork.c (struct fork_info) <savedregs>: Change to
11262         readonly_detached_regcache.
11263         <pc>: New field.
11264         (fork_save_infrun_state): Don't use regcache_dup.
11265         (info_checkpoints_command): Adjust.
11266         * mi/mi-main.c (register_changed_p): Update declaration.
11267         (mi_cmd_data_list_changed_registers): Use
11268         readonly_detached_regcache.
11269         (register_changed_p): Change parameter type to
11270         readonly_detached_regcache.
11271         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
11272         readonly_detached_regcache.
11273         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
11274         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
11275         New.
11276         (regcache::save): Move it to reg_buffer.
11277         (regcache::restore): Change parameter type.
11278         (regcache_dup): Remove.
11279         * regcache.h (reg_buffer) <save>: New method.
11280         (readonly_detached_regcache): New class.
11281         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
11282         readonly_detached_regcache.
11283         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
11284
11285 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11286
11287         * frame.c (frame_save_as_regcache): Use regcache method save.
11288         (frame_pop): Use regcache method restore.
11289         * infrun.c (restore_infcall_suspend_state): Likewise.
11290         * linux-fork.c (fork_load_infrun_state): Likewise.
11291         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
11292         save.
11293         * regcache.c (regcache_save): Remove.
11294         (regcache::restore): More asserts.
11295         (regcache_cpy): Remove.
11296         * regcache.h (regcache_save): Remove the declaration.
11297         (regcache::restore): Move from private to public.
11298         Remove the friend declaration of regcache_cpy.
11299         (regcache_cpy): Remove declaration.
11300
11301 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11302
11303         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
11304         parameter type to 'readable_regcache *'.
11305         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
11306         * arm-tdep.c (arm_neon_quad_read): Likewise.
11307         (arm_pseudo_read): Likewise.
11308         * avr-tdep.c (avr_pseudo_register_read): Likewise.
11309         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
11310         * frv-tdep.c (frv_pseudo_register_read): Likewise.
11311         * gdbarch.c: Re-generated.
11312         * gdbarch.h: Re-generated.
11313         * gdbarch.sh (pseudo_register_read): Change parameter type to
11314         'readable_regcache *'.
11315         (pseudo_register_read_value): Likewise.
11316         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
11317         (h8300_pseudo_register_read): Likewise.
11318         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
11319         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
11320         (i386_pseudo_register_read_into_value): Likewise.
11321         (i386_pseudo_register_read_value): Likewise.
11322         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
11323         declaration.
11324         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
11325         * m32c-tdep.c (m32c_raw_read): Likewise.
11326         (m32c_read_flg): Likewise.
11327         (m32c_banked_register): Likewise.
11328         (m32c_banked_read): Likewise.
11329         (m32c_sb_read): Likewise.
11330         (m32c_part_read): Likewise.
11331         (m32c_cat_read): Likewise.
11332         (m32c_r3r2r1r0_read): Likewise.
11333         (m32c_pseudo_register_read): Likewise.
11334         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
11335         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
11336         (mep_pseudo_cr64_read): Likewise.
11337         (mep_pseudo_register_read): Likewise.
11338         * mips-tdep.c (mips_pseudo_register_read): Likewise.
11339         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
11340         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
11341         * regcache.c (regcache::raw_read): Move it to readable_regcache.
11342         (regcache::cooked_read): Likewise.
11343         (regcache::cooked_read_value): Likewise.
11344         (regcache_cooked_read_signed):
11345         (regcache::cooked_read): Likewise.
11346         * regcache.h (readable_regcache): New class.
11347         (regcache): Inherit readable_regcache.  Move some methods to
11348         readable_regcache.
11349         * rl78-tdep.c (rl78_pseudo_register_read): Change
11350         parameter type to 'readable_regcache *'.
11351         * rs6000-tdep.c (do_regcache_raw_read): Remove.
11352         (e500_pseudo_register_read): Change parameter type to
11353         'readable_regcache *'.
11354         (dfp_pseudo_register_read): Likewise.
11355         (vsx_pseudo_register_read): Likewise.
11356         (efpr_pseudo_register_read): Likewise.
11357         * s390-tdep.c (s390_pseudo_register_read): Likewise.
11358         * sh-tdep.c (sh_pseudo_register_read): Likewise.
11359         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
11360         (sh64_pseudo_register_read): Likewise.
11361         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
11362         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
11363         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
11364         (spu_pseudo_register_read): Likewise.
11365         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
11366         (xtensa_pseudo_register_read): Likewise.
11367
11368 2018-02-21  Yao Qi  <yao.qi@linaro.org>
11369
11370         * regcache.c (regcache::regcache): Call reg_buffer ctor.
11371         (regcache::arch): Move it to reg_buffer::arch.
11372         (regcache::register_buffer): Likewise.
11373         (regcache::assert_regnum): Likewise.
11374         (regcache::num_raw_registers): Likewise.
11375         * regcache.h (reg_buffer): New class.
11376         (regcache): Inherit reg_buffer.
11377
11378 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
11379
11380         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
11381         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
11382
11383 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
11384
11385         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
11386
11387 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
11388
11389         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
11390         (SFILES): Remove common/*.c files.
11391         (COMMON_OBS): Remove some *.o files built from common/*.c files.
11392         * common/common.host: Add common reference.
11393         * configure.ac: Likewise.
11394         * configure: Regenerate.
11395
11396 2018-02-16  Yao Qi  <yao.qi@linaro.org>
11397
11398         * block.c (block_namespace_info): Inherit allocate_on_obstack.
11399         (block_initialize_namespace): Use new.
11400         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
11401         (dwarf2_free_objfile): Use delete.
11402         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
11403         (copy_type_recursive): Use new.
11404         * gdb_obstack.h (allocate_on_obstack): New.
11405
11406 2018-02-15  Yao Qi  <yao.qi@linaro.org>
11407
11408         PR gdb/22849
11409         * inferior.c (exit_inferior_1): Reset inf->control.
11410
11411 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
11412
11413         * ada-lang.c (ada_to_fixed_value_create): Delete advance
11414         declaration.
11415
11416 2018-02-14  Pedro Alves  <palves@redhat.com>
11417
11418         * frame-unwind.c (frame_unwind_try_unwinder): Always call
11419         frame_cleanup_after_sniffer on exception.
11420
11421 2018-02-14  Tom Tromey  <tom@tromey.com>
11422
11423         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
11424         const.
11425         (solib_bfd_open): Make pathname const.
11426         * solib.c (solib_bfd_open): Make pathname const.
11427         * solib-spu.c (spu_bfd_fopen): Make name const.
11428         (spu_bfd_open): Make pathname const.
11429         * solib-darwin.c (darwin_bfd_open): Make pathname const.
11430         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
11431
11432 2018-02-14  Tom Tromey  <tom@tromey.com>
11433
11434         * symfile.c (symfile_bfd_open): Update.
11435         * source.h (openp, source_full_path_of, find_and_open_source):
11436         Change argument type to unique_xmalloc_ptr.
11437         * source.c (openp): Take a unique_xmalloc_ptr.
11438         (source_full_path_of, find_and_open_source): Likewise.
11439         (open_source_file, symtab_to_fullname): Update.
11440         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
11441         unique_xmalloc_ptr.
11442         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
11443         (exec_file_find): Update.
11444         * psymtab.c (psymtab_to_fullname): Update.
11445         * nto-tdep.h (nto_find_and_open_solib): Update.
11446         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
11447         unique_xmalloc_ptr.
11448         * exec.c (exec_file_attach): Update.
11449         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
11450         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
11451
11452 2018-02-14  Tom Tromey  <tom@tromey.com>
11453
11454         * solib.c: Include source.h.
11455         * nto-tdep.c: Include source.h.
11456         * mi/mi-cmd-env.c: Include source.h.
11457         * infcmd.c: Include source.h.
11458         * exec.c: Include source.h.
11459         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
11460         (add_path, directory_switch, source_path, init_source_path): Move
11461         declarations...
11462         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
11463         (add_path, directory_switch, source_path, init_source_path):
11464         ...here.
11465
11466 2018-02-14  Tom Tromey  <tom@tromey.com>
11467
11468         * solist.h (exec_file_find, solib_find): Return
11469         unique_xmalloc_ptr.
11470         (solib_bfd_fopen): Take a const char *.
11471         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
11472         (exec_file_find, solib_find): Likewise.
11473         (solib_bfd_fopen): Do not take ownership of "pathname".
11474         (solib_bfd_open): Use unique_xmalloc_ptr.
11475         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
11476         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
11477         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
11478         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
11479
11480 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
11481
11482         * ada-lang.c (name_match_type_from_name): Remove reference to
11483         ada_name_for_lookup in function's documentation.
11484         * ada-lang.h (ada_name_for_lookup): Delete declaration.
11485
11486 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
11487
11488         * defs.h (enum openp_flags): New enum.
11489         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
11490         Move to enum openp_flags.
11491         (openp_flags): New enum flags.
11492         (openp): Change parameter type to openp_flags.
11493         * source.c (openp): Change parameter type to openp_flags.
11494         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
11495         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
11496
11497 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
11498
11499         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
11500         per-command.
11501
11502 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
11503
11504         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
11505         into...
11506         (class dwarf2_queue_guard): ...the destructor of this new class.
11507         (dw2_do_instantiate_symtab): Create instance of the new class
11508         dwarf2_queue_guard, remove cleanup.
11509
11510 2018-02-09  Tom Tromey  <tom@tromey.com>
11511
11512         * source.c (find_source_lines): Don't reference past the end of
11513         the vector.
11514
11515 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11516
11517         * remote.c (remote_btrace_maybe_reopen): Change error message.
11518         * btrace.c (btrace_enable): Likewise.
11519         (parse_xml_btrace): Likewise.
11520         (parse_xml_btrace_conf): Likewise.
11521
11522 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11523
11524         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
11525         (linux_enable_pt, linux_enable_bts): Call
11526         diagnose_perf_event_open_fail.
11527
11528 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11529
11530         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
11531         Remove parameter and change return type.  Update callers.  Move it.
11532         (linux_enable_bts, linux_enable_pt): Improve error message.
11533         (linux_enable_pt): Remove zero buffer size check.
11534         (linux_enable_btrace): Improve error messages.  Remove NULL return
11535         check.
11536
11537 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11538
11539         * btrace.c (btrace_enable): Remove target_supports_btrace call.
11540         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
11541         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
11542         (linux_supports_pt, linux_supports_btrace): Remove.
11543         (linux_enable_bts): Call cpu_supports_bts.
11544         * nat/linux-btrace.h (linux_supports_btrace): Remove.
11545         * remote.c (remote_supports_btrace): Remove.
11546         (init_remote_ops): Remove remote_supports_btrace.
11547         * target-delegates.c: Regenerated.
11548         * target.c (target_supports_btrace): Remove.
11549         * target.h (target_ops) <to_supports_btrace>: Remove
11550         (target_supports_btrace): Remove.
11551         * x86-linux-nat.c (x86_linux_create_target): Remove
11552         linux_supports_btrace.
11553
11554 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11555
11556         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
11557         btrace failed.
11558         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
11559         exception and use message in own exception.
11560
11561 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11562
11563         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
11564         (perf_event_pt_event_type): Use gdb_file_up.
11565         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
11566         scoped_fd, and scoped_mmap.
11567
11568 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11569
11570         * common/scoped_mmap.h: New.
11571         * unittests/scoped_mmap-selftest.c: New.
11572         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11573         unittests/scoped_mmap-selftest.c.
11574
11575 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
11576
11577         * common/scoped_fd.h: New.
11578         * unittests/scoped_fd-selftest.c: New.
11579         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11580         unittests/scoped_fd-selftest.c.
11581
11582 2018-02-09  Tom Tromey  <tom@tromey.com>
11583
11584         * auto-load.c (auto_load_section_scripts): Use
11585         gdb::unique_xmalloc_ptr.
11586
11587 2018-02-09  Tom Tromey  <tom@tromey.com>
11588
11589         * auto-load.c (execute_script_contents): Use std::string.
11590
11591 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
11592
11593         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
11594         Python function, rather than a new command.
11595
11596 2018-02-08  Tom Tromey  <tom@tromey.com>
11597
11598         * solib.c (solib_find_1): Use std::string.
11599         (solib_bfd_fopen): Use unique_xmalloc_ptr.
11600
11601 2018-02-08  Tom Tromey  <tom@tromey.com>
11602
11603         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
11604
11605 2018-02-08  Tom Tromey  <tom@tromey.com>
11606
11607         * source.c (find_source_lines): Use gdb::def_vector.
11608
11609 2018-02-08  Tom Tromey  <tom@tromey.com>
11610
11611         * macrocmd.c (struct temporary_macro_definition): New.
11612         (macro_define_command): Use temporary_macro_definition.  Remove
11613         cleanups.
11614         (free_macro_definition_ptr): Remove.
11615
11616 2018-02-08  Tom Tromey  <tom@tromey.com>
11617
11618         * macroexp.c (maybe_expand): Use std::string.
11619
11620 2018-02-08  Tom Tromey  <tom@tromey.com>
11621
11622         * macroexp.c (struct macro_buffer): Add initializers for some
11623         members.
11624         (init_buffer, init_shared_buffer, free_buffer)
11625         (free_buffer_return_text): Remove.
11626         (macro_buffer): New constructors.
11627         (~macro_buffer): New destructor.
11628         (macro_buffer::set_shared): New method.
11629         (macro_buffer::resize_buffer, macro_buffer::appendc)
11630         (macro_buffer::appendmem): Now methods, not free functions.
11631         (set_token, append_tokens_without_splicing, stringify)
11632         (macro_stringify): Update.
11633         (gather_arguments): Change return type.  Remove argc_p argument,
11634         add args_ptr argument.  Use std::vector.
11635         (substitute_args): Remove argc argument.  Accept std::vector.
11636         (expand): Update.  Use std::vector.
11637         (scan, macro_expand, macro_expand_next): Update.
11638
11639 2018-02-08  Tom Tromey  <tom@tromey.com>
11640
11641         * symtab.c (default_collect_symbol_completion_matches_break_on):
11642         Use unique_xmalloc_ptr.
11643         * macroscope.h: (sal_macro_scope, user_macro_scope)
11644         (default_macro_scope): Return unique_xmalloc_ptr.
11645         * macroscope.c (sal_macro_scope, user_macro_scope)
11646         (default_macro_scope): Return unique_xmalloc_ptr.
11647         * macroexp.h (macro_expand, macro_expand_once): Return
11648         unique_xmalloc_ptr.
11649         * macroexp.c (macro_expand, macro_expand_once): Return
11650         unique_xmalloc_ptr.
11651         * macrocmd.c (macro_expand_command, macro_expand_once_command)
11652         (info_macro_command, info_macros_command): Use
11653         unique_xmalloc_ptr.
11654         * compile/compile-c-support.c (write_macro_definitions): Use
11655         unique_xmalloc_ptr.
11656         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
11657
11658 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
11659
11660         * value.c (value_static_field): Assign field type instead of
11661         containing type when returning an optimized out value.
11662
11663 2018-02-06  Yao Qi  <yao.qi@linaro.org>
11664
11665         * ft32-tdep.c (ft32_read_pc): Remove.
11666         (ft32_write_pc): Remove.
11667         (ft32_gdbarch_init): Update.
11668         * m32r-tdep.c (m32r_read_pc): Remove.
11669         (m32r_gdbarch_init): Update.
11670         * mep-tdep.c (mep_read_pc): Remove.
11671         (mep_gdbarch_init): Update.
11672         * microblaze-tdep.c (microblaze_write_pc): Remove.
11673         (microblaze_gdbarch_init): Update.
11674         * mn10300-tdep.c (mn10300_read_pc): Remove.
11675         (mn10300_write_pc): Remove.
11676         (mn10300_gdbarch_init): Update.
11677         * moxie-tdep.c (moxie_read_pc): Remove.
11678         (moxie_write_pc): Remove.
11679         (moxie_gdbarch_init): Update.
11680
11681 2018-02-06  Yao Qi  <yao.qi@linaro.org>
11682
11683         * expprint.c (print_subexp_standard): Handle
11684         OP_F77_UNDETERMINED_ARGLIST.
11685         (dump_subexp_body_standard): Likewise.
11686
11687 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
11688
11689         * target-descriptions.c (tdesc_element_visitor) Add empty
11690         implementations.
11691         (tdesc_type): Move make_gdb_type from here.
11692         (tdesc_type_builtin): Likewise.
11693         (tdesc_type_vector): Likewise.
11694         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
11695         (make_gdb_type_struct): Move from tdesc_type_with_fields.
11696         (make_gdb_type_union): Likewise.
11697         (make_gdb_type_flags): Likewise.
11698         (make_gdb_type_enum): Likewise.
11699         (make_gdb_type): New function.
11700         (tdesc_register_type): Use static make_gdb_type.
11701
11702 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
11703
11704         * infcmd.c (default_print_one_register_info): Align natural-format
11705         column values consistently one under another.
11706         (pad_to_column): New function.
11707
11708 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
11709
11710         * dwarf2read.c (dwarf2_physname): Move commment.
11711
11712 2018-02-01  Leszek Swirski  <leszeks@google.com>
11713
11714         * varobj.c (varobj_formatted_print_options): Allow recursive
11715         pretty printing if pretty printing is enabled.
11716
11717 2018-02-01  Leszek Swirski  <leszeks@google.com>
11718
11719         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
11720         names after a structop as a filename.
11721
11722 2018-02-01  Yao Qi  <yao.qi@linaro.org>
11723
11724         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
11725         (arm_record_coproc_data_proc): Likewise.
11726
11727 2018-02-01  Yao Qi  <yao.qi@linaro.org>
11728
11729         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
11730
11731 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
11732
11733         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
11734         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
11735
11736 2018-01-31  Pedro Alves  <palves@redhat.com>
11737
11738         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
11739         * inflow.c (child_terminal_save_inferior): Wrap reference to
11740         tcgetpgrp in HAVE_TERMIOS_H.
11741         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
11742         _WIN32.
11743         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
11744         always iterate over all inferiors.
11745         (gdbsim_cntrl_c): Adjust.
11746         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
11747
11748 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
11749
11750         * gdbtypes.c (lookup_array_range_type): Make sure the array's
11751         index type is objfile-owned if the element type is as well.
11752
11753 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
11754
11755         GDB 8.1 released.
11756
11757 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11758
11759         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
11760         "features/s390x-linux64.c".
11761         (_initialize_s390_linux_tdep): Remove initialization of tdescs
11762         s390_linux32 and s390x_linux64.
11763         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
11764         default tdesc.
11765         * s390-tdep.c: Include "features/s390-linux32.c" and
11766         "features/s390x-linux64.c".
11767         (s390_tdesc_valid): Add check for tdesc_has_registers.
11768         (s390_gdbarch_init): Make sure there is always a valid tdesc.
11769         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
11770         tdesc_s390x_linux64.
11771         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
11772         tdesc_s390x_linux64 to...
11773         * s390-tdep.h: ...here.
11774
11775 2018-01-30  Pedro Alves  <palves@redhat.com>
11776
11777         PR gdb/13211
11778         * config.in, configure: Regenerate.
11779         * configure.ac: Check for getpgid.
11780         * go32-nat.c (go32_pass_ctrlc): New.
11781         (go32_target): Install it.
11782         * inf-child.c (inf_child_target): Install
11783         child_terminal_save_inferior, child_pass_ctrlc and
11784         child_interrupt.
11785         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
11786         (inf_ptrace_target): No longer install it.
11787         * infcmd.c (interrupt_target_1): Adjust.
11788         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
11789         (child_interrupt): Declare.
11790         (inferior::terminal_state): New.
11791         * inflow.c (struct terminal_info): Update comments.
11792         (inferior_process_group): Delete.
11793         (terminal_is_ours): Delete.
11794         (gdb_tty_state): New.
11795         (child_terminal_init): Adjust.
11796         (is_gdb_terminal, sharing_input_terminal_1)
11797         (sharing_input_terminal): New functions.
11798         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
11799         Set the process's actual process group in the foreground if
11800         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
11801         mark terminal as the inferior's if not sharing GDB's terminal.
11802         Don't check attach_flag.
11803         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
11804         pass down a target_terminal_state.
11805         (child_terminal_save_inferior): New, factored out from ...
11806         (child_terminal_ours_1): ... this.  Handle
11807         target_terminal_state::is_ours_for_output.
11808         (child_interrupt, child_pass_ctrlc): New.
11809         (inflow_inferior_exit): Clear the inferior's terminal_state.
11810         (copy_terminal_info): Copy the inferior's terminal state.
11811         (_initialize_inflow): Remove reference to terminal_is_ours.
11812         * inflow.h (inferior_process_group): Delete.
11813         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
11814         * procfs.c (procfs_target): Don't install procfs_interrupt.
11815         (procfs_interrupt): Delete.
11816         * remote.c (remote_serial_quit_handler): Adjust.
11817         (remote_interrupt): Remove ptid parameter.  Adjust.
11818         * target-delegates.c: Regenerate.
11819         * target.c: Include "terminal.h".
11820         (target_terminal::terminal_state): Rename to ...
11821         (target_terminal::m_terminal_state): ... this.
11822         (target_terminal::init): Adjust.
11823         (target_terminal::inferior): Adjust to per-inferior
11824         terminal_state.
11825         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
11826         (target_terminal::ours, target_terminal::ours_for_output): Use
11827         target_terminal_is_ours_kind.
11828         (target_interrupt): Remove ptid parameter.  Adjust.
11829         (default_target_pass_ctrlc): Adjust.
11830         * target.h (target_ops::to_terminal_save_inferior): New field.
11831         (target_ops::to_interrupt): Remove ptid_t parameter.
11832         (target_interrupt): Remove ptid_t parameter.  Update comment.
11833         (target_pass_ctrlc): Update comment.
11834         * target/target.h (target_terminal_state): New scoped enum,
11835         factored out of ...
11836         (target_terminal::terminal_state): ... here.
11837         (target_terminal::inferior): Update comments.
11838         (target_terminal::restore_inferior): New.
11839         (target_terminal::is_inferior, target_terminal::is_ours)
11840         (target_terminal::is_ours_for_output): Adjust.
11841         (target_terminal::scoped_restore_terminal_state): Adjust to
11842         rename, and call restore_inferior() instead of inferior().
11843         (target_terminal::scoped_restore_terminal_state::m_state): Change
11844         type.
11845         (target_terminal::terminal_state): Rename to ...
11846         (target_terminal::m_terminal_state): ... this and change type.
11847
11848 2018-01-30  Pedro Alves  <palves@redhat.com>
11849
11850         * linux-nat.c (wait_for_signal): New function.
11851         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
11852         directly.
11853         (async_terminal_is_ours)
11854         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
11855         (linux_nat_add_target): Don't override
11856         to_terminal_inferior/to_terminal_ours.
11857
11858 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
11859
11860         * remote.c (remote_follow_fork): Don't call "detach_inferior".
11861
11862 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
11863
11864         * dwarf2read.c (free_dwo_files): Add forward-declaration.
11865         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
11866         dwarf2_per_objfile_free here.
11867         (dwarf2_per_objfile_free): Remove.
11868         (_initialize_dwarf2_read): Don't register
11869         dwarf2_per_objfile_free as a registry cleanup.
11870
11871 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
11872
11873         Avoid compilation errors in MinGW native builds
11874
11875         The error is triggered by including python-internal.h, and the
11876         error message is:
11877
11878              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
11879                       from build-gnulib/import/math.h:27,
11880                       from d:/usr/Python26/include/pyport.h:235,
11881                       from d:/usr/Python26/include/Python.h:58,
11882                       from python/python-internal.h:94,
11883                       from python/py-arch.c:24:
11884              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
11885         using ::hypot;
11886                 ^~~~~
11887
11888         This happens because Python headers define 'hypot' to expand t
11889         '_hypot' in the Windows builds.
11890         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
11891         'hypoth'.  This avoids a compilation error.
11892
11893 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
11894
11895         * MAINTAINERS (Write After Approval): Fix ordering.
11896
11897 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
11898
11899         * MAINTAINERS (Write After Approval): Add Alan Hayward.
11900
11901 2018-01-26  Alan Modra  <amodra@gmail.com>
11902
11903         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
11904         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
11905         Remove nop.  Make const.  Comment.
11906         (powerpc32_plt_stub_so_2): New.
11907         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
11908         Correct count.  Update uses.
11909         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
11910         Move common code reading PLT entry word.  Correct
11911         powerpc32_plt_stub PLT address calculation.
11912         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
11913         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
11914         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
11915         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
11916         (ppc64_standard_linkage8): Likewise.
11917         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
11918         Correct insns description.
11919         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
11920
11921 2018-01-24  Pedro Alves  <palves@redhat.com>
11922
11923         GCC PR libstdc++/83906
11924         * gdbtypes.c (operator==(const dynamic_prop &,
11925         const dynamic_prop &)): New.
11926         (operator==(const range_bounds &, const range_bounds &)): New.
11927         (check_types_equal): Use them instead of memcmp.
11928         * gdbtypes.h (operator==(const dynamic_prop &,
11929         const dynamic_prop &)): Declare.
11930         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
11931         (operator==(const range_bounds &, const range_bounds &)): Declare.
11932         (operator!=(const range_bounds &, const range_bounds &)): Declare.
11933
11934 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11935
11936         * s390-linux-tdep.c (s390_record_address_mask)
11937         (s390_record_calc_disp_common, s390_record_calc_disp)
11938         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
11939         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
11940         (s390_process_record): Move to s390-tdep.c.
11941         (s390_linux_init_abi_any): Adjust.
11942         * s390-tdep.c (s390_record_address_mask)
11943         (s390_record_calc_disp_common, s390_record_calc_disp)
11944         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
11945         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
11946         (s390_process_record): Moved from s390-linux-tdep.c
11947         (s390_gdbarch_init): Adjust.
11948
11949 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
11950
11951         * s390-linux-nat.c (s390-tdep.h): New include.
11952         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
11953         (HFILES_NO_SRCDIR): Add s390-tdep.h.
11954         (ALLDEPFILES): Add s390-tdep.c.
11955         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
11956         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
11957         * s390-tdep.h: ...this.  New file.
11958         * s390-linux-tdep.c (s390-tdep.h): New include.
11959         (_initialize_s390_tdep): Rename to...
11960         (_initialize_s390_linux_tdep): ...this and adjust.
11961         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
11962         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
11963         s390-tdep.h.
11964         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
11965         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
11966         (s390_is_partial_instruction, s390_software_single_step)
11967         (is_non_branch_ril, s390_displaced_step_copy_insn)
11968         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
11969         (s390_prologue_data, s390_addr, s390_store, s390_load)
11970         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
11971         (s390_register_call_saved, s390_guess_tracepoint_registers)
11972         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
11973         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
11974         (s390_pseudo_register_name, s390_pseudo_register_type)
11975         (s390_pseudo_register_read, s390_pseudo_register_write)
11976         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
11977         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
11978         (s390_addr_bits_remove, s390_address_class_type_flags)
11979         (s390_address_class_type_flags_to_name)
11980         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
11981         (s390_function_arg_float, s390_function_arg_vector)
11982         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
11983         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
11984         (s390_frame_align, s390_register_return_value, s390_return_value)
11985         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
11986         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
11987         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
11988         (s390_trad_frame_prev_register, s390_unwind_cache)
11989         (s390_prologue_frame_unwind_cache)
11990         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
11991         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
11992         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
11993         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
11994         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
11995         (s390_frame_base_address, s390_local_base_address)
11996         (s390_frame_base, s390_gcc_target_options)
11997         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
11998         (s390_validate_reg_range, s390_tdesc_valid)
11999         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
12000         * s390-tdep.c: ...this.  New file.
12001
12002 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12003
12004         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
12005         (s390_process_record, s390_gdbarch_tdep_alloc)
12006         (s390_linux_init_abi_any): Use/set new hook.
12007
12008 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12009
12010         * s390-linux-tdep.c (osabi.h): New include.
12011         (s390_linux_init_abi_31, s390_linux_init_abi_64)
12012         (s390_linux_init_abi_any): New functions.
12013         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
12014
12015 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12016
12017         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
12018         tdesc_has_registers check
12019
12020 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12021
12022         * s390-linux-tdep.c (s390_tdesc_valid): New function.
12023         (s390_validate_reg_range): New macro.
12024         (s390_gdbarch_init): Adjust.
12025
12026 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12027
12028         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
12029         (s390_gdbarch_tdep_alloc): Adjust.
12030         (s390_gdbarch_init): Adjust.
12031
12032 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12033
12034         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
12035         <have_tdb>: Change type to bool.
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 (s390_abi_kind) <ABI_NONE>: New default field.
12042         (gdbarch_tdep) <have_upper, have_vx>: New fields.
12043         (s390_gdbarch_tdep_alloc): New function.
12044         (s390_gdbarch_init): Allocate tdep at start and use its fields
12045         instead of separate variables.
12046
12047 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
12048
12049         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
12050         when looking for cached gdbarch and add comment for remaining.
12051
12052 2018-01-22  Pedro Alves  <palves@redhat.com>
12053             Sergio Durigan Junior  <sergiodj@redhat.com>
12054
12055         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
12056         case.
12057
12058 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
12059
12060         * MAINTAINERS: Update my company e-mail address.
12061
12062 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12063
12064         * regcache.c (cooked_write_test): New function.
12065         (_initialize_regcache): Register the test.
12066
12067 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12068
12069         * ia64-tdep.c (ia64_pseudo_register_read): Call
12070         regcache->cooked_read instead of regcache_cooked_read_unsigned.
12071         * m32c-tdep.c (m32c_cat_read): Likewise.
12072         (m32c_r3r2r1r0_read): Likewise.
12073         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
12074         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
12075
12076 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12077
12078         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
12079         method raw_read instead of regcache_raw_read.
12080         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
12081         * arm-tdep.c (arm_neon_quad_read): Likewise.
12082         * avr-tdep.c (avr_pseudo_register_read): Likewise.
12083         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
12084         * frv-tdep.c (frv_pseudo_register_read): Likewise.
12085         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
12086         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
12087         (i386_pseudo_register_read_into_value): Likewise.
12088         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
12089         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
12090         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
12091         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
12092         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
12093         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
12094         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
12095         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
12096         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
12097
12098 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12099
12100         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
12101         * configure.tgt: Remove target mt.
12102         * mt-tdep.c: Remove.
12103         * regcache.c (cooked_read_test): Remove the check for mt.
12104
12105 2018-01-22  Yao Qi  <yao.qi@linaro.org>
12106
12107         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
12108         instead of gdbarch_pseudo_register_read_value.
12109
12110 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
12111
12112         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
12113         language is Ada.
12114
12115 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
12116
12117         * linespec.c (create_sals_line_offset): Remove code that preserved
12118         the symtab_and_line's line number.
12119
12120 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12121
12122         * varobj.c (varobj_create): Don't set valid_block when creating a
12123         floating varobj.
12124
12125 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12126
12127         * varobj.c (varobj_create): Remove out of date comment.
12128
12129 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12130
12131         PR mi/20395
12132         * ada-exp.y (write_var_from_sym): Pass extra parameter when
12133         updating innermost block.
12134         * parse.c (innermost_block_tracker::update): Take extra type
12135         parameter, and check types match before updating innermost block.
12136         (write_dollar_variable): Update innermost block for registers.
12137         * parser-defs.h (enum innermost_block_tracker_type): New enum.
12138         (innermost_block_tracker::innermost_block_tracker): Initialise
12139         m_types member.
12140         (innermost_block_tracker::reset): Take type parameter.
12141         (innermost_block_tracker::update): Take type parameter, and pass
12142         type through as needed.
12143         (innermost_block_tracker::m_types): New member.
12144         * varobj.c (varobj_create): Pass type when reseting innermost
12145         block.
12146
12147 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12148
12149         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
12150         * ada-lang.c (resolve_subexp): Likewise.
12151         * breakpoint.c (set_breakpoint_condition) Likewise.
12152         (watch_command_1) Likewise.
12153         * c-exp.y (variable): Likewise.
12154         * d-exp.y (PrimaryExpression): Likewise.
12155         * f-exp.y (variable): Likewise.
12156         * go-exp.y (variable): Likewise.
12157         * m2-exp.y (variable): Likewise.
12158         * objfiles.c (objfile::~objfile): Likewise.
12159         * p-exp.y (variable): Likewise.
12160         * parse.c (innermost_block): Change type.
12161         * parser-defs.h (class innermost_block_tracker): New.
12162         (innermost_block): Change to innermost_block_tracker.
12163         * printcmd.c (display_command): Switch to innermost_block API.
12164         (do_one_display): Likewise.
12165         * rust-exp.y (do_one_display): Likewise.
12166         * symfile.c (clear_symtab_users): Likewise.
12167         * varobj.c (varobj_create): Switch to innermost_block API, replace
12168         use of innermost_block with block stored on varobj object.
12169
12170 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
12171
12172         * expression.h (innermost_block): Remove declaration.
12173         * varobj.c: Add 'parser-defs.h' include.
12174
12175 2018-01-19  Tom Tromey  <tom@tromey.com>
12176
12177         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
12178         symbols in the static and global blocks.
12179
12180 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
12181
12182         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
12183         gdb_ptrace.h, and move including gdb_wait.h ...
12184         * nat/linux-ptrace.h: ... to here.
12185
12186 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
12187
12188         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
12189         inf_ptrace_detach_success.
12190         (inf_ptrace_detach_success): Add inferior parameter, use it
12191         instead of inferior_ptid, pass it to detach_inferior.
12192         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
12193         parameter.
12194         * inferior.c (detach_inferior): Add overload that takes an
12195         inferior object.
12196         * inferior.h (detach_inferior): Likewise.
12197         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
12198         use inferior_ptid, adjust call to inf_ptrace_detach_success.
12199         * linux-thread-db.c (thread_db_detach): Use inf parameter.
12200
12201 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
12202
12203         * target.h (struct target_ops) <to_detach>: Add inferior
12204         parameter.
12205         (target_detach): Likewise.
12206         * target.c (dispose_inferior): Pass inferior down.
12207         (target_detach): Pass inferior down.  Assert that it is equal to
12208         the current inferior.
12209         * aix-thread.c (aix_thread_detach): Pass inferior down.
12210         * corefile.c (core_file_command): Pass current_inferior() down.
12211         * corelow.c (core_detach): Add inferior parameter.
12212         * darwin-nat.c (darwin_detach): Likewise.
12213         * gnu-nat.c (gnu_detach): Likewise.
12214         * inf-ptrace.c (inf_ptrace_detach): Likewise.
12215         * infcmd.c (detach_command): Pass current_inferior() down to
12216         target_detach.
12217         * infrun.c (follow_fork_inferior): Pass parent_inf to
12218         target_detach.
12219         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
12220         target_detach.
12221         * linux-nat.c (linux_nat_detach): Add inferior parameter.
12222         * linux-thread-db.c (thread_db_detach): Likewise.
12223         * nto-procfs.c (procfs_detach): Likewise.
12224         * procfs.c (procfs_detach): Likewise.
12225         * record.c (record_detach): Likewise.
12226         * record.h (struct inferior): Forward-declare.
12227         (record_detach): Add inferior parameter.
12228         * remote-sim.c (gdbsim_detach): Likewise.
12229         * remote.c (remote_detach_1): Likewise.
12230         (remote_detach): Likewise.
12231         (extended_remote_detach): Likewise.
12232         * sol-thread.c (sol_thread_detach): Likewise.
12233         * target-debug.h (target_debug_print_inferior_p): New macro.
12234         * target-delegates.c: Re-generate.
12235         * top.c (kill_or_detach): Pass inferior down to target_detach.
12236         * windows-nat.c (windows_detach): Add inferior parameter.
12237
12238 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
12239
12240         * target.h (struct target_ops) <to_detach>: Remove args
12241         parameter.
12242         (target_detach): Likewise.
12243         * target.c (dispose_inferior): Adjust.
12244         (target_detach): Remove args parameter, adjust.
12245         * aix-thread.c (aix_thread_detach): Adjust.
12246         * corefile.c (core_file_command): Adjust.
12247         * corelow.c (core_detach): Adjust.
12248         * darwin-nat.c (darwin_detach): Adjust.
12249         * gnu-nat.c (gnu_detach): Adjust.
12250         * inf-ptrace.c (inf_ptrace_detach): Adjust.
12251         * infcmd.c (detach_command): Adjust
12252         * infrun.c (follow_fork_inferior): Adjust.
12253         (handle_vfork_child_exec_or_exit): Adjust.
12254         * linux-fork.c (linux_fork_detach): Remove args parameter.
12255         * linux-fork.h (linux_fork_detach): Likewise.
12256         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
12257         * linux-thread-db.c (thread_db_detach): Likewise.
12258         * nto-procfs.c (procfs_detach): Likewise.
12259         * procfs.c (procfs_detach): Likewise.
12260         (do_detach): Remove signo parameter.
12261         * record.c (record_detach): Remove args parameter.
12262         * record.h (record_detach): Likewise.
12263         * remote-sim.c (gdbsim_detach): Likewise.
12264         * remote.c (remote_detach_1): Likewise.
12265         (remote_detach): Likewise.
12266         (extended_remote_detach): Likewise.
12267         * sol-thread.c (sol_thread_detach): Likewise.
12268         * target-delegates.c: Re-generate.
12269         * top.c (struct qt_args) <args>: Remove field.
12270         (kill_or_detach): Don't pass args.
12271         (quit_force): Don't set args.
12272         * windows-nat.c (windows_detach): Remove args parameter.
12273
12274 2018-01-19  Yao Qi  <yao.qi@linaro.org>
12275
12276         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
12277         (arm_linux_init_abi): Install it.
12278
12279 2018-01-19  Yao Qi  <yao.qi@linaro.org>
12280
12281         * osabi.c (gdb_osabi_names): Extend the regexp for
12282         arm-linux-gnueabihf.
12283
12284 2018-01-18  Yao Qi  <yao.qi@linaro.org>
12285
12286         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
12287         m_abbrevs.
12288         (abbrev_table::add_abbrev): Update.
12289         (abbrev_table::lookup_abbrev): Update.
12290
12291 2018-01-18  Yao Qi  <yao.qi@linaro.org>
12292
12293         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
12294
12295 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
12296
12297         * compile/compile.c (compile_to_object): Convert "triplet_rx"
12298         to "std::string".
12299
12300 2018-01-17  Tom Tromey  <tom@tromey.com>
12301
12302         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
12303
12304 2018-01-17  Tom Tromey  <tom@tromey.com>
12305
12306         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
12307         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
12308         (create_array_type_with_stride): Update.
12309         * dwarf2read.c (set_die_type): Update.
12310
12311 2018-01-17  Tom Tromey  <tom@tromey.com>
12312
12313         * dwarf2read.c (delayed_method_info): Remove typedef.
12314         (dwarf2_cu::method_info): Now a std::vector.
12315         (add_to_method_list): Update.
12316         (free_delayed_list): Remove.
12317         (compute_delayed_physnames): Update.
12318         (process_full_comp_unit, process_full_type_unit): Clear the method
12319         list.  Remove cleanups.
12320         (psymtab_include_file_name): Add name_holder parameter.  Use
12321         unique_xmalloc_ptr.
12322         (dwarf_decode_lines): Update.
12323
12324 2018-01-17  Tom Tromey  <tom@tromey.com>
12325             Simon Marchi  <simon.marchi@ericsson.com>
12326
12327         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
12328         (dwarf2_per_objfile::free_cached_comp_units)
12329         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
12330         (init_cutu_and_read_dies_no_follow): Update.
12331         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
12332         (dwarf2_cu::~dwarf2_cu): New.
12333         (free_heap_comp_unit, free_stack_comp_unit): Remove.
12334         (age_cached_comp_units, free_one_cached_comp_unit): Update.
12335
12336 2018-01-17  Tom Tromey  <tom@tromey.com>
12337             Simon Marchi  <simon.marchi@ericsson.com>
12338
12339         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
12340         (struct die_reader_specs) <abbrev_table>: New member.
12341         (struct abbrev_table): Add constructor.
12342         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
12343         <abbrev_obstack>: Now an auto_obstack.
12344         (abbrev_table_up): New typedef.
12345         (init_cu_die_reader): Add abbrev_table parameter.
12346         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
12347         Add result_dwo_abbrev_table.
12348         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
12349         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
12350         Update.
12351         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
12352         parameter.
12353         (skip_children): Update.
12354         (abbrev_table::alloc_abbrev): Rename from
12355         abbrev_table_alloc_abbrev.
12356         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
12357         (abbrev_table::lookup_abbrev): Rename from
12358         abbrev_table_lookup_abbrev.
12359         (abbrev_table_read_table): Return abbrev_table_up.
12360         (abbrev_table_free, abbrev_table_free_cleanup)
12361         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
12362         (load_partial_dies): Update.
12363
12364 2018-01-17  Tom Tromey  <tom@tromey.com>
12365
12366         * dwarf2read.c (dwarf2_compute_name): Update comment.
12367         (read_func_scope, read_variable): Update.
12368         (new_symbol): Remove.
12369         (new_symbol_full): Rename to new_symbol.
12370
12371 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
12372
12373         PR gdb/16577
12374         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
12375         a warning instead of throwing an error, set section size to 0 and return
12376         NULL.
12377         * gdb_bfd.h (gdb_bfd_map_section): Update description.
12378
12379 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
12380
12381         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
12382         std::string.
12383         (linux_ptrace_attach_fail_reason_string): Likewise.
12384         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
12385         Likewise.
12386         (linux_ptrace_attach_fail_reason_string): Likewise.
12387         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
12388
12389 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
12390
12391         * linux-nat.c (linux_nat_attach): Remove xstrdup.
12392
12393 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
12394
12395         PR gdb/21559
12396         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
12397         checking for fs_base/gs_base fields in struct user_regs_struct.
12398         * configure: Regenerate.
12399
12400 2018-01-17  Yao Qi  <yao.qi@linaro.org>
12401
12402         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
12403         function.
12404         (aarch64_linux_init_abi): Install it to gdbarch hook
12405         gcc_target_options.
12406
12407 2018-01-15  Pedro Alves  <palves@redhat.com>
12408
12409         * common/signals-state-save-restore.c
12410         (save_original_signals_state): Fix typos.
12411
12412 2017-01-12  Tom Tromey  <tom@tromey.com>
12413             Sergio Durigan Junior  <sergiodj@redhat.com>
12414
12415         * Makefile.in (install-only): Install gdb-add-index.
12416
12417 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
12418
12419         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
12420
12421 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12422
12423         * infrun.c (keep_going_pass_signal): Clear step-over info when
12424         insert_breakpoints fails.
12425
12426 2018-01-11  Pedro Alves  <palves@redhat.com>
12427
12428         PR gdb/22583
12429         * infrun.c (resume): Rename to ...
12430         (resume_1): ... this.
12431         (resume): Reimplement as wrapper around resume_1.
12432
12433 2018-01-11  Pedro Alves  <palves@redhat.com>
12434
12435         PR remote/22597
12436         * remote.c (remote_parse_stop_reply): Default to the last-set
12437         general thread instead of to 'magic_null_ptid'.
12438
12439 2018-01-10  Pedro Alves  <palves@redhat.com>
12440
12441         * language.h (language_get_symbol_name_matcher): Rename ...
12442         (get_symbol_name_matcher): ... this.
12443         * language.c (language_get_symbol_name_matcher): Ditto.
12444         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
12445         callers adjusted.
12446
12447 2018-01-10  Pedro Alves  <palves@redhat.com>
12448
12449         PR gdb/22670
12450         * dwarf2read.c
12451         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
12452         Adjust to use language_get_symbol_name_matcher instead of
12453         language_defn::la_get_symbol_name_matcher.
12454         * language.c (language_get_symbol_name_matcher): If in Ada mode
12455         and the lookup name is a verbatim match, return Ada's matcher.
12456         * language.h (language_get_symbol_name_matcher): Adjust comment.
12457         (ada_lookup_name_info::verbatim_p):: New method.
12458
12459 2018-01-10  Pedro Alves  <palves@redhat.com>
12460
12461         PR gdb/22670
12462         * ada-lang.c (ada_collect_symbol_completion_matches): If the
12463         minsym's language is language_auto or language_cplus, pass down
12464         language_ada instead.
12465         * symtab.c (compare_symbol_name): Don't frob symbol language here.
12466
12467 2018-01-10  Pedro Alves  <palves@redhat.com>
12468
12469         PR gdb/22670
12470         * minsyms.c (linkage_name_str): New function.
12471         (iterate_over_minimal_symbols): Use it.
12472
12473 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12474
12475         * NEWS: Document that 'info proc' now works on FreeBSD.
12476
12477 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12478
12479         * configure.ac: Check for kinfo_getfile in libutil.
12480         * configure: Regenerate.
12481         * config.in: Regenerate.
12482         * fbsd-nat.c: Include "fbsd-tdep.h".
12483         (fbsd_fetch_cmdline): New.
12484         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
12485         rather than calling error.
12486         (fbsd_info_proc): New.
12487         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
12488         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
12489         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
12490
12491 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12492
12493         * fbsd-nat.c (struct free_deleter): Remove.
12494         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
12495
12496 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12497
12498         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
12499         NULL for an empty pathname.
12500
12501 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
12502
12503         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
12504         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
12505         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
12506         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
12507         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
12508         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
12509         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
12510         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
12511         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
12512         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
12513         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
12514         (fbsd_core_fetch_timeval, fbsd_print_sigset)
12515         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
12516         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
12517         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
12518
12519 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
12520
12521         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
12522         (gnu_xfer_auxv): New function.
12523         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
12524         TARGET_OBJECT_AUXV.
12525
12526 2018-01-08  Yao Qi  <yao.qi@linaro.org>
12527             Simon Marchi  <simon.marchi@ericsson.com>
12528
12529         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
12530         common/selftest.c.
12531         (COMMON_OBS): Remove selftest.o.
12532         * configure.ac: Append selftest-arch.c and common/selftest.c to
12533         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
12534         * configure: Re-generated.
12535         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
12536         GDB_SELF_TEST.
12537         (maintenance_info_selftests): Likewise.
12538
12539 2018-01-08  Xavier Roirand  <roirand@adacore.com>
12540
12541         * ada-valprint.c (val_print_packed_array_elements): Use
12542         proper number of elements when printing an array indexed
12543         by an enumeration type.
12544
12545 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
12546
12547         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
12548         (dw2_get_file_names_reader): Adjust.
12549         (lookup_dwo_signatured_type): Adjust.
12550         (lookup_dwp_signatured_type): Adjust.
12551         (lookup_signatured_type): Adjust.
12552         (create_type_unit_group): Adjust.
12553         (get_type_unit_group): Adjust.
12554         (process_psymtab_comp_unit_reader): Adjust.
12555         (build_type_psymtabs_reader): Adjust.
12556         (scan_partial_symbols): Adjust.
12557         (add_partial_symbol): Adjust.
12558         (add_partial_subprogram): Adjust.
12559         (peek_die_abbrev): Adjust.
12560         (fixup_go_packaging): Adjust.
12561         (process_imported_unit_die): Adjust.
12562         (dwarf2_compute_name): Adjust.
12563         (dwarf2_physname): Adjust.
12564         (read_import_statement): Adjust.
12565         (handle_DW_AT_stmt_list): Adjust.
12566         (read_file_scope): Adjust.
12567         (read_func_scope): Adjust.
12568         (read_lexical_block_scope): Adjust.
12569         (read_call_site_scope): Adjust.
12570         (read_variable): Adjust.
12571         (dwarf2_rnglists_process): Adjust.
12572         (dwarf2_ranges_process): Adjust.
12573         (dwarf2_ranges_read): Adjust.
12574         (dwarf2_get_pc_bounds): Adjust.
12575         (dwarf2_record_block_ranges): Adjust.
12576         (dwarf2_add_field): Adjust.
12577         (dwarf2_add_member_fn): Adjust.
12578         (read_structure_type): Adjust.
12579         (process_structure_scope): Adjust.
12580         (read_enumeration_type): Adjust.
12581         (read_array_type): Adjust.
12582         (mark_common_block_symbol_computed): Adjust.
12583         (read_common_block): Adjust.
12584         (read_namespace_type): Adjust.
12585         (read_namespace): Adjust.
12586         (read_module_type): Adjust.
12587         (read_tag_pointer_type): Adjust.
12588         (read_tag_ptr_to_member_type): Adjust.
12589         (read_tag_string_type): Adjust.
12590         (read_subroutine_type): Adjust.
12591         (read_typedef): Adjust.
12592         (read_base_type): Adjust.
12593         (attr_to_dynamic_prop): Adjust.
12594         (read_subrange_type): Adjust.
12595         (read_unspecified_type): Adjust.
12596         (dwarf2_read_abbrevs): Adjust.
12597         (load_partial_dies): Adjust.
12598         (read_partial_die): Adjust.
12599         (find_partial_die): Adjust.
12600         (guess_partial_die_structure_name): Adjust.
12601         (fixup_partial_die): Adjust.
12602         (read_attribute_value): Adjust.
12603         (read_addr_index): Adjust.
12604         (read_addr_index_from_leb128): Adjust.
12605         (read_str_index): Adjust.
12606         (dwarf2_string_attr): Adjust.
12607         (get_debug_line_section): Adjust.
12608         (dwarf_decode_line_header): Adjust.
12609         (lnp_state_machine::check_line_address): Adjust.
12610         (dwarf_decode_lines_1): Adjust.
12611         (dwarf_decode_lines): Adjust.
12612         (dwarf2_start_symtab): Adjust.
12613         (var_decode_location): Adjust.
12614         (new_symbol_full): Adjust.
12615         (dwarf2_const_value_data): Adjust.
12616         (dwarf2_const_value_attr): Adjust.
12617         (dwarf2_const_value): Adjust.
12618         (die_type): Adjust.
12619         (die_containing_type): Adjust.
12620         (build_error_marker_type): Adjust.
12621         (lookup_die_type): Adjust.
12622         (guess_full_die_structure_name): Adjust.
12623         (anonymous_struct_prefix): Adjust.
12624         (determine_prefix): Adjust.
12625         (dwarf2_name): Adjust.
12626         (follow_die_ref_or_sig): Adjust.
12627         (follow_die_offset): Adjust.
12628         (follow_die_ref): Adjust.
12629         (follow_die_sig_1): Adjust.
12630         (follow_die_sig): Adjust.
12631         (get_signatured_type): Adjust.
12632         (get_DW_AT_signature_type): Adjust.
12633         (decode_locdesc): Adjust.
12634         (dwarf_decode_macros): Adjust.
12635         (cu_debug_loc_section): Adjust.
12636         (fill_in_loclist_baton): Adjust.
12637         (dwarf2_symbol_mark_computed): Adjust.
12638         (init_one_comp_unit): Don't assign
12639         dwarf2_cu::dwarf2_per_objfile.
12640         (set_die_type): Adjust.
12641
12642 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
12643
12644         * dwarf2read.c (struct mapped_debug_names): Add constructor.
12645         <dwarf2_per_objfile>: New field.
12646         (dwarf2_per_objfile): Remove global.
12647         (get_dwarf2_per_objfile): New function.
12648         (set_dwarf2_per_objfile): New function.
12649         (dwarf2_build_psymtabs_hard): Change objfile parameter to
12650         dwarf2_per_objfile.
12651         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
12652         (read_abbrev_offset): Likewise.
12653         (read_indirect_string): Likewise.
12654         (read_indirect_line_string): Likewise.
12655         (read_indirect_string_at_offset): Likewise.
12656         (read_indirect_string_from_dwz): Likewise.
12657         (dwarf2_find_containing_comp_unit): Change objfile parameter to
12658         dwarf2_per_objfile.
12659         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
12660         (create_all_comp_units): Change objfile parameter to
12661         dwarf2_per_objfile.
12662         (create_all_type_units): Likewise.
12663         (process_queue): Add dwarf2_per_objfile parameter.
12664         (read_and_check_comp_unit_head): Likewise.
12665         (lookup_dwo_unit_in_dwp): Likewise.
12666         (get_dwp_file): Likewise.
12667         (process_cu_includes): Likewise.
12668         (struct free_dwo_file_cleanup_data): New struct.
12669         (dwarf2_has_info): Use get_dwarf2_per_objfile and
12670         set_dwarf2_per_objfile.
12671         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
12672         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
12673         context, adjust calls.
12674         (dw2_instantiate_symtab): Likewise.
12675         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
12676         (dw2_get_cu): Likewise.
12677         (create_cu_from_index_list): Change objfile parameter to
12678         dwarf2_per_objfile.
12679         (create_cus_from_index_list): Get dwarf2_per_objfile from
12680         context, adjust calls.
12681         (create_cus_from_index): Likewise.
12682         (create_signatured_type_table_from_index): Change objfile
12683         parameter to dwarf2_per_objfile.
12684         (create_signatured_type_table_from_debug_names): Change objfile
12685         parameter to dwarf2_per_objfile.
12686         (create_addrmap_from_index): Likewise.
12687         (create_addrmap_from_aranges): Likewise.
12688         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
12689         (dw2_setup): Remove.
12690         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
12691         context.
12692         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
12693         get_dwarf2_per_objfile.
12694         (dw2_forget_cached_source_info): Likewise.
12695         (dw2_map_symtabs_matching_filename): Likewise.
12696         (struct dw2_symtab_iterator) <index>: Remove.
12697         <dwarf2_per_objfile>: New field.
12698         (dw2_symtab_iter_init): Replace index parameter with
12699         dwarf2_per_objfile.
12700         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
12701         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
12702         (dw2_print_stats): Likewise.
12703         (dw2_dump): Likewise.
12704         (dw2_expand_symtabs_for_function): Likewise.
12705         (dw2_expand_all_symtabs): Likewise.
12706         (dw2_expand_symtabs_with_fullname): Likewise.
12707         (dw2_expand_marked_cus): Replace index and objfile parameters
12708         with dwarf2_per_objfile.
12709         (dw_expand_symtabs_matching_file_matcher): Add
12710         dwarf2_per_objfile parameter and adjust calls.
12711         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
12712         adjust calls.
12713         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
12714         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
12715         adjust calls.
12716         (create_cus_from_debug_names_list): Replace objfile parameter
12717         with dwarf2_per_objfile and adjust calls.
12718         (create_cus_from_debug_names): Likewise.
12719         (dwarf2_read_debug_names): Likewise.
12720         (mapped_debug_names::namei_to_name): Adjust call.
12721         (dw2_debug_names_iterator::next): Likewise.
12722         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
12723         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
12724         (dw2_debug_names_dump): Likewise.
12725         (dw2_debug_names_expand_symtabs_for_function): Likewise.
12726         (dw2_debug_names_expand_symtabs_matching): Likewise.
12727         (dwarf2_initialize_objfile): Likewise.
12728         (dwarf2_build_psymtabs): Likewise.
12729         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
12730         this_cu.
12731         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
12732         (read_and_check_comp_unit_head): Likewise.
12733         (read_abbrev_offset): Likewise.
12734         (create_debug_type_hash_table): Likewise.
12735         (create_debug_types_hash_table): Likewise.
12736         (create_all_type_units): Replace objfile parameter with
12737         dwarf2_per_objfile.
12738         (add_type_unit): Add dwarf2_per_objfile parameter.
12739         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
12740         with dwarf2_per_objfile.
12741         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
12742         (lookup_dwp_signatured_type): Likewise.
12743         (lookup_signatured_type): Likewise.
12744         (read_cutu_die_from_dwo): Likewise.
12745         (init_tu_and_read_dwo_dies): Likewise.
12746         (init_cutu_and_read_dies): Likewise.
12747         (init_cutu_and_read_dies_no_follow): Likewise.
12748         (allocate_type_unit_groups_table): Add objfile parameter.
12749         (create_type_unit_group): Use dwarf2_per_objfile from cu.
12750         (get_type_unit_group): Likewise.
12751         (process_psymtab_comp_unit): Update call.
12752         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
12753         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
12754         (print_tu_stats): Likewise.
12755         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
12756         in void* parameter.
12757         (build_type_psymtabs): Change objfile parameter to
12758         dwarf2_per_objfile.
12759         (process_skeletonless_type_unit): Use dwarf2_per_objfile
12760         passed in void* parameter.
12761         (process_skeletonless_type_units): Change objfile parameter to
12762         dwarf2_per_objfile.
12763         (set_partial_user): Likewise.
12764         (dwarf2_build_psymtabs_hard): Likewise.
12765         (read_comp_units_from_section): Likewise.
12766         (create_all_comp_units): Likewise.
12767         (scan_partial_symbols): Update calls.
12768         (add_partial_symbol): Likewise.
12769         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
12770         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
12771         (process_queue): Add dwarf2_per_objfile parameter.
12772         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
12773         (compute_compunit_symtab_includes): Likewise.
12774         (process_cu_includes): Add dwarf2_per_objfile parameter.
12775         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
12776         (process_full_type_unit): Likewise.
12777         (process_imported_unit_die): Update call.
12778         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
12779         (read_file_scope): Likewise.
12780         (allocate_dwo_file_hash_table): Add objfile parameter.
12781         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
12782         (create_cus_hash_table): Likewise.
12783         (create_dwp_hash_table): Likewise.
12784         (create_dwo_unit_in_dwp_v1): Likewise.
12785         (create_dwp_v2_section): Likewise.
12786         (create_dwo_unit_in_dwp_v2): Likewise.
12787         (lookup_dwo_unit_in_dwp): Likewise.
12788         (try_open_dwop_file): Likewise.
12789         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
12790         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
12791         cleanup to include a reference to dwarf2_per_objfile.
12792         (open_dwp_file): Add dwarf2_per_objfile parameter.
12793         (open_and_init_dwp_file): Likewise.
12794         (get_dwp_file): Likewise.
12795         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
12796         (queue_and_load_all_dwo_tus): Update call.
12797         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
12798         data.
12799         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
12800         (dwarf2_ranges_process): Likewise.
12801         (dwarf2_get_pc_bounds): Likewise.
12802         (mark_common_block_symbol_computed): Likewise.
12803         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
12804         (dwarf2_read_abbrevs): Update call.
12805         (read_partial_die): Use dwarf2_per_objfile from cu.
12806         (find_partial_die): Likewise.
12807         (fixup_partial_die): Likewise.
12808         (read_attribute_value): Likewise.
12809         (read_indirect_string_at_offset_from): Add objfile parameter.
12810         (read_indirect_string_at_offset): Add dwarf2_per_objfile
12811         parameter.
12812         (read_indirect_string_from_dwz): Add objfile parameter.
12813         (read_indirect_string): Add objfile parameter.
12814         (read_addr_index_1): Add dwarf2_per_objfile parameter.
12815         (read_addr_index): Use dwarf2_per_objfile from cu.
12816         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
12817         call dw2_setup.
12818         (read_str_index): Use dwarf2_per_objfile from cu.
12819         (get_debug_line_section): Likewise.
12820         (read_formatted_entries): Add dwarf2_per_objfile parameter.
12821         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
12822         (new_symbol_full): Use dwarf2_per_objfile from cu.
12823         (build_error_marker_type): Likewise.
12824         (lookup_die_type): Likewise.
12825         (determine_prefix): Likewise.
12826         (follow_die_offset): Likewise.
12827         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
12828         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
12829         (dwarf2_fetch_die_type_sect_off): Likewise.
12830         (dwarf2_get_die_type): Likewise.
12831         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
12832         (get_signatured_type): Likewise.
12833         (get_DW_AT_signature_type): Likewise.
12834         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
12835         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
12836         (cu_debug_loc_section): Likewise.
12837         (fill_in_loclist_baton): Likewise.
12838         (dwarf2_symbol_mark_computed): Likewise.
12839         (dwarf2_find_containing_comp_unit): Change objfile parameter to
12840         dwarf2_per_objfile.
12841         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
12842         parameter.
12843         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
12844         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
12845         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
12846         (set_die_type): Use dwarf2_free_objfile from cu.
12847         (get_die_type_at_offset): Likewise.
12848         (dwarf2_per_objfile_free): Don't assign global variable.
12849         (debug_names) <constructor>: Add dwarf2_per_objfile
12850         parameter, update m_debugstrlookup construction.
12851         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
12852         parameter.
12853         <m_dwarf2_per_objfile>: New field.
12854         <lookup>: Use m_dwarf2_per_objfile.
12855         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
12856         (psyms_seen_size): Likewise.
12857         (write_gdbindex): Replace objfile parameter with
12858         dwarf2_per_objfile.
12859         (write_debug_names): Likewise.
12860         (write_psymtabs_to_index): Likewise.
12861         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
12862         calls.
12863
12864 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
12865
12866         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
12867         <dwarf2_per_objfile>: New field.
12868         (struct dwarf2_per_cu_data) <objfile>: Remove.
12869         <dwarf2_per_objfile>: New field.
12870         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
12871         of objfile.
12872         (create_signatured_type_table_from_index): Likewise.
12873         (create_debug_type_hash_table): Likewise.
12874         (fill_in_sig_entry_from_dwo_entry): Likewise.
12875         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
12876         (create_type_unit_group): Assign dwarf2_per_objfile instead of
12877         objfile.
12878         (create_partial_symtab): Access objfile through
12879         dwarf2_per_objfile.
12880         (process_psymtab_comp_unit_reader): Likewise.
12881         (read_comp_units_from_section): Likewise.
12882         (scan_partial_symbols): Likewise.
12883         (add_partial_symbol): Likewise.
12884         (add_partial_subprogram): Likewise.
12885         (peek_die_abbrev): Likewise.
12886         (fixup_go_packaging): Likewise.
12887         (process_full_comp_unit): Likewise.
12888         (process_full_type_unit): Likewise.
12889         (process_imported_unit_die): Likewise.
12890         (dwarf2_compute_name): Likewise.
12891         (dwarf2_physname): Likewise.
12892         (read_import_statement): Likewise.
12893         (create_cus_hash_table): Assign dwarf2_physname instead of
12894         objfile.
12895         (read_func_scope): Access objfile through dwarf2_per_objfile.
12896         (read_lexical_block_scope): Likewise.
12897         (read_call_site_scope): Likewise.
12898         (read_variable): Likewise.
12899         (dwarf2_rnglists_process): Likewise.
12900         (dwarf2_ranges_process): Likewise.
12901         (dwarf2_ranges_read): Likewise.
12902         (dwarf2_record_block_ranges): Likewise.
12903         (dwarf2_add_field): Likewise.
12904         (dwarf2_add_member_fn): Likewise.
12905         (read_structure_type): Likewise.
12906         (process_structure_scope): Likewise.
12907         (read_enumeration_type): Likewise.
12908         (read_array_type): Likewise.
12909         (read_common_block): Likewise.
12910         (read_namespace_type): Likewise.
12911         (read_namespace): Likewise.
12912         (read_module_type): Likewise.
12913         (read_tag_pointer_type): Likewise.
12914         (read_tag_ptr_to_member_type): Likewise.
12915         (read_tag_string_type): Likewise.
12916         (read_subroutine_type): Likewise.
12917         (read_typedef): Likewise.
12918         (read_base_type): Likewise.
12919         (attr_to_dynamic_prop): Likewise.
12920         (read_subrange_type): Likewise.
12921         (read_unspecified_type): Likewise.
12922         (load_partial_dies): Likewise.
12923         (read_partial_die): Likewise.
12924         (find_partial_die): Likewise.
12925         (guess_partial_die_structure_name): Likewise.
12926         (fixup_partial_die): Likewise.
12927         (read_attribute_value): Likewise.
12928         (read_addr_index_from_leb128): Likewise.
12929         (dwarf2_read_addr_index): Likewise.
12930         (dwarf2_string_attr): Likewise.
12931         (lnp_state_machine::check_line_address): Likewise.
12932         (dwarf_decode_lines_1): Likewise.
12933         (dwarf_decode_lines): Likewise.
12934         (dwarf2_start_symtab): Likewise.
12935         (var_decode_location): Likewise.
12936         (new_symbol_full): Likewise.
12937         (dwarf2_const_value_data): Likewise.
12938         (dwarf2_const_value_attr): Likewise.
12939         (dwarf2_const_value): Likewise.
12940         (die_type): Likewise.
12941         (die_containing_type): Likewise.
12942         (lookup_die_type): Likewise.
12943         (guess_full_die_structure_name): Likewise.
12944         (anonymous_struct_prefix): Likewise.
12945         (dwarf2_name): Likewise.
12946         (follow_die_ref_or_sig): Likewise.
12947         (follow_die_offset): Likewise.
12948         (follow_die_ref): Likewise.
12949         (dwarf2_fetch_die_loc_sect_off): Likewise.
12950         (dwarf2_fetch_constant_bytes): Likewise.
12951         (dwarf2_fetch_die_type_sect_off): Likewise.
12952         (dwarf2_get_die_type): Likewise.
12953         (follow_die_sig): Likewise.
12954         (decode_locdesc): Likewise.
12955         (dwarf2_per_cu_objfile): Likewise.
12956         (dwarf2_per_cu_text_offset): Likewise.
12957         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
12958         objfile.
12959         (set_die_type): Access objfile through
12960         dwarf2_per_objfile.
12961
12962 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
12963
12964         * valprint.c (converted_character_d): Remove typedef.
12965         (DEF_VEC_O (converted_character_d)): Remove.
12966         (count_next_character): Use std::vector.
12967         (print_converted_chars_to_obstack): Likewise.
12968         (generic_printstr): Likewise.
12969
12970 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
12971
12972         * xml-support.h (struct gdb_xml_value): Add constructor.
12973         <value>: Change type to unique_xmalloc_ptr.
12974         (gdb_xml_value_s): Remove typedef.
12975         (DEF_VEC_O (gdb_xml_value_s)): Remove.
12976         (gdb_xml_element_start_handler): Change parameter type to
12977         std::vector.
12978         (xml_find_attribute): Likewise.
12979         * xml-support.c (xml_find_attribute): Change parameter type to
12980         std::vector and adjust.
12981         (gdb_xml_values_cleanup): Remove.
12982         (gdb_xml_parser::start_element): Adjust to std::vector.
12983         (xinclude_start_include): Change paraeter type to std::vector
12984         and adjust.
12985         * btrace.c (check_xml_btrace_version): Likewise.
12986         (parse_xml_btrace_block): Likewise.
12987         (parse_xml_btrace_pt_config_cpu): Likewise.
12988         (parse_xml_btrace_pt): Likewise.
12989         (parse_xml_btrace_conf_bts): Likewise.
12990         (parse_xml_btrace_conf_pt): Likewise.
12991         * memory-map.c (memory_map_start_memory): Likewise.
12992         (memory_map_start_property): Likewise.
12993         * osdata.c (osdata_start_osdata): Likewise.
12994         (osdata_start_item): Likewise.
12995         (osdata_start_column): Likewise.
12996         * remote.c (start_thread): Likewise.
12997         * solib-aix.c (library_list_start_library): Likewise.
12998         (library_list_start_list): Likewise.
12999         * solib-svr4.c (library_list_start_library): Likewise.
13000         (svr4_library_list_start_list): Likewise.
13001         * solib-target.c (library_list_start_segment): Likewise.
13002         (library_list_start_section): Likewise.
13003         (library_list_start_library): Likewise.
13004         (library_list_start_list): Likewise.
13005         * tracepoint.c (traceframe_info_start_memory): Likewise.
13006         (traceframe_info_start_tvar): Likewise.
13007         * xml-syscall.c (syscall_start_syscall): Likewise.
13008         * xml-tdesc.c (tdesc_start_target): Likewise.
13009         (tdesc_start_feature): Likewise.
13010         (tdesc_start_reg): Likewise.
13011         (tdesc_start_union): Likewise.
13012         (tdesc_start_struct): Likewise.
13013         (tdesc_start_flags): Likewise.
13014         (tdesc_start_enum): Likewise.
13015         (tdesc_start_field): Likewise.
13016         (tdesc_start_enum_value): Likewise.
13017         (tdesc_start_vector): Likewise.
13018
13019 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13020
13021         * extension.h (struct xmethod_worker) <clone>: Remove.
13022         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
13023         Remove.
13024         (python_xmethod_worker::clone): Remove.
13025         * valops.c (find_overload_match): Use std::move instead of
13026         clone.
13027
13028 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
13029
13030         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
13031         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
13032         <free_xmethod_worker_data>: Remove.
13033         <get_matching_xmethod_workers>: Chance VEC to std::vector.
13034         <get_xmethod_arg_types>: Remove.
13035         <get_xmethod_result_type>: Remove.
13036         <invoke_xmethod>: Remove.
13037         * extension.c (new_xmethod_worker): Remove.
13038         (clone_xmethod_worker): Remove.
13039         (get_matching_xmethod_workers): Return void, pass std::vector by
13040         pointer.
13041         (get_xmethod_arg_types): Rename to...
13042         (xmethod_worker::get_arg_types): ... this, and adjust.
13043         (get_xmethod_result_type): Rename to...
13044         (xmethod_worker::get_result_type): ... this, and adjust.
13045         (invoke_xmethod): Remove.
13046         (free_xmethod_worker): Remove.
13047         (free_xmethod_worker_vec): Remove.
13048         * extension.h (enum ext_lang_rc): Move here from
13049         extension-priv.h.
13050         (struct xmethod_worker): Add constructor and destructor.
13051         <data>: Remove.
13052         <value>: Remove.
13053         <invoke, clone, do_get_result_type, do_get_arg_types>: New
13054         virtual pure methods.
13055         <get_arg_types, get_result_type>: New methods.
13056         (xmethod_worker_ptr): Remove typedef.
13057         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
13058         (xmethod_worker_vec): Remove typedef.
13059         (xmethod_worker_up): New typedef.
13060         (invoke_xmethod): Remove.
13061         (clone_xmethod_worker): Remove.
13062         (free_xmethod_worker): Remove.
13063         (free_xmethod_worker_vec): Remove.
13064         (get_xmethod_arg_types): Remove.
13065         (get_xmethod_result_type): Remove.
13066         * valops.c (find_method_list): Use std::vector, don't use
13067         intermediate vector.
13068         (value_find_oload_method_list): Use std::vector.
13069         (find_overload_match): Use std::vector.
13070         (find_oload_champ): Use std::vector.
13071         * value.c (value_free): Use operator delete.
13072         (value_of_xmethod): Rename to...
13073         (value_from_xmethod): ... this.  Don't assign
13074         xmethod_worker::value, take rvalue-reference.
13075         (result_type_of_xmethod): Adjust.
13076         (call_xmethod): Adjust.
13077         * value.h: Include extension.h.
13078         (struct xmethod_worker): Don't forward-declare.
13079         (value_of_xmethod): Rename to...
13080         (value_from_xmethod): ... this, take rvalue-reference.
13081         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
13082         (struct python_xmethod_worker): ... this, add constructor and
13083         destructor.
13084         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
13085         (gdbpy_free_xmethod_worker_data): Rename to...
13086         (python_xmethod_worker::~python_xmethod_worker): ... this and
13087         adjust.
13088         (gdbpy_clone_xmethod_worker_data): Rename to...
13089         (python_xmethod_worker::clone): ... this and adjust.
13090         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
13091         temporary vector.
13092         (gdbpy_get_xmethod_arg_types): Rename to...
13093         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
13094         (gdbpy_get_xmethod_result_type): Rename to...
13095         (python_xmethod_worker::do_get_result_type): ... this and
13096         adjust.
13097         (gdbpy_invoke_xmethod): Rename to...
13098         (python_xmethod_worker::invoke): ... this and adjust.
13099         (new_python_xmethod_worker): Rename to...
13100         (python_xmethod_worker::python_xmethod_worker): ... this and
13101         adjust.
13102         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
13103         Remove.
13104         (gdbpy_free_xmethod_worker_data): Remove.
13105         (gdbpy_get_matching_xmethod_workers): Use std::vector.
13106         (gdbpy_get_xmethod_arg_types): Remove.
13107         (gdbpy_get_xmethod_result_type): Remove.
13108         (gdbpy_invoke_xmethod): Remove.
13109         * python/python.c (python_extension_ops): Remove obsolete
13110         callbacks.
13111
13112 2018-01-05  Pedro Alves  <palves@redhat.com>
13113
13114         PR gdb/18653
13115         * common/signals-state-save-restore.c
13116         (save_original_signals_state): New parameter 'quiet'.  Warn if we
13117         find a custom handler preinstalled, instead of internal erroring.
13118         But only warn if !quiet.
13119         * common/signals-state-save-restore.h
13120         (save_original_signals_state): New parameter 'quiet'.
13121         * main.c (captured_main_1): Move save_original_signals_state call
13122         after option handling, and pass QUIET.
13123
13124 2018-01-05  Pedro Alves  <palves@redhat.com>
13125
13126         * spu-tdep.c (spu_catch_start): Pass
13127         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
13128
13129 2018-01-05  Pedro Alves  <palves@redhat.com>
13130
13131         PR gdb/22670
13132         * ada-lang.c (literal_symbol_name_matcher): New function.
13133         (ada_get_symbol_name_matcher): Use it for
13134         symbol_name_match_type::SEARCH_NAME.
13135         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
13136         it down instead of assuming symbol_name_match_type::FULL.
13137         * block.h (block_lookup_symbol): New parameter 'match_type'.
13138         * c-valprint.c (print_unpacked_pointer): Use
13139         lookup_symbol_search_name instead of lookup_symbol.
13140         * compile/compile-object-load.c (get_out_value_type): Pass down
13141         symbol_name_match_type::SEARCH_NAME.
13142         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
13143         symbol_name_match_type::FULL.
13144         * cp-support.c (cp_get_symbol_name_matcher): Handle
13145         symbol_name_match_type::SEARCH_NAME.
13146         * infrun.c (insert_exception_resume_breakpoint): Use
13147         lookup_symbol_search_name.
13148         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
13149         * psymtab.c (maintenance_check_psymtabs): Use
13150         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
13151         * stack.c (print_frame_args): Use lookup_symbol_search_name and
13152         SYMBOL_SEARCH_NAME.
13153         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
13154         if symbol_name_match_type::SEARCH_NAME.
13155         (lookup_symbol_in_language): Pass down
13156         symbol_name_match_type::FULL.
13157         (lookup_symbol_search_name): New.
13158         (lookup_language_this): Pass down
13159         symbol_name_match_type::SEARCH_NAME.
13160         (lookup_symbol_aux, lookup_local_symbol): New parameter
13161         'match_type'.  Pass it down.
13162         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
13163         (lookup_symbol_search_name): New declaration.
13164         (lookup_symbol_in_block): New 'match_type' parameter.
13165
13166 2018-01-05  Pedro Alves  <palves@redhat.com>
13167
13168         PR gdb/22670
13169         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
13170         ada_lookup_symbol.
13171         (ada_lookup_symbol): Reimplement in terms of
13172         ada_lookup_symbol_list, bits factored out from
13173         ada_lookup_encoded_symbol.
13174
13175 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13176
13177         * ada-exp.y (write_object_renaming): When subscripting an array
13178         using a symbol as the index, pass the block in call to
13179         ada_lookup_encoded_symbol when looking that symbol up.
13180
13181 2018-01-05  Jerome Guitton  <guitton@adacore.com>
13182
13183         * ada-lang.c (ada_array_length): Use ada_index_type instead of
13184         TYPE_INDEX_TYPE.
13185
13186 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13187
13188         * ada-lang.c (ada_to_fixed_value_create): Add handling of
13189         the case where VALUE_LVAL (val0) is not lval_memory.
13190
13191 2018-01-05  Xavier Roirand  <roirand@adacore.com>
13192
13193         * ada-valprint.c (print_optional_low_bound): Handle
13194         character-indexed array printing like boolean-indexed array
13195         printing.
13196
13197 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13198
13199         * NEWS: Create a new section for the next release branch.
13200         Rename the section of the current branch, now that it has
13201         been cut.
13202
13203 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
13204
13205         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
13206         * version.in: Bump version to 8.1.50.DATE-git.
13207
13208 2018-01-03  Xavier Roirand  <roirand@adacore.com>
13209
13210         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
13211         Add field.
13212         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
13213         Add field.
13214         (default_exception_support_info) <catch_handlers_sym>: Add field.
13215         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
13216         (ada_exception_name_addr_1): Add "catch handlers" handling.
13217         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
13218         Update all callers.
13219         (create_excep_cond_exprs) <ex>: Add parameter.
13220         (re_set_exception): Update create_excep_cond_exprs call.
13221         (print_it_exception, print_one_exception, print_mention_exception)
13222         (print_recreate_exception): Add "catch handler" handling.
13223         (allocate_location_catch_handlers, re_set_catch_handlers)
13224         (check_status_catch_handlers, print_it_catch_handlers)
13225         (print_one_catch_handlers, print_mention_catch_handlers)
13226         (print_recreate_catch_handlers): New function.
13227         (catch_handlers_breakpoint_ops): New variable.
13228         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
13229         Add parameter.  Add "catch handler" handling.
13230         (ada_exception_sym_name, ada_exception_breakpoint_ops):
13231         Add "catch handler" handling.
13232         (ada_exception_catchpoint_cond_string): Add "catch handler"
13233         handling.
13234         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
13235         call.
13236         (catch_ada_handlers_command): New function.
13237         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
13238         operations structure.
13239         (_initialize_ada_language): Add "catch handlers" command entry.
13240         * NEWS: Document "catch handlers" feature.
13241
13242 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
13243
13244         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
13245         account when creating the array type of the slice.
13246         (ada_value_slice): Likewise.
13247
13248 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
13249
13250         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
13251         New enum value.
13252         (create_array_type_with_stride): Add byte_stride_prop parameter.
13253         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
13254         New parameter.  Update all callers in this file.
13255         (array_type_has_dynamic_stride): New function.
13256         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
13257         of arrays with dynamic byte strides.
13258         * dwarf2read.c (read_array_type): Add support for dynamic
13259         DW_AT_byte_stride attributes.
13260
13261 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
13262
13263         * dwarf2read.c (read_unspecified_type): Treat
13264         DW_TAG_enumeration_type DIEs from Ada units as stubs.
13265
13266 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13267
13268         Update copyright year range in all GDB files.
13269
13270 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13271
13272         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
13273         and gdb/testsuite/gdb.base/step-line.c.
13274
13275 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13276
13277         * copyright.py (main): Dump the contents of
13278         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
13279         even if BY_HAND is empty.
13280
13281 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13282
13283         * top.c (print_gdb_version): Update Copyright year in version
13284         message.
13285
13286 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
13287
13288         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
13289
13290 For older changes see ChangeLog-2017.
13291 \f
13292 Local Variables:
13293 mode: change-log
13294 left-margin: 8
13295 fill-column: 74
13296 version-control: never
13297 coding: utf-8
13298 End: