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