Make exceptions use std::string and be self-managing
[external/binutils.git] / gdb / ChangeLog
1 2019-04-08  Tom Tromey  <tom@tromey.com>
2
3         * xml-support.c (gdb_xml_parser::parse): Update.
4         * x86-linux-nat.c (x86_linux_nat_target::enable_btrace): Update.
5         * value.c (show_convenience): Update.
6         * unittests/cli-utils-selftests.c (test_number_or_range_parser)
7         (test_parse_flags_qcs): Update.
8         * thread.c (thr_try_catch_cmd): Update.
9         * target.c (target_translate_tls_address): Update.
10         * stack.c (print_frame_arg, read_frame_local, read_frame_arg)
11         (info_frame_command_core, frame_apply_command_count): Update.
12         * rust-exp.y (rust_lex_exception_test): Update.
13         * riscv-tdep.c (riscv_print_one_register_info): Update.
14         * remote.c (remote_target::enable_btrace): Update.
15         * record-btrace.c (record_btrace_enable_warn): Update.
16         * python/py-utils.c (gdbpy_convert_exception): Update.
17         * printcmd.c (do_one_display, print_variable_and_value): Update.
18         * mi/mi-main.c (mi_print_exception): Update.
19         * mi/mi-interp.c (mi_cmd_interpreter_exec): Use SCOPE_EXIT.
20         * mi/mi-cmd-stack.c (list_arg_or_local): Update.
21         * linux-nat.c (linux_nat_target::attach): Update.
22         * linux-fork.c (class scoped_switch_fork_info): Update.
23         * infrun.c (displaced_step_prepare): Update.
24         * infcall.c (call_function_by_hand_dummy): Update.
25         * guile/scm-exception.c (gdbscm_scm_from_gdb_exception): Update.
26         * gnu-v3-abi.c (print_one_vtable): Update.
27         * frame.c (get_prev_frame_always): Update.
28         * f-valprint.c (info_common_command_for_block): Update.
29         * exec.c (try_open_exec_file): Update.
30         * exceptions.c (print_exception, exception_print)
31         (exception_fprintf, exception_print_same): Update.
32         * dwarf2-frame.c (dwarf2_build_frame_info): Update.
33         * dwarf-index-cache.c (index_cache::store)
34         (index_cache::lookup_gdb_index): Update.
35         * darwin-nat.c (maybe_cache_shell): Update.
36         * cp-valprint.c (cp_print_value_fields): Update.
37         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol)
38         (gcc_cplus_symbol_address): Update.
39         * compile/compile-c-symbols.c (gcc_convert_symbol)
40         (gcc_symbol_address, generate_c_for_for_one_variable): Update.
41         * common/selftest.c: Update.
42         * common/common-exceptions.h (struct gdb_exception) <message>: Now
43         a std::string.
44         (exception_try_scope_entry, exception_try_scope_exit): Don't
45         declare.
46         (struct exception_try_scope): Remove.
47         (TRY): Don't use exception_try_scope.
48         (struct gdb_exception): Add constructor, operator=.
49         <what>: New method.
50         (struct gdb_exception_RETURN_MASK_ALL)
51         (struct gdb_exception_RETURN_MASK_ERROR)
52         (struct gdb_exception_RETURN_MASK_QUIT): Add constructor.
53         (struct gdb_quit_bad_alloc): Update.
54         * common/common-exceptions.c (exception_none): Change
55         initializer.
56         (struct catcher) <state, exception>: Initialize inline.
57         <prev>: Remove member.
58         (current_catcher): Remove.
59         (catchers): New global.
60         (exceptions_state_mc_init): Simplify.
61         (catcher_pop): Remove.
62         (exceptions_state_mc, exceptions_state_mc_catch): Update.
63         (try_scope_depth, exception_try_scope_entry)
64         (exception_try_scope_exit): Remove.
65         (throw_exception_sjlj): Update.
66         (exception_messages, exception_messages_size): Remove.
67         (throw_it): Simplify.
68         (gdb_exception_sliced_copy): Remove.
69         (throw_exception_cxx): Update.
70         * cli/cli-script.c (script_from_file): Update.
71         * breakpoint.c (insert_bp_location, update_breakpoint_locations):
72         Update.
73         * ada-valprint.c (ada_val_print): Update.
74         * ada-lang.c (ada_to_fixed_type_1, ada_exception_name_addr)
75         (create_excep_cond_exprs): Update.
76
77 2019-04-08  Tom Tromey  <tom@tromey.com>
78
79         * common/common-exceptions.h (GDB_XCPT_SJMP, GDB_XCPT_TRY)
80         (GDB_XCPT_RAW_TRY, GDB_XCPT): Remove.
81         (TRY, CATCH, END_CATCH): Remove some definitions.
82         * common/common-exceptions.c: Don't use GDB_XCPT.
83         (catcher_list_size): Remove.
84         (throw_exception, throw_it): Simplify.
85
86 2019-04-05  Tom Tromey  <tom@tromey.com>
87
88         Revert the header-sorting patch.
89         * ft32-tdep.c: Revert.
90         * frv-tdep.c: Revert.
91         * frv-linux-tdep.c: Revert.
92         * frame.c: Revert.
93         * frame-unwind.c: Revert.
94         * frame-base.c: Revert.
95         * fork-child.c: Revert.
96         * findvar.c: Revert.
97         * findcmd.c: Revert.
98         * filesystem.c: Revert.
99         * filename-seen-cache.h: Revert.
100         * filename-seen-cache.c: Revert.
101         * fbsd-tdep.c: Revert.
102         * fbsd-nat.h: Revert.
103         * fbsd-nat.c: Revert.
104         * f-valprint.c: Revert.
105         * f-typeprint.c: Revert.
106         * f-lang.c: Revert.
107         * extension.h: Revert.
108         * extension.c: Revert.
109         * extension-priv.h: Revert.
110         * expprint.c: Revert.
111         * exec.h: Revert.
112         * exec.c: Revert.
113         * exceptions.c: Revert.
114         * event-top.c: Revert.
115         * event-loop.c: Revert.
116         * eval.c: Revert.
117         * elfread.c: Revert.
118         * dwarf2read.h: Revert.
119         * dwarf2read.c: Revert.
120         * dwarf2loc.c: Revert.
121         * dwarf2expr.h: Revert.
122         * dwarf2expr.c: Revert.
123         * dwarf2-frame.c: Revert.
124         * dwarf2-frame-tailcall.c: Revert.
125         * dwarf-index-write.h: Revert.
126         * dwarf-index-write.c: Revert.
127         * dwarf-index-common.c: Revert.
128         * dwarf-index-cache.h: Revert.
129         * dwarf-index-cache.c: Revert.
130         * dummy-frame.c: Revert.
131         * dtrace-probe.c: Revert.
132         * disasm.h: Revert.
133         * disasm.c: Revert.
134         * disasm-selftests.c: Revert.
135         * dictionary.c: Revert.
136         * dicos-tdep.c: Revert.
137         * demangle.c: Revert.
138         * dcache.h: Revert.
139         * dcache.c: Revert.
140         * darwin-nat.h: Revert.
141         * darwin-nat.c: Revert.
142         * darwin-nat-info.c: Revert.
143         * d-valprint.c: Revert.
144         * d-namespace.c: Revert.
145         * d-lang.c: Revert.
146         * ctf.c: Revert.
147         * csky-tdep.c: Revert.
148         * csky-linux-tdep.c: Revert.
149         * cris-tdep.c: Revert.
150         * cris-linux-tdep.c: Revert.
151         * cp-valprint.c: Revert.
152         * cp-support.c: Revert.
153         * cp-namespace.c: Revert.
154         * cp-abi.c: Revert.
155         * corelow.c: Revert.
156         * corefile.c: Revert.
157         * continuations.c: Revert.
158         * completer.h: Revert.
159         * completer.c: Revert.
160         * complaints.c: Revert.
161         * coffread.c: Revert.
162         * coff-pe-read.c: Revert.
163         * cli-out.h: Revert.
164         * cli-out.c: Revert.
165         * charset.c: Revert.
166         * c-varobj.c: Revert.
167         * c-valprint.c: Revert.
168         * c-typeprint.c: Revert.
169         * c-lang.c: Revert.
170         * buildsym.c: Revert.
171         * buildsym-legacy.c: Revert.
172         * build-id.h: Revert.
173         * build-id.c: Revert.
174         * btrace.c: Revert.
175         * bsd-uthread.c: Revert.
176         * breakpoint.h: Revert.
177         * breakpoint.c: Revert.
178         * break-catch-throw.c: Revert.
179         * break-catch-syscall.c: Revert.
180         * break-catch-sig.c: Revert.
181         * blockframe.c: Revert.
182         * block.c: Revert.
183         * bfin-tdep.c: Revert.
184         * bfin-linux-tdep.c: Revert.
185         * bfd-target.c: Revert.
186         * bcache.c: Revert.
187         * ax-general.c: Revert.
188         * ax-gdb.h: Revert.
189         * ax-gdb.c: Revert.
190         * avr-tdep.c: Revert.
191         * auxv.c: Revert.
192         * auto-load.c: Revert.
193         * arm-wince-tdep.c: Revert.
194         * arm-tdep.c: Revert.
195         * arm-symbian-tdep.c: Revert.
196         * arm-pikeos-tdep.c: Revert.
197         * arm-obsd-tdep.c: Revert.
198         * arm-nbsd-tdep.c: Revert.
199         * arm-nbsd-nat.c: Revert.
200         * arm-linux-tdep.c: Revert.
201         * arm-linux-nat.c: Revert.
202         * arm-fbsd-tdep.c: Revert.
203         * arm-fbsd-nat.c: Revert.
204         * arm-bsd-tdep.c: Revert.
205         * arch-utils.c: Revert.
206         * arc-tdep.c: Revert.
207         * arc-newlib-tdep.c: Revert.
208         * annotate.h: Revert.
209         * annotate.c: Revert.
210         * amd64-windows-tdep.c: Revert.
211         * amd64-windows-nat.c: Revert.
212         * amd64-tdep.c: Revert.
213         * amd64-sol2-tdep.c: Revert.
214         * amd64-obsd-tdep.c: Revert.
215         * amd64-obsd-nat.c: Revert.
216         * amd64-nbsd-tdep.c: Revert.
217         * amd64-nbsd-nat.c: Revert.
218         * amd64-nat.c: Revert.
219         * amd64-linux-tdep.c: Revert.
220         * amd64-linux-nat.c: Revert.
221         * amd64-fbsd-tdep.c: Revert.
222         * amd64-fbsd-nat.c: Revert.
223         * amd64-dicos-tdep.c: Revert.
224         * amd64-darwin-tdep.c: Revert.
225         * amd64-bsd-nat.c: Revert.
226         * alpha-tdep.c: Revert.
227         * alpha-obsd-tdep.c: Revert.
228         * alpha-nbsd-tdep.c: Revert.
229         * alpha-mdebug-tdep.c: Revert.
230         * alpha-linux-tdep.c: Revert.
231         * alpha-linux-nat.c: Revert.
232         * alpha-bsd-tdep.c: Revert.
233         * alpha-bsd-nat.c: Revert.
234         * aix-thread.c: Revert.
235         * agent.c: Revert.
236         * addrmap.c: Revert.
237         * ada-varobj.c: Revert.
238         * ada-valprint.c: Revert.
239         * ada-typeprint.c: Revert.
240         * ada-tasks.c: Revert.
241         * ada-lang.c: Revert.
242         * aarch64-tdep.c: Revert.
243         * aarch64-ravenscar-thread.c: Revert.
244         * aarch64-newlib-tdep.c: Revert.
245         * aarch64-linux-tdep.c: Revert.
246         * aarch64-linux-nat.c: Revert.
247         * aarch64-fbsd-tdep.c: Revert.
248         * aarch64-fbsd-nat.c: Revert.
249         * aarch32-linux-nat.c: Revert.
250
251 2019-04-05  Tom Tromey  <tom@tromey.com>
252
253         * ft32-tdep.c: Sort headers.
254         * frv-tdep.c: Sort headers.
255         * frv-linux-tdep.c: Sort headers.
256         * frame.c: Sort headers.
257         * frame-unwind.c: Sort headers.
258         * frame-base.c: Sort headers.
259         * fork-child.c: Sort headers.
260         * findvar.c: Sort headers.
261         * findcmd.c: Sort headers.
262         * filesystem.c: Sort headers.
263         * filename-seen-cache.h: Sort headers.
264         * filename-seen-cache.c: Sort headers.
265         * fbsd-tdep.c: Sort headers.
266         * fbsd-nat.h: Sort headers.
267         * fbsd-nat.c: Sort headers.
268         * f-valprint.c: Sort headers.
269         * f-typeprint.c: Sort headers.
270         * f-lang.c: Sort headers.
271         * extension.h: Sort headers.
272         * extension.c: Sort headers.
273         * extension-priv.h: Sort headers.
274         * expprint.c: Sort headers.
275         * exec.h: Sort headers.
276         * exec.c: Sort headers.
277         * exceptions.c: Sort headers.
278         * event-top.c: Sort headers.
279         * event-loop.c: Sort headers.
280         * eval.c: Sort headers.
281         * elfread.c: Sort headers.
282         * dwarf2read.h: Sort headers.
283         * dwarf2read.c: Sort headers.
284         * dwarf2loc.c: Sort headers.
285         * dwarf2expr.h: Sort headers.
286         * dwarf2expr.c: Sort headers.
287         * dwarf2-frame.c: Sort headers.
288         * dwarf2-frame-tailcall.c: Sort headers.
289         * dwarf-index-write.h: Sort headers.
290         * dwarf-index-write.c: Sort headers.
291         * dwarf-index-common.c: Sort headers.
292         * dwarf-index-cache.h: Sort headers.
293         * dwarf-index-cache.c: Sort headers.
294         * dummy-frame.c: Sort headers.
295         * dtrace-probe.c: Sort headers.
296         * disasm.h: Sort headers.
297         * disasm.c: Sort headers.
298         * disasm-selftests.c: Sort headers.
299         * dictionary.c: Sort headers.
300         * dicos-tdep.c: Sort headers.
301         * demangle.c: Sort headers.
302         * dcache.h: Sort headers.
303         * dcache.c: Sort headers.
304         * darwin-nat.h: Sort headers.
305         * darwin-nat.c: Sort headers.
306         * darwin-nat-info.c: Sort headers.
307         * d-valprint.c: Sort headers.
308         * d-namespace.c: Sort headers.
309         * d-lang.c: Sort headers.
310         * ctf.c: Sort headers.
311         * csky-tdep.c: Sort headers.
312         * csky-linux-tdep.c: Sort headers.
313         * cris-tdep.c: Sort headers.
314         * cris-linux-tdep.c: Sort headers.
315         * cp-valprint.c: Sort headers.
316         * cp-support.c: Sort headers.
317         * cp-namespace.c: Sort headers.
318         * cp-abi.c: Sort headers.
319         * corelow.c: Sort headers.
320         * corefile.c: Sort headers.
321         * continuations.c: Sort headers.
322         * completer.h: Sort headers.
323         * completer.c: Sort headers.
324         * complaints.c: Sort headers.
325         * coffread.c: Sort headers.
326         * coff-pe-read.c: Sort headers.
327         * cli-out.h: Sort headers.
328         * cli-out.c: Sort headers.
329         * charset.c: Sort headers.
330         * c-varobj.c: Sort headers.
331         * c-valprint.c: Sort headers.
332         * c-typeprint.c: Sort headers.
333         * c-lang.c: Sort headers.
334         * buildsym.c: Sort headers.
335         * buildsym-legacy.c: Sort headers.
336         * build-id.h: Sort headers.
337         * build-id.c: Sort headers.
338         * btrace.c: Sort headers.
339         * bsd-uthread.c: Sort headers.
340         * breakpoint.h: Sort headers.
341         * breakpoint.c: Sort headers.
342         * break-catch-throw.c: Sort headers.
343         * break-catch-syscall.c: Sort headers.
344         * break-catch-sig.c: Sort headers.
345         * blockframe.c: Sort headers.
346         * block.c: Sort headers.
347         * bfin-tdep.c: Sort headers.
348         * bfin-linux-tdep.c: Sort headers.
349         * bfd-target.c: Sort headers.
350         * bcache.c: Sort headers.
351         * ax-general.c: Sort headers.
352         * ax-gdb.h: Sort headers.
353         * ax-gdb.c: Sort headers.
354         * avr-tdep.c: Sort headers.
355         * auxv.c: Sort headers.
356         * auto-load.c: Sort headers.
357         * arm-wince-tdep.c: Sort headers.
358         * arm-tdep.c: Sort headers.
359         * arm-symbian-tdep.c: Sort headers.
360         * arm-pikeos-tdep.c: Sort headers.
361         * arm-obsd-tdep.c: Sort headers.
362         * arm-nbsd-tdep.c: Sort headers.
363         * arm-nbsd-nat.c: Sort headers.
364         * arm-linux-tdep.c: Sort headers.
365         * arm-linux-nat.c: Sort headers.
366         * arm-fbsd-tdep.c: Sort headers.
367         * arm-fbsd-nat.c: Sort headers.
368         * arm-bsd-tdep.c: Sort headers.
369         * arch-utils.c: Sort headers.
370         * arc-tdep.c: Sort headers.
371         * arc-newlib-tdep.c: Sort headers.
372         * annotate.h: Sort headers.
373         * annotate.c: Sort headers.
374         * amd64-windows-tdep.c: Sort headers.
375         * amd64-windows-nat.c: Sort headers.
376         * amd64-tdep.c: Sort headers.
377         * amd64-sol2-tdep.c: Sort headers.
378         * amd64-obsd-tdep.c: Sort headers.
379         * amd64-obsd-nat.c: Sort headers.
380         * amd64-nbsd-tdep.c: Sort headers.
381         * amd64-nbsd-nat.c: Sort headers.
382         * amd64-nat.c: Sort headers.
383         * amd64-linux-tdep.c: Sort headers.
384         * amd64-linux-nat.c: Sort headers.
385         * amd64-fbsd-tdep.c: Sort headers.
386         * amd64-fbsd-nat.c: Sort headers.
387         * amd64-dicos-tdep.c: Sort headers.
388         * amd64-darwin-tdep.c: Sort headers.
389         * amd64-bsd-nat.c: Sort headers.
390         * alpha-tdep.c: Sort headers.
391         * alpha-obsd-tdep.c: Sort headers.
392         * alpha-nbsd-tdep.c: Sort headers.
393         * alpha-mdebug-tdep.c: Sort headers.
394         * alpha-linux-tdep.c: Sort headers.
395         * alpha-linux-nat.c: Sort headers.
396         * alpha-bsd-tdep.c: Sort headers.
397         * alpha-bsd-nat.c: Sort headers.
398         * aix-thread.c: Sort headers.
399         * agent.c: Sort headers.
400         * addrmap.c: Sort headers.
401         * ada-varobj.c: Sort headers.
402         * ada-valprint.c: Sort headers.
403         * ada-typeprint.c: Sort headers.
404         * ada-tasks.c: Sort headers.
405         * ada-lang.c: Sort headers.
406         * aarch64-tdep.c: Sort headers.
407         * aarch64-ravenscar-thread.c: Sort headers.
408         * aarch64-newlib-tdep.c: Sort headers.
409         * aarch64-linux-tdep.c: Sort headers.
410         * aarch64-linux-nat.c: Sort headers.
411         * aarch64-fbsd-tdep.c: Sort headers.
412         * aarch64-fbsd-nat.c: Sort headers.
413         * aarch32-linux-nat.c: Sort headers.
414
415 2019-04-04  Tom Tromey  <tom@tromey.com>
416
417         * varobj.c (varobj_create): Update.
418         * rust-exp.y (struct rust_parser) <update_innermost_block,
419         lookup_symbol>: New methods.
420         (rust_parser::update_innermost_block, rust_parser::lookup_symbol):
421         Rename.
422         (rust_parser::rust_lookup_type)
423         (rust_parser::convert_ast_to_expression, rust_lex_tests): Update.
424         * printcmd.c (display_command, do_one_display): Update.
425         * parser-defs.h (struct parser_state) <parser_state>: Add
426         "tracker" parameter.
427         (block_tracker): New member.
428         (class innermost_block_tracker) <innermost_block_tracker>: Add
429         "types" parameter.
430         <reset>: Remove method.
431         (innermost_block): Don't declare.
432         (null_post_parser): Update.
433         * parse.c (innermost_block): Remove global.
434         (write_dollar_variable): Update.
435         (parse_exp_1, parse_exp_in_context): Add "tracker" parameter.
436         Remove "tracker_types" parameter.
437         (parse_expression): Add "tracker" parameter.
438         (parse_expression_for_completion): Update.
439         (null_post_parser): Add "tracker" parameter.
440         * p-exp.y: Update rules.
441         * m2-exp.y: Update rules.
442         * language.h (struct language_defn) <la_post_parser>: Add
443         "tracker" parameter.
444         * go-exp.y: Update rules.
445         * f-exp.y: Update rules.
446         * expression.h (parse_expression, parse_exp_1): Add "tracker"
447         parameter.
448         * d-exp.y: Update rules.
449         * c-exp.y: Update rules.
450         * breakpoint.c (set_breakpoint_condition): Create an
451         innermost_block_tracker.
452         (watch_command_1): Likewise.
453         * ada-lang.c (resolve): Add "tracker" parameter.
454         (resolve_subexp): Likewise.
455         * ada-exp.y (write_var_from_sym): Update.
456
457 2019-04-04  Tom Tromey  <tom@tromey.com>
458
459         * type-stack.h: New file.
460         * type-stack.c: New file.
461         * parser-defs.h (enum type_pieces, union type_stack_elt): Move to
462         type-stack.h.
463         (insert_into_type_stack, insert_type, push_type, push_type_int)
464         (insert_type_address_space, pop_type, pop_type_int)
465         (pop_typelist, pop_type_stack, append_type_stack)
466         (push_type_stack, get_type_stack, push_typelist)
467         (follow_type_instance_flags, follow_types): Don't declare.
468         * parse.c (type_stack): Remove global.
469         (parse_exp_in_context): Update.
470         (insert_into_type_stack, insert_type, push_type, push_type_int)
471         (insert_type_address_space, pop_type, pop_type_int)
472         (pop_typelist, pop_type_stack, append_type_stack)
473         (push_type_stack, get_type_stack, push_typelist)
474         (follow_type_instance_flags, follow_types): Remove (moved to
475         type-stack.c).
476         * f-exp.y (type_stack): New global.
477         Update rules.
478         (push_kind_type, f_parse): Update.
479         * d-exp.y (type_stack): New global.
480         Update rules.
481         (d_parse): Update.
482         * c-exp.y (struct c_parse_state) <type_stack>: New member.
483         Update rules.
484         * Makefile.in (COMMON_SFILES): Add type-stack.c.
485         (HFILES_NO_SRCDIR): Add type-stack.h.
486
487 2019-04-04  Tom Tromey  <tom@tromey.com>
488
489         * rust-exp.y (rust_parser::lex_identifier, rustyylex)
490         (rust_parser::convert_ast_to_expression, rust_parse)
491         (rust_lex_test_completion, rust_lex_tests): Update.
492         * parser-defs.h (struct expr_completion_state): New.
493         (struct parser_state) <parser_state>: Add completion parameter.
494         <mark_struct_expression, mark_completion_tag>: New methods.
495         <parse_completion, m_completion_state>: New members.
496         (prefixify_expression, null_post_parser): Update.
497         (mark_struct_expression, mark_completion_tag): Don't declare.
498         * parse.c (parse_completion, expout_last_struct)
499         (expout_tag_completion_type, expout_completion_name): Remove
500         globals.
501         (parser_state::mark_struct_expression)
502         (parser_state::mark_completion_tag): Now methods.
503         (prefixify_expression): Add last_struct parameter.
504         (prefixify_subexp): Likewise.
505         (parse_exp_1): Update.
506         (parse_exp_in_context): Add cstate parameter.  Update.
507         (parse_expression_for_completion): Create an
508         expr_completion_state.
509         (null_post_parser): Add "completion" parameter.
510         * p-exp.y: Update rules.
511         (yylex): Update.
512         * language.h (struct language_defn) <la_post_parser>: Add
513         "completing" parameter.
514         * go-exp.y: Update rules.
515         (lex_one_token): Update.
516         * expression.h (parse_completion): Don't declare.
517         * d-exp.y: Update rules.
518         (lex_one_token): Update rules.
519         * c-exp.y: Update rules.
520         (lex_one_token): Update.
521         * ada-lang.c (resolve): Add "parse_completion" parameter.
522         (resolve_subexp): Likewise.
523         (ada_resolve_function): Likewise.
524
525 2019-04-04  Tom Tromey  <tom@tromey.com>
526
527         * parser-defs.h (struct parser_state) <start_arglist,
528         end_arglist>: New methods.
529         <arglist_len, m_funcall_chain>: New members.
530         (arglist_len, start_arglist, end_arglist): Don't declare.
531         * parse.c (arglist_len, funcall_chain): Remove global.
532         (start_arglist, end_arglist): Remove functions.
533         (parse_exp_in_context): Update.
534         * p-exp.y: Update rules.
535         * m2-exp.y: Update rules.
536         * go-exp.y: Update rules.
537         * f-exp.y: Update rules.
538         * d-exp.y: Update rules.
539         * c-exp.y: Update rules.
540
541 2019-04-04  Tom Tromey  <tom@tromey.com>
542
543         * rust-exp.y (struct rust_parser) <lex_hex, lex_escape,
544         lex_operator, push_back>: New methods.
545         Update all rules.
546         (rust_parser::lex_hex, lex_escape): Rename and update.
547         (rust_parser::lex_string, rust_parser::lex_identifier): Update.
548         (rust_parser::lex_operator): Rename and update.
549         (rust_parser::lex_number, rustyylex, rustyyerror)
550         (rust_lex_test_init, rust_lex_test_sequence)
551         (rust_lex_test_push_back, rust_lex_tests): Update.
552         * parser-defs.h (struct parser_state) <parser_state>: Add "input"
553         parameter.
554         <lexptr, prev_lexptr>: New members.
555         (lexptr, prev_lexptr): Don't declare.
556         * parse.c (lexptr, prev_lexptr): Remove globals.
557         (parse_exp_in_context): Update.
558         * p-exp.y (yylex, yyerror): Update.
559         * m2-exp.y (parse_number, yylex, yyerror): Update.
560         * go-exp.y (lex_one_token, yyerror): Update.
561         * f-exp.y (match_string_literal, yylex, yyerror): Update.
562         * d-exp.y (lex_one_token, yyerror): Update.
563         * c-exp.y (scan_macro_expansion, finished_macro_expansion)
564         (lex_one_token, yyerror): Update.
565         * ada-lex.l (YY_INPUT): Update.
566         (rewind_to_char): Update.
567         * ada-exp.y (yyerror): Update.
568
569 2019-04-04  Tom Tromey  <tom@tromey.com>
570
571         * rust-exp.y (rustyylex, rust_lex_tests): Update.
572         * parser-defs.h (struct parser_state) <parser_state>: Add new
573         parameter.
574         <comma_terminates>: New member.
575         (comma_terminates): Don't declare global.
576         * parse.c (comma_terminates): Remove global.
577         (parse_exp_in_context): Update.
578         * p-exp.y (yylex): Update.
579         * m2-exp.y (yylex): Update.
580         * go-exp.y (lex_one_token): Update.
581         * f-exp.y (yylex): Update.
582         * d-exp.y (lex_one_token): Update.
583         * c-exp.y (lex_one_token): Update.
584         * ada-lex.l: Update.
585
586 2019-04-04  Tom Tromey  <tom@tromey.com>
587
588         * rust-exp.y (struct rust_parser) <paren_depth>: New member.
589         (rustyylex, rust_lex_test_init, rust_lex_test_one)
590         (rust_lex_test_sequence, rust_lex_test_push_back): Update.
591         * parser-defs.h (paren_depth): Don't declare.
592         * parse.c (paren_depth): Remove global.
593         (parse_exp_in_context): Update.
594         * p-exp.y (paren_depth): New global.
595         (pascal_parse): Initialize it.
596         * m2-exp.y (paren_depth): New global.
597         (m2_parse): Initialize it.
598         * go-exp.y (paren_depth): New global.
599         (go_parse): Initialize it.
600         * f-exp.y (paren_depth): New global.
601         (f_parse): Initialize it.
602         * d-exp.y (paren_depth): New global.
603         (d_parse): Initialize it.
604         * c-exp.y (paren_depth): New global.
605         (c_parse): Initialize it.
606         * ada-lex.l (paren_depth): New global.
607         (lexer_init): Initialize it.
608
609 2019-04-04  Tom Tromey  <tom@tromey.com>
610
611         * rust-exp.y (rust_parser::crate_name, rust_parser::super_name)
612         (rust_parser::convert_ast_to_type)
613         (rust_parser::convert_ast_to_expression, rust_lex_tests): Update.
614         * parser-defs.h (struct parser_state) <parser_state>: Add
615         parameters.  Initialize new members.
616         <expression_context_block, expression_context_pc>: New members.
617         * parse.c (expression_context_block, expression_context_pc):
618         Remove globals.
619         (parse_exp_in_context): Update.
620         * p-exp.y: Update all rules.
621         (yylex): Update.
622         * m2-exp.y: Update all rules.
623         (yylex): Update.
624         * go-exp.y (yylex): Update.
625         * f-exp.y (yylex): Update.
626         * d-exp.y: Update all rules.
627         (yylex): Update.
628         * c-exp.y: Update all rules.
629         (lex_one_token, classify_name, yylex, c_parse): Update.
630         * ada-exp.y (write_var_or_type, write_name_assoc): Update.
631
632 2019-04-04  Tom Tromey  <tom@tromey.com>
633
634         * gdbarch.h, gdbarch.c: Rebuild.
635         * gdbarch.sh (dtrace_parse_probe_argument): Change type.
636         * stap-probe.h: 
637         (struct stap_parse_info): Replace "parser_state" with
638         "expr_builder".
639         * parser-defs.h (struct expr_builder): Rename from "parser_state".
640         (parser_state): New class.
641         * parse.c (expr_builder): Rename.
642         (expr_builder::release): Rename.
643         (write_exp_elt, write_exp_elt_opcode, write_exp_elt_sym)
644         (write_exp_elt_msym, write_exp_elt_block, write_exp_elt_objfile)
645         (write_exp_elt_longcst, write_exp_elt_floatcst)
646         (write_exp_elt_type, write_exp_elt_intern, write_exp_string)
647         (write_exp_string_vector, write_exp_bitstring)
648         (write_exp_msymbol, mark_struct_expression)
649         (write_dollar_variable)
650         (insert_type_address_space, increase_expout_size): Replace
651         "parser_state" with "expr_builder".
652         * dtrace-probe.c: Replace "parser_state" with "expr_builder".
653         * amd64-linux-tdep.c (amd64_dtrace_parse_probe_argument): Replace
654         "parser_state" with "expr_builder".
655
656 2019-04-04  Tom Tromey  <tom@tromey.com>
657
658         * rust-exp.y: Replace "parse_language" with method call.
659         * p-exp.y: 
660         (yylex): Replace "parse_language" with method call.
661         * m2-exp.y: 
662         (yylex): Replace "parse_language" with method call.
663         * go-exp.y (classify_name): Replace "parse_language" with method
664         call.
665         * f-exp.y (yylex): Replace "parse_language" with method call.
666         * d-exp.y (lex_one_token): Replace "parse_language" with method
667         call.
668         * c-exp.y: 
669         (lex_one_token, classify_name, yylex): Replace "parse_language"
670         with method call.
671         * ada-exp.y (find_primitive_type, type_char)
672         (type_system_address): Replace "parse_language" with method call.
673
674 2019-04-04  Tom Tromey  <tom@tromey.com>
675
676         * rust-exp.y: Replace "parse_gdbarch" with method call.
677         * parse.c (write_dollar_variable, insert_type_address_space):
678         Replace "parse_gdbarch" with method call.
679         * p-exp.y (parse_type, yylex): Replace "parse_gdbarch" with method
680         call.
681         * objc-lang.c (end_msglist): Replace "parse_gdbarch" with method
682         call.
683         * m2-exp.y (parse_type, parse_m2_type, yylex): Replace
684         "parse_gdbarch" with method call.
685         * go-exp.y (parse_type, classify_name): Replace "parse_gdbarch"
686         with method call.
687         * f-exp.y (parse_type, parse_f_type, yylex): Replace
688         "parse_gdbarch" with method call.
689         * d-exp.y (parse_type, parse_d_type, lex_one_token): Replace
690         "parse_gdbarch" with method call.
691         * c-exp.y (parse_type, parse_number, classify_name): Replace
692         "parse_gdbarch" with method call.
693         * ada-lex.l: Replace "parse_gdbarch" with method call.
694         * ada-exp.y (parse_type, find_primitive_type, type_char)
695         (type_system_address): Replace "parse_gdbarch" with method call.
696
697 2019-04-04  Tom Tromey  <tom@tromey.com>
698
699         * dtrace-probe.c (dtrace_probe::build_arg_exprs): Update.
700         * stap-probe.c (stap_parse_argument): Update.
701         * stap-probe.h (struct stap_parse_info) <stap_parse_info>: Remove
702         initial_size parameter.
703         * rust-exp.y (rust_lex_tests): Update.
704         * parse.c (parser_state): Update.
705         (parse_exp_in_context): Update.
706         * parser-defs.h (struct parser_state) <parser_state>: Remove
707         "initial_size" parameter.
708
709 2019-04-04  Tom Tromey  <tom@tromey.com>
710
711         * parser-defs.h (increase_expout_size): Don't declare.
712         * parse.c (increase_expout_size): Now static.
713
714 2019-04-04  Thomas Schwinge  <thomas@codesourcery.com>
715
716         * gnu-nat.c (gnu_nat_target::wait): Fix
717         target_waitstatus_to_string call.
718
719 2019-04-01  Andrew Burgess  <andrew.burgess@embecosm.com>
720
721         * eval.c (evaluate_subexp_standard): Handle internal functions
722         during Fortran function call handling.
723
724 2019-04-01  Andrew Burgess  <andrew.burgess@embecosm.com>
725
726         * NEWS: Mention new internal functions.
727         * dwarf2read.c (dwarf2_init_complex_target_type): New function.
728         (read_base_type): Use dwarf2_init_complex_target_type.
729         * value.c (creal_internal_fn): New function.
730         (cimag_internal_fn): New function.
731         (_initialize_values): Register new internal functions.
732
733 2019-04-01  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
734
735         * infrun.c (stop_all_threads): If debug_infrun, always
736         trace the wait status after wait_one, using
737         target_waitstatus_to_string and target_pid_to_str.
738         (handle_inferior_event): Replace various trace of
739         wait status kind by a single trace.
740         * gdb/gnu-nat.c (gnu_nat_target::wait): Replace local
741         wait status kind image by target_waitstatus_to_string.
742         * target/waitstatus.c (target_waitstatus_to_string): Fix
743         obsolete comment.
744
745 2019-04-01  Tom Tromey  <tromey@adacore.com>
746
747         PR symtab/23331:
748         * dwarf2read.c (partial_die_info::read): Handle DW_AT_ranges.
749
750 2019-04-01  Sergio Durigan Junior  <sergiodj@redhat.com>
751             Pedro Alves  <palves@redhat.com>
752
753         * top.c (quit_force): Call 'finalize_values'.
754         * value.c (finalize_values): New function.
755         * value.h (finalize_values): Declare.
756
757 2019-03-30  Eli Zaretskii  <eliz@gnu.org>
758
759         * NEWS: Announce $_gdb_major and $_gdb_minor.
760
761         * top.c (init_gdb_version_vars): New function.
762         (gdb_init): Call init_gdb_version_vars.
763
764 2019-03-29  Tom Tromey  <tromey@adacore.com>
765
766         * printcmd.c (_initialize_printcmd): Add usage lines.  Update some
767         help text.  Remove dead code.
768
769 2019-03-29  Keith Seitz  <keiths@redhat.com>
770
771         From Siddhesh Poyarekar:
772         * f-lang.h (f77_get_upperbound): Return LONGEST.
773         (f77_get_lowerbound): Likewise.
774         * f-typeprint.c (f_type_print_varspec_suffix): Expand
775         UPPER_BOUND and LOWER_BOUND to LONGEST.  Use plongest to format
776         print them.
777         (f_type_print_base): Expand UPPER_BOUND to LONGEST.  Use
778         plongest to format print it.
779         * f-valprint.c (f77_get_lowerbound): Return LONGEST.
780         (f77_get_upperbound): Likewise.
781         (f77_get_dynamic_length_of_aggregate): Expand UPPER_BOUND,
782         LOWER_BOUND to LONGEST.
783         (f77_create_arrayprint_offset_tbl): Likewise.
784
785 2019-03-29  Keith Seitz  <keiths@redhat.com>
786
787         * ada-lang.c (ada_template_to_fixed_record_type_1): Use
788         %s/pulongest for TYPE_LENGTH instead of %d in format
789         strings.
790         * ada-typerint.c (ada_print_type): Likewise.
791         * amd64-windows-tdep.c (amd64_windows_store_arg_in_reg): Likewise.
792         * compile/compile-c-support.c (generate_register_struct): Likewise.
793         * gdbtypes.c (recursive_dump_type): Likewise.
794         * gdbtypes.h (struct type) <length>: Change type to ULONGEST.
795         * m2-typeprint.c (m2_array):  Use %s/pulongest for TYPE_LENGTH
796         instead of %d in format strings.
797         * riscv-tdep.c (riscv_type_alignment): Cast second argument
798         to std::min to ULONGEST.
799         * symmisc.c (print_symbol): Use %s/pulongest for TYPE_LENGTH
800         instead of %d in format strings.
801         * tracepoint.c (info_scope_command): Likewise.
802         * typeprint.c (print_offset_data::update)
803         (print_offset_data::finish): Likewise.
804         * xtensa-tdep.c (xtensa_store_return_value)
805         (xtensa_push_dummy_call): Likewise.
806
807 2019-03-28  Jon Turney  <jon.turney@dronecode.org.uk>
808
809         * windows-nat.c (display_selector): Fixed format specifications
810         for 64-bit Cygwin.
811
812 2019-03-28  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
813
814         * infrun.c (follow_exec): Call target_terminal::ours_for_output.
815
816 2019-03-28  Sandra Loosemore  <sandra@codesourcery.com>
817
818         * nios2-tdep.h (struct gdbarch_tdep): Add is_kernel_helper.
819         * nios2-tdep.c (nios2_get_next_pc): Skip over kernel helpers.
820         * nios2-linux-tdep.c (nios2_linux_is_kernel_helper): New.
821         (nios2_linux_init_abi): Install it.
822
823 2019-03-28  Alan Hayward  <alan.hayward@arm.com>
824
825         * aarch64-tdep.c (aarch64_vnv_type): Use vector types.
826
827 2019-03-28  Alan Hayward  <alan.hayward@arm.com>
828
829         * features/aarch64-sve.c (create_feature_aarch64_sve): Add q view.
830
831 2019-03-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
832             Tom Tromey  <tromey@adacore.com>
833
834         * minsyms.c (minimal_symbol_upper_bound): Fix buffer overflow.
835
836 2019-03-26  Joel Brobecker  <brobecker@adacore.com>
837
838         * gdb-gdb.py.in (StructMainTypePrettyPrinter.bound_img): New method.
839         (StructMainTypePrettyPrinter.bounds_img): Use new "bound_img"
840         method to compute the bounds of range types. Also print "[evaluated]"
841         if the bounds' values come from a dynamic evaluation.
842
843 2019-03-26  Andrew Burgess  <andrew.burgess@embecosm.com>
844
845         * cp-valprint.c (cp_print_value_fields): Don't print trailing
846         whitespace when pretty printing is on.
847
848 2019-03-26  Alan Hayward  <alan.hayward@arm.com>
849
850         * ppc-linux-nat.c: Add include.
851
852 2019-03-26  Alan Hayward  <alan.hayward@arm.com>
853
854         * NEWS: Mention AArch64 Pointer Authentication.
855
856 2019-03-26  Alan Hayward  <alan.hayward@arm.com>
857
858         * arm-linux-nat.c: Add include.
859
860 2019-03-25  Simon Marchi  <simon.marchi@polymtl.ca>
861
862         * source-cache.c (source_cache::get_source_lines): Re-read
863         fullname after calling open_source_file.
864
865 2019-03-25  John Baldwin  <jhb@FreeBSD.org>
866
867         * NEWS: Mention TLS support for FreeBSD.
868
869 2019-03-25  Tom Tromey  <tromey@adacore.com>
870
871         * minsyms.c (BUNCH_SIZE): Update comment.
872         (~minimal_symbol_reader): Remove old comment.
873         (compact_minimal_symbols): Update comment.
874         (minimal_symbol_reader::install): Remove old comment.  Update
875         other comments.
876
877 2019-03-25  Alan Hayward  <alan.hayward@arm.com>
878
879         * s390-linux-nat.c: Add include.
880
881 2019-03-25  Alan Hayward  <alan.hayward@arm.com>
882
883         * aarch64-linux-nat.c (aarch64_linux_nat_target::read_description):
884         Call linux_get_hwcap.
885         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
886         Likewise.
887         (aarch64_linux_get_hwcap): Remove function.
888         * aarch64-linux-tdep.h (aarch64_linux_get_hwcap): Remove
889         declaration.
890         * arm-linux-nat.c (arm_linux_nat_target::read_description):Call
891         linux_get_hwcap.
892         * arm-linux-tdep.c (arm_linux_core_read_description): Likewise.
893         * linux-tdep.c (linux_get_hwcap): Add function.
894         (linux_get_hwcap2): Likewise.
895         * linux-tdep.h (linux_get_hwcap): Add declaration.
896         (linux_get_hwcap2): Likewise.
897         * ppc-linux-nat.c (ppc_linux_get_hwcap): Remove function.
898         (ppc_linux_get_hwcap2): Likewise.
899         (ppc_linux_nat_target::region_ok_for_hw_watchpoint): Call
900         linux_get_hwcap.
901         (ppc_linux_nat_target::insert_watchpoint): Likewise.
902         (ppc_linux_nat_target::watchpoint_addr_within_range): Likewise.
903         (ppc_linux_nat_target::read_description): Likewise.
904         * ppc-linux-tdep.c (ppc_linux_core_read_description): Likewise.
905         * s390-linux-nat.c: Likewise.
906         * s390-linux-tdep.c (s390_core_read_description): Likewise.
907
908 2019-03-24  Tom Tromey  <tom@tromey.com>
909
910         * ada-lang.c (standard_lookup): Simplify initialization.
911         (ada_lookup_symbol_nonlocal): Simplify return.
912         * solib-spu.c (spu_lookup_lib_symbol): Simplify return.
913         * solib-darwin.c (darwin_lookup_lib_symbol): Simplify return.
914         * solib-svr4.c (elf_lookup_lib_symbol): Simplify return.
915         * rust-lang.c (rust_lookup_symbol_nonlocal): Simplify
916         initialization.
917         * solib.c (solib_global_lookup): Simplify.
918         * symtab.c (null_block_symbol): Remove.
919         (symbol_cache_lookup): Simplify returns.
920         (lookup_language_this): Simplify returns.
921         (lookup_symbol_aux): Simplify return.
922         (lookup_local_symbol): Simplify returns.
923         (lookup_global_symbol_from_objfile): Simplify return.
924         (lookup_symbol_in_objfile_symtabs)
925         (lookup_symbol_in_objfile_from_linkage_name): Simplify return.
926         (lookup_symbol_via_quick_fns, lookup_symbol_in_static_block)
927         (lookup_static_symbol, lookup_global_symbol): Simplify return.
928         * cp-namespace.c (cp_lookup_bare_symbol)
929         (cp_search_static_and_baseclasses, cp_lookup_symbol_via_imports)
930         (cp_lookup_symbol_via_all_imports, cp_lookup_nested_symbol_1)
931         (cp_lookup_nested_symbol): Don't use null_block_symbol.
932         (cp_lookup_symbol_via_imports): Simplify initialization.
933         (find_symbol_in_baseclass): Likewise.
934         * symtab.h (null_block_symbol): Remove.
935         * d-namespace.c (d_lookup_symbol): Don't use null_block_symbol.
936         (d_lookup_nested_symbol, d_lookup_symbol_imports)
937         (d_lookup_symbol_module): Likewise.
938         (find_symbol_in_baseclass): Simplify initialization.
939
940 2019-03-24  Tom Tromey  <tom@tromey.com>
941
942         * expression.h: Don't include symtab.h.
943         (struct block): Forward declare.
944
945 2019-03-24  Tom Tromey  <tom@tromey.com>
946
947         * c-exp.y (typebase): Remove casts.
948         * gdbtypes.c (lookup_unsigned_typename, )
949         (lookup_signed_typename): Remove cast.
950         * eval.c (parse_to_comma_and_eval): Remove cast.
951         * parse.c (write_dollar_variable): Remove cast.
952         * block.h (struct block) <superblock>: Now const.
953         * symfile-debug.c (debug_qf_map_matching_symbols): Update.
954         * psymtab.c (psym_map_matching_symbols): Make "block" const.
955         (map_block): Make "block" const.
956         * symfile.h (struct quick_symbol_functions)
957         <map_matching_symbols>: Constify block argument to "callback".
958         * symtab.c (basic_lookup_transparent_type_quick): Make "block"
959         const.
960         (find_pc_sect_compunit_symtab): Make "b" const.
961         (find_symbol_at_address): Likewise.
962         (search_symbols): Likewise.
963         * dwarf2read.c (dw2_lookup_symbol): Make "block" const.
964         (dw2_debug_names_lookup_symbol): Likewise.
965         (dw2_map_matching_symbols): Update.
966         * p-valprint.c (pascal_val_print): Remove "block".
967         * ada-lang.c (ada_add_global_exceptions): Make "b" const.
968         (aux_add_nonlocal_symbols): Make "block" const.
969         (resolve_subexp): Remove cast.
970         * linespec.c (iterate_over_all_matching_symtabs): Make "block"
971         const.
972         (iterate_over_file_blocks): Likewise.
973         * f-exp.y (%union) <bval>: Remove.
974         * coffread.c (patch_opaque_types): Make "b" const.
975         * spu-tdep.c (spu_catch_start): Make "block" const.
976         * c-valprint.c (print_unpacked_pointer): Remove "block".
977         * symmisc.c (dump_symtab_1): Make "b" const.
978         (block_depth): Make "block" const.
979         * d-exp.y (%union) <bval>: Remove.
980         * cp-support.h (cp_lookup_rtti_type): Update.
981         * cp-support.c (cp_lookup_rtti_type): Make "block" const.
982         * psymtab.c (psym_lookup_symbol): Make "block" const.
983         (maintenance_check_psymtabs): Make "b" const.
984         * python/py-framefilter.c (extract_sym): Make "sym_block" const.
985         (enumerate_locals, enumerate_args): Update.
986         * python/py-symtab.c (stpy_global_block): Make "block" const.
987         (stpy_static_block): Likewise.
988         * inline-frame.c (block_starting_point_at): Make "new_block"
989         const.
990         * block.c (find_block_in_blockvector): Make return type const.
991         (blockvector_for_pc_sect): Make "b" const.
992         (find_block_in_blockvector): Make "b" const.
993
994 2019-03-23  Tom Tromey  <tom@tromey.com>
995
996         * varobj.c (varobj_create): Update.
997         * symfile.c (clear_symtab_users): Don't reset innermost_block.
998         * printcmd.c (display_command, do_one_display): Don't reset
999         innermost_block.
1000         * parser-defs.h (enum innermost_block_tracker_type): Move to
1001         expression.h.
1002         (innermost_block): Update comment.
1003         * parse.c (parse_exp_1): Add tracker_types parameter.
1004         (parse_exp_in_context): Rename from parse_exp_in_context_1.  Add
1005         tracker_types parameter.  Reset innermost_block.
1006         (parse_exp_in_context): Remove.
1007         (parse_expression_for_completion): Update.
1008         * objfiles.c (~objfile): Don't reset expression_context_block or
1009         innermost_block.
1010         * expression.h (enum innermost_block_tracker_type): Move from
1011         parser-defs.h.
1012         (parse_exp_1): Add tracker_types parameter.
1013         * breakpoint.c (set_breakpoint_condition, watch_command_1): Don't
1014         reset innermost_block.
1015
1016 2019-03-23  Tom Tromey  <tom@tromey.com>
1017
1018         * objfiles.h: Include bcache.h.
1019
1020 2019-03-23  Tom Tromey  <tom@tromey.com>
1021
1022         * linespec.c (get_current_search_block): Use
1023         scoped_restore_current_language.
1024         * symmisc.c (dump_symtab): Use scoped_restore_current_language.
1025
1026 2019-03-22  Alan Hayward  <alan.hayward@arm.com>
1027             Jiong Wang  <jiong.wang@arm.com>
1028
1029         * aarch64-linux-tdep.c
1030         (aarch64_linux_iterate_over_regset_sections): Check for pauth
1031         section.
1032         * aarch64-linux-tdep.h (AARCH64_LINUX_SIZEOF_PAUTH): New define.
1033
1034 2019-03-22  Alan Hayward  <alan.hayward@arm.com>
1035             Jiong Wang  <jiong.wang@arm.com>
1036
1037         * aarch64-tdep.c (aarch64_analyze_prologue): Check for pauth
1038         instructions.
1039         (aarch64_analyze_prologue_test): Add PACIASP test.
1040         (aarch64_prologue_prev_register): Unmask PC value.
1041
1042 2019-03-22  Alan Hayward  <alan.hayward@arm.com>
1043             Jiong Wang  <jiong.wang@arm.com>
1044
1045         * aarch64-tdep.c (aarch64_frame_unmask_address): New function.
1046         (aarch64_dwarf2_prev_register): Unmask PC value.
1047         (aarch64_dwarf2_frame_init_reg): Init pauth registers.
1048         (aarch64_execute_dwarf_cfa_vendor_op): Check for
1049         DW_CFA_AARCH64_negate_ra_state.
1050         (aarch64_gdbarch_init): Add aarch64_execute_dwarf_cfa_vendor_op.
1051
1052 2019-03-22  Alan Hayward  <alan.hayward@arm.com>
1053             Jiong Wang  <jiong.wang@arm.com>
1054
1055         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Check for pauth
1056         registers.
1057         (aarch64_pseudo_register_name): Likewise.
1058         (aarch64_pseudo_register_type): Likewise.
1059         (aarch64_pseudo_register_reggroup_p): Likewise.
1060         (aarch64_gdbarch_init): Add pauth registers.
1061         * aarch64-tdep.h (AARCH64_DWARF_PAUTH_RA_STATE): New define.
1062         (AARCH64_DWARF_PAUTH_DMASK): Likewise.
1063         (AARCH64_DWARF_PAUTH_CMASK): Likewise.
1064         (struct gdbarch_tdep): Add regnum for ra_state.
1065
1066 2019-03-22  Alan Hayward  <alan.hayward@arm.com>
1067             Jiong Wang  <jiong.wang@arm.com>
1068
1069         * arch/aarch64.h (AARCH64_PAUTH_REGS_SIZE): New define.
1070
1071 2019-03-22  Alan Hayward  <alan.hayward@arm.com>
1072             Jiong Wang  <jiong.wang@arm.com>
1073
1074         * aarch64-linux-nat.c (fetch_pauth_masks_from_thread): New
1075         function.
1076         (aarch64_linux_nat_target::fetch_registers): Read pauth registers.
1077         * aarch64-tdep.c (aarch64_cannot_store_register): New function.
1078         (aarch64_gdbarch_init): Add puth registers.
1079         * aarch64-tdep.h (struct gdbarch_tdep): Add pauth features.
1080         * arch/aarch64.h (AARCH64_PAUTH_DMASK_REGNUM): New define.
1081         (AARCH64_PAUTH_CMASK_REGNUM): Likewise.
1082
1083 2019-03-22  Alan Hayward  <alan.hayward@arm.com>
1084             Jiong Wang  <jiong.wang@arm.com>
1085
1086         * aarch64-linux-nat.c
1087         (aarch64_linux_nat_target::read_description): Read PACA hwcap.
1088         * aarch64-linux-tdep.c
1089         (aarch64_linux_core_read_description): Likewise.
1090         (aarch64_linux_get_hwcap): New function.
1091         * aarch64-linux-tdep.h (AARCH64_HWCAP_PACA): New define.
1092         (aarch64_linux_get_hwcap): New declaration.
1093
1094 2019-03-22  Alan Hayward  <alan.hayward@arm.com>
1095             Jiong Wang  <jiong.wang@arm.com>
1096
1097         * aarch64-linux-nat.c
1098         (aarch64_linux_nat_target::read_description): Add pauth param.
1099         * aarch64-linux-tdep.c
1100         (aarch64_linux_core_read_description): Likewise.
1101         * aarch64-tdep.c (struct target_desc): Add in pauth.
1102         (aarch64_read_description): Add pauth param.
1103         (aarch64_gdbarch_init): Likewise.
1104         * aarch64-tdep.h (aarch64_read_description): Likewise.
1105         * arch/aarch64.c (aarch64_create_target_description): Likewise.
1106         * arch/aarch64.h (aarch64_create_target_description): Likewise.
1107         * features/Makefile: Add new files.
1108         * features/aarch64-pauth.c: New file.
1109         * features/aarch64-pauth.xml: New file.
1110
1111 2019-03-20  Tom Tromey  <tromey@adacore.com>
1112
1113         * infrun.c (handle_inferior_event): Rename from
1114         handle_inferior_event_1.  Create a scoped_value_mark.
1115         (handle_inferior_event): Remove.
1116
1117 2019-03-19  Tom Tromey  <tromey@adacore.com>
1118
1119         * mi/mi-interp.c (mi_on_normal_stop_1): Only show displays once.
1120         * infrun.h (print_stop_event): Add "displays" parameter.
1121         * infrun.c (print_stop_event): Add "displays" parameter.
1122
1123 2019-03-19  Pedro Alves  <palves@redhat.com>
1124
1125         * tui/tui-out.c (tui_ui_out::do_field_string): Simplify.
1126         (tui_ui_out::do_text): Add comments.  Reset M_LINE to 0 instead of
1127         to -1.  Fix TABs vs spaces.
1128         (tui_ui_out::tui_ui_out): Don't initialize fields here.
1129         * tui/tui-out.h (tui_ui_out) Add intro comments.
1130         <m_line, m_start_of_line>: In-class initialize, and add describing
1131         comment.
1132
1133 2019-03-18  Alan Hayward  <alan.hayward@arm.com>
1134
1135         * arm-linux-nat.c (arm_linux_insert_hw_breakpoint1): Fix
1136         variable names.
1137         (arm_linux_remove_hw_breakpoint1): Use a gdb::function_view.
1138
1139 2019-03-18  Pedro Alves  <palves@redhat.com>
1140             Eli Zaretskii <eliz@gnu.org>
1141
1142         * tui/tui-out.c (tui_ui_out::tui_ui_out): Fix initialization of
1143         m_line and m_start_of_line.
1144
1145 2019-03-18  Eli Zaretskii  <eliz@gnu.org>
1146
1147         * tui/tui-io.c (gdb_wgetch): Don't echo CR.
1148         (tui_getc): When gdb_wgetch returns a CR, behave the same as when
1149         it returns a newline.  This fixes a regression in TU mode, whereby
1150         the next line is output on the same screen line as the user input.
1151
1152 2019-03-18  Tom Tromey  <tromey@adacore.com>
1153
1154         * minsyms.c (minimal_symbol_reader::install): Remove call to
1155         obstack_blank.
1156
1157 2019-03-18  Pedro Alves  <palves@redhat.com>
1158
1159         * tui/tui-io.c (reverse_mode_p, reverse_save_bg, reverse_save_fg):
1160         New globals.
1161         (apply_style): New, factored out from ...
1162         (apply_ansi_escape): ... this.  Handle reverse video mode.
1163         (tui_set_reverse_mode): New function.
1164         * tui/tui-io.h (tui_set_reverse_mode): New declaration.
1165         * tui/tui-winsource.c (tui_show_source_line): Use
1166         tui_set_reverse_mode instead of setting A_STANDOUT.
1167         * ui-style.h (struct ui_file_style) <set_reverse, set_fg, set_bg>:
1168         New setter methods.
1169
1170 2019-03-18  Hannes Domani  <ssbssa@yahoo.de>
1171
1172         * tui/tui-source.c (copy_source_line): Fix handling of 'column'.
1173         Handle tabs.
1174
1175 2019-03-18  Tom Tromey  <tromey@adacore.com>
1176
1177         * ada-lang.c (empty_array): Add "high" parameter.
1178         (ada_evaluate_subexp): Update.
1179
1180 2019-03-17  Sergei Trofimovich <siarheit@google.com>
1181
1182         * unittests/string_view-selftests.c: Define
1183         _initialize_string_view_selftests unconditionally.
1184
1185 2019-03-17  Vladimir Martyanov  <vilgeforce@gmail.com>
1186
1187         PR gdb/24350
1188         * windows-nat.c (windows_make_so): Remove unused text_vma variable.
1189
1190 2019-03-17  Vladimir Martyanov  <vilgeforce@gmail.com>
1191
1192         PR gdb/24351
1193         * windows-nat.c (display_selector): Fix format specifiers.
1194
1195 2019-03-17  Eli Zaretskii  <eliz@gnu.org>
1196
1197         * tui/tui-winsource.c (tui_set_is_exec_point_at): Call
1198         tui_refill_source_window instead of tui_refresh_win, to update the
1199         current execution line.  This fixes redisplay of the current line
1200         when stepping through the code with "next" or "step".
1201
1202 2019-03-16  Eli Zaretskii  <eliz@gnu.org>
1203
1204         * source-cache.c (source_cache::get_source_lines): Call
1205         find_source_lines to initialize s->nlines.  This fixes vertical
1206         scrolling of TUI source window when the DOWN arrow is pressed.
1207
1208 2019-03-16  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1209
1210         * auto-load.c (_initialize_auto_load): Fix 'This options has'.
1211         linux-thread-db.c (_initialize_thread_db): Likewise.
1212
1213 2019-03-16  Eli Zaretskii  <eliz@gnu.org>
1214
1215         * tui/tui-winsource.c (tui_show_source_line): Revert "Use
1216         wclrtoeol in tui_show_source_line".  This reverts changes made in
1217         commit 4a3045920bbe4e50a0f4920b0fdc4e88ef23015c.
1218
1219 2019-03-15  Tom Tromey  <tom@tromey.com>
1220
1221         * symtab.h (struct minimal_symbol): Derive from
1222         general_symbol_info.
1223         (MSYMBOL_VALUE, MSYMBOL_VALUE_RAW_ADDRESS)
1224         (MSYMBOL_VALUE_ADDRESS, MSYMBOL_VALUE_BYTES)
1225         (MSYMBOL_BLOCK_VALUE, MSYMBOL_VALUE_CHAIN, MSYMBOL_LANGUAGE)
1226         (MSYMBOL_SECTION, MSYMBOL_OBJ_SECTION, MSYMBOL_NATURAL_NAME)
1227         (MSYMBOL_LINKAGE_NAME, MSYMBOL_DEMANGLED_NAME)
1228         (MSYMBOL_SEARCH_NAME): Update.
1229         (MSYMBOL_SET_LANGUAGE, MSYMBOL_SET_NAMES): Remove.
1230         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Don't use memset.
1231         * minsyms.c (minimal_symbol_reader::record_full): Update.
1232
1233 2019-03-15  Tom Tromey  <tom@tromey.com>
1234
1235         * minsyms.c (minimal_symbol_reader::install): Use memcpy.
1236
1237 2019-03-15  Tom Tromey  <tom@tromey.com>
1238
1239         * objfiles.h (struct objfile_per_bfd_storage) <msymbols>: Now a
1240         unique_xmalloc_ptr.
1241         (objfile::msymbols_range::begin, objfile::msymbols_range::end):
1242         Update.
1243         * minsyms.c (lookup_minimal_symbol_by_pc_section)
1244         (build_minimal_symbol_hash_tables)
1245         (minimal_symbol_reader::install): Update.
1246
1247 2019-03-15  Tom Tromey  <tom@tromey.com>
1248
1249         * symtab.c (create_demangled_names_hash): Update.
1250         (symbol_set_names): Update.
1251         * objfiles.h (struct objfile_per_bfd_storage)
1252         <demangled_names_hash>: Now an htab_up.
1253         * objfiles.c (objfile_per_bfd_storage): Simplify.
1254
1255 2019-03-15  Tom Tromey  <tom@tromey.com>
1256
1257         * objfiles.h (struct objfile_per_bfd_storage): Declare
1258         destructor.
1259         * objfiles.c (objfile_per_bfd_storage::~objfile_per_bfd_storage):
1260         New.
1261         (get_objfile_bfd_data): Use new.  Don't initialize
1262         language_of_main.
1263         (free_objfile_per_bfd_storage): Remove.
1264         (objfile_bfd_data_free, objfile::~objfile): Use delete.
1265
1266 2019-03-15  Tom Tromey  <tom@tromey.com>
1267
1268         * symfile.c (reread_symbols): Update.
1269         * objfiles.c (objfile::objfile): Update.
1270         * minsyms.h (terminate_minimal_symbol_table): Don't declare.
1271         * minsyms.c (lookup_minimal_symbol_by_pc_section): Update
1272         comment.
1273         (minimal_symbol_reader::install): Update.
1274         (terminate_minimal_symbol_table): Remove.
1275         * jit.c (jit_object_close_impl): Update.
1276
1277 2019-03-15  Tom Tromey  <tom@tromey.com>
1278
1279         * minsyms.c (minimal_symbol_reader::record_full): Remove some
1280         initializations.
1281
1282 2019-03-15  Tom Tromey  <tom@tromey.com>
1283
1284         * objfiles.h (struct objfile_per_bfd_storage)
1285         <demangled_hash_languages>: Now a bitset.
1286         * minsyms.c (add_minsym_to_demangled_hash_table): Update.
1287         (lookup_minimal_symbol): Update.
1288
1289 2019-03-15  Tom Tromey  <tom@tromey.com>
1290
1291         * minsyms.h (class minimal_symbol_reader) <record_with_info>:
1292         Don't return the symbol.
1293         * coffread.c (record_minimal_symbol): Use record_full.
1294
1295 2019-03-14  Eli Zaretskii  <eliz@gnu.org>
1296
1297         The MS-Windows port of ncurses fails to switch to a color pair if
1298         one or both of the colors are the implicit default colors.  This
1299         change records the default colors when TUI is initialized, and
1300         then specifies them explicitly when a color pair uses the default
1301         colors.  This allows color styling in TUI mode on MS-Windows.
1302
1303         * tui/tui-io.c [__MINGW32__]: Include windows.h.  Declare
1304         ncurses_norm_attr.
1305         (tui_initialize_io) [__MINGW32__]: Record the default terminal
1306         colors in ncurses_norm_attr.
1307         (apply_ansi_escape) [__MINGW32__]: If a color in a color pair is
1308         "none", replace it with the default color recorded in
1309         ncurses_norm_attr.
1310
1311 2019-03-14  Tom Tromey  <tromey@adacore.com>
1312
1313         * source-cache.h (class source_cache) <get_source_lines>: Return
1314         std::string.
1315         * source-cache.c (source_cache::extract_lines): Handle case where
1316         first_pos==npos.  Return std::string.
1317         (source_cache::get_source_lines): Update.
1318
1319 2019-03-14  Tom Tromey  <tromey@adacore.com>
1320
1321         * NEWS: Add item for "style sources" commands.
1322         * source-cache.c (source_cache::get_source_lines): Check
1323         source_styling.
1324         * cli/cli-style.c (source_styling): New global.
1325         (_initialize_cli_style): Add "style sources" commands.
1326         (show_style_sources): New function.
1327         * cli/cli-style.h (source_styling): Declare.
1328
1329 2019-03-14  Pedro Alves  <palves@redhat.com>
1330             Tom Tromey  <tromey@adacore.com>
1331
1332         * tui/tui-winsource.h (tui_refill_source_window): Declare.
1333         * tui/tui-winsource.c (tui_refill_source_window): New function,
1334         from...
1335         (tui_horizontal_source_scroll): ... here.  Move some logic.
1336         * cli/cli-style.c (set_style_enabled): Notify new observable.
1337         * tui/tui-hooks.c (tui_redisplay_source): New function.
1338         (tui_attach_detach_observers): Attach or detach
1339         tui_redisplay_source.
1340         * observable.h (source_styling_changed): New observable.
1341         * observable.c: Define source_styling_changed observable.
1342
1343 2019-03-13  Tom Tromey  <tromey@adacore.com>
1344
1345         * i386-gnu-nat.c (i386_gnu_nat_target::fetch_registers)
1346         (i386_gnu_nat_target::store_registers): Update.
1347         * target-debug.h (target_debug_print_std_string): New macro.
1348         * x86-linux-nat.c (x86_linux_nat_target::enable_btrace): Update.
1349         * windows-tdep.c (display_one_tib): Update.
1350         * tui/tui-stack.c (tui_make_status_line): Update.
1351         * top.c (print_inferior_quit_action): Update.
1352         * thread.c (thr_try_catch_cmd): Update.
1353         (add_thread_with_info): Update.
1354         (thread_target_id_str): Update.
1355         (thr_try_catch_cmd): Update.
1356         (thread_command): Update.
1357         (thread_find_command): Update.
1358         * record-btrace.c (record_btrace_target::info_record)
1359         (record_btrace_resume_thread, record_btrace_target::resume)
1360         (record_btrace_cancel_resume, record_btrace_step_thread)
1361         (record_btrace_target::wait, record_btrace_target::wait)
1362         (record_btrace_target::wait, record_btrace_target::stop): Update.
1363         * progspace.c (print_program_space): Update.
1364         * process-stratum-target.c
1365         (process_stratum_target::thread_address_space): Update.
1366         * linux-fork.c (linux_fork_mourn_inferior)
1367         (detach_checkpoint_command, info_checkpoints_command)
1368         (linux_fork_context): Update.
1369         (linux_fork_detach): Update.
1370         (class scoped_switch_fork_info): Update.
1371         (delete_checkpoint_command): Update.
1372         * infrun.c (follow_fork_inferior): Update.
1373         (follow_fork_inferior): Update.
1374         (proceed_after_vfork_done): Update.
1375         (handle_vfork_child_exec_or_exit): Update.
1376         (follow_exec): Update.
1377         (displaced_step_prepare_throw): Update.
1378         (displaced_step_restore): Update.
1379         (start_step_over): Update.
1380         (resume_1): Update.
1381         (clear_proceed_status_thread): Update.
1382         (proceed): Update.
1383         (print_target_wait_results): Update.
1384         (do_target_wait): Update.
1385         (context_switch): Update.
1386         (stop_all_threads): Update.
1387         (restart_threads): Update.
1388         (finish_step_over): Update.
1389         (handle_signal_stop): Update.
1390         (switch_back_to_stepped_thread): Update.
1391         (keep_going_pass_signal): Update.
1392         (print_exited_reason): Update.
1393         (normal_stop): Update.
1394         * inferior.c (inferior_pid_to_str): Change return type.
1395         (print_selected_inferior): Update.
1396         (add_inferior): Update.
1397         (detach_inferior): Update.
1398         * dummy-frame.c (fprint_dummy_frames): Update.
1399         * dcache.c (dcache_info_1): Update.
1400         * btrace.c (btrace_enable, btrace_disable, btrace_teardown)
1401         (btrace_fetch, btrace_clear): Update.
1402         * linux-tdep.c (linux_core_pid_to_str): Change return type.
1403         * i386-cygwin-tdep.c (i386_windows_core_pid_to_str): Change return
1404         type.
1405         * fbsd-tdep.c (fbsd_core_pid_to_str): Change return type.
1406         * sol2-tdep.h (sol2_core_pid_to_str): Change return type.
1407         * sol2-tdep.c (sol2_core_pid_to_str): Change return type.
1408         * gdbarch.c, gdbarch.h: Rebuild.
1409         * gdbarch.sh (core_pid_to_str): Change return type.
1410         * windows-nat.c (struct windows_nat_target) <pid_to_str>: Change
1411         return type.
1412         (windows_nat_target::pid_to_str): Change return type.
1413         (windows_delete_thread): Update.
1414         (windows_nat_target::attach): Update.
1415         (windows_nat_target::files_info): Update.
1416         * target-delegates.c: Rebuild.
1417         * sol-thread.c (class sol_thread_target) <pid_to_str>: Change
1418         return type.
1419         (sol_thread_target::pid_to_str): Change return type.
1420         * remote.c (class remote_target) <pid_to_str>: Change return
1421         type.
1422         (remote_target::pid_to_str): Change return type.
1423         (extended_remote_target::attach, remote_target::remote_stop_ns)
1424         (remote_target::remote_notif_remove_queued_reply)
1425         (remote_target::push_stop_reply, remote_target::disable_btrace):
1426         Update.
1427         (extended_remote_target::attach): Update.
1428         * remote-sim.c (struct gdbsim_target) <pid_to_str>: Change return
1429         type.
1430         (gdbsim_target::pid_to_str): Change return type.
1431         * ravenscar-thread.c (struct ravenscar_thread_target)
1432         <pid_to_str>: Change return type.
1433         (ravenscar_thread_target::pid_to_str): Change return type.
1434         * procfs.c (class procfs_target) <pid_to_str>: Change return
1435         type.
1436         (procfs_target::pid_to_str): Change return type.
1437         (procfs_target::attach): Update.
1438         (procfs_target::detach): Update.
1439         (procfs_target::fetch_registers): Update.
1440         (procfs_target::store_registers): Update.
1441         (procfs_target::wait): Update.
1442         (procfs_target::files_info): Update.
1443         * obsd-nat.c (obsd_nat_target::pid_to_str): Change return type.
1444         * nto-procfs.c (struct nto_procfs_target) <pid_to_str>: Change
1445         return type.
1446         (nto_procfs_target::pid_to_str): Change return type.
1447         (nto_procfs_target::files_info, nto_procfs_target::attach): Update.
1448         * linux-thread-db.c (class thread_db_target) <pid_to_str>: Change
1449         return type.
1450         * linux-nat.c (linux_nat_target::pid_to_str): Change return type.
1451         (exit_lwp): Update.
1452         (attach_proc_task_lwp_callback, get_detach_signal)
1453         (detach_one_lwp, resume_lwp, linux_nat_target::resume)
1454         (linux_nat_target::resume, wait_lwp, stop_callback)
1455         (maybe_clear_ignore_sigint, stop_wait_callback, status_callback)
1456         (save_stop_reason, select_event_lwp, linux_nat_filter_event)
1457         (linux_nat_wait_1, resume_stopped_resumed_lwps)
1458         (linux_nat_target::wait, linux_nat_stop_lwp): Update.
1459         * inf-ptrace.c (inf_ptrace_target::pid_to_str): Change return
1460         type.
1461         (inf_ptrace_target::attach): Update.
1462         (inf_ptrace_target::files_info): Update.
1463         * go32-nat.c (struct go32_nat_target) <pid_to_str>: Change return
1464         type.
1465         (go32_nat_target::pid_to_str): Change return type.
1466         * gnu-nat.c (gnu_nat_target::pid_to_str): Change return type.
1467         (gnu_nat_target::wait): Update.
1468         (gnu_nat_target::wait): Update.
1469         (gnu_nat_target::resume): Update.
1470         * fbsd-nat.c (fbsd_nat_target::pid_to_str): Change return type.
1471         (fbsd_nat_target::wait): Update.
1472         * darwin-nat.c (darwin_nat_target::pid_to_str): Change return
1473         type.
1474         (darwin_nat_target::attach): Update.
1475         * corelow.c (class core_target) <pid_to_str>: Change return type.
1476         (core_target::pid_to_str): Change return type.
1477         * target.c (normal_pid_to_str): Change return type.
1478         (default_pid_to_str): Likewise.
1479         (target_pid_to_str): Change return type.
1480         (target_translate_tls_address): Update.
1481         (target_announce_detach): Update.
1482         * bsd-uthread.c (struct bsd_uthread_target) <pid_to_str>: Change
1483         return type.
1484         (bsd_uthread_target::pid_to_str): Change return type.
1485         * bsd-kvm.c (class bsd_kvm_target) <pid_to_str>: Change return
1486         type.
1487         (bsd_kvm_target::pid_to_str): Change return type.
1488         * aix-thread.c (class aix_thread_target) <pid_to_str>: Change
1489         return type.
1490         (aix_thread_target::pid_to_str): Change return type.
1491         * target.h (struct target_ops) <pid_to_str>: Change return type.
1492         (target_pid_to_str, normal_pid_to_str): Likewise.
1493         * obsd-nat.h (class obsd_nat_target) <pid_to_str>: Change return
1494         type.
1495         * linux-nat.h (class linux_nat_target) <pid_to_str>: Change return
1496         type.
1497         * inf-ptrace.h (struct inf_ptrace_target) <pid_to_str>: Change
1498         return type.
1499         * gnu-nat.h (struct gnu_nat_target) <pid_to_str>: Change return
1500         type.
1501         * fbsd-nat.h (class fbsd_nat_target) <pid_to_str>: Change return
1502         type.
1503         * darwin-nat.h (class darwin_nat_target) <pid_to_str>: Change
1504         return type.
1505
1506 2019-03-13  Simon Marchi  <simon.marchi@ericsson.com>
1507
1508         * NEWS: Mention that the new default MI version is 3.  Mention
1509         changes to the output of commands and events that deal with
1510         multi-location breakpoints.
1511         * breakpoint.c: Include "mi/mi-out.h".
1512         (print_one_breakpoint): Change output syntax if using MI version
1513         >= 3.
1514         * mi/mi-main.h (mi_cmd_fix_multi_location_breakpoint_output):
1515         New.
1516         (mi_multi_location_breakpoint_output_fixed): New.
1517         * mi/mi-main.c (fix_multi_location_breakpoint_output): New.
1518         (mi_cmd_fix_multi_location_breakpoint_output): New.
1519         (mi_multi_location_breakpoint_output_fixed): New.
1520         * mi/mi-cmds.c (mi_cmds): Register command
1521         -fix-multi-location-breakpoint-output.
1522         * mi/mi-out.c (mi_out_new): Instantiate version 3 when using
1523         interpreter "mi".
1524
1525 2019-03-13  Simon Marchi  <simon.marchi@polymtl.ca>
1526
1527         * mi/mi-out.h (mi_out_new): Change parameter to const char *.
1528         * mi/mi-out.c (mi_out_new): Change parameter to const char *,
1529         instantiate mi_ui_out based on interpreter name.
1530         * mi/mi-interp.c (mi_interp::init): Use the new mi_out_new.
1531         * mi/mi-main.c (mi_load_progress): Likewise.
1532
1533 2019-03-12  John Baldwin  <jhb@FreeBSD.org>
1534
1535         * NEWS: Combine separate "New targets" sections for 8.3.
1536
1537 2019-03-12  John Baldwin  <jhb@FreeBSD.org>
1538
1539         * ppc-fbsd-tdep.c (ppcfbsd_get_thread_local_address): New.
1540         (ppcfbsd_init_abi): Install gdbarch
1541         "fetch_tls_load_module_address" and "get_thread_local_address"
1542         methods.
1543
1544 2019-03-12  John Baldwin  <jhb@FreeBSD.org>
1545
1546         * riscv-fbsd-tdep.c (riscv_fbsd_get_thread_local_address): New.
1547         (riscv_fbsd_init_abi): Install gdbarch
1548         "fetch_tls_load_module_address" and "get_thread_local_address"
1549         methods.
1550
1551 2019-03-12  John Baldwin  <jhb@FreeBSD.org>
1552
1553         * i386-fbsd-tdep.c (i386fbsd_get_thread_local_address): New.
1554         (i386fbsd_init_abi): Install gdbarch
1555         "fetch_tls_load_module_address" and "get_thread_local_address"
1556         methods.
1557
1558 2019-03-12  John Baldwin  <jhb@FreeBSD.org>
1559
1560         * amd64-fbsd-tdep.c (amd64fbsd_get_thread_local_address): New.
1561         (amd64fbsd_init_abi): Install gdbarch
1562         "fetch_tls_load_module_address" and "get_thread_local_address"
1563         methods.
1564
1565 2019-03-12  John Baldwin  <jhb@FreeBSD.org>
1566
1567         * fbsd-tdep.c (fbsd_pspace_data_handle): New variable.
1568         (struct fbsd_pspace_data): New type.
1569         (get_fbsd_pspace_data, fbsd_pspace_data_cleanup)
1570         (fbsd_read_integer_by_name, fbsd_fetch_rtld_offsets)
1571         (fbsd_get_tls_index, fbsd_get_thread_local_address): New function.
1572         (_initialize_fbsd_tdep): Initialize 'fbsd_pspace_data_handle'.
1573         * fbsd-tdep.c (fbsd_get_thread_local_address): New prototype.
1574
1575 2019-03-12  John Baldwin  <jhb@FreeBSD.org>
1576
1577         * gdbtypes.c (lookup_struct_elt): New function.
1578         (lookup_struct_elt_type): Reimplement via lookup_struct_elt.
1579         * gdbtypes.h (struct struct_elt): New type.
1580         (lookup_struct_elt): New prototype.
1581
1582 2019-03-12  John Baldwin  <jhb@FreeBSD.org>
1583
1584         * gdbtypes.c (lookup_struct_elt_type): Update comment and
1585         remove disabled code block.
1586
1587 2019-03-12  John Baldwin  <jhb@FreeBSD.org>
1588
1589         * gdbarch.sh (get_thread_local_address): New method.
1590         * gdbarch.h, gdbarch.c: Regenerate.
1591         * target.c (target_translate_tls_address): Use
1592         gdbarch_get_thread_local_address if present instead of
1593         target::get_thread_local_address.
1594
1595 2019-03-12  John Baldwin  <jhb@FreeBSD.org>
1596
1597         * target.h (target::get_thread_local_address): Update comment.
1598
1599 2019-03-12  John Baldwin  <jhb@FreeBSD.org>
1600
1601         * solib-svr4.c (svr4_fetch_objfile_link_map): Look for
1602         objfile->separate_debug_objfile_backlink if not NULL.
1603
1604 2019-03-12  John Baldwin  <jhb@FreeBSD.org>
1605
1606         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers): Use
1607         tdep->fsbase_regnum instead of constants for fs_base and gs_base.
1608         (amd64bsd_store_inferior_registers): Likewise.
1609         * amd64-fbsd-nat.c (amd64_fbsd_nat_target::read_description):
1610         Enable segment base registers.
1611         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers): Use
1612         PT_GETFSBASE and PT_GETGSBASE.
1613         (i386bsd_store_inferior_registers): Use PT_SETFSBASE and
1614         PT_SETGSBASE.
1615         * i386-fbsd-nat.c (i386_fbsd_nat_target::read_description): Enable
1616         segment base registers.
1617         * i386-fbsd-tdep.c (i386fbsd_core_read_description): Likewise.
1618
1619 2019-03-12  John Baldwin  <jhb@FreeBSD.org>
1620
1621         * amd64-fbsd-nat.c (amd64_fbsd_nat_target::read_description):
1622         Update calls to i386_target_description to add 'segments'
1623         parameter.
1624         * amd64-tdep.c (amd64_init_abi): Set tdep->fsbase_regnum.  Don't
1625         add segment base registers.
1626         * arch/i386.c (i386_create_target_description): Add 'segments'
1627         parameter to enable segment base registers.
1628         * arch/i386.h (i386_create_target_description): Likewise.
1629         * features/i386/32bit-segments.xml: New file.
1630         * features/i386/32bit-segments.c: Generate.
1631         * i386-fbsd-nat.c (i386_fbsd_nat_target::read_description): Update
1632         call to i386_target_description to add 'segments' parameter.
1633         * i386-fbsd-tdep.c (i386fbsd_core_read_description): Likewise.
1634         * i386-go32-tdep.c (i386_go32_init_abi): Likewise.
1635         * i386-linux-tdep.c (i386_linux_read_description): Likewise.
1636         * i386-tdep.c (i386_validate_tdesc_p): Add segment base registers
1637         if feature is present.
1638         (i386_gdbarch_init): Pass I386_NUM_REGS to set_gdbarch_num_regs.
1639         Add 'segments' parameter to call to i386_target_description.
1640         (i386_target_description): Add 'segments' parameter to enable
1641         segment base registers.
1642         (_initialize_i386_tdep) [GDB_SELF_TEST]: Add 'segments' parameter
1643         to call to i386_target_description.
1644         * i386-tdep.h (struct gdbarch_tdep): Add 'fsbase_regnum'.
1645         (enum i386_regnum): Add I386_FSBASE_REGNUM and I386_GSBASE_REGNUM.
1646         Define I386_NUM_REGS.
1647         (i386_target_description): Add 'segments' parameter to enable
1648         segment base registers.
1649
1650 2019-03-12  Eli Zaretskii  <eliz@gnu.org>
1651
1652         PR/24325
1653         * source-cache.c: #undef open and close, to avoid unresolved
1654         externals during linking.
1655
1656 2019-03-12  Tom Tromey  <tromey@adacore.com>
1657
1658         * remote.c (magic_null_ptid, not_sent_ptid, any_thread_ptid): Now
1659         const.  Add initializers.
1660         (_initialize_remote): Don't initialize ptid globals.
1661
1662 2019-03-12  Pedro Alves  <palves@redhat.com>
1663
1664         * yy-remap.h [TEST_CPNAMES] (YYFPRINTF): Don't define.
1665
1666 2019-03-12  Pedro Alves  <palves@redhat.com>
1667
1668         * cp-name-parser.y (main): Remove unused 'len' variable.
1669
1670 2019-03-12  Tom Tromey  <tromey@adacore.com>
1671
1672         * common/ptid.c (null_ptid, minus_one_ptid): Now const.
1673         * common/ptid.h (null_ptid, minus_one_ptid): Now const.
1674
1675 2019-03-12  Tom Tromey  <tromey@adacore.com>
1676
1677         * linux-nat.c (iterate_over_lwps): Update.
1678         (stop_callback): Remove parameter.
1679         (stop_wait_callback, detach_callback, resume_set_callback)
1680         (select_singlestep_lwp_callback, set_ignore_sigint)
1681         (status_callback, resumed_callback, resume_clear_callback)
1682         (kill_callback, kill_wait_callback, linux_nat_stop_lwp): Remove
1683         data parameter.
1684         (linux_nat_target::detach, linux_nat_target::resume)
1685         (linux_stop_and_wait_all_lwps, select_event_lwp)
1686         (linux_nat_filter_event, linux_nat_wait_1)
1687         (linux_nat_target::kill, linux_nat_target::stop)
1688         (linux_nat_target::stop): Update.
1689         (linux_nat_resume_callback): Change type.
1690         (resume_stopped_resumed_lwps, count_events_callback)
1691         (select_event_lwp_callback): Likewise.
1692         (linux_stop_lwp, linux_nat_stop_lwp): Update.
1693         * arm-linux-nat.c (struct update_registers_data): Remove.
1694         (update_registers_callback): Change type.
1695         (arm_linux_insert_hw_breakpoint1): Update.
1696         * nat/x86-linux-dregs.c (update_debug_registers_callback): Remove
1697         parameter.
1698         (x86_linux_dr_set_addr): Update.
1699         (x86_linux_dr_set_control): Update.
1700         * nat/linux-nat.h (iterate_over_lwps_ftype): Remove parameter.
1701         (iterate_over_lwps): Use gdb::function_view.
1702         * nat/aarch64-linux-hw-point.c (struct
1703         aarch64_dr_update_callback_param): Remove.
1704         (debug_reg_change_callback): Change type.
1705         (aarch64_notify_debug_reg_change): Update.
1706         * s390-linux-nat.c (s390_refresh_per_info): Update.
1707
1708 2019-03-11  Tom Tromey  <tromey@adacore.com>
1709
1710         * dwarf2read.c (dwarf2_find_containing_comp_unit): Remove
1711         redundant assignment to "this_cu".
1712
1713 2019-03-08  Simon Marchi  <simon.marchi@efficios.com>
1714
1715         * gdbtypes.c (rank_one_type): Remove unnecessary cases from switch.
1716
1717 2019-03-08  Simon Marchi  <simon.marchi@efficios.com>
1718
1719         * gdbtypes.c (rank_one_type_parm_set): New function extracted
1720         from...
1721         (rank_one_type): ... this.
1722
1723 2019-03-08  Simon Marchi  <simon.marchi@efficios.com>
1724
1725         * gdbtypes.c (rank_one_type_parm_struct): New function extracted
1726         from...
1727         (rank_one_type): ... this.
1728
1729 2019-03-08  Simon Marchi  <simon.marchi@efficios.com>
1730
1731         * gdbtypes.c (rank_one_type_parm_complex): New function extracted
1732         from...
1733         (rank_one_type): ... this.
1734
1735 2019-03-08  Simon Marchi  <simon.marchi@efficios.com>
1736
1737         * gdbtypes.c (rank_one_type_parm_float): New function extracted
1738         from...
1739         (rank_one_type): ... this.
1740
1741 2019-03-08  Simon Marchi  <simon.marchi@efficios.com>
1742
1743         * gdbtypes.c (rank_one_type_parm_bool): New function extracted
1744         from...
1745         (rank_one_type): ... this.
1746
1747 2019-03-08  Simon Marchi  <simon.marchi@efficios.com>
1748
1749         * gdbtypes.c (rank_one_type_parm_range): New function extracted
1750         from...
1751         (rank_one_type): ... this.
1752
1753 2019-03-08  Simon Marchi  <simon.marchi@efficios.com>
1754
1755         * gdbtypes.c (rank_one_type_parm_char): New function extracted
1756         from...
1757         (rank_one_type): ... this.
1758
1759 2019-03-08  Simon Marchi  <simon.marchi@efficios.com>
1760
1761         * gdbtypes.c (rank_one_type_parm_enum): New function extracted
1762         from...
1763         (rank_one_type): ... this.
1764
1765 2019-03-08  Simon Marchi  <simon.marchi@efficios.com>
1766
1767         * gdbtypes.c (rank_one_type_parm_int): New function extracted
1768         from...
1769         (rank_one_type): ... this.
1770
1771 2019-03-08  Simon Marchi  <simon.marchi@efficios.com>
1772
1773         * gdbtypes.c (rank_one_type_parm_func): New function extracted
1774         from...
1775         (rank_one_type): ... this.
1776
1777 2019-03-08  Simon Marchi  <simon.marchi@efficios.com>
1778
1779         * gdbtypes.c (rank_one_type_parm_array): New function extracted
1780         from...
1781         (rank_one_type): ... this.
1782
1783 2019-03-08  Simon Marchi  <simon.marchi@efficios.com>
1784
1785         * gdbtypes.c (rank_one_type_parm_ptr): New function extracted
1786         from...
1787         (rank_one_type): ... this.
1788
1789 2019-02-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1790
1791         * inferior.c (initialize_inferiors): Ensure 'help set/show print
1792         inferior-events' shows the example events.
1793
1794 2019-03-08  Eli Zaretskii  <eliz@gnu.org>
1795
1796         Support styling on native MS-Windows console
1797
1798         PR/24315
1799         * utils.c (can_emit_style_escape) [_WIN32]: Don't disable styling
1800         on MS-Windows if $TERM is not defined.
1801
1802         * cli/cli-style.c: Set cli_styling to 1 in the MinGW build.
1803
1804         * posix-hdep.c (gdb_console_fputs):
1805         * mingw-hdep.c (rgb_to_16colors, gdb_console_fputs): New
1806         functions.
1807         * ui-file.h (gdb_console_fputs): Add prototype.
1808
1809         * ui-file.c (stdio_file::puts): Call gdb_console_fputs, and fall
1810         back to fputs only if the former returns zero.
1811
1812 2019-03-07  Tom Tromey  <tom@tromey.com>
1813
1814         * symmisc.c (print_symbol_bcache_statistics): Update.
1815         (print_objfile_statistics): Update.
1816         * symfile.c (allocate_symtab): Update.
1817         * stabsread.c: Don't include bcache.h.
1818         * psymtab.h (struct psymbol_bcache): Don't declare.
1819         (class psymtab_storage) <psymbol_cache>: Now a bcache.
1820         (psymbol_bcache_init, psymbol_bcache_free)
1821         (psymbol_bcache_get_bcache): Don't declare.
1822         * psymtab.c (struct psymbol_bcache): Remove.
1823         (psymtab_storage::psymtab_storage): Update.
1824         (psymtab_storage::~psymtab_storage): Update.
1825         (psymbol_bcache_init, psymbol_bcache_free)
1826         (psymbol_bcache_get_bcache, psymbol_bcache_full): Remove.
1827         (add_psymbol_to_bcache): Update.
1828         (allocate_psymtab): Update.
1829         * objfiles.h (struct objfile_per_bfd_storage) <filename_cache,
1830         macro_cache>: No longer pointers.
1831         * objfiles.c (get_objfile_bfd_data): Don't call bcache_xmalloc.
1832         (free_objfile_per_bfd_storage): Don't call bcache_xfree.
1833         * macrotab.c (macro_bcache): Update.
1834         * macroexp.c: Don't include bcache.h.
1835         * gdbtypes.c (check_types_worklist): Update.
1836         (types_deeply_equal): Remove TRY/CATCH.  Update.
1837         * elfread.c (elf_symtab_read): Update.
1838         * dwarf2read.c: Don't include bcache.h.
1839         * buildsym.c (buildsym_compunit::get_macro_table): Update.
1840         * bcache.h (bcache, bcache_full, bcache_xffree, bcache_xmalloc)
1841         (print_bcache_statistics, bcache_memory_used): Don't declare.
1842         (struct bcache): Move from bcache.c.  Add constructor, destructor,
1843         methods.  Rename all data members.
1844         * bcache.c (struct bcache): Move to bcache.h.
1845         (bcache::expand_hash_table): Rename from expand_hash_table.
1846         (bcache): Remove.
1847         (bcache::insert): Rename from bcache_full.
1848         (bcache::compare): Rename from bcache_compare.
1849         (bcache_xmalloc): Remove.
1850         (bcache::~bcache): Rename from bcache_xfree.
1851         (bcache::print_statistics): Rename from print_bcache_statistics.
1852         (bcache::memory_used): Rename from bcache_memory_used.
1853
1854 2019-03-07  Pedro Alves  <palves@redhat.com>
1855
1856         * infrun.c (normal_stop): Also check for
1857         TARGET_WAITKIND_NO_RESUMED before referring to inferior_thread().
1858
1859 2019-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
1860
1861         * f-lang.c (value_from_host_double): Moved to...
1862         * value.c (value_from_host_double): ...here.
1863         * value.h (value_from_host_double): Declare.
1864         * guile/scm-math.c (vlscm_convert_typed_number): Use
1865         value_from_host_double.
1866         (vlscm_convert_number): Likewise.
1867         * guile/scm-value.c (gdbscm_value_to_real): Likewise.
1868         * python/py-value.c (convert_value_from_python): Likewise.
1869
1870 2019-03-06  Tom Tromey  <tom@tromey.com>
1871
1872         * gcore.c (write_gcore_file): Use SCOPE_EXIT.
1873
1874 2019-03-06  Tom Tromey  <tom@tromey.com>
1875
1876         * utils.h (free_current_contents): Don't declare.
1877         * utils.c (free_current_contents): Remove.
1878
1879 2019-03-06  Tom Tromey  <tom@tromey.com>
1880
1881         * top.c (quit_force): Update.
1882         * main.c (captured_command_loop): Update.
1883         * common/new-op.c (operator new): Update.
1884         * common/common-exceptions.c (struct catcher)
1885         <save_cleanup_chain>: Remove member.
1886         (exceptions_state_mc_init): Update.
1887         (exception_try_scope_entry): Return nullptr.
1888         (exception_try_scope_exit, exception_rethrow)
1889         (throw_exception_sjlj, throw_exception_cxx): Update.
1890         * common/cleanups.h (make_cleanup, make_cleanup_dtor)
1891         (all_cleanups, do_cleanups, discard_cleanups)
1892         (discard_final_cleanups, save_cleanups, save_final_cleanups)
1893         (restore_cleanups, restore_final_cleanups): Don't declare.
1894         (do_final_cleanups): Remove parameter.
1895         * common/cleanups.c (cleanup_chain, make_cleanup)
1896         (make_cleanup_dtor, all_cleanups, do_cleanups)
1897         (discard_my_cleanups, discard_cleanups)
1898         (discard_final_cleanups, save_my_cleanups, save_cleanups)
1899         (save_final_cleanups, restore_my_cleanups, restore_cleanups)
1900         (null_cleanup): Remove.
1901         (do_final_cleanups): Remove parameter.
1902
1903 2019-03-06  Tom Tromey  <tom@tromey.com>
1904
1905         * remote.c (remote_target::remote_parse_stop_reply): Use
1906         unique_xmalloc_ptr.
1907
1908 2019-03-06  Tom Tromey  <tom@tromey.com>
1909
1910         * stabsread.c (struct stabs_field_info): Rename from field_info.
1911         <list, fnlist>: Add initializers.
1912         <obstack>: New member.
1913         (read_member_functions, read_struct_fields, read_baseclasses):
1914         Allocate on obstack.  Don't use cleanups.
1915         (read_one_struct_field, read_member_functions, read_struct_fields)
1916         (read_baseclasses, read_tilde_fields, attach_fn_fields_to_type)
1917         (attach_fields_to_type, read_cpp_abbrev, read_member_functions)
1918         (read_struct_type): Update.
1919
1920 2019-03-06  Tom Tromey  <tom@tromey.com>
1921
1922         * nat/linux-namespaces.c (linux_mntns_access_fs): Use SCOPE_EXIT.
1923         * common/filestuff.h (make_cleanup_close): Don't declare.
1924         * common/filestuff.c (do_close_cleanup, make_cleanup_close):
1925         Remove.
1926
1927 2019-03-06  Tom Tromey  <tom@tromey.com>
1928
1929         * solib-aix.c: Use make_scope_exit.
1930
1931 2019-03-06  Tom Tromey  <tom@tromey.com>
1932
1933         * solib-svr4.c (svr4_parse_libraries, svr4_current_sos_direct):
1934         Use make_scope_exit.
1935
1936 2019-03-06  Tom Tromey  <tom@tromey.com>
1937
1938         * solib-svr4.c (disable_probes_interface): Remove parameter.
1939         (svr4_handle_solib_event): Use make_scope_exit.
1940
1941 2019-03-06  Tom Tromey  <tom@tromey.com>
1942
1943         * remote.c (struct stop_reply_deleter): Remove.
1944         (stop_reply_up): Update.
1945         (struct stop_reply): Derive from notif_event.  Don't typedef.
1946         <regcache>: Now a std::vector.
1947         (stop_reply_xfree): Remove.
1948         (stop_reply::~stop_reply): Rename from stop_reply_dtr.
1949         (remote_notif_stop_alloc_reply): Return a unique_ptr.  Use new.
1950         (remote_target::discard_pending_stop_replies): Use delete.
1951         (remote_target::remote_parse_stop_reply): Update.
1952         (remote_target::process_stop_reply): Update.
1953         * remote-notif.h (struct notif_event): Add virtual destructor.
1954         Remove "dtr" member.
1955         (struct notif_client) <alloc_event>: Return a unique_ptr.
1956         (notif_event_xfree): Don't declare.
1957         (notif_event_up): New typedef.
1958         * remote-notif.c (remote_notif_ack, remote_notif_parse): Update.
1959         (notif_event_xfree, do_notif_event_xfree): Remove.
1960         (remote_notif_state_xfree): Update.
1961
1962 2019-03-06  Tom Tromey  <tom@tromey.com>
1963
1964         * infrun.c (displaced_step_clear_cleanup): Now a
1965         forward_scope_exit type.
1966         (displaced_step_prepare_throw): Update.
1967         (displaced_step_fixup): Update.
1968
1969 2019-03-06  Tom Tromey  <tom@tromey.com>
1970
1971         * inferior.h (class inferior): Update comment.
1972         * gdbthread.h (class thread_info): Update comment.
1973
1974 2019-03-06  Joel Brobecker  <brobecker@adacore.com>
1975             Tom Tromey  <tom@tromey.com>
1976
1977         * stabsread.h (struct stab_section_list): Remove.
1978         (coffstab_build_psymtabs): Update.
1979         * dbxread.c (symbuf_sections): Now a std::vector.
1980         (sect_idx): New global.
1981         (fill_symbuf): Update.
1982         (coffstab_build_psymtabs): Change type of stabsects parameter.
1983         Update.
1984         * coffread.c (struct coff_symfile_info) <stabsects>: Now a
1985         std::vector.
1986         (linetab, linetab_offset, linetab_size, stringtab): Move earlier.
1987         (coff_locate_sections): Update.
1988         (coff_symfile_read): Remove cleanups.  Update.
1989         (init_stringtab): Add storage parameter.
1990         (free_stringtab, free_stringtab_cleanup): Remove.
1991         (init_lineno): Add storage parameter.
1992         (free_linetab, free_linetab_cleanup): Remove.
1993
1994 2019-03-06  Pedro Alves  <palves@redhat.com>
1995
1996         * linux-fork.c (fork_info::clobber_regs): Delete.
1997         (fork_load_infrun_state): Remove reference to 'clobber_regs'.
1998         (fork_save_infrun_state): Remove 'clobber_regs' parameter.  Update
1999         comment.  Adjust.
2000         (scoped_switch_fork_info::scoped_switch_fork_info)
2001         (checkpoint_command, linux_fork_context): Adjust
2002         fork_save_infrun_state calls.
2003
2004 2019-03-06  Pedro Alves  <palves@redhat.com>
2005
2006         * linux-fork.c (inf_has_multiple_thread_cb): Delete.
2007         (inf_has_multiple_threads): Return 'bool' and rewrite using
2008         inferior_info::threads().
2009
2010 2019-03-06  Pedro Alves  <palves@redhat.com>
2011
2012         * linux-fork.c: Include <list>.
2013         (fork_list): Now a std::list instance.
2014         (fork_info): Add ctor, dtor, and in-class initialize all fields.
2015         (forks_exist_p, find_last_fork): Adjust.
2016         (new_fork): Delete.
2017         (one_fork_p): New.
2018         (add_fork): Adjust.
2019         (free_fork): Delete, folded into fork_info::~fork_info().
2020         (delete_fork, find_fork_ptid, find_fork_id, find_fork_pid):
2021         Adjust.
2022         (init_fork_list): Delete.
2023         (linux_fork_killall, linux_fork_mourn_inferior)
2024         (linux_fork_detach, info_checkpoints_command): Adjust.
2025         (_initialize_linux_fork): No longer call init_fork_list.
2026
2027 2019-03-06  Pedro Alves  <palves@redhat.com>
2028
2029         * linux-fork.c (new_fork): New, split out of ...
2030         (add_fork): ... this.  Return void.  Move "first fork" special
2031         case from here, to ...
2032         (checkpoint_command): ... here.
2033         * linux-linux.h (add_fork): Return void.
2034
2035 2019-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
2036
2037         * f-exp.y (direct_abs_decl): Handle TYPE*SIZE type names.
2038
2039 2019-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
2040             Chris January  <chris.january@arm.com>
2041             David Lecomber  <david.lecomber@arm.com>
2042
2043         * f-exp.y: New token, UNOP_INTRINSIC.
2044         (exp): New pattern using UNOP_INTRINSIC token.
2045         (f77_keywords): Add 'abs' keyword.
2046         * f-lang.c: Add 'target-float.h' and 'math.h' includes.
2047         (value_from_host_double): New function.
2048         (evaluate_subexp_f): Support UNOP_ABS.
2049
2050 2019-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
2051
2052         * f-lang.c (build_fortran_types): Use TYPE_CODE_CHAR for character
2053         types.
2054
2055 2019-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
2056
2057         * f-exp.y (convert_to_kind_type): Handle integer (kind=8).
2058         * f-lang.c (build_fortran_types): Setup builtin_integer_s8.
2059         * f-lang.h (struct builtin_f_type): Add builtin_integer_s8 field.
2060
2061 2019-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
2062
2063         * f-exp.y (convert_to_kind_type): Handle more type kinds.
2064
2065 2019-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
2066             Chris January  <chris.january@arm.com>
2067
2068         * expprint.c (dump_subexp_body_standard): Support UNOP_KIND.
2069         * f-exp.y: Define 'KIND' token.
2070         (exp): New pattern for KIND expressions.
2071         (ptype): Handle types with a kind extension.
2072         (direct_abs_decl): Extend to spot kind extensions.
2073         (f77_keywords): Add 'kind' to the list.
2074         (push_kind_type): New function.
2075         (convert_to_kind_type): New function.
2076         * f-lang.c (evaluate_subexp_f): Support UNOP_KIND.
2077         * parse.c (operator_length_standard): Likewise.
2078         * parser-defs.h (enum type_pieces): Add tp_kind.
2079         * std-operator.def: Add UNOP_KIND.
2080
2081 2019-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
2082
2083         * f-exp.y (f_parse): Set yydebug.
2084
2085 2019-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
2086
2087         * f-lang.c (evaluate_subexp_f): New function.
2088         (exp_descriptor_f): New global.
2089         (f_language_defn): Use exp_descriptor_f instead of
2090         exp_descriptor_standard.
2091
2092 2019-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
2093
2094         * f-exp.y (struct token): Add comments.
2095         (dot_ops): Remove uppercase versions and the end marker.
2096         (f77_keywords): Likewise.
2097         (yylex): Use ARRAY_SIZE to iterate over dot_ops, assert all
2098         entries in the dot_ops array are case insensitive, and use
2099         strncasecmp to compare strings.  Also some whitespace cleanup in
2100         this area.  Similar for the f77_keywords array, except entries in
2101         this list might be case sensitive.
2102
2103 2019-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
2104
2105         * f-exp.y (struct f77_boolean_val): Add comments.
2106         (boolean_values): Remove uppercase versions, and end marker.
2107         (yylex): Use ARRAY_SIZE for iterating over boolean_values array,
2108         and use strncasecmp to achieve case insensitivity.  Additionally,
2109         perform whitespace cleanup around this code.
2110
2111 2019-03-06  Tom Tromey  <tromey@adacore.com>
2112
2113         * remote-sim.c (gdbsim_target_open): Use result of
2114         gdb_argv::release.
2115
2116 2019-03-06  Richard Bunt  <richard.bunt@arm.com>
2117         Dirk Schubert  <dirk.schubert@arm.com>
2118         Chris January  <chris.january@arm.com>
2119
2120         * eval.c (evaluate_subexp_standard): Call Fortran argument
2121         wrapping logic.
2122         * f-lang.c (struct value): A value which can be passed into a
2123         Fortran function call.
2124         (fortran_argument_convert): Wrap Fortran arguments in a pointer
2125         where appropriate.
2126         (struct type): Value ready for a Fortran function call.
2127         (fortran_preserve_arg_pointer): Undo check_typedef, the pointer
2128         is needed.
2129         * f-lang.h (fortran_argument_convert): Declaration.
2130         (fortran_preserve_arg_pointer): Declaration.
2131         * infcall.c (value_arg_coerce): Call Fortran argument logic.
2132
2133 2019-03-05  Tom Tromey  <tromey@adacore.com>
2134
2135         * python/py-prettyprint.c (print_string_repr): Remove #if.
2136         * python/py-utils.c (unicode_to_encoded_string): Remove #if.
2137
2138 2019-03-05  Tom Tromey  <tromey@adacore.com>
2139
2140         * target.c (the_dummy_target): Move later.  Change type to
2141         "dummy_target".
2142         (initialize_targets): Don't initialize the_dummy_target.
2143
2144 2019-03-05  Tom Tromey  <tromey@adacore.com>
2145
2146         * gdb_bfd.c (gdb_bfd_fdopenr): Remove.
2147         * gdb_bfd.h (gdb_bfd_fdopenr): Don't declare.
2148
2149 2019-03-05  Tom Tromey  <tromey@adacore.com>
2150
2151         * windows-nat.c (windows_nat_target::attach)
2152         (windows_nat_target::detach): Don't call gdb_flush.
2153         * valprint.c (generic_val_print, val_print, val_print_string):
2154         Don't call gdb_flush.
2155         * utils.c (defaulted_query): Don't call gdb_flush.
2156         * typeprint.c (print_type_scalar): Don't call gdb_flush.
2157         * target.c (target_announce_detach): Don't call gdb_flush.
2158         * sparc64-tdep.c (adi_print_versions): Don't call gdb_flush.
2159         * remote.c (extended_remote_target::attach): Don't call
2160         gdb_flush.
2161         * procfs.c (procfs_target::detach): Don't call gdb_flush.
2162         * printcmd.c (do_examine): Don't call gdb_flush.
2163         (info_display_command): Don't call gdb_flush.
2164         * p-valprint.c (pascal_val_print): Don't call gdb_flush.
2165         * nto-procfs.c (nto_procfs_target::attach): Don't call gdb_flush.
2166         * memattr.c (info_mem_command): Don't call gdb_flush.
2167         * mdebugread.c (mdebug_build_psymtabs): Don't call gdb_flush.
2168         * m2-valprint.c (m2_val_print): Don't call gdb_flush.
2169         * infrun.c (follow_exec, handle_command): Don't call gdb_flush.
2170         * inf-ptrace.c (inf_ptrace_target::attach): Don't call gdb_flush.
2171         * hppa-tdep.c (unwind_command): Don't call gdb_flush.
2172         * gnu-nat.c (gnu_nat_target::attach): Don't call gdb_flush.
2173         (gnu_nat_target::detach): Don't call gdb_flush.
2174         * f-valprint.c (f_val_print): Don't call gdb_flush.
2175         * darwin-nat.c (darwin_nat_target::attach): Don't call gdb_flush.
2176         * cli/cli-script.c (read_command_lines): Don't call gdb_flush.
2177         * cli/cli-cmds.c (shell_escape, print_disassembly): Don't call
2178         gdb_flush.
2179         * c-valprint.c (c_val_print): Don't call gdb_flush.
2180         * ada-valprint.c (ada_print_scalar): Don't call gdb_flush.
2181
2182 2019-03-05  Tom Tromey  <tromey@adacore.com>
2183
2184         * varobj.c (update_dynamic_varobj_children): Update.
2185         (install_default_visualizer): Use reset, not release.
2186         * value.c (set_internalvar): Update.
2187         * dwarf2loc.c (value_of_dwarf_reg_entry): Update.
2188         * common/gdb_ref_ptr.h (class ref_ptr) <release>: Add
2189         ATTRIBUTE_UNUSED_RESULT.
2190
2191 2019-03-05  Tom Tromey  <tromey@adacore.com>
2192
2193         * remote.c (class scoped_remote_fd) <release>: Add
2194         ATTRIBUTE_UNUSED_RESULT.
2195
2196 2019-03-05  Tom Tromey  <tromey@adacore.com>
2197
2198         * macroexp.c (struct macro_buffer) <release>: Add
2199         ATTRIBUTE_UNUSED_RESULT.
2200
2201 2019-03-05  Tom Tromey  <tromey@adacore.com>
2202
2203         * nat/linux-btrace.c (linux_enable_bts, linux_enable_pt): Update.
2204         * common/scoped_mmap.h (class scoped_mmap) <release>: Add
2205         ATTRIBUTE_UNUSED_RESULT.
2206
2207 2019-03-05  Tom Tromey  <tromey@adacore.com>
2208
2209         * common/scoped_fd.h (class scoped_fd) <release>: Add
2210         ATTRIBUTE_UNUSED_RESULT.
2211
2212 2019-03-05  Tom Tromey  <tromey@adacore.com>
2213
2214         * parser-defs.h (struct parser_state) <release>: Add
2215         ATTRIBUTE_UNUSED_RESULT.
2216
2217 2019-03-05  Tom Tromey  <tromey@adacore.com>
2218
2219         * utils.h (class gdb_argv) <release>: Add
2220         ATTRIBUTE_UNUSED_RESULT.
2221         * common/common-defs.h (ATTRIBUTE_UNUSED_RESULT): Define.
2222
2223 2019-03-02  Eli Zaretskii  <eliz@gnu.org>
2224
2225         * xml-syscall.c (xml_list_syscalls_by_group): Drop 'struct' from
2226         for-loop range, to avoid compiler warnings.
2227
2228         * tui/tui.c (tui_enable) [__MINGW32__]: Don't declare 'cap', to
2229         avoid compiler warnings about unused variables.
2230
2231         * NEWS: Mention end of support for native debugging on MS-Windows
2232         before XP.
2233
2234         PR gdb/24292
2235         * common/netstuff.c:
2236         * gdbserver/gdbreplay.c
2237         * gdbserver/remote-utils.c:
2238         * ser-tcp.c:
2239         * unittests/parse-connection-spec-selftests.c [USE_WIN32API]:
2240         Include ws2tcpip.h instead of wsiapi.h and winsock2.h.  Redefine
2241         _WIN32_WINNT to 0x0501 if defined to a smaller value, as
2242         'getaddrinfo' and 'freeaddrinfo' were not available before
2243         Windows XP, and mingw.org's MinGW headers by default define
2244         _WIN32_WINNT to 0x500.
2245
2246 2019-03-01  Gary Benson <gbenson@redhat.com>
2247
2248         * coffread.c (coff_start_symtab): Remove unnecessary xstrdup.
2249
2250 2019-02-28  Brian Vandenberg  <phantall@gmail.com>
2251             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2252
2253         PR gdb/8527
2254         * procfs.c (proc_wait_for_stop): Wrap write of PCWSTOP in
2255         set_sigint_trap, clear_sigint_trap.
2256
2257 2019-02-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2258
2259         * target.c (target_detach): Clear the regcache and the
2260         frame cache.
2261
2262 2019-02-27  Pedro Alves  <palves@redhat.com>
2263
2264         * utils.c (set_screen_size): When we cap the height/width sizes,
2265         tweak the corresponding command variable to show "unlimited":
2266
2267 2019-02-27  Saagar Jha  <saagar@saagarjha.com>
2268             Pedro Alves  <palves@redhat.com>
2269
2270         * utils.c (set_screen_size): Reduce "infinite" rows and columns
2271         before calling rl_set_screen_size.
2272
2273 2019-02-27  Tom Tromey  <tromey@adacore.com>
2274
2275         * configure.ac (HAVE_LIBPYTHON2_4, HAVE_LIBPYTHON2_5): Never
2276         define.
2277         * python/py-value.c: Remove Python 2.4 workaround.
2278         * python/py-utils.c (gdb_pymodule_addobject): Remove Python 2.4
2279         workaround.
2280         * python/py-type.c (convert_field, gdbpy_initialize_types): Remove
2281         Python 2.4 workaround.
2282         * python/python-internal.h: Remove Python 2.4 comment.
2283         (Py_ssize_t): Don't define.
2284         (PyVarObject_HEAD_INIT, Py_TYPE): Don't define.
2285         (gdb_Py_DECREF): Remove Python 2.4 workaround.
2286         (gdb_PyObject_GetAttrString, PyObject_GetAttrString): Remove.
2287         (gdb_PyObject_HasAttrString, PyObject_HasAttrString): Remove.
2288         * python/python.c (do_start_initialization): Remove Python 2.4
2289         workaround.
2290         * python/py-prettyprint.c (class dummy_python_frame): Remove.
2291         (print_children): Remove Python 2.4 workaround.
2292         * python/py-inferior.c (buffer_procs): Remove Python 2.4
2293         workaround.
2294         (CHARBUFFERPROC_NAME): Remove.
2295         * python/py-breakpoint.c (gdbpy_initialize_breakpoints): Remove
2296         Python 2.4 workaround.
2297
2298 2019-02-27  Kevin Buettner  <kevinb@redhat.com>
2299
2300         * NEWS: Note minimum Python version.
2301
2302 2019-02-27  Kevin Buettner  <kevinb@redhat.com>
2303
2304         * python/py-inferior.c (infpy_write_memory): Remove non-IS_PY3K
2305         code from these functions.  Remove corresponding ifdefs.  Use
2306         Py_buffer_up instead of explicit calls to PyBuffer_Release.
2307         Remove gotos and target of gotos.
2308         (infpy_search_memory): Likewise.
2309
2310 2019-02-27  Andrew Burgess  <andrew.burgess@embecosm.com>
2311
2312         * gdb/hppa-tdep.c (hppa_dummy_id): Delete.
2313         (hppa_gdbarch_init): Don't register deleted functions with
2314         gdbarch.
2315
2316 2019-02-27  Andrew Burgess  <andrew.burgess@embecosm.com>
2317
2318         * gdb/h8300-tdep.c (h8300_unwind_pc): Delete.
2319         (h8300_unwind_sp): Delete.
2320         (h8300_dummy_id): Delete.
2321         (h8300_gdbarch_init): Don't register deleted functions with
2322         gdbarch.
2323
2324 2019-02-27  Andrew Burgess  <andrew.burgess@embecosm.com>
2325
2326         * gdb/ft32-tdep.c (ft32_dummy_id): Delete.
2327         (ft32_unwind_pc): Delete.
2328         (ft32_unwind_sp): Delete.
2329         (ft32_gdbarch_init): Don't register deleted functions with
2330         gdbarch.
2331
2332 2019-02-27  Andrew Burgess  <andrew.burgess@embecosm.com>
2333
2334         * gdb/frv-tdep.c (frv_dummy_id): Delete.
2335         (frv_unwind_pc): Delete.
2336         (frv_unwind_sp): Delete.
2337         (frv_gdbarch_init): Don't register deleted functions with
2338         gdbarch.
2339
2340 2019-02-27  Andrew Burgess  <andrew.burgess@embecosm.com>
2341
2342         * gdb/riscv-tdep.c (riscv_dummy_id): Delete.
2343         (riscv_unwind_pc): Delete.
2344         (riscv_unwind_sp): Delete.
2345         (riscv_gdbarch_init): Don't register deleted functions with
2346         gdbarch.
2347
2348 2019-02-27  Andrew Burgess  <andrew.burgess@embecosm.com>
2349
2350         * gdb/csky-tdep.c (csky_dummy_id): Delete.
2351         (csky_unwind_pc): Delete.
2352         (csky_unwind_sp): Delete.
2353         (csky_gdbarch_init): Don't register deleted functions with
2354         gdbarch.
2355
2356 2019-02-27  Andrew Burgess  <andrew.burgess@embecosm.com>
2357
2358         * gdb/cris-tdep.c (cris_dummy_id): Delete.
2359         (cris_unwind_pc): Delete.
2360         (cris_unwind_sp): Delete.
2361         (cris_gdbarch_init): Don't register deleted functions with
2362         gdbarch.
2363
2364 2019-02-27  Andrew Burgess  <andrew.burgess@embecosm.com>
2365
2366         * gdb/bfin-tdep.c (bfin_dummy_id): Delete.
2367         (bfin_unwind_pc): Delete.
2368         (bfin_gdbarch_init): Don't register deleted functions with gdbarch.
2369
2370 2019-02-27  Andrew Burgess  <andrew.burgess@embecosm.com>
2371
2372         * gdb/arm-tdep.c (arm_dummy_id): Delete.
2373         (arm_unwind_pc): Delete.
2374         (arm_unwind_sp): Delete.
2375         (arm_gdbarch_init): Don't register deleted functions with gdbarch.
2376
2377 2019-02-27  Andrew Burgess  <andrew.burgess@embecosm.com>
2378
2379         * gdb/arc-tdep.c (arc_dummy_id): Delete.
2380         (arc_unwind_pc): Delete.
2381         (arc_unwind_sp): Delete.
2382         (arc_gdbarch_init): Don't register deleted functions with gdbarch.
2383
2384 2019-02-27  Andrew Burgess  <andrew.burgess@embecosm.com>
2385
2386         * gdb/alpha-tdep.c (alpha_dummy_id): Delete.
2387         (alpha_unwind_pc): Delete.
2388         (alpha_gdbarch_init): Don't register deleted functions with
2389         gdbarch.
2390
2391 2019-02-27  Andrew Burgess  <andrew.burgess@embecosm.com>
2392
2393         * gdb/aarch64-tdep.c (aarch64_dummy_id): Delete.
2394         (aarch64_unwind_pc): Delete.
2395         (aarch64_unwind_sp): Delete.
2396         (aarch64_gdbarch_init): Don't register deleted functions with
2397         gdbarch.
2398
2399 2019-02-27  Andrew Burgess  <andrew.burgess@embecosm.com>
2400
2401         * gdbtypes.c (type_align): Don't consider static members when
2402         computing structure alignment.
2403
2404 2019-02-27  Andrew Burgess  <andrew.burgess@embecosm.com>
2405
2406         * arc-tdep.c (arc_type_align): Provide alignment for basic types,
2407         return 0 for other types.
2408         * arch-utils.c (default_type_align): Always return 0.
2409         * gdbarch.h: Regenerate.
2410         * gdbarch.sh (type_align): Extend comment.
2411         * gdbtypes.c (type_align): Add additional comments, always call
2412         gdbarch_type_align before applying the default rules.
2413         * i386-tdep.c (i386_type_align): Return 0 as the default rule,
2414         generic code will then apply a suitable default.
2415         * nios2-tdep.c (nios2_type_align): Provide alignment for basic
2416         types, return 0 for other types.
2417
2418 2019-02-27  Joel Brobecker  <brobecker@adacore.com>
2419
2420         * NEWS: Create a new section for the next release branch.
2421         Rename the section of the current branch, now that it has
2422         been cut.
2423
2424 2019-02-27  Joel Brobecker  <brobecker@adacore.com>
2425
2426         GDB 8.3 branch created (143420fb0d5ae54323ba9953f0818c194635228d):
2427         * version.in: Bump version to 8.3.50.DATE-git.
2428
2429 2019-02-26  Simon Marchi  <simon.marchi@efficios.com>
2430
2431         * aix-thread.c (ptid_cmp): Remove unused variable.
2432         (get_signaled_thread): Likewise.
2433         (store_regs_user_thread): Likewise.
2434         (store_regs_kernel_thread): Likewise.
2435         (fetch_regs_kernel_thread): Remove shadowed variable.
2436
2437 2019-02-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2438
2439         * features/riscv/32bit-cpu.xml: Add register numbers.
2440         * features/riscv/32bit-fpu.c: Regenerate.
2441         * features/riscv/32bit-fpu.xml: Add register numbers.
2442         * features/riscv/64bit-cpu.xml: Add register numbers.
2443         * features/riscv/64bit-fpu.c: Regenerate.
2444         * features/riscv/64bit-fpu.xml: Add register numbers.
2445
2446 2019-02-26  Kevin Buettner  <kevinb@redhat.com>
2447
2448         * NEWS: Mention two argument form of gdb.Value constructor.
2449         * python/py-value.c (convert_buffer_and_type_to_value): New
2450         function.
2451         (valpy_new): Parse arguments via gdb_PyArg_ParseTupleAndKeywords.
2452         Add support for handling an optional second argument.  Call
2453         convert_buffer_and_type_to_value as appropriate.
2454         * python/python-internal.h (Py_buffer_deleter): New struct.
2455         (Py_buffer_up): New typedef.
2456
2457 2019-02-25  John Baldwin  <jhb@FreeBSD.org>
2458
2459         * dwarf2read.c (dwarf2_get_dwz_file): Reset dwz_bfd to nullptr
2460         instead of releasing ownership.
2461
2462 2019-02-25  Jordan Rupprecht  <rupprecht@google.com>
2463
2464         * dwarf2read.c (open_and_init_dwp_file): Call
2465         elf_numsections instead of bfd_count_sections to initialize
2466         dwp_file->num_sections.
2467
2468 2019-02-25  Tom Tromey  <tromey@adacore.com>
2469
2470         * solib-darwin.c (darwin_get_dyld_bfd): Don't release dyld_bfd.
2471
2472 2019-02-23  Sergio Durigan Junior  <sergiodj@redhat.com>
2473
2474         * gcore.in: Add '--readnever' option when invoking GDB.
2475
2476 2019-02-22  Simon Marchi  <simon.marchi@polymtl.ca>
2477
2478         * MAINTAINERS: Update my email address.
2479
2480 2019-02-22  Simon Marchi  <simon.marchi@polymtl.ca>
2481
2482         * build-id.c (build_id_to_debug_bfd_1): New function.
2483         (build_id_to_debug_bfd): Look for separate debug file in
2484         sysroot.
2485
2486 2019-02-22  Andrew Burgess  <andrew.burgess@embecosm.com>
2487
2488         * gdbarch.sh: Update the copyright year range that is placed into
2489         generated files.
2490
2491 2019-02-22  Keith Seitz  <keiths@redhat.com>
2492
2493         PR symtab/23853
2494         * linespec.c (create_sals_line_offset): Search for the default
2495         symtab's filename instead of its fullname.
2496
2497 2019-02-21  Alan Hayward  <alan.hayward@arm.com>
2498
2499         * NEWS: Update style defaults.
2500
2501 2019-02-21  Alan Hayward  <alan.hayward@arm.com>
2502
2503         * main.c (captured_main_1): Disable styling in batch mode.
2504
2505 2019-02-20  Tom Tromey  <tom@tromey.com>
2506
2507         * symtab.c (symtab_symbol_info): Fix typos.
2508
2509 2019-02-20  Tom Tromey  <tromey@adacore.com>
2510
2511         * findcmd.c (_initialize_mem_search): Use upper case for
2512         metasyntactic variables.
2513
2514 2019-02-20  Alan Hayward  <alan.hayward@arm.com>
2515
2516         * aarch64-tdep.c (aarch64_add_reggroups): New function.
2517         (aarch64_gdbarch_init): Call aarch64_add_reggroups.
2518
2519 2019-02-19  Simon Marchi  <simon.marchi@polymtl.ca>
2520
2521         * top.h (source_file_name): Change to std::string.
2522         * top.c (source_file_name): Likewise.
2523         (command_line_input): Adjust.
2524         * cli/cli-script.c (script_from_file): Adjust.
2525
2526 2019-02-19  Tom Tromey  <tromey@adacore.com>
2527
2528         * ravenscar-thread.c
2529         (ravenscar_thread_target::update_thread_list): Don't call
2530         ada_build_task_list.
2531         * ada-lang.h (ada_build_task_list): Don't declare.
2532         * ada-tasks.c (struct ada_tasks_inferior_data)
2533         <task_list_valid_p>: Now bool.
2534         (read_known_tasks, ada_task_list_changed)
2535         (ada_tasks_invalidate_inferior_data): Update.
2536         (read_known_tasks_array): Return bool.
2537         (read_known_tasks_list): Likewise.
2538         (read_known_tasks): Return void.
2539         (ada_build_task_list): Now static.
2540
2541 2019-02-18  Andrew Burgess  <andrew.burgess@embecosm.com>
2542
2543         * gdbtypes.c (type_align): Allow alignment of TYPE_CODE_METHODPTR
2544         and TYPE_CODE_MEMBERPTR to be overridden by the gdbarch.
2545
2546 2019-02-18  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2547
2548         * ada-task.c (_initialize_tasks): Use 'with_cleanup' register
2549         variant for ada_tasks_pspace_data_handle and
2550         ada_tasks_inferior_data_handle.
2551         (ada_tasks_pspace_data_cleanup): New function.
2552         (ada_tasks_inferior_data_cleanup): New function.
2553
2554 2019-02-17  Tom Tromey  <tom@tromey.com>
2555
2556         * macrotab.h (macro_source_fullname): Return a std::string.
2557         * macrotab.c (macro_include, check_for_redefinition)
2558         (macro_undef, macro_lookup_definition, foreach_macro)
2559         (foreach_macro_in_scope): Update.
2560         (macro_source_fullname): Return a std::string.
2561         * macrocmd.c (show_pp_source_pos): Update.
2562
2563 2019-02-17  Tom Tromey  <tom@tromey.com>
2564
2565         * macrocmd.c (show_pp_source_pos): Style the file names.
2566
2567 2019-02-17  Tom Tromey  <tom@tromey.com>
2568
2569         PR tui/24197:
2570         * tui/tui-source.c (tui_set_source_content_nil): Rewrite.
2571
2572 2019-02-17  Tom Tromey  <tom@tromey.com>
2573
2574         * ada-lang.c (user_select_syms): Use filtered printing.
2575         * utils.c (wrap_style): New global.
2576         (desired_style): Remove.
2577         (emit_style_escape): Add stream parameter.
2578         (set_output_style, reset_terminal_style, prompt_for_continue):
2579         Update.
2580         (flush_wrap_buffer): Only flush gdb_stdout.
2581         (wrap_here): Set wrap_style.
2582         (fputs_maybe_filtered): Clear the wrap buffer on exception.  Don't
2583         treat escape sequences as a character.  Change when wrap buffer is
2584         flushed.
2585         (fputs_styled): Do not set the output style when the default is
2586         requested.
2587         * ui-style.h (struct ui_file_style) <is_default>: New method.
2588         * source.c (print_source_lines_base): Emit escape sequences in one
2589         piece.
2590
2591 2019-02-17  Joel Brobecker  <brobecker@adacore.com>
2592
2593         * gdbtypes.c (type_align): Handle TYPE_CODE_RANGE the same as
2594         integers and enumeration types.
2595
2596 2019-02-17  Joel Brobecker  <brobecker@adacore.com>
2597
2598         * ada-lang.c (standard_lookup): Use ada_lookup_encoded_symbol
2599         instead of lookup_symbol_in_language
2600         (do_exact_match): New function.
2601         (ada_get_symbol_name_matcher): Return do_exact_match when
2602         doing a verbatim match.
2603
2604 2019-02-15  Tom Tromey  <tromey@adacore.com>
2605
2606         * ravenscar-thread.c (ravenscar_thread_target::resume)
2607         (ravenscar_thread_target::wait): Special case wildcard requests.
2608
2609 2019-02-15  Tom Tromey  <tromey@adacore.com>
2610
2611         * ravenscar-thread.c (base_ptid): Remove.
2612         (struct ravenscar_thread_target) <close>: New method.
2613         <m_base_ptid>: New member.
2614         <update_inferior_ptid, active_task, task_is_currently_active,
2615         runtime_initialized>: Declare methods.
2616         <ravenscar_thread_target>: Add constructor.
2617         (ravenscar_thread_target::task_is_currently_active)
2618         (ravenscar_thread_target::update_inferior_ptid)
2619         (ravenscar_runtime_initialized): Rename.  Now methods.
2620         (ravenscar_thread_target::resume, ravenscar_thread_target::wait)
2621         (ravenscar_thread_target::update_thread_list): Update.
2622         (ravenscar_thread_target::active_task): Now method.
2623         (ravenscar_thread_target::store_registers)
2624         (ravenscar_thread_target::prepare_to_store)
2625         (ravenscar_thread_target::prepare_to_store)
2626         (ravenscar_thread_target::mourn_inferior): Update.
2627         (ravenscar_inferior_created): Use "new" to create target.
2628         (ravenscar_thread_target::get_ada_task_ptid): Update.
2629         (_initialize_ravenscar): Don't initialize base_ptid.
2630         (ravenscar_ops): Remove global.
2631
2632 2019-02-15  Tom Tromey  <tromey@adacore.com>
2633
2634         * target.h (push_target): Declare new overload.
2635         * target.c (push_target): New overload, taking an rvalue reference.
2636         * remote.c (remote_target::open_1): Use push_target overload.
2637         * corelow.c (core_target_open): Use push_target overload.
2638
2639 2019-02-15  Tom Tromey  <tromey@adacore.com>
2640
2641         * ravenscar-thread.c (is_ravenscar_task)
2642         (ravenscar_task_is_currently_active): Return bool.
2643         (ravenscar_update_inferior_ptid, get_running_thread_msymbol)
2644         (_initialize_ravenscar): Remove "(void)".
2645         (has_ravenscar_runtime, ravenscar_runtime_initialized): Likewise.
2646         Return bool.
2647
2648 2019-02-15  Tom Tromey  <tromey@adacore.com>
2649
2650         * ravenscar-thread.c (ravenscar_runtime_initializer)
2651         (has_ravenscar_runtime, get_running_thread_id)
2652         (ravenscar_thread_target::resume): Fix indentation.
2653
2654 2019-02-15  Tom Tromey  <tromey@adacore.com>
2655
2656         * sparc-ravenscar-thread.c (struct sparc_ravenscar_ops): Derive
2657         from ravenscar_arch_ops.
2658         (sparc_ravenscar_ops::fetch_registers)
2659         (sparc_ravenscar_ops::store_registers): Now methods.
2660         (sparc_ravenscar_prepare_to_store): Remove.
2661         (sparc_ravenscar_ops): Redefine.
2662         * ravenscar-thread.h (struct ravenscar_arch_ops): Add virtual
2663         methods and destructor.  Remove members.
2664         * ravenscar-thread.c (ravenscar_thread_target::fetch_registers)
2665         (ravenscar_thread_target::store_registers)
2666         (ravenscar_thread_target::prepare_to_store): Update.
2667         * ppc-ravenscar-thread.c (ppc_ravenscar_generic_prepare_to_store):
2668         Remove.
2669         (struct ppc_ravenscar_powerpc_ops): Derive from
2670         ravenscar_arch_ops.
2671         (ppc_ravenscar_powerpc_ops::fetch_registers)
2672         (ppc_ravenscar_powerpc_ops::store_registers): Now methods.
2673         (ppc_ravenscar_powerpc_ops): Redefine.
2674         (struct ppc_ravenscar_e500_ops): Derive from ravenscar_arch_ops.
2675         (ppc_ravenscar_e500_ops::fetch_registers)
2676         (ppc_ravenscar_e500_ops::store_registers): Now methods.
2677         (ppc_ravenscar_e500_ops): Redefine.
2678         * aarch64-ravenscar-thread.c
2679         (aarch64_ravenscar_generic_prepare_to_store): Remove.
2680         (struct aarch64_ravenscar_ops): Derive from ravenscar_arch_ops.
2681         (aarch64_ravenscar_fetch_registers)
2682         (aarch64_ravenscar_store_registers): Now methods.
2683         (aarch64_ravenscar_ops): Redefine.
2684
2685 2019-02-15  Tom Tromey  <tromey@adacore.com>
2686
2687         * ravenscar-thread.c (ravenscar_thread_target::stopped_by_sw_breakpoint)
2688         (ravenscar_thread_target::stopped_by_hw_breakpoint)
2689         (ravenscar_thread_target::stopped_by_watchpoint)
2690         (ravenscar_thread_target::stopped_data_address)
2691         (ravenscar_thread_target::core_of_thread): Use scoped_restore.
2692
2693 2019-02-15  Tom Tromey  <tromey@adacore.com>
2694
2695         * ravenscar-thread.c: Fix some typos.
2696
2697 2019-02-15  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2698             Tom Tromey  <tromey@adacore.com>
2699
2700         * ada-lang.c (ada_exception_sal): Change addr_string to a
2701         std::string.
2702         (create_ada_exception_catchpoint): Update.
2703
2704 2019-02-15  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2705             Tom Tromey  <tromey@adacore.com>
2706
2707         * breakpoint.c (~bp_location): Rename from bp_location_dtor.
2708         (bp_location_ops): Remove.
2709         (base_breakpoint_allocate_location): Update.
2710         (free_bp_location): Update.
2711         * ada-lang.c (class ada_catchpoint_location)
2712         <ada_catchpoint_location>: Remove ops parameter.
2713         (ada_catchpoint_location_dtor): Remove.
2714         (ada_catchpoint_location_ops): Remove.
2715         (allocate_location_exception): Update.
2716         * breakpoint.h (struct bp_location_ops): Remove.
2717         (class bp_location) <bp_location>: Remove bp_location_ops
2718         parameter.
2719         <~bp_location>: Add destructor.
2720         <ops>: Remove.
2721
2722 2019-02-14  Thomas Schwinge  <thomas@codesourcery.com>
2723             Pedro Alves  <palves@redhat.com>
2724
2725         * remote.c (remote_target::remote_parse_stop_reply): Avoid using
2726         'PATH_MAX'.
2727
2728 2019-02-14  David Michael  <fedora.dm0@gmail.com>
2729             Samuel Thibault  <samuel.thibault@gnu.org>
2730             Thomas Schwinge  <thomas@codesourcery.com>
2731
2732         * gnu-nat.c (S_proc_getmsgport_reply, S_proc_task2proc_reply)
2733         (S_proc_pid2proc_reply): Adjust to Hurd "proc" interface changes.
2734
2735 2019-02-14  Thomas Schwinge  <thomas@codesourcery.com>
2736
2737         * gnu-nat.c (gnu_write_inferior, parse_int_arg, _parse_bool_arg)
2738         (check_empty): Use "const char *".
2739
2740         * gnu-nat.c (gnu_nat_target::detach): Instead of
2741         'detach_inferior (pid)' call
2742         'detach_inferior (find_inferior_pid (pid))'.
2743
2744         * configure.nat [gdb_host == i386gnu] (NATDEPFILES): Add
2745         'nat/fork-inferior.o'.
2746         * gnu-nat.c: #include "nat/fork-inferior.h".
2747
2748         * gnu-nat.c (gnu_nat_target::detach): Instead of
2749         'inf_child_maybe_unpush_target (ops)' call 'maybe_unpush_target'.
2750         * gnu-nat.h: #include "inf-child.h".
2751         * i386-gnu-nat.c (gnu_fetch_registers): Rename/move to
2752         'i386_gnu_nat_target::fetch_registers'.
2753         (gnu_store_registers): Rename/move to
2754         'i386_gnu_nat_target::store_registers'.
2755
2756         * config/i386/nm-i386gnu.h: Don't "#include" any files.
2757         * gnu-nat.h (mach_thread_info): New function.
2758         * gnu-nat.c (thread_takeover_sc_cmd): Use it.
2759
2760         * config/i386/nm-i386gnu.h (gnu_target_pid_to_str): Remove.
2761
2762 2019-02-14  Frederic Konrad  <konrad@adacore.com>
2763
2764         * riscv-rdep.c (riscv_type_alignment): Handle TYPE_CODE_RANGE.
2765
2766 2019-02-14  Joel Brobecker  <brobecker@adacore.com>
2767
2768         * windows-nat.c (windows_add_thread): Add new parameter
2769         "main_thread_p" with default value set to false.  Update
2770         function documentation as well as all callers.
2771         (windows_delete_thread): Likewise.
2772         (fake_create_process): Update call to windows_add_thread.
2773         (get_windows_debug_event) <CREATE_THREAD_DEBUG_EVENT>
2774         <CREATE_PROCESS_DEBUG_EVENT>: Likewise.
2775         <EXIT_THREAD_DEBUG_EVENT, EXIT_PROCESS_DEBUG_EVENT>: Update
2776         call to windows_delete_thread.
2777
2778 2019-02-13  Simon Marchi  <simon.marchi@ericsson.com>
2779
2780         * MAINTAINERS: Add Andrew Burgess as global maintainer.
2781
2782 2019-02-12  John Baldwin  <jhb@FreeBSD.org>
2783
2784         * symfile.c (find_separate_debug_file): Use canonical path of
2785         sysroot with child_path instead of gdb_sysroot if it is valid.
2786
2787 2019-02-12  John Baldwin  <jhb@FreeBSD.org>
2788
2789         * symfile.c (find_separate_debug_file): Use child_path to
2790         determine if an object file is under a sysroot.
2791
2792 2019-02-12  John Baldwin  <jhb@FreeBSD.org>
2793
2794         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
2795         unittests/child-path-selftests.c.
2796         * common/pathstuff.c (child_path): New function.
2797         * common/pathstuff.h (child_path): New prototype.
2798         * unittests/child-path-selftests.c: New file.
2799
2800 2019-02-12  John Baldwin  <jhb@FreeBSD.org>
2801
2802         * symfile.c (find_separate_debug_file): Look for separate debug
2803         files in debug directories under the sysroot.
2804
2805 2019-02-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2806
2807         * symtab.h (struct minimal_symbol data_p): New const method.
2808         (struct minimal_symbol text_p): Likewise.
2809         * symtab.c (output_source_filename): Use file name style
2810         to print file name.
2811         (print_symbol_info): Likewise.
2812         (print_msymbol_info): Use address style to print addresses.
2813         Use function name style to print executable text symbols.
2814         (expand_symtab_containing_pc): Use data_p.
2815         (find_pc_sect_compunit_symtab): Likewise.
2816
2817 2019-02-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2818
2819         * breakpoint.c (describe_other_breakpoints): Use address style
2820         to print addresses.
2821         (say_where): Likewise.
2822
2823 2019-02-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2824
2825         * ada-typeprint.c (print_func_type): Print function name
2826         style to print function name.
2827         * c-typeprint.c (c_print_type_1): Likewise.
2828
2829 2019-02-11  Alan Hayward  <alan.hayward@arm.com>
2830
2831         * aarch64-linux-tdep.c (aarch64_linux_get_syscall_number): Check
2832         for execve.
2833
2834 2019-02-10  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2835
2836         * c-exp.y (direct_abs_decl): Use emplace_back to record the
2837         type_stack.
2838
2839 2019-02-10  Joel Brobecker  <brobecker@adacore.com>
2840
2841         * ada-varobj.c (ada_value_is_changeable_p): Add handling of
2842         TYPE_CODE_REF types.
2843
2844 2019-02-08  Jim Wilson  <jimw@sifive.com>
2845
2846         * riscv-linux-tdep.c (riscv_linux_fregmap): New.
2847         (riscv_linux_fregset): New.
2848         (riscv_linux_iterate_over_regset_sections): Call cb for .reg2 section.
2849
2850 2019-02-07  Tom Tromey  <tom@tromey.com>
2851
2852         * thread.c (thread_cancel_execution_command): Update.
2853         * thread-fsm.h (struct thread_fsm): Add constructor, destructor,
2854         methods.
2855         (struct thread_fsm_ops): Remove.
2856         (thread_fsm_ctor, thread_fsm_delete, thread_fsm_clean_up)
2857         (thread_fsm_should_stop, thread_fsm_return_value)
2858         (thread_fsm_set_finished, thread_fsm_finished_p)
2859         (thread_fsm_async_reply_reason, thread_fsm_should_notify_stop):
2860         Don't declare.
2861         * mi/mi-interp.c (mi_on_normal_stop_1): Update.
2862         * infrun.c (clear_proceed_status_thread)
2863         (clean_up_just_stopped_threads_fsms, fetch_inferior_event)
2864         (print_stop_event): Update.
2865         * infcmd.c (struct step_command_fsm): Inherit from thread_fsm.
2866         Add constructor.
2867         (step_command_fsm_ops): Remove.
2868         (new_step_command_fsm): Remove.
2869         (step_1): Update.
2870         (step_command_fsm::should_stop): Rename from
2871         step_command_fsm_should_stop.
2872         (step_command_fsm::clean_up): Rename from
2873         step_command_fsm_clean_up.
2874         (step_command_fsm::do_async_reply_reason): Rename from
2875         step_command_fsm_async_reply_reason.
2876         (struct until_next_fsm): Inherit from thread_fsm.  Add
2877         constructor.
2878         (until_next_fsm_ops): Remove.
2879         (new_until_next_fsm): Remove.
2880         (until_next_fsm::should_stop): Rename from
2881         until_next_fsm_should_stop.
2882         (until_next_fsm::clean_up): Rename from until_next_fsm_clean_up.
2883         (until_next_fsm::do_async_reply_reason): Rename from
2884         until_next_fsm_async_reply_reason.
2885         (struct finish_command_fsm): Inherit from thread_fsm.  Add
2886         constructor.  Change type of breakpoint.
2887         (finish_command_fsm_ops): Remove.
2888         (new_finish_command_fsm): Remove.
2889         (finish_command_fsm::should_stop): Rename from
2890         finish_command_fsm_should_stop.
2891         (finish_command_fsm::clean_up): Rename from
2892         finish_command_fsm_clean_up.
2893         (finish_command_fsm::return_value): Rename from
2894         finish_command_fsm_return_value.
2895         (finish_command_fsm::do_async_reply_reason): Rename from
2896         finish_command_fsm_async_reply_reason.
2897         (finish_command): Update.
2898         * infcall.c (struct call_thread_fsm): Inherit from thread_fsm.
2899         Add constructor.
2900         (call_thread_fsm_ops): Remove.
2901         (call_thread_fsm::call_thread_fsm): Rename from
2902         new_call_thread_fsm.
2903         (call_thread_fsm::should_stop): Rename from
2904         call_thread_fsm_should_stop.
2905         (call_thread_fsm::should_notify_stop): Rename from
2906         call_thread_fsm_should_notify_stop.
2907         (run_inferior_call, call_function_by_hand_dummy): Update.
2908         * cli/cli-interp.c (should_print_stop_to_console): Update.
2909         * breakpoint.c (struct until_break_fsm): Inherit from thread_fsm.
2910         Add constructor.  Change type of location_breakpoint,
2911         caller_breakpoint.
2912         (until_break_fsm_ops): Remove.
2913         (new_until_break_fsm): Remove.
2914         (until_break_fsm::should_stop): Rename from
2915         until_break_fsm_should_stop.
2916         (until_break_fsm::clean_up): Rename from
2917         until_break_fsm_clean_up.
2918         (until_break_fsm::do_async_reply_reason): Rename from
2919         until_break_fsm_async_reply_reason.
2920         (until_break_command): Update.
2921         * thread-fsm.c: Remove.
2922         * Makefile.in (COMMON_SFILES): Remove thread-fsm.c.
2923
2924 2019-02-07  Tom Tromey  <tom@tromey.com>
2925
2926         * yy-remap.h: Add include guard.
2927         * xtensa-tdep.h: Add include guard.
2928         * xcoffread.h: Rename include guard.
2929         * varobj-iter.h: Add include guard.
2930         * tui/tui.h: Rename include guard.
2931         * tui/tui-winsource.h: Rename include guard.
2932         * tui/tui-wingeneral.h: Rename include guard.
2933         * tui/tui-windata.h: Rename include guard.
2934         * tui/tui-win.h: Rename include guard.
2935         * tui/tui-stack.h: Rename include guard.
2936         * tui/tui-source.h: Rename include guard.
2937         * tui/tui-regs.h: Rename include guard.
2938         * tui/tui-out.h: Rename include guard.
2939         * tui/tui-layout.h: Rename include guard.
2940         * tui/tui-io.h: Rename include guard.
2941         * tui/tui-hooks.h: Rename include guard.
2942         * tui/tui-file.h: Rename include guard.
2943         * tui/tui-disasm.h: Rename include guard.
2944         * tui/tui-data.h: Rename include guard.
2945         * tui/tui-command.h: Rename include guard.
2946         * tic6x-tdep.h: Add include guard.
2947         * target/waitstatus.h: Rename include guard.
2948         * target/wait.h: Rename include guard.
2949         * target/target.h: Rename include guard.
2950         * target/resume.h: Rename include guard.
2951         * target-float.h: Rename include guard.
2952         * stabsread.h: Add include guard.
2953         * rs6000-tdep.h: Add include guard.
2954         * riscv-fbsd-tdep.h: Add include guard.
2955         * regformats/regdef.h: Rename include guard.
2956         * record.h: Rename include guard.
2957         * python/python.h: Rename include guard.
2958         * python/python-internal.h: Rename include guard.
2959         * python/py-stopevent.h: Rename include guard.
2960         * python/py-ref.h: Rename include guard.
2961         * python/py-record.h: Rename include guard.
2962         * python/py-record-full.h: Rename include guard.
2963         * python/py-record-btrace.h: Rename include guard.
2964         * python/py-instruction.h: Rename include guard.
2965         * python/py-events.h: Rename include guard.
2966         * python/py-event.h: Rename include guard.
2967         * procfs.h: Add include guard.
2968         * proc-utils.h: Add include guard.
2969         * p-lang.h: Add include guard.
2970         * or1k-tdep.h: Rename include guard.
2971         * observable.h: Rename include guard.
2972         * nto-tdep.h: Rename include guard.
2973         * nat/x86-linux.h: Rename include guard.
2974         * nat/x86-linux-dregs.h: Rename include guard.
2975         * nat/x86-gcc-cpuid.h: Add include guard.
2976         * nat/x86-dregs.h: Rename include guard.
2977         * nat/x86-cpuid.h: Rename include guard.
2978         * nat/ppc-linux.h: Rename include guard.
2979         * nat/mips-linux-watch.h: Rename include guard.
2980         * nat/linux-waitpid.h: Rename include guard.
2981         * nat/linux-ptrace.h: Rename include guard.
2982         * nat/linux-procfs.h: Rename include guard.
2983         * nat/linux-osdata.h: Rename include guard.
2984         * nat/linux-nat.h: Rename include guard.
2985         * nat/linux-namespaces.h: Rename include guard.
2986         * nat/linux-btrace.h: Rename include guard.
2987         * nat/glibc_thread_db.h: Rename include guard.
2988         * nat/gdb_thread_db.h: Rename include guard.
2989         * nat/gdb_ptrace.h: Rename include guard.
2990         * nat/fork-inferior.h: Rename include guard.
2991         * nat/amd64-linux-siginfo.h: Rename include guard.
2992         * nat/aarch64-sve-linux-sigcontext.h: Rename include guard.
2993         * nat/aarch64-sve-linux-ptrace.h: Rename include guard.
2994         * nat/aarch64-linux.h: Rename include guard.
2995         * nat/aarch64-linux-hw-point.h: Rename include guard.
2996         * mn10300-tdep.h: Add include guard.
2997         * mips-linux-tdep.h: Add include guard.
2998         * mi/mi-parse.h: Rename include guard.
2999         * mi/mi-out.h: Rename include guard.
3000         * mi/mi-main.h: Rename include guard.
3001         * mi/mi-interp.h: Rename include guard.
3002         * mi/mi-getopt.h: Rename include guard.
3003         * mi/mi-console.h: Rename include guard.
3004         * mi/mi-common.h: Rename include guard.
3005         * mi/mi-cmds.h: Rename include guard.
3006         * mi/mi-cmd-break.h: Rename include guard.
3007         * m2-lang.h: Add include guard.
3008         * location.h: Rename include guard.
3009         * linux-record.h: Rename include guard.
3010         * linux-nat.h: Add include guard.
3011         * linux-fork.h: Add include guard.
3012         * i386-darwin-tdep.h: Rename include guard.
3013         * hppa-linux-offsets.h: Add include guard.
3014         * guile/guile.h: Rename include guard.
3015         * guile/guile-internal.h: Rename include guard.
3016         * gnu-nat.h: Rename include guard.
3017         * gdb-stabs.h: Rename include guard.
3018         * frv-tdep.h: Add include guard.
3019         * f-lang.h: Add include guard.
3020         * event-loop.h: Add include guard.
3021         * darwin-nat.h: Rename include guard.
3022         * cp-abi.h: Rename include guard.
3023         * config/sparc/nm-sol2.h: Rename include guard.
3024         * config/nm-nto.h: Rename include guard.
3025         * config/nm-linux.h: Add include guard.
3026         * config/i386/nm-i386gnu.h: Rename include guard.
3027         * config/djgpp/nl_types.h: Rename include guard.
3028         * config/djgpp/langinfo.h: Rename include guard.
3029         * compile/gcc-cp-plugin.h: Add include guard.
3030         * compile/gcc-c-plugin.h: Add include guard.
3031         * compile/compile.h: Rename include guard.
3032         * compile/compile-object-run.h: Rename include guard.
3033         * compile/compile-object-load.h: Rename include guard.
3034         * compile/compile-internal.h: Rename include guard.
3035         * compile/compile-cplus.h: Rename include guard.
3036         * compile/compile-c.h: Rename include guard.
3037         * common/xml-utils.h: Rename include guard.
3038         * common/x86-xstate.h: Rename include guard.
3039         * common/version.h: Rename include guard.
3040         * common/vec.h: Rename include guard.
3041         * common/tdesc.h: Rename include guard.
3042         * common/selftest.h: Rename include guard.
3043         * common/scoped_restore.h: Rename include guard.
3044         * common/scoped_mmap.h: Rename include guard.
3045         * common/scoped_fd.h: Rename include guard.
3046         * common/safe-iterator.h: Rename include guard.
3047         * common/run-time-clock.h: Rename include guard.
3048         * common/refcounted-object.h: Rename include guard.
3049         * common/queue.h: Rename include guard.
3050         * common/ptid.h: Rename include guard.
3051         * common/print-utils.h: Rename include guard.
3052         * common/preprocessor.h: Rename include guard.
3053         * common/pathstuff.h: Rename include guard.
3054         * common/observable.h: Rename include guard.
3055         * common/netstuff.h: Rename include guard.
3056         * common/job-control.h: Rename include guard.
3057         * common/host-defs.h: Rename include guard.
3058         * common/gdb_wait.h: Rename include guard.
3059         * common/gdb_vecs.h: Rename include guard.
3060         * common/gdb_unlinker.h: Rename include guard.
3061         * common/gdb_unique_ptr.h: Rename include guard.
3062         * common/gdb_tilde_expand.h: Rename include guard.
3063         * common/gdb_sys_time.h: Rename include guard.
3064         * common/gdb_string_view.h: Rename include guard.
3065         * common/gdb_splay_tree.h: Rename include guard.
3066         * common/gdb_setjmp.h: Rename include guard.
3067         * common/gdb_ref_ptr.h: Rename include guard.
3068         * common/gdb_optional.h: Rename include guard.
3069         * common/gdb_locale.h: Rename include guard.
3070         * common/gdb_assert.h: Rename include guard.
3071         * common/filtered-iterator.h: Rename include guard.
3072         * common/filestuff.h: Rename include guard.
3073         * common/fileio.h: Rename include guard.
3074         * common/environ.h: Rename include guard.
3075         * common/common-utils.h: Rename include guard.
3076         * common/common-types.h: Rename include guard.
3077         * common/common-regcache.h: Rename include guard.
3078         * common/common-inferior.h: Rename include guard.
3079         * common/common-gdbthread.h: Rename include guard.
3080         * common/common-exceptions.h: Rename include guard.
3081         * common/common-defs.h: Rename include guard.
3082         * common/common-debug.h: Rename include guard.
3083         * common/cleanups.h: Rename include guard.
3084         * common/buffer.h: Rename include guard.
3085         * common/btrace-common.h: Rename include guard.
3086         * common/break-common.h: Rename include guard.
3087         * cli/cli-utils.h: Rename include guard.
3088         * cli/cli-style.h: Rename include guard.
3089         * cli/cli-setshow.h: Rename include guard.
3090         * cli/cli-script.h: Rename include guard.
3091         * cli/cli-interp.h: Rename include guard.
3092         * cli/cli-decode.h: Rename include guard.
3093         * cli/cli-cmds.h: Rename include guard.
3094         * charset-list.h: Add include guard.
3095         * buildsym-legacy.h: Rename include guard.
3096         * bfin-tdep.h: Add include guard.
3097         * ax.h: Rename include guard.
3098         * arm-linux-tdep.h: Add include guard.
3099         * arm-fbsd-tdep.h: Add include guard.
3100         * arch/xtensa.h: Rename include guard.
3101         * arch/tic6x.h: Add include guard.
3102         * arch/i386.h: Add include guard.
3103         * arch/arm.h: Rename include guard.
3104         * arch/arm-linux.h: Rename include guard.
3105         * arch/arm-get-next-pcs.h: Rename include guard.
3106         * arch/amd64.h: Add include guard.
3107         * arch/aarch64-insn.h: Rename include guard.
3108         * arch-utils.h: Rename include guard.
3109         * annotate.h: Add include guard.
3110         * amd64-darwin-tdep.h: Rename include guard.
3111         * aarch64-linux-tdep.h: Add include guard.
3112         * aarch64-fbsd-tdep.h: Add include guard.
3113         * aarch32-linux-nat.h: Add include guard.
3114
3115 2019-02-06  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3116
3117         * macrotab.c (macro_define_internal): New function that
3118         factorizes macro_define_object_internal and macro_define_function
3119         code.
3120         (macro_define_object_internal): Use macro_define_internal.
3121         (macro_define_function): Likewise.
3122
3123 2019-02-06  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3124
3125         * macrocmd.c (extract_identifier): Return
3126         a gdb::unique_xmalloc_ptr<char> instead of a char *, and update
3127         callers.
3128
3129 2019-02-06  John Baldwin  <jhb@FreeBSD.org>
3130
3131         * fbsd-nat.c (fbsd_fetch_cmdline): Join arguments with spaces.
3132
3133 2019-02-05  Tom Tromey  <tom@tromey.com>
3134
3135         * target.c (target_stack::unpush): Move assertion earlier.
3136
3137 2019-01-30  Tom Tromey  <tom@tromey.com>
3138
3139         PR python/23615:
3140         * python/python.c (execute_gdb_command): Use gdbpy_allow_threads.
3141         (gdbpy_parse_and_eval): Likewise.
3142         * python/python-internal.h (gdbpy_allow_threads): New class.
3143
3144 2019-01-28  John Baldwin  <jhb@FreeBSD.org>
3145
3146         * aarch64-fbsd-tdep.c (aarch64_fbsd_gregmap)
3147         (aarch64_fbsd_fpregmap): Move earlier.
3148         (AARCH64_MCONTEXT_REG_SIZE, AARCH64_MCONTEXT_FPREG_SIZE): Delete.
3149         (aarch64_fbsd_sigframe_init): Use trad_frame_set_reg_regmap
3150         instead of individual calls to trad_frame_set_reg_addr.
3151         * arm-fbsd-tdep.c (arm_fbsd_gregmap, arm_fbsd_vfpregmap): Move
3152         earlier.
3153         (ARM_MCONTEXT_REG_SIZE, ARM_MCONTEXT_VFP_REG_SIZE): Delete.
3154         (arm_fbsd_sigframe_init): Use trad_frame_set_reg_regmap
3155         instead of individual calls to trad_frame_set_reg_addr.
3156
3157 2019-01-28  Alan Hayward  <alan.hayward@arm.com>
3158
3159         * CONTRIBUTE: Replace contribution list with wiki link.
3160
3161 2019-01-25  Tom Tromey  <tom@tromey.com>
3162
3163         * Makefile.in (GDB_CFLAGS): Don't add -I for common.
3164
3165 2019-01-25  Tom Tromey  <tom@tromey.com>
3166
3167         * xtensa-linux-nat.c: Fix common/ includes.
3168         * xml-support.h: Fix common/ includes.
3169         * xml-support.c: Fix common/ includes.
3170         * x86-linux-nat.c: Fix common/ includes.
3171         * windows-nat.c: Fix common/ includes.
3172         * varobj.h: Fix common/ includes.
3173         * varobj.c: Fix common/ includes.
3174         * value.c: Fix common/ includes.
3175         * valops.c: Fix common/ includes.
3176         * utils.c: Fix common/ includes.
3177         * unittests/xml-utils-selftests.c: Fix common/ includes.
3178         * unittests/utils-selftests.c: Fix common/ includes.
3179         * unittests/unpack-selftests.c: Fix common/ includes.
3180         * unittests/tracepoint-selftests.c: Fix common/ includes.
3181         * unittests/style-selftests.c: Fix common/ includes.
3182         * unittests/string_view-selftests.c: Fix common/ includes.
3183         * unittests/scoped_restore-selftests.c: Fix common/ includes.
3184         * unittests/scoped_mmap-selftests.c: Fix common/ includes.
3185         * unittests/scoped_fd-selftests.c: Fix common/ includes.
3186         * unittests/rsp-low-selftests.c: Fix common/ includes.
3187         * unittests/parse-connection-spec-selftests.c: Fix common/
3188         includes.
3189         * unittests/optional-selftests.c: Fix common/ includes.
3190         * unittests/offset-type-selftests.c: Fix common/ includes.
3191         * unittests/observable-selftests.c: Fix common/ includes.
3192         * unittests/mkdir-recursive-selftests.c: Fix common/ includes.
3193         * unittests/memrange-selftests.c: Fix common/ includes.
3194         * unittests/memory-map-selftests.c: Fix common/ includes.
3195         * unittests/lookup_name_info-selftests.c: Fix common/ includes.
3196         * unittests/function-view-selftests.c: Fix common/ includes.
3197         * unittests/environ-selftests.c: Fix common/ includes.
3198         * unittests/copy_bitwise-selftests.c: Fix common/ includes.
3199         * unittests/common-utils-selftests.c: Fix common/ includes.
3200         * unittests/cli-utils-selftests.c: Fix common/ includes.
3201         * unittests/array-view-selftests.c: Fix common/ includes.
3202         * ui-file.c: Fix common/ includes.
3203         * tui/tui-io.c: Fix common/ includes.
3204         * tracepoint.h: Fix common/ includes.
3205         * tracepoint.c: Fix common/ includes.
3206         * tracefile-tfile.c: Fix common/ includes.
3207         * top.h: Fix common/ includes.
3208         * top.c: Fix common/ includes.
3209         * thread.c: Fix common/ includes.
3210         * target/waitstatus.h: Fix common/ includes.
3211         * target/waitstatus.c: Fix common/ includes.
3212         * target.h: Fix common/ includes.
3213         * target.c: Fix common/ includes.
3214         * target-memory.c: Fix common/ includes.
3215         * target-descriptions.c: Fix common/ includes.
3216         * symtab.h: Fix common/ includes.
3217         * symfile.c: Fix common/ includes.
3218         * stap-probe.c: Fix common/ includes.
3219         * spu-linux-nat.c: Fix common/ includes.
3220         * sparc-nat.c: Fix common/ includes.
3221         * source.c: Fix common/ includes.
3222         * solib.c: Fix common/ includes.
3223         * solib-target.c: Fix common/ includes.
3224         * ser-unix.c: Fix common/ includes.
3225         * ser-tcp.c: Fix common/ includes.
3226         * ser-pipe.c: Fix common/ includes.
3227         * ser-base.c: Fix common/ includes.
3228         * selftest-arch.c: Fix common/ includes.
3229         * s12z-tdep.c: Fix common/ includes.
3230         * rust-exp.y: Fix common/ includes.
3231         * rs6000-aix-tdep.c: Fix common/ includes.
3232         * riscv-tdep.c: Fix common/ includes.
3233         * remote.c: Fix common/ includes.
3234         * remote-notif.h: Fix common/ includes.
3235         * remote-fileio.h: Fix common/ includes.
3236         * remote-fileio.c: Fix common/ includes.
3237         * regcache.h: Fix common/ includes.
3238         * regcache.c: Fix common/ includes.
3239         * record-btrace.c: Fix common/ includes.
3240         * python/python.c: Fix common/ includes.
3241         * python/py-type.c: Fix common/ includes.
3242         * python/py-inferior.c: Fix common/ includes.
3243         * progspace.h: Fix common/ includes.
3244         * producer.c: Fix common/ includes.
3245         * procfs.c: Fix common/ includes.
3246         * proc-api.c: Fix common/ includes.
3247         * printcmd.c: Fix common/ includes.
3248         * ppc-linux-nat.c: Fix common/ includes.
3249         * parser-defs.h: Fix common/ includes.
3250         * osdata.c: Fix common/ includes.
3251         * obsd-nat.c: Fix common/ includes.
3252         * nat/x86-linux.c: Fix common/ includes.
3253         * nat/x86-linux-dregs.c: Fix common/ includes.
3254         * nat/x86-dregs.h: Fix common/ includes.
3255         * nat/x86-dregs.c: Fix common/ includes.
3256         * nat/ppc-linux.c: Fix common/ includes.
3257         * nat/mips-linux-watch.h: Fix common/ includes.
3258         * nat/mips-linux-watch.c: Fix common/ includes.
3259         * nat/linux-waitpid.c: Fix common/ includes.
3260         * nat/linux-ptrace.h: Fix common/ includes.
3261         * nat/linux-ptrace.c: Fix common/ includes.
3262         * nat/linux-procfs.c: Fix common/ includes.
3263         * nat/linux-personality.c: Fix common/ includes.
3264         * nat/linux-osdata.c: Fix common/ includes.
3265         * nat/linux-namespaces.c: Fix common/ includes.
3266         * nat/linux-btrace.h: Fix common/ includes.
3267         * nat/linux-btrace.c: Fix common/ includes.
3268         * nat/fork-inferior.c: Fix common/ includes.
3269         * nat/amd64-linux-siginfo.c: Fix common/ includes.
3270         * nat/aarch64-sve-linux-ptrace.c: Fix common/ includes.
3271         * nat/aarch64-linux.c: Fix common/ includes.
3272         * nat/aarch64-linux-hw-point.h: Fix common/ includes.
3273         * nat/aarch64-linux-hw-point.c: Fix common/ includes.
3274         * namespace.h: Fix common/ includes.
3275         * mips-linux-tdep.c: Fix common/ includes.
3276         * minsyms.c: Fix common/ includes.
3277         * mi/mi-parse.h: Fix common/ includes.
3278         * mi/mi-main.c: Fix common/ includes.
3279         * mi/mi-cmd-env.c: Fix common/ includes.
3280         * memrange.h: Fix common/ includes.
3281         * memattr.c: Fix common/ includes.
3282         * maint.h: Fix common/ includes.
3283         * maint.c: Fix common/ includes.
3284         * main.c: Fix common/ includes.
3285         * machoread.c: Fix common/ includes.
3286         * location.c: Fix common/ includes.
3287         * linux-thread-db.c: Fix common/ includes.
3288         * linux-nat.c: Fix common/ includes.
3289         * linux-fork.c: Fix common/ includes.
3290         * inline-frame.c: Fix common/ includes.
3291         * infrun.c: Fix common/ includes.
3292         * inflow.c: Fix common/ includes.
3293         * inferior.h: Fix common/ includes.
3294         * inferior.c: Fix common/ includes.
3295         * infcmd.c: Fix common/ includes.
3296         * inf-ptrace.c: Fix common/ includes.
3297         * inf-child.c: Fix common/ includes.
3298         * ia64-linux-nat.c: Fix common/ includes.
3299         * i387-tdep.c: Fix common/ includes.
3300         * i386-tdep.c: Fix common/ includes.
3301         * i386-linux-tdep.c: Fix common/ includes.
3302         * i386-linux-nat.c: Fix common/ includes.
3303         * i386-go32-tdep.c: Fix common/ includes.
3304         * i386-fbsd-tdep.c: Fix common/ includes.
3305         * i386-fbsd-nat.c: Fix common/ includes.
3306         * guile/scm-type.c: Fix common/ includes.
3307         * guile/guile.c: Fix common/ includes.
3308         * go32-nat.c: Fix common/ includes.
3309         * gnu-nat.c: Fix common/ includes.
3310         * gdbthread.h: Fix common/ includes.
3311         * gdbarch-selftests.c: Fix common/ includes.
3312         * gdb_usleep.c: Fix common/ includes.
3313         * gdb_select.h: Fix common/ includes.
3314         * gdb_bfd.c: Fix common/ includes.
3315         * gcore.c: Fix common/ includes.
3316         * fork-child.c: Fix common/ includes.
3317         * findvar.c: Fix common/ includes.
3318         * fbsd-nat.c: Fix common/ includes.
3319         * event-top.c: Fix common/ includes.
3320         * event-loop.c: Fix common/ includes.
3321         * dwarf2read.c: Fix common/ includes.
3322         * dwarf2loc.c: Fix common/ includes.
3323         * dwarf2-frame.c: Fix common/ includes.
3324         * dwarf-index-cache.c: Fix common/ includes.
3325         * dtrace-probe.c: Fix common/ includes.
3326         * disasm-selftests.c: Fix common/ includes.
3327         * defs.h: Fix common/ includes.
3328         * csky-tdep.c: Fix common/ includes.
3329         * cp-valprint.c: Fix common/ includes.
3330         * cp-support.h: Fix common/ includes.
3331         * cp-support.c: Fix common/ includes.
3332         * corelow.c: Fix common/ includes.
3333         * completer.h: Fix common/ includes.
3334         * completer.c: Fix common/ includes.
3335         * compile/compile.c: Fix common/ includes.
3336         * compile/compile-loc2c.c: Fix common/ includes.
3337         * compile/compile-cplus-types.c: Fix common/ includes.
3338         * compile/compile-cplus-symbols.c: Fix common/ includes.
3339         * command.h: Fix common/ includes.
3340         * cli/cli-dump.c: Fix common/ includes.
3341         * cli/cli-cmds.c: Fix common/ includes.
3342         * charset.c: Fix common/ includes.
3343         * build-id.c: Fix common/ includes.
3344         * btrace.h: Fix common/ includes.
3345         * btrace.c: Fix common/ includes.
3346         * breakpoint.h: Fix common/ includes.
3347         * breakpoint.c: Fix common/ includes.
3348         * ax.h: 
3349         (enum agent_op): Fix common/ includes.
3350         * ax-general.c (struct aop_map): Fix common/ includes.
3351         * ax-gdb.c: Fix common/ includes.
3352         * auxv.c: Fix common/ includes.
3353         * auto-load.c: Fix common/ includes.
3354         * arm-tdep.c: Fix common/ includes.
3355         * arch/riscv.c: Fix common/ includes.
3356         * arch/ppc-linux-common.c: Fix common/ includes.
3357         * arch/i386.c: Fix common/ includes.
3358         * arch/arm.c: Fix common/ includes.
3359         * arch/arm-linux.c: Fix common/ includes.
3360         * arch/arm-get-next-pcs.c: Fix common/ includes.
3361         * arch/amd64.c: Fix common/ includes.
3362         * arch/aarch64.c: Fix common/ includes.
3363         * arch/aarch64-insn.c: Fix common/ includes.
3364         * arch-utils.c: Fix common/ includes.
3365         * amd64-windows-tdep.c: Fix common/ includes.
3366         * amd64-tdep.c: Fix common/ includes.
3367         * amd64-sol2-tdep.c: Fix common/ includes.
3368         * amd64-obsd-tdep.c: Fix common/ includes.
3369         * amd64-nbsd-tdep.c: Fix common/ includes.
3370         * amd64-linux-tdep.c: Fix common/ includes.
3371         * amd64-linux-nat.c: Fix common/ includes.
3372         * amd64-fbsd-tdep.c: Fix common/ includes.
3373         * amd64-fbsd-nat.c: Fix common/ includes.
3374         * amd64-dicos-tdep.c: Fix common/ includes.
3375         * amd64-darwin-tdep.c: Fix common/ includes.
3376         * agent.c: Fix common/ includes.
3377         * ada-lang.h: Fix common/ includes.
3378         * ada-lang.c: Fix common/ includes.
3379         * aarch64-tdep.c: Fix common/ includes.
3380
3381 2019-01-25  Tom Tromey  <tom@tromey.com>
3382
3383         * common/create-version.sh: Use common/version.h.
3384
3385 2019-01-24  Pedro Alves  <palves@redhat.com>
3386
3387         * infrun.c (signal_stop, signal_print, signal_program)
3388         (signal_catch, signal_pass): Now arrays instead of pointers.
3389         (update_signals_program_target, do_target_resume)
3390         (signal_catch_update, handle_command, _initialize_infrun): Adjust.
3391         * linux-nat.c (linux_nat_target::pass_signals)
3392         (linux_nat_target::create_inferior, linux_nat_target::attach):
3393         Adjust.
3394         * linux-nat.h (linux_nat_target::pass_signals): Adjust.
3395         * nto-procfs.c (nto_procfs_target::pass_signals): Adjust.
3396         * procfs.c (procfs_target::pass_signals): Adjust.
3397         * record-full.c (record_full_target::resume): Adjust.
3398         * remote.c (remote_target::pass_signals)
3399         (remote_target::program_signals): Adjust.
3400         * target-debug.h (target_debug_print_signals): Now takes a
3401         gdb::array_view as parameter.  Adjust.
3402         * target.h (target_ops) <pass_signals, program_signals>: Replace
3403         pointer and length parameters with gdb::array_view.
3404         (target_pass_signals, target_program_signals): Likewise.
3405         * target-delegates.c: Regenerate.
3406
3407 2019-01-24  Pedro Alves  <palves@redhat.com>
3408
3409         * common/forward-scope-exit.h
3410         (forward_scope_exit::forward_scope_exit): Pass arguments to
3411         m_bind_function directly, instead of creating a std::bind and
3412         copying that.
3413
3414 2019-01-24  Alan Hayward  <alan.hayward@arm.com>
3415
3416         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1): Check
3417         for static members.
3418         (pass_in_v_vfp_candidate): Likewise.
3419
3420 2019-01-23  Tom Tromey  <tom@tromey.com>
3421             Pedro Alves  <palves@redhat.com>
3422
3423         * regcache.c (class regcache_invalidator): Remove.
3424         (regcache::raw_write): Use make_scope_exit.
3425
3426 2019-01-23  Tom Tromey  <tom@tromey.com>
3427
3428         * ui-out.h (class ui_out_emit_type): Update comment.
3429
3430 2019-01-23  Tom Tromey  <tom@tromey.com>
3431
3432         * infrun.c (fetch_inferior_event): Update comment.
3433
3434 2019-01-23  Tom Tromey  <tom@tromey.com>
3435             Pedro Alves  <palves@redhat.com>
3436
3437         * infrun.c (reinstall_readline_callback_handler_cleanup): Remove
3438         parameter.
3439         (fetch_inferior_event): Use SCOPE_EXIT.
3440
3441
3442 2019-01-23  Tom Tromey  <tom@tromey.com>
3443             Pedro Alves  <palves@redhat.com>
3444
3445         * infrun.c (disable_thread_events): Delete.
3446         (stop_all_threads): Use SCOPE_EXIT.
3447
3448 2019-01-23  Tom Tromey  <tom@tromey.com>
3449             Pedro Alves  <palves@redhat.com>
3450
3451         * symfile.c: Include forward-scope-exit.h.
3452         (clear_symtab_users_cleanup): Replace forward declaration with
3453         a FORWARD_SCOPE_EXIT.
3454         (syms_from_objfile_1): Use the forward_scope_exit and
3455         gdb::optional instead of cleanup_function.
3456         (reread_symbols): Use the forward_scope_exit instead of
3457         cleanup_function.
3458         (clear_symtab_users_cleanup): Remove function.
3459
3460 2019-01-23  Tom Tromey  <tom@tromey.com>
3461             Pedro Alves  <palves@redhat.com>
3462
3463         * linux-nat.c: Include scope-exit.h.
3464         (cleanup_target_stop): Remove.
3465         (linux_nat_target::static_tracepoint_markers_by_strid): Use
3466         SCOPE_EXIT.
3467
3468 2019-01-23  Tom Tromey  <tom@tromey.com>
3469             Pedro Alves  <palves@redhat.com>
3470
3471         * infcall.c (cleanup_delete_std_terminate_breakpoint): Remove.
3472         (call_function_by_hand_dummy): Use SCOPE_EXIT.
3473
3474 2019-01-23  Tom Tromey  <tom@tromey.com>
3475             Andrew Burgess  <andrew.burgess@embecosm.com>
3476             Pedro Alves  <palves@redhat.com>
3477
3478         * infrun.c (fetch_inferior_event): Use scope_exit.
3479         * utils.h (make_bpstat_clear_actions_cleanup): Don't declare.
3480         * top.c (execute_command): Use scope_exit.
3481         * breakpoint.c (bpstat_do_actions): Use scope_exit.
3482         * utils.c (do_bpstat_clear_actions_cleanup)
3483         (make_bpstat_clear_actions_cleanup): Remove.
3484
3485 2019-01-23  Tom Tromey  <tom@tromey.com>
3486             Pedro Alves  <palves@redhat.com>
3487
3488         * infrun.c: Include "common/scope-exit.h"
3489         (delete_just_stopped_threads_infrun_breakpoints_cleanup): Remove.
3490         (wait_for_inferior): Use SCOPE_EXIT.
3491         (fetch_inferior_event): Use scope_exit.
3492
3493 2019-01-23  Tom Tromey  <tom@tromey.com>
3494             Pedro Alves  <palves@redhat.com>
3495
3496         * breakpoint.c (create_breakpoint): Remove cleanup.
3497
3498 2019-01-23  Tom Tromey  <tom@tromey.com>
3499             Andrew Burgess  <andrew.burgess@embecosm.com>
3500             Pedro Alves  <palves@redhat.com>
3501
3502 2019-01-23  Pedro Alves  <palves@redhat.com>
3503
3504         * gdbarch-selftests.c (struct on_exit): Use SCOPE_EXIT.
3505
3506 2019-01-23  Pedro Alves  <palves@redhat.com>
3507             Andrew Burgess  <andrew.burgess@embecosm.com>
3508
3509         * gdbthread.h: Include "common/forward-scope-exit.h".
3510         (scoped_finish_thread_state): Redefine custom class in terms of
3511         forward_scope_exit.
3512
3513 2019-01-23  Pedro Alves  <palves@redhat.com>
3514             Andrew Burgess  <andrew.burgess@embecosm.com>
3515
3516         * common/forward-scope-exit.h: New file.
3517
3518 2019-01-23  Pedro Alves  <palves@redhat.com>
3519             Andrew Burgess  <andrew.burgess@embecosm.com>
3520             Tom Tromey  <tom@tromey.com>
3521
3522         * common/scope-exit.h: New file.
3523
3524 2019-01-23  Pedro Alves  <palves@redhat.com>
3525
3526         * common/preprocessor.h (ESC): Rename to ...
3527         (ESC_PARENS): ... this.
3528         * common/valid-expr.h (CHECK_VALID_EXPR_1, CHECK_VALID_EXPR_2)
3529         (CHECK_VALID_EXPR_3, CHECK_VALID_EXPR_4): Adjust.
3530
3531 2019-01-23  Tom Tromey  <tom@tromey.com>
3532
3533         * language.h (class scoped_switch_to_sym_language_if_auto):
3534         Initialize m_lang in both cases.
3535
3536 2019-01-23  Alan Hayward  <alan.hayward@arm.com>
3537
3538         * nat/aarch64-linux.c (aarch64_linux_new_thread): Replace XNEW
3539         with XCNEW.
3540
3541 2019-01-22  Tom Tromey  <tom@tromey.com>
3542
3543         * corelow.c: Do not include sys/file.h.
3544
3545 2019-01-22  Tom Tromey  <tom@tromey.com>
3546
3547         * tui/tui-wingeneral.h: Include gdb_curses.h.
3548
3549 2019-01-22  Tom Tromey  <tom@tromey.com>
3550
3551         * source-cache.h (class source_cache) <get_source_lines,
3552         get_plain_source_lines, extract_lines>: Rename "lines" parameter.
3553
3554 2019-01-22  Tom Tromey  <tom@tromey.com>
3555
3556         * remote-fileio.h (struct remote_target): Declare.
3557
3558 2019-01-22  Tom Tromey  <tom@tromey.com>
3559
3560         * python/py-arch.c: Do not include py-ref.h.
3561         * python/py-bpevent.c: Do not include py-ref.h.
3562         * python/py-cmd.c: Do not include py-ref.h.
3563         * python/py-continueevent.c: Do not include py-ref.h.
3564         * python/py-event.h: Do not include py-ref.h.
3565         * python/py-evtregistry.c: Do not include py-ref.h.
3566         * python/py-finishbreakpoint.c: Do not include py-ref.h.
3567         * python/py-frame.c: Do not include py-ref.h.
3568         * python/py-framefilter.c: Do not include py-ref.h.
3569         * python/py-function.c: Do not include py-ref.h.
3570         * python/py-infevents.c: Do not include py-ref.h.
3571         * python/py-linetable.c: Do not include py-ref.h.
3572         * python/py-objfile.c: Do not include py-ref.h.
3573         * python/py-param.c: Do not include py-ref.h.
3574         * python/py-prettyprint.c: Do not include py-ref.h.
3575         * python/py-progspace.c: Do not include py-ref.h.
3576         * python/py-symbol.c: Do not include py-ref.h.
3577         * python/py-symtab.c: Do not include py-ref.h.
3578         * python/py-type.c: Do not include py-ref.h.
3579         * python/py-unwind.c: Do not include py-ref.h.
3580         * python/py-utils.c: Do not include py-ref.h.
3581         * python/py-value.c: Do not include py-ref.h.
3582         * python/py-varobj.c: Do not include py-ref.h.
3583         * python/py-xmethods.c: Do not include py-ref.h.
3584         * python/python.c: Do not include py-ref.h.
3585         * varobj.c: Do not include py-ref.h.
3586
3587 2019-01-22  Tom Tromey  <tom@tromey.com>
3588
3589         * objfiles.h (struct objfile_per_bfd_storage): Use "struct"
3590         keyword for bcache.
3591
3592 2019-01-22  Tom Tromey  <tom@tromey.com>
3593
3594         * compile/compile-cplus-types.c: Remove a comment by #include.
3595
3596 2019-01-22  Tom Tromey  <tom@tromey.com>
3597
3598         * compile/gcc-c-plugin.h: Include compile-internal.h.
3599
3600 2019-01-22  Tom Tromey  <tom@tromey.com>
3601
3602         * stabsread.c (EXTERN): Do not define.
3603         (symnum, next_symbol_text_func, processing_gcc_compilation)
3604         (within_function, global_sym_chain, global_stabs)
3605         (previous_stab_code, this_object_header_files)
3606         (n_this_object_header_files)
3607         (n_allocated_this_object_header_files): Define.
3608         * stabsread.h (EXTERN): Never define.  Use "extern".
3609
3610 2019-01-22  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3611
3612         * event-top.c (handle_line_of_input): use unique_xmalloc_ptr for
3613         history_value.
3614
3615 2019-01-21  Tom Tromey  <tom@tromey.com>
3616
3617         * ui-out.c: Fix includes.
3618         * tui/tui-source.c: Fix includes.
3619         * target.c: Fix includes.
3620         * remote.c: Fix includes.
3621         * regcache.c: Fix includes.
3622         * python/py-block.c: Fix includes.
3623         * printcmd.c: Fix includes.
3624         * or1k-tdep.c: Fix includes.
3625         * mi/mi-main.c: Fix includes.
3626         * m32r-tdep.c: Fix includes.
3627         * csky-tdep.c: Fix includes.
3628         * compile/compile-cplus-types.c: Fix includes.
3629         * cli/cli-interp.c: Fix includes.
3630
3631 2019-01-21  Alan Hayward  <alan.hayward@arm.com>
3632
3633         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1): Check
3634         for padding.
3635
3636 2019-01-16  Tom Tromey  <tom@tromey.com>
3637
3638         * objfiles.h (struct minimal_symbol_iterator): Rename.  Move
3639         earlier.
3640         (struct objfile) <msymbols_range>: Move from top level.
3641         <msymbols>: New method.
3642         (class objfile_msymbols): Remove.
3643         * symtab.c (default_collect_symbol_completion_matches_break_on):
3644         Update.
3645         * symmisc.c (dump_msymbols): Update.
3646         * stabsread.c (scan_file_globals): Update.
3647         * objc-lang.c (info_selectors_command, info_classes_command)
3648         (find_methods): Update.
3649         * minsyms.c (find_solib_trampoline_target): Update.
3650         * hppa-tdep.c (hppa_lookup_stub_minimal_symbol): Update.
3651         * coffread.c (coff_symfile_read): Update.
3652         * ada-lang.c (ada_lookup_simple_minsym)
3653         (ada_collect_symbol_completion_matches): Update.
3654
3655 2019-01-16  Tom Tromey  <tom@tromey.com>
3656
3657         * objfiles.h (class objfile_msymbols) <iterator>: Change argument
3658         type.  Remove no-argument constructor.
3659         <iterator::operator++>: Simplify.
3660         <begin>: Update.
3661         <end>: Use minimal_symbol_count.
3662
3663 2019-01-16  Tom Tromey  <tom@tromey.com>
3664
3665         * objfiles.h (struct objfile) <psymtabs>: New method.
3666         (class objfile_psymtabs): Remove.
3667         * psymtab.h (class psymtab_storage) <partial_symtab_range>: New
3668         typedef.
3669         <range>: New method.
3670         (require_partial_symbols): Change return type.
3671         * psymtab.c (require_partial_symbols)
3672         (psym_expand_symtabs_matching): Update.
3673         * mdebugread.c (parse_partial_symbols): Update.
3674         * dbxread.c (dbx_end_psymtab): Update.
3675
3676 2019-01-15  Tom Tromey  <tom@tromey.com>
3677
3678         * symtab.c (lookup_objfile_from_block)
3679         (lookup_symbol_in_objfile_symtabs)
3680         (basic_lookup_transparent_type_1, find_pc_sect_compunit_symtab)
3681         (find_line_symtab, info_sources_command)
3682         (default_collect_symbol_completion_matches_break_on)
3683         (make_source_files_completion_list): Update.
3684         * symmisc.c (print_objfile_statistics, dump_objfile)
3685         (maintenance_print_symbols, maintenance_info_symtabs)
3686         (maintenance_check_symtabs, maintenance_info_line_tables):
3687         Update.
3688         * source.c (select_source_symtab)
3689         (forget_cached_source_info_for_objfile): Update.
3690         * objfiles.h (class objfile_compunits): Remove.
3691         (struct objfile) <compunits_range>: New typedef.
3692         (compunits): New method.
3693         * objfiles.c (objfile_relocate1): Update.
3694         * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Update.
3695         * maint.c (count_symtabs_and_blocks): Update.
3696         * linespec.c (iterate_over_all_matching_symtabs): Update.
3697         * cp-support.c (add_symbol_overload_list_qualified): Update.
3698         * coffread.c (coff_symtab_read): Update.
3699         * ada-lang.c (add_nonlocal_symbols)
3700         (ada_collect_symbol_completion_matches)
3701         (ada_add_global_exceptions): Update.
3702
3703 2019-01-15  Tom Tromey  <tom@tromey.com>
3704
3705         * progspace.h (program_space) <objfiles_safe_range>: New
3706         typedef.
3707         <objfiles_safe>: New method.
3708         * objfiles.h (class all_objfiles_safe): Remove.
3709         * objfiles.c (free_all_objfiles, objfile_purge_solibs): Update.
3710         * jit.c (jit_inferior_exit_hook): Update.
3711
3712 2019-01-17  Tom Tromey  <tom@tromey.com>
3713
3714         * progspace.h (program_space) <objfiles_range>: New typedef.
3715         <objfiles>: New method.
3716         <objfiles_head>: Rename from objfiles.
3717         (object_files): Update.
3718         * guile/scm-progspace.c (gdbscm_progspace_objfiles): Update.
3719         * guile/scm-pretty-print.c
3720         (ppscm_find_pretty_printer_from_objfiles): Update.
3721         * guile/scm-objfile.c (gdbscm_objfiles): Update.
3722         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3723         Update.
3724         * python/py-progspace.c (pspy_get_objfiles): Update.
3725         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
3726         Update.
3727         * python/py-objfile.c (objfpy_lookup_objfile_by_name)
3728         (objfpy_lookup_objfile_by_build_id): Update.
3729         * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Update.
3730         * windows-tdep.c (windows_iterate_over_objfiles_in_search_order):
3731         Update.
3732         * symtab.c (iterate_over_symtabs, matching_obj_sections)
3733         (expand_symtab_containing_pc, lookup_objfile_from_block)
3734         (lookup_static_symbol, basic_lookup_transparent_type)
3735         (find_pc_sect_compunit_symtab, find_symbol_at_address)
3736         (find_line_symtab, info_sources_command)
3737         (default_collect_symbol_completion_matches_break_on)
3738         (make_source_files_completion_list, find_main_name): Update.
3739         * symmisc.c (print_symbol_bcache_statistics)
3740         (print_objfile_statistics, maintenance_print_symbols)
3741         (maintenance_print_msymbols, maintenance_print_objfiles)
3742         (maintenance_info_symtabs, maintenance_check_symtabs)
3743         (maintenance_expand_symtabs, maintenance_info_line_tables):
3744         Update.
3745         * symfile.c (remove_symbol_file_command, overlay_invalidate_all)
3746         (find_pc_overlay, find_pc_mapped_section, list_overlays_command)
3747         (map_overlay_command, unmap_overlay_command)
3748         (simple_overlay_update, expand_symtabs_matching)
3749         (map_symbol_filenames): Update.
3750         * symfile-debug.c (set_debug_symfile): Update.
3751         * spu-tdep.c (spu_overlay_update, spu_objfile_from_frame):
3752         Update.
3753         * source.c (select_source_symtab, forget_cached_source_info):
3754         Update.
3755         * solib.c (solib_read_symbols): Update.
3756         * solib-spu.c (append_ocl_sos): Update.
3757         * psymtab.c (maintenance_print_psymbols)
3758         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
3759         * probe.c (parse_probes_in_pspace, find_probe_by_pc): Update.
3760         * printcmd.c (info_symbol_command): Update.
3761         * ppc-linux-tdep.c (ppc_linux_spe_context_inferior_created):
3762         Update.
3763         * objfiles.h (class all_objfiles): Remove.
3764         * objfiles.c (have_partial_symbols, have_full_symbols)
3765         (have_minimal_symbols, qsort_cmp, update_section_map)
3766         (shared_objfile_contains_address_p)
3767         (default_iterate_over_objfiles_in_search_order): Update.
3768         * objc-lang.c (info_selectors_command, info_classes_command)
3769         (find_methods): Update.
3770         * minsyms.c (find_solib_trampoline_target): Update.
3771         * maint.c (maintenance_info_sections)
3772         (maintenance_translate_address, count_symtabs_and_blocks):
3773         Update.
3774         * main.c (captured_main_1): Update.
3775         * linux-thread-db.c (try_thread_db_load_from_pdir)
3776         (has_libpthread): Update.
3777         * linespec.c (iterate_over_all_matching_symtabs)
3778         (search_minsyms_for_name): Update.
3779         * jit.c (jit_find_objf_with_entry_addr): Update.
3780         * hppa-tdep.c (find_unwind_entry)
3781         (hppa_lookup_stub_minimal_symbol): Update.
3782         * gcore.c (gcore_create_callback, objfile_find_memory_regions):
3783         Update.
3784         * elfread.c (elf_gnu_ifunc_resolve_by_cache)
3785         (elf_gnu_ifunc_resolve_by_got): Update.
3786         * dwarf2-frame.c (dwarf2_frame_find_fde): Update.
3787         * dwarf-index-write.c (save_gdb_index_command): Update.
3788         * cp-support.c (add_symbol_overload_list_qualified): Update.
3789         * breakpoint.c (create_overlay_event_breakpoint)
3790         (create_longjmp_master_breakpoint)
3791         (create_std_terminate_master_breakpoint)
3792         (create_exception_master_breakpoint): Update.
3793         * blockframe.c (find_pc_partial_function): Update.
3794         * ada-lang.c (ada_lookup_simple_minsym, add_nonlocal_symbols)
3795         (ada_collect_symbol_completion_matches)
3796         (ada_add_global_exceptions): Update.
3797
3798 2019-01-17  Tom Tromey  <tom@tromey.com>
3799
3800         * solib-target.c (lm_info_target_p): Remove typedef.  Don't
3801         declare VEC.
3802         (solib_target_parse_libraries): Change return type.
3803         (library_list_start_segment, library_list_start_section)
3804         (library_list_end_library, library_list_start_library); Update.
3805         (solib_target_free_library_list): Remove.
3806         (solib_target_parse_libraries): Remove cleanup.  Change return
3807         type.
3808         (solib_target_current_sos): Update.
3809
3810 2019-01-17  Tom Tromey  <tromey@bapiya>
3811
3812         * valprint.c: Replace "the the" with "the".
3813         * symtab.c: Replace "the the" with "the".
3814         * solib.c: Replace "the the" with "the".
3815         * solib-dsbt.c: Replace "the the" with "the".
3816         * linespec.c: Replace "the the" with "the".
3817         * dwarf2loc.h: Replace "the the" with "the".
3818         * amd64-windows-tdep.c: Replace "the the" with "the".
3819         * aarch64-tdep.c: Replace "the the" with "the".
3820
3821 2019-01-16  Keith Seitz  <keiths@redhat.com>
3822
3823         PR gdb/23773
3824         * dwarf2read.c (dwarf2_cu) <ancestor>: New field.
3825         <builder>: Rename to ..
3826         <m_builder>: ... this and make private.
3827         (dwarf2_cu::get_builder): New method.  Change all users of
3828         `builder' to use this method.
3829         (dwarf2_start_symtab): Move to ...
3830         (dwarf2_cu::start_symtab): ... here.  Update all callers
3831         (setup_type_unit_groups): Move to ...
3832         (dwarf2_cu::setup_type_unit_groups): ... here.  Update all
3833         callers.
3834         (dwarf2_cu::reset_builder): New method.
3835         (process_full_compunit, process_full_type_unit): Use
3836         dwarf2_cu::reset_builder.
3837         (follow_die_offset): Record the ancestor CU if it is different
3838         from the followed DIE's CU.
3839         (follow_die_sig_1): Likewise.
3840
3841 2019-01-15  Tom Tromey  <tom@tromey.com>
3842
3843         * remote.c (class remote_state) <buf>: Now a char_vector.
3844         <buf_size>: Remove.
3845         (remote_target::getpkt): Change type of buf.  Remove sizeof_buf
3846         parameter.
3847         (remote_target::getpkt_or_notif_sane_1)
3848         (remote_target::getpkt_sane)
3849         (remote_target::getpkt_or_notif_sane): Likewise.
3850         (class remote_target) <putpkt>: New overload.
3851         (remote_target::read_frame): Change type of "buf_p".  Remove
3852         sizeof_p parameter.
3853         (packet_ok): New overload.
3854         (packet_check_result): New overload.
3855         Update all uses.
3856
3857 2019-01-14  Tom Tromey  <tom@tromey.com>
3858
3859         * remote-notif.c (handle_notification, remote_notif_ack)
3860         (remote_notif_parse): Make "buf" const.
3861         * remote-notif.h (struct notif_client) <parse, ack>: Make "buf"
3862         const.
3863         (remote_notif_parse, remote_notif_ack, handle_notification):
3864         Likewise.
3865         * remote.c (remote_notif_stop_parse): Make "buf" const.
3866         (remote_target::remote_parse_stop_reply): Make "buf" const.
3867         (remote_notif_stop_ack): Make "buf" const.
3868
3869 2019-01-14  Tom Tromey  <tom@tromey.com>
3870
3871         * remote.c (remote_console_output): Make parameter const.
3872
3873 2019-01-14  Tom Tromey  <tom@tromey.com>
3874
3875         * target-debug.h (target_debug_print_signals): Constify.
3876         * nto-procfs.c (nto_procfs_target::pass_signals): Update.
3877         * procfs.c (procfs_target::pass_signals): Update.
3878         * linux-nat.c (linux_nat_target::pass_signals): Update.
3879         * linux-nat.h (class linux_nat_target) <pass_signals>: Update.
3880         * target-delegates.c: Rebuild.
3881         * remote.c (remote_target::program_signals): Update.
3882         (remote_target::pass_signals): Update.
3883         * target.c (target_pass_signals): Constify argument.
3884         (target_program_signals): Likewise.
3885         * target.h (struct target_ops) <pass_signals, program_signals>:
3886         Constify argument.
3887         (target_pass_signals, target_program_signals): Constify argument.
3888
3889 2019-01-14  Tom Tromey  <tom@tromey.com>
3890
3891         PR tui/28819:
3892         * tui/tui-io.c (gdb_wgetch): Print \r when needed.
3893
3894 2019-01-14  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
3895
3896         * ppc-tdep.h (struct gdbarch_tdep) <ppc_v0_alias_regnum>: New
3897         field.
3898         * rs6000-tdep.c: Include reggroups.h.
3899         (IS_V_ALIAS_PSEUDOREG): Define.
3900         (rs6000_register_name): Return names for the "vX" aliases.
3901         (rs6000_pseudo_register_type): Return type for the "vX" aliases.
3902         (rs6000_pseudo_register_reggroup_p): Restore.  Handle "vX"
3903         aliases.  Call default_register_reggroup_p for all other
3904         pseudo-registers.
3905         (v_alias_pseudo_register_read, v_alias_pseudo_register_write):
3906         New functions.
3907         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
3908         Handle "vX" aliases.
3909         (v_alias_pseudo_register_collect): New function.
3910         (rs6000_ax_pseudo_register_collect): Handle "vX" aliases.
3911         (rs6000_gdbarch_init): Initialize "vX" aliases as
3912         pseudo-registers.  Restore registration of
3913         rs6000_pseudo_register_reggroup_p with
3914         set_tdesc_pseudo_register_reggroup_p.
3915
3916 2019-01-13  Max Filippov  <jcmvbkbc@gmail.com>
3917
3918         * xtensa-linux-tdep.c (xtensa_linux_init_abi): Update
3919         tdep->num_pseudo_regs. Add calls to set_gdbarch_num_regs and
3920         set_gdbarch_num_pseudo_regs.
3921
3922 2019-01-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3923
3924         * cli/cli-style.h (class cli_style_option): <add_setshow_commands>
3925         Remove arg prefixname, add do_set and do_show.
3926         Add member functions set_list and show_list.
3927         * cli/cli-style.c (class cli_style_option): Update accordingly.
3928         (style_set_list): Move to file scope.
3929         (style_show_list): Likewise.
3930         (set_style): Call help_list.
3931         (show_style): Call cmd_show_list.
3932         (_initialize_cli_style): New macro STYLE_ADD_SETSHOW_COMMANDS.
3933         Update to use the new macro.
3934
3935 2019-10-12  Joel Brobecker  <brobecker@adacore.com>
3936
3937         * ada-lang.c (_initialize_ada_language): Expand the help text
3938         for the "catch exception" command.
3939
3940 2019-01-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3941
3942         * symtab.c (matching_obj_sections): Initialize obj,
3943         declare it closer to its usage.
3944
3945 2019-01-10  Tom Tromey  <tom@tromey.com>
3946
3947         * thread-iter.h (inf_threads_iterator): Use next_iterator.
3948         (basic_inf_threads_range): Remove.
3949         (inf_threads_range, inf_non_exited_threads_range)
3950         (safe_inf_threads_range): Use next_adapter.
3951
3952 2019-01-10  Keith Seitz  <keiths@redhat.com>
3953
3954         PR gdb/23712
3955         PR symtab/23010
3956         * dwarf2read.c (dw2_add_symbol_to_list): Remove.
3957         (fixup_go_packaging, new_symbol): Use add_symbol_to_list.
3958
3959 2019-01-10  Keith Seitz  <keiths@redhat.com>
3960
3961         PR gdb/23712
3962         PR symtab/23010
3963         * dictionary.c (pending_to_vector): Remove.
3964         (dict_create_hashed_1, dict_create_linear_1, dict_add_pending_1):
3965         Remove _1 suffix, replacing functions of the same name.  Update
3966         all callers.
3967         (dict_create_hashed, dict_create_hashed_expandable)
3968         (dict_create_linear, dict_create_linear_expandable, dict_free)
3969         (dict_add_symbol, dict_add_pending, dict_size, dict_empty):
3970         Make functions static.
3971
3972 2019-01-10  Keith Seitz  <keiths@redhat.com>
3973
3974         PR gdb/23712
3975         PR symtab/23010
3976         * dictionary.h (struct dictionary): Replace declaration with
3977         multidictionary.
3978         (dict_create_hashed, dict_create_hashed_expandable)
3979         (dict_create_linear, dict_create_linear_expandable)
3980         (dict_free, dict_add_symbol, dict_add_pending, dict_empty)
3981         (dict_iterator_first, dict_iterator_next, dict_iter_match_first)
3982         (dict_iter_match_next, dict_size): Rename to "mdict_" versions
3983         taking multidictionary argument.
3984         [ALL_DICT_SYMBOLS]: Update for multidictionary.
3985         * block.h (struct block) <dict>: Change to multidictionary
3986         and rename `multidict'.
3987         * block.c, buildsym.c, jit.c, mdebugread.c, objfiles.c,
3988         symmisc.c: Update all dictionary references to multidictionary.
3989
3990 2019-01-10  Keith Seitz  <keiths@redhat.com>
3991
3992         PR gdb/23712
3993         PR symtab/23010
3994         * dictionary.c: Include unordered_map.
3995         (pending_to_vector): New function.
3996         (dict_create_hashed_1, dict_create_linear_1, dict_add_pending_1):
3997         Rewrite the non-"_1" functions to take vector instead
3998         of linked list.
3999         (dict_create_hashed, dict_create_linear, dict_add_pending): Use the
4000         "new" _1 versions of the same name.
4001         (multidictionary): Define.
4002         (std::hash<enum language): New definition.
4003         (collate_pending_symbols_by_language, mdict_create_hashed)
4004         (mdict_create_hashed_expandable, mdict_create_linear)
4005         (mdict_create_linear_expandable, mdict_free)
4006         (find_language_dictionary, create_new_language_dictionary)
4007         (mdict_add_symbol, mdict_add_pending, mdict_iterator_first)
4008         (mdict_iterator_next, mdict_iter_match_first, mdict_iter_match_next)
4009         (mdict_size, mdict_empty): New functions.
4010         * dictionary.h (mdict_iterator): Define.
4011
4012 2019-01-10  Pedro Alves  <palves@redhat.com>
4013
4014         * breakpoint.c (read_uploaded_action)
4015         (create_tracepoint_from_upload): Adjust to use
4016         gdb::unique_xmalloc_ptr.
4017         * ctf.c (ctf_write_uploaded_tp):
4018         (SET_ARRAY_FIELD): Use emplace_back.
4019         (SET_STRING_FIELD): Adjust to use gdb::unique_xmalloc_ptr.
4020         * tracefile-tfile.c (tfile_write_uploaded_tp):
4021         * tracepoint.c (parse_tracepoint_definition): Adjust to use
4022         gdb::unique_xmalloc_ptr.
4023         * tracepoint.h (struct uploaded_tp) <cond, actions, step_actions,
4024         at_string, cond_string, cmd_strings>: Replace char pointers
4025         with gdb::unique_xmalloc_ptr.
4026
4027 2019-01-10  Pedro Alves  <palves@redhat.com>
4028
4029         * solib-target.c (library_list_start_library): Don't xstrdup name.
4030
4031 2019-01-10  Pedro Alves  <palves@redhat.com>
4032
4033         * mdebugread.c (parse_partial_symbols): Use
4034         gdb::unique_xmalloc_ptr to manage heap-allocated 'stabsstring'.
4035
4036 2019-01-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4037
4038         * linux-fork.c (scoped_switch_fork_info)
4039         <~scoped_switch_fork_info>: Fix incorrect variable name.
4040
4041 2019-01-10  Andrew Burgess  <andrew.burgess@embecosm.com>
4042
4043         * linux-fork.c (scoped_switch_fork_info)
4044         <scoped_switch_fork_info>: Make explicit.
4045         <~scoped_switch_fork_info>: Wrap core in TRY/CATCH.
4046
4047 2019-01-10  Tom Tromey  <tom@tromey.com>
4048
4049         * objfiles.h (objfile::reset_psymtabs): Update.
4050         * objfiles.c (objfile::objfile): Update.
4051         * psymtab.h (psymtab_storage::obstack): Update.
4052         (psymtab_storage::m_obstack): Use gdb::optional.
4053         (class psymtab_storage): Update comment.  Remove objfile
4054         parameter.
4055         * psymtab.c (psymtab_storage::psymtab_storage): Update.
4056
4057 2019-01-10  Tom Tromey  <tom@tromey.com>
4058
4059         * psymtab.h (psymtab_storage::allocate_psymtab): New method.
4060         <free_psymtabs>: Now private.
4061         * psymtab.c (psymtab_storage::allocate_psymtab): Implement.
4062         (allocate_psymtab): Use new method.
4063
4064 2019-01-10  Tom Tromey  <tom@tromey.com>
4065
4066         * xcoffread.c (xcoff_end_psymtab): Use allocate_dependencies.
4067         * psymtab.h (psymtab_storage::allocate_dependencies): New method.
4068         * mdebugread.c (parse_partial_symbols): Use
4069         allocate_dependencies.
4070         * dwarf2read.c (dwarf2_create_include_psymtab): Use
4071         allocate_dependencies.
4072         (process_psymtab_comp_unit_reader)
4073         (build_type_psymtab_dependencies): Likewise.
4074         * dbxread.c (dbx_end_psymtab): Use allocate_dependencies.
4075
4076 2019-01-10  Tom Tromey  <tom@tromey.com>
4077
4078         * psymtab.c (add_psymbol_to_bcache): Pass psymtab obstack to
4079         PSYMBOL_SET_LANGUAGE.
4080         (allocate_psymtab): Allocate psymtab on the psymtab obstack.
4081
4082 2019-01-10  Tom Tromey  <tom@tromey.com>
4083
4084         * psymtab.h (psymtab_storage::obstack): New method.
4085         <m_obstack>: Rename from obstack; now private.
4086         * psymtab.c (psymtab_storage): Update.
4087         * dwarf2read.c (create_addrmap_from_index)
4088         (create_addrmap_from_aranges, dwarf2_build_psymtabs_hard):
4089         Update.
4090
4091 2019-01-10  Tom Tromey  <tom@tromey.com>
4092
4093         * symfile.c (reread_symbols): Call objfile->reset_psymtabs.
4094         * objfiles.h (objfile::reset_psymtabs): New method.
4095
4096 2019-01-10  Tom Tromey  <tom@tromey.com>
4097
4098         * symmisc.c (print_symbol_bcache_statistics): Update.
4099         (print_objfile_statistics): Update.
4100         * symfile.c (reread_symbols): Update.
4101         * psymtab.h (class psymtab_storage): New.
4102         * psymtab.c (psymtab_storage): New constructor.
4103         (~psymtab_storage): New destructor.
4104         (require_partial_symbols): Update.
4105         (ALL_OBJFILE_PSYMTABS_REQUIRED): Rewrite.
4106         (find_pc_sect_psymtab, find_pc_sect_psymbol)
4107         (match_partial_symbol, lookup_partial_symbol, dump_psymtab)
4108         (psym_dump, recursively_search_psymtabs, psym_has_symbols)
4109         (psym_find_compunit_symtab_by_address, sort_pst_symbols)
4110         (start_psymtab_common, end_psymtab_common)
4111         (add_psymbol_to_bcache, add_psymbol_to_list, init_psymbol_list)
4112         (allocate_psymtab): Update.
4113         (psymtab_storage::discard_psymtab): Rename from discard_psymtab.
4114         Update.
4115         (dump_psymtab_addrmap, maintenance_print_psymbols)
4116         (maintenance_check_psymtabs): Update.
4117         (class objfile_psymtabs): Move to objfiles.h.
4118         * psympriv.h (discard_psymtab): Now inline.
4119         (psymtab_discarder::psymtab_discarder): Update.
4120         (psymtab_discarder::~psymtab_discarder): Update.
4121         (ALL_OBJFILE_PSYMTABS): Rewrite.
4122         * objfiles.h (struct objfile) <psymtabs, psymtabs_addrmap,
4123         free_psymtabs, psymbol_cache, global_psymbols, static_psymbols>:
4124         Remove fields.
4125         <partial_symtabs>: New field.
4126         (class objfile_psymtabs): Move from psymtab.h.  Update.
4127         * objfiles.c (objfile::objfile): Initialize partial_symtabs, not
4128         psymbol_cache.
4129         (objfile::~objfile): Don't destroy psymbol_cache.
4130         * mdebugread.c (parse_partial_symbols): Update.
4131         * dwarf2read.c (create_addrmap_from_index)
4132         (create_addrmap_from_aranges, dw2_find_pc_sect_compunit_symtab)
4133         (process_psymtab_comp_unit_reader, dwarf2_build_psymtabs_hard)
4134         (add_partial_subprogram, dwarf2_ranges_read): Update.
4135         * dwarf-index-write.c (write_address_map)
4136         (write_one_signatured_type, recursively_write_psymbols)
4137         (class debug_names, class debug_names, write_psymtabs_to_index):
4138         Update.
4139
4140 2019-01-10  Tom Tromey  <tom@tromey.com>
4141
4142         * symtab.h (SYMBOL_SET_NAMES): Update.
4143         (symbol_set_names): Update.
4144         (MSYMBOL_SET_NAMES): Update.
4145         * symtab.c (symbol_set_names): Change argument to be an
4146         objfile_per_bfd_storage.
4147         * psymtab.c (add_psymbol_to_bcache): Update.
4148         * psympriv.h (PSYMBOL_SET_NAMES): Take per_bfd argument.
4149
4150 2019-01-10  Tom Tromey  <tom@tromey.com>
4151
4152         * symtab.c (create_demangled_names_hash): Change argument to be an
4153         objfile_per_bfd_storage.
4154         (symbol_set_names): Update.
4155
4156 2019-01-10  Tom Tromey  <tom@tromey.com>
4157
4158         * xcoffread.c (xcoff_initial_scan): Unconditionally call
4159         init_psymbol_list.
4160         * psymtab.c (init_psymbol_list): Do nothing if already called.
4161         * psympriv.h (init_psymbol_list): Add comment.
4162         * dwarf2read.c (dwarf2_build_psymtabs): Unconditionally call
4163         init_psymbol_list.
4164         * dbxread.c (dbx_symfile_read): Unconditionally call
4165         init_psymbol_list.
4166
4167 2019-01-10  Tom Tromey  <tom@tromey.com>
4168
4169         * xcoffread.c (scan_xcoff_symtab): Update.
4170         * psymtab.c (add_psymbol_to_list): Replace "list" parameter with
4171         "where".
4172         * mdebugread.c (parse_partial_symbols)
4173         (handle_psymbol_enumerators): Update.
4174         * dwarf2read.c (add_partial_symbol, load_partial_dies): Update.
4175         * dbxread.c (read_dbx_symtab): Update.
4176         * psympriv.h (psymbol_placement): New enum.
4177         (add_psymbol_to_list): Update.
4178
4179 2019-01-10  Tom Tromey  <tom@tromey.com>
4180
4181         * xcoffread.c (xcoff_start_psymtab): Remove global_psymbols and
4182         static_psymbols parameters.
4183         (scan_xcoff_symtab): Update.
4184         * psymtab.c (start_psymtab_common): Remove global_psymbols and
4185         static_psymbols parameters.
4186         * psympriv.h (start_psymtab_common): Update.
4187         * mdebugread.c (parse_partial_symbols): Update.
4188         * dwarf2read.c (create_partial_symtab): Update.
4189         * dbxread.c (read_dbx_symtab): Update.
4190         (start_psymtab): Remove global_psymbols and static_psymbols
4191         parameters.
4192
4193 2019-01-10  Tom Tromey  <tom@tromey.com>
4194
4195         * xcoffread.c (xcoff_end_psymtab): Remove some initializations.
4196         * psymtab.c (allocate_psymtab): Add comment.
4197         * psympriv.h (allocate_psymtab): Add comment.
4198         * dwarf2read.c (dwarf2_create_include_psymtab): Remove some
4199         initializations.
4200         * dbxread.c (dbx_end_psymtab): Remove some initializations.
4201
4202 2019-01-10  Tom Tromey  <tom@tromey.com>
4203
4204         * symfile.h (mdebug_build_psymtabs, elfmdebug_build_psymtabs):
4205         Don't declare.
4206         * mipsread.c: Include mdebugread.h.
4207         * mdebugread.h (mdebug_build_psymtabs, elfmdebug_build_psymtabs):
4208         Declare.
4209         * elfread.c: Include mdebugread.h.
4210
4211 2019-01-09  Tom Tromey  <tom@tromey.com>
4212
4213         * dbxread.c (dbx_end_psymtab): Use objfile_psymtabs.
4214         * mdebugread.c (parse_partial_symbols): Use objfile_psymtabs.
4215         * psymtab.c (ALL_OBJFILE_PSYMTABS_REQUIRED): Remove.
4216         (psym_map_symtabs_matching_filename, find_pc_sect_psymtab)
4217         (psym_lookup_symbol, psym_find_last_source_symtab)
4218         (psym_forget_cached_source_info, psym_print_stats)
4219         (psym_expand_symtabs_for_function, psym_expand_all_symtabs)
4220         (psym_expand_symtabs_with_fullname, psym_map_symbol_filenames)
4221         (psym_map_matching_symbols, psym_expand_symtabs_matching)
4222         (psym_find_compunit_symtab_by_address)
4223         (maintenance_print_psymbols, maintenance_info_psymtabs)
4224         (maintenance_check_psymtabs): Use ranged for.
4225         * psymtab.h (class objfile_psymtabs): New.
4226         (require_partial_symbols): Return objfile_psymtabs.
4227         * psympriv.h (ALL_OBJFILE_PSYMTABS): Remove.
4228
4229 2019-01-09  Tom Tromey  <tom@tromey.com>
4230
4231         * symfile.c (overlay_invalidate_all, find_pc_overlay)
4232         (find_pc_mapped_section, list_overlays_command)
4233         (map_overlay_command, unmap_overlay_command)
4234         (simple_overlay_update): Use all_objfiles.
4235         * spu-tdep.c (spu_overlay_update): Use all_objfiles.
4236         * printcmd.c (info_symbol_command): Use all_objfiles.
4237         * objfiles.h (ALL_OBJSECTIONS): Remove.
4238         * maint.c (maintenance_translate_address): Use all_objfiles.
4239         * gcore.c (gcore_create_callback): Use all_objfiles.
4240         (objfile_find_memory_regions): Likewise.
4241
4242 2019-01-09  Tom Tromey  <tom@tromey.com>
4243
4244         * symtab.c (find_line_symtab, info_sources_command)
4245         (make_source_files_completion_list): Use objfile_compunits.
4246         * source.c (select_source_symtab): Use objfile_compunits.
4247         * objfiles.h (struct objfile): Update comment.
4248         (ALL_OBJFILES): Remove.
4249         (ALL_FILETABS): Remove.
4250         * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Use
4251         objfile_compunits.
4252
4253 2019-01-09  Tom Tromey  <tom@tromey.com>
4254
4255         * symmisc.c (print_objfile_statistics, dump_objfile)
4256         (maintenance_print_symbols): Use compunit_filetabs.
4257         * source.c (forget_cached_source_info_for_objfile): Use
4258         compunit_filetabs.
4259         * objfiles.h (ALL_OBJFILE_FILETABS): Remove.
4260         (ALL_FILETABS): Use compunit_filetabs.
4261         * objfiles.c (objfile_relocate1): Use compunit_filetabs.
4262         * coffread.c (coff_symtab_read): Use compunit_filetabs.
4263
4264 2019-01-09  Tom Tromey  <tom@tromey.com>
4265
4266         * symtab.h (ALL_COMPUNIT_FILETABS): Remove.
4267         (compunit_filetabs): New.
4268         * symtab.c (iterate_over_some_symtabs, find_pc_sect_line): Use
4269         compunit_filetabs.
4270         (info_sources_command, make_source_files_completion_list): Remove
4271         declaration.
4272         * symmisc.c (print_objfile_statistics, dump_objfile)
4273         (maintenance_print_symbols): Remove declaration.
4274         (maintenance_info_symtabs): Use compunit_filetabs.
4275         (maintenance_info_line_tables): Likewise.
4276         * source.c (select_source_symtab): Change local variable name.
4277         (forget_cached_source_info_for_objfile): Remove declaration.
4278         * objfiles.h (ALL_OBJFILE_FILETABS): Use compunit_filetabs.
4279         * objfiles.c (objfile_relocate1): Remove declaration.
4280         * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Remove
4281         declaration.
4282         * maint.c (count_symtabs_and_blocks): Use compunit_filetabs.
4283         * coffread.c (coff_symtab_read): Remove declaration.
4284         * buildsym.c (buildsym_compunit::end_symtab_with_blockvector): Use
4285         compunit_filetabs.
4286
4287 2019-01-09  Tom Tromey  <tom@tromey.com>
4288
4289         * symtab.c (lookup_objfile_from_block)
4290         (find_pc_sect_compunit_symtab, search_symbols)
4291         (default_collect_symbol_completion_matches_break_on): Use
4292         objfile_compunits.
4293         * objfiles.h (ALL_COMPUNITS): Remove.
4294         * maint.c (count_symtabs_and_blocks): Use objfile_compunits.
4295         * cp-support.c (add_symbol_overload_list_qualified): Use
4296         objfile_compunits.
4297         * ada-lang.c (ada_collect_symbol_completion_matches)
4298         (ada_add_global_exceptions): Use objfile_compunits.
4299
4300 2019-01-09  Tom Tromey  <tom@tromey.com>
4301
4302         * source.c (select_source_symtab)
4303         (forget_cached_source_info_for_objfile): Remove declaration.
4304         * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_files): Remove
4305         declaration.
4306         * maint.c (count_symtabs_and_blocks): Remove declaration.
4307         * cp-support.c (add_symbol_overload_list_qualified): Remove
4308         declaration.
4309         * coffread.c (coff_symtab_read): Remove declaration.
4310         * symtab.c (lookup_symbol_in_objfile_symtabs)
4311         (basic_lookup_transparent_type_1): Use objfile_compunits.
4312         (lookup_objfile_from_block, find_pc_sect_compunit_symtab)
4313         (info_sources_command, search_symbols)
4314         (default_collect_symbol_completion_matches_break_on)
4315         (make_source_files_completion_list): Remove declaration.
4316         * ada-lang.c (add_nonlocal_symbols): Use objfile_compunits.
4317         (ada_collect_symbol_completion_matches)
4318         (ada_add_global_exceptions): Remove declaration.
4319         * linespec.c (iterate_over_all_matching_symtabs): Use
4320         objfile_compunits.
4321         * objfiles.h (ALL_OBJFILE_COMPUNITS): Remove.
4322         (class objfile_compunits): New.
4323         (ALL_COMPUNITS): Use objfile_compunits.
4324         * symmisc.c (print_objfile_statistics, maintenance_info_symtabs)
4325         (maintenance_check_symtabs, maintenance_info_line_tables): Use
4326         objfile_compunits.
4327         * objfiles.c (objfile_relocate1): Use objfile_compunits.
4328
4329 2019-01-09  Tom Tromey  <tom@tromey.com>
4330
4331         * symtab.c (search_symbols)
4332         (default_collect_symbol_completion_matches_break_on): Use
4333         objfile_msymbols.
4334         * ada-lang.c (ada_lookup_simple_minsym)
4335         (ada_collect_symbol_completion_matches): Use objfile_msymbols.
4336         * minsyms.c (find_solib_trampoline_target): Use objfile_msymbols.
4337         * hppa-tdep.c (hppa_lookup_stub_minimal_symbol): Use
4338         objfile_msymbols.
4339         * coffread.c (coff_symfile_read): Use objfile_msymbols.
4340         * symmisc.c (dump_msymbols): Use objfile_msymbols.
4341         * objc-lang.c (find_methods): Use objfile_msymbols.
4342         (info_selectors_command, info_classes_command): Likewise.
4343         * stabsread.c (scan_file_globals): Use objfile_msymbols.
4344         * objfiles.h (class objfile_msymbols): New.
4345         (ALL_OBJFILE_MSYMBOLS): Remove.
4346         (ALL_MSYMBOLS): Remove.
4347
4348 2019-01-09  Tom Tromey  <tom@tromey.com>
4349
4350         * common/next-iterator.h (next_adapter): Add Iterator template
4351         parameter.
4352         * objfiles.h (ALL_OBJFILES_SAFE): Remove.
4353         (class all_objfiles_safe): New.
4354         * jit.c (jit_inferior_exit_hook): Use all_objfiles_safe.
4355         * objfiles.c (put_objfile_before): Update comment.
4356         (add_separate_debug_objfile): Likewise.
4357         (free_all_objfiles): Use all_objfiles_safe.
4358         (objfile_purge_solibs): Likewise.
4359
4360 2019-01-09  Tom Tromey  <tom@tromey.com>
4361
4362         * symtab.c (iterate_over_symtabs, matching_obj_sections)
4363         (expand_symtab_containing_pc, lookup_static_symbol)
4364         (basic_lookup_transparent_type, find_pc_sect_compunit_symtab)
4365         (find_symbol_at_address, find_line_symtab, find_main_name): Use
4366         all_objfiles.
4367         * probe.c (find_probe_by_pc, collect_probes): Use all_objfiles.
4368         * breakpoint.c (create_overlay_event_breakpoint)
4369         (create_longjmp_master_breakpoint)
4370         (create_std_terminate_master_breakpoint)
4371         (create_exception_master_breakpoint): Use all_objfiles.
4372         * linux-thread-db.c (try_thread_db_load_from_pdir)
4373         (has_libpthread): Use all_objfiles.
4374         * ada-lang.c (add_nonlocal_symbols): Use all_objfiles.
4375         * linespec.c (iterate_over_all_matching_symtabs)
4376         (search_minsyms_for_name): Use all_objfiles.
4377         * maint.c (maintenance_info_sections): Use all_objfiles.
4378         * main.c (captured_main_1): Use all_objfiles.
4379         * spu-tdep.c (spu_objfile_from_frame): Use all_objfiles.
4380         * guile/scm-objfile.c (gdbscm_objfiles): Use all_objfiles.
4381         * guile/scm-pretty-print.c
4382         (ppscm_find_pretty_printer_from_objfiles): Use all_objfiles.
4383         * solib-spu.c (append_ocl_sos): Use all_objfiles.
4384         * symmisc.c (maintenance_print_symbols): Use all_objfiles.
4385         (maintenance_print_msymbols): Use all_objfiles.
4386         * source.c (select_source_symtab): Use all_objfiles.
4387         * jit.c (jit_find_objf_with_entry_addr): Use all_objfiles.
4388         * symfile.c (remove_symbol_file_command)
4389         (expand_symtabs_matching, map_symbol_filenames): Use
4390         all_objfiles.
4391         * ppc-linux-tdep.c (ppc_linux_spe_context_inferior_created): Use
4392         all_objfiles.
4393         * dwarf2-frame.c (dwarf2_frame_find_fde): Use all_objfiles.
4394         * objc-lang.c (find_methods): Use all_objfiles.
4395         * objfiles.c (have_partial_symbols, have_full_symbols)
4396         (have_minimal_symbols, qsort_cmp)
4397         (default_iterate_over_objfiles_in_search_order): Use
4398         all_objfiles.
4399         * hppa-tdep.c (find_unwind_entry): Use all_objfiles.
4400         * psymtab.c (maintenance_print_psymbols): Use all_objfiles.
4401         (maintenance_check_psymtabs): Use all_objfiles.
4402         (ALL_PSYMTABS): Remove.
4403         * compile/compile-object-run.c (do_module_cleanup): Use
4404         all_objfiles.
4405         * blockframe.c (find_pc_partial_function): Use all_objfiles.
4406         * cp-support.c (add_symbol_overload_list_qualified): Use
4407         all_objfiles.
4408         * windows-tdep.c (windows_iterate_over_objfiles_in_search_order):
4409         Use all_objfiles.
4410         * dwarf-index-write.c (save_gdb_index_command): Use all_objfiles.
4411         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers): Use
4412         all_objfiles.
4413         * python/py-objfile.c (objfpy_lookup_objfile_by_name)
4414         (objfpy_lookup_objfile_by_build_id): Use all_objfiles.
4415         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
4416         Uses all_objfiles.
4417         * solib.c (solib_read_symbols): Use all_objfiles
4418
4419 2019-01-09  Tom Tromey  <tom@tromey.com>
4420
4421         * probe.c (parse_probes_in_pspace): Use all_objfiles.
4422         * guile/scm-progspace.c (gdbscm_progspace_objfiles): Use
4423         all_objfiles.
4424         * objfiles.h (ALL_PSPACE_OBJFILES): Remove.
4425         * symmisc.c (print_symbol_bcache_statistics)
4426         (print_objfile_statistics, maintenance_print_objfiles)
4427         (maintenance_info_symtabs, maintenance_check_symtabs)
4428         (maintenance_expand_symtabs, maintenance_info_line_tables): Use
4429         all_objfiles.
4430         * source.c (forget_cached_source_info): Use all_objfiles.
4431         * symfile-debug.c (set_debug_symfile): Use all_objfiles.
4432         * elfread.c (elf_gnu_ifunc_resolve_by_cache)
4433         (elf_gnu_ifunc_resolve_by_got): Use all_objfiles.
4434         * objfiles.c (update_section_map): Use all_objfiles.
4435         (shared_objfile_contains_address_p): Likewise.
4436         * psymtab.c (maintenance_info_psymtabs): Use all_objfiles.
4437         * python/py-progspace.c (pspy_get_objfiles): Use all_objfiles.
4438
4439 2019-01-09  Tom Tromey  <tom@tromey.com>
4440
4441         * common/next-iterator.h: New file.
4442         * objfiles.h (class all_objfiles): New.
4443         (struct objfile_iterator): New.
4444
4445 2019-01-09  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4446
4447         * NEWS: Move the description of the changed "frame", "select-frame",
4448          and "info frame" commands to the Changed commands section.
4449
4450 2019-01-09  Simon Marchi  <simon.marchi@ericsson.com>
4451
4452         * gdbtypes.c (check_stub_method_group): Remove handling of old
4453         mangling schemes.
4454         * linespec.c (find_methods): Likewise.
4455         * stabsread.c (read_member_functions): Likewise.
4456         * valops.c (search_struct_method): Likewise.
4457         (value_struct_elt_for_reference): Likewise.
4458         * NEWS: Mention this change.
4459
4460 2019-01-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4461
4462         * cli/cli-cmds.c (list_command): Pass a source_lines_range to
4463         print_source_lines.
4464         * source.c (print_source_lines_base): Update line number check.
4465         (print_source_lines): New function.
4466         (source_lines_range::source_lines_range): New function.
4467         * source.h (class source_lines_range): New class.
4468         (print_source_lines): New declaration.
4469
4470 2019-01-09  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4471
4472         * linespec.c (linespec_state_destructor): Free self->canonical_names.
4473
4474 2019-01-08  Tom Tromey  <tom@tromey.com>
4475             Simon Marchi  <simon.marchi@ericsson.com>
4476
4477         PR gdb/24060
4478         * ada-exp.y (DOLLAR_VARIABLE): Rename from SPECIAL_VARIABLE.
4479         * ada-lex.l (DOLLAR_VARIABLE): Likewise.
4480         * c-exp.y (DOLLAR_VARIABLE): Rename from VARIABLE.
4481         * f-exp.y (DOLLAR_VARIABLE): Likewise.
4482         * m2-exp.y (DOLLAR_VARIABLE): Rename from INTERNAL_VAR.
4483         * p-exp.y (DOLLAR_VARIABLE): Rename from VARIABLE.
4484
4485 2019-01-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4486
4487         * source.c (select_source_symtab): Move header comment to
4488         declaration in source.h.
4489         (forget_cached_source_info_for_objfile): Likewise.
4490         (forget_cached_source_info): Likewise.
4491         (identify_source_line): Likewise.
4492         * source.h (identify_source_line): Move declaration from symtab.h
4493         and add comment from source.c
4494         (print_source_lines): Likewise.
4495         (forget_cached_source_info_for_objfile): Likewise.
4496         (forget_cached_source_info): Likewise.
4497         (select_source_symtab): Likewise.
4498         (enum print_source_lines_flag): Move definition from symtab.h.
4499         * symtab.h (identify_source_line): Move declaration to source.h.
4500         (print_source_lines): Likewise.
4501         (forget_cached_source_info_for_objfile): Likewise.
4502         (forget_cached_source_info): Likewise.
4503         (select_source_symtab): Likewise.
4504         (enum print_source_lines_flag): Move definition to source.h.
4505         * tui/tui-hooks.c: Add 'source.h' include.
4506
4507 2019-01-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4508
4509         * source.c (print_source_lines_base): Handle requests to print
4510         reverse line number sequences, and guard against empty lines
4511         string.
4512
4513 2019-01-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4514
4515         * source.c (print_source_lines_base): Fix skip of '\r' if next
4516         character is '\n'.
4517
4518 2019-01-06  Tom Tromey  <tom@tromey.com>
4519
4520         * c-exp.y (struct c_parse_state) <macro_original_text,
4521         expansion_obstack>: New member.
4522         (macro_original_text, expansion_obstack): Remove globals.
4523         (scan_macro_expansion, scanning_macro_expansion)
4524         (finished_macro_expansion): Update.
4525         (scan_macro_cleanup): Remove.
4526         (yylex, c_parse): Update.
4527
4528 2019-01-06  Tom Tromey  <tom@tromey.com>
4529
4530         * c-exp.y (struct c_parse_state) <strings>: New member.
4531         (operator_stoken): Update.
4532
4533 2019-01-06  Tom Tromey  <tom@tromey.com>
4534
4535         * parser-defs.h (type_ptr): Remove typedef.  Don't declare VEC.
4536         (union type_stack_elt) <typelist_val>: Now a pointer to
4537         std::vector.
4538         (type_stack_cleanup): Don't declare.
4539         (push_typelist): Update.
4540         * parse.c (pop_typelist): Return a std::vector.
4541         (push_typelist): Take a std::vector.
4542         (follow_types): Update.  Do not free args.
4543         (type_stack_cleanup): Remove.
4544         * c-exp.y (struct c_parse_state): New.
4545         (cpstate): New global.
4546         (type_aggregate_p, exp, ptr_operator, parameter_typelist)
4547         (nonempty_typelist): Update.
4548         (func_mod): Create a new vector.
4549         (c_parse): Create a c_parse_state.
4550         (check_parameter_typelist): Do not delete params.
4551         (function_method): Update.  Do not delete type_list.
4552
4553 2019-01-06  Tom Tromey  <tom@tromey.com>
4554
4555         PR gdb/28155:
4556         * python/py-finishbreakpoint.c (bpfinishpy_init): Use
4557         check_typedef.
4558         * infcmd.c (finish_command_fsm_should_stop): Use check_typedef.
4559         (print_return_value): Likewise.
4560
4561 2019-01-05  Tom Tromey  <tom@tromey.com>
4562
4563         * contrib/cleanup_check.py: Remove.
4564         * contrib/gcc-with-excheck: Remove.
4565         * contrib/exsummary.py: Remove.
4566         * contrib/excheck.py: Remove.
4567
4568 2019-01-05  Joel Brobecker  <brobecker@adacore.com>
4569
4570         * thread.c (delete_thread_1): Add gdb_assert that THR is not
4571         NULL. Initialize tpprev to NULL instead of assigning it
4572         to NULL on the next statement.
4573         * windows-nat.c (windows_delete_thread): Remove check for
4574         main_thread_id before printing thread exit notifications.
4575         (get_windows_debug_event) <EXIT_THREAD_DEBUG_EVENT>:
4576         Remove thread ID check against main_thread_id.
4577         <CREATE_PROCESS_DEBUG_EVENT>: Remove call to
4578         windows_delete_thread.
4579         <EXIT_PROCESS_DEBUG_EVENT>: Add call to windows_delete_thread.
4580
4581 2019-01-04  Tom Tromey  <tom@tromey.com>
4582
4583         * compile/compile.c (_initialize_compile): Use upper case for
4584         metasyntactic variables.
4585         * symmisc.c (_initialize_symmisc): Use upper case for
4586         metasyntactic variables.
4587         * psymtab.c (_initialize_psymtab): Use upper case for
4588         metasyntactic variables.
4589         * demangle.c (demangle_command): Use upper case for metasyntactic
4590         variables.
4591         (_initialize_demangler): Likewise.
4592         * ax-gdb.c (_initialize_ax_gdb): Use upper case for metasyntactic
4593         variables.
4594
4595 2019-01-03  Tom Tromey  <tom@tromey.com>
4596
4597         * tui/tui-source.c (tui_set_source_content): Use xstrdup.
4598
4599 2019-01-03  Tom Tromey  <tom@tromey.com>
4600
4601         * python/py-symtab.c (salpy_str): Update.
4602         (struct salpy_sal_object) <symtab>: Now a PyObject.
4603         (salpy_dealloc): Update.
4604         (del_objfile_sal): Use gdbpy_ref.
4605
4606 2019-01-03  Tom Tromey  <tom@tromey.com>
4607
4608         * python/py-type.c (convert_field): Use new_reference.  Return
4609         gdbpy_ref.
4610         (make_fielditem): Return gdbpy_ref.
4611         (typy_fields): Update.
4612         (typy_getitem): Update.
4613         (field_name): Return gdbpy_ref.  Use new_reference.
4614         (typy_iterator_iternext): Update.
4615
4616 2019-01-03  Tom Tromey  <tom@tromey.com>
4617
4618         * python/py-record.c (gdbpy_stop_recording): Use Py_RETURN_NONE.
4619
4620 2019-01-03  Tom Tromey  <tom@tromey.com>
4621
4622         * python/py-value.c (valpy_dealloc): Use Py_XDECREF.
4623         * python/py-type.c (typy_fields_items): Use gdbpy_ref.
4624         * python/py-progspace.c (pspy_set_printers): Use gdbpy_ref.
4625         (pspy_set_frame_filters, pspy_set_frame_unwinders)
4626         (pspy_set_type_printers): Likewise.
4627         * python/py-function.c (fnpy_init): Use gdbpy_ref.
4628         * python/py-cmd.c (cmdpy_init): Use gdbpy_ref.
4629         * python/py-objfile.c (objfpy_set_printers): Use gdbpy_ref.
4630         (objfpy_set_frame_filters, objfpy_set_frame_unwinders)
4631         (objfpy_set_type_printers): Likewise.
4632
4633 2019-01-03  Tom Tromey  <tom@tromey.com>
4634
4635         * python/python.c (gdbpy_enter, ~gdbpy_enter): Update.
4636         (gdbpy_print_stack): Use gdbpy_err_fetch.
4637         * python/python-internal.h (class gdbpy_err_fetch): New class.
4638         (class gdbpy_enter) <m_error_type, m_error_value,
4639         m_error_traceback>: Remove.
4640         <m_error>: New member.
4641         (gdbpy_exception_to_string): Don't declare.
4642         * python/py-varobj.c (py_varobj_iter_next): Use gdbpy_err_fetch.
4643         * python/py-value.c (convert_value_from_python): Use
4644         gdbpy_err_fetch.
4645         * python/py-utils.c (gdbpy_err_fetch::to_string): Rename from
4646         gdbpy_exception_to_string.
4647         (gdbpy_handle_exception): Use gdbpy_err_fetch.
4648         * python/py-prettyprint.c (print_stack_unless_memory_error): Use
4649         gdbpy_err_fetch.
4650
4651 2019-01-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4652
4653         * linux-nat.c (delete_lwp_cleanup): Delete.
4654         (struct lwp_deleter): New struct.
4655         (lwp_info_up): New typedef.
4656         (linux_nat_target::follow_fork): Delete cleanup, and make use of
4657         lwp_info_up.
4658
4659 2019-01-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4660
4661         * linux-fork.c (class scoped_switch_fork_info): New class.
4662         (inferior_call_waitpid): Update to use scoped_switch_fork_info.
4663
4664 2019-01-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4665
4666         * valops.c (find_overload_match): Remove use of null_cleanup, and
4667         calls to do_cleanups.
4668
4669 2019-01-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4670
4671         * compile/compile-cplus-types.c
4672         (compile_cplus_instance::decl_name): Handle changes to
4673         cp_func_name.
4674         * cp-support.c (cp_func_name): Update header comment, update
4675         return type.
4676         * cp-support.h (cp_func_name): Update return type in declaration.
4677         * valops.c (find_overload_match): Move temp_func local to top
4678         level of function and change its type.  Use temp_func to hold and
4679         delete temporary string obtained from cp_func_name.
4680
4681 2019-01-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4682
4683         * remote.c (remote_target::remote_check_symbols): Convert `msg` to
4684         gdb::char_vector, remove cleanup, and update uses of `msg`.
4685
4686 2019-01-03  Jim Wilson  <jimw@sifive.com>
4687
4688         * riscv-tdep.c (riscv_freg_feature): Drop s0 name from f8.
4689
4690 2019-01-02  Tom Tromey  <tom@tromey.com>
4691
4692         * xml-tdesc.c (xml_cache): Hold a target_desc_up.
4693         (tdesc_parse_xml): Remove cleanups.
4694         * target-descriptions.h (make_cleanup_free_target_description):
4695         Don't declare.
4696         (target_desc_deleter): New struct.
4697         (target_desc_up): New typedef.
4698         * target-descriptions.c (target_desc_deleter::operator()): Rename
4699         from free_target_description.
4700         (make_cleanup_free_target_description): Remove.
4701
4702 2019-01-02  Tom Tromey  <tom@tromey.com>
4703
4704         * linespec.c (struct linespec_parser): Rename from ls_parser.  Add
4705         constructor, destructor.
4706         (linespec_parser): Remove typedef.
4707         (~linespec_parser): Rename from linespec_parser_delete.
4708         (linespec_lex_to_end, linespec_complete_label)
4709         (linespec_complete): Update.
4710         (decode_line_full): Remove cleanups.
4711         (decode_line_1): Update.
4712
4713 2019-01-02  Tom Tromey  <tom@tromey.com>
4714
4715         * python/python-internal.h (inferior_to_inferior_object): Change
4716         return type.
4717         * python/py-exitedevent.c (create_exited_event_object): Update.
4718         * python/py-inferior.c (inferior_to_inferior_object): Return
4719         gdbpy_ref.
4720         (python_new_inferior, python_inferior_deleted)
4721         (thread_to_thread_object, delete_thread_object)
4722         (build_inferior_list, gdbpy_selected_inferior): Update.
4723         * python/py-infthread.c (create_thread_object): Update.  Also fail
4724         if inferior_to_inferior_object fails.
4725
4726 2019-01-02  Simon Marchi  <simon.marchi@ericsson.com>
4727
4728         * inferior.h (class inferior) <displaced_step_state>: New field.
4729         * infrun.h (struct displaced_step_state): Move here from
4730         infrun.c.  Initialize fields, add constructor.
4731         <inf>: Remove field.
4732         <reset>: New method.
4733         * infrun.c (struct displaced_step_inferior_state): Move to
4734         infrun.h.
4735         (displaced_step_inferior_states): Remove.
4736         (get_displaced_stepping_state): Adust.
4737         (displaced_step_in_progress_any_inferior): Adjust.
4738         (displaced_step_in_progress_thread): Adjust.
4739         (displaced_step_in_progress): Adjust.
4740         (add_displaced_stepping_state): Remove.
4741         (get_displaced_step_closure_by_addr): Adjust.
4742         (remove_displaced_stepping_state): Remove.
4743         (infrun_inferior_exit): Call displaced_step_state.reset.
4744         (use_displaced_stepping): Don't check for NULL.
4745         (displaced_step_prepare_throw): Call
4746         get_displaced_stepping_state.
4747         (displaced_step_fixup): Don't check for NULL.
4748         (prepare_for_detach): Don't check for NULL.
4749
4750 2019-01-02  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4751
4752         * infcall.c (call_function_by_hand_dummy): cleanup/destroy sm
4753          in case of call that did not complete.
4754
4755 2019-01-02  Andrey Utkin  <autkin@undo.io>
4756
4757         * symfile.c (find_separate_debug_file): Fix search of debug files for
4758         remote debuggee.
4759
4760 2019-01-02  Tom Tromey  <tom@tromey.com>
4761
4762         * python/py-inferior.c (gdbpy_initialize_inferior): Fix
4763         indentation.
4764         * python/py-frame.c (frapy_older): Remove cast.
4765         (frapy_newer): Likewise.
4766         * python/py-breakpoint.c (local_setattro): Remove cast.
4767         * python/py-arch.c (archpy_name): Remove local variable.
4768         * python/py-type.c (gdbpy_lookup_type): Remove cast.
4769
4770 2019-01-02  Joel Brobecker  <brobecker@adacore.com>
4771
4772         * unittests/basic_string_view/element_access/char/empty.cc:
4773         Fix year range in copyright header.
4774
4775 2019-01-01  Andrew Burgess  <andrew.burgess@embecosm.com>
4776
4777         * arch/riscv.h (struct riscv_gdbarch_features) <hw_float_abi>:
4778         Delete.
4779         <operator==>: Update with for removed field.
4780         <hash>: Likewise.
4781         * riscv-tdep.h (struct gdbarch_tdep) <features>: Renamed to...
4782         <isa_features>: ...this.
4783         <abi_features>: New field.
4784         (riscv_isa_flen): Update comment.
4785         (riscv_abi_xlen): New declaration.
4786         (riscv_abi_flen): New declaration.
4787         * riscv-tdep.c (riscv_isa_xlen): Update to get answer from
4788         isa_features.
4789         (riscv_abi_xlen): New function.
4790         (riscv_isa_flen): Update to get answer from isa_features.
4791         (riscv_abi_flen): New function.
4792         (riscv_has_fp_abi): Update to get answer from abi_features.
4793         (riscv_call_info::riscv_call_info): Use abi xlen and flen, not isa
4794         xlen and flen.
4795         (riscv_call_info) <xlen, flen>: Update comment.
4796         (riscv_call_arg_struct): Remove invalid assertions
4797         (riscv_features_from_gdbarch_info): Update now hw_float_abi field
4798         is removed.
4799         (riscv_gdbarch_init): Gather isa features and abi features
4800         separately, ensure both match on the gdbarch when reusing an old
4801         gdbarch.  Relax an error check to allow 32-bit abi float to run on
4802         a target with 64-bit float hardware.
4803
4804 2019-01-01  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4805
4806         * source.c (search_command_helper): Stop reverse search
4807         when line 1 has been searched.
4808
4809 2019-01-01  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4810
4811         * record-full.c (record_full_base_target::close): Rewrite
4812         record_full_core_buf_list free logic.
4813
4814 2019-01-01  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4815
4816         * break-catch-syscall.c (print_one_catch_syscall): xfree
4817         the last text.
4818
4819 2019-01-01  Joel Brobecker  <brobecker@adacore.com>
4820
4821         * top.c (print_gdb_version): Update Copyright year in version
4822         message.
4823
4824 2019-01-01  Joel Brobecker  <brobecker@adacore.com>
4825
4826         Update copyright year range in all GDB files.
4827
4828 2019-01-01, 19  Joel Brobecker  <brobecker@adacore.com>
4829
4830         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2018.
4831
4832 For older changes see ChangeLog-2018.
4833 \f
4834 Local Variables:
4835 mode: change-log
4836 left-margin: 8
4837 fill-column: 74
4838 version-control: never
4839 coding: utf-8
4840 End:
4841