Fix thinko on dtrace-probe.c:dtrace_process_dof_probe
[external/binutils.git] / gdb / ChangeLog
1 2017-12-08  Sergio Durigan Junior  <sergiodj@redhat.com>
2
3         * dtrace-probe.c (dtrace_process_dof_probe): Do not declare a new
4         "expression_up" inside the TRY block.
5
6 2017-12-08  Yao Qi  <yao.qi@linaro.org>
7
8         * breakpoint.c (update_watchpoint): Call
9         address_significant.
10
11 2017-12-08  Yao Qi  <yao.qi@linaro.org>
12
13         * breakpoint.c (adjust_breakpoint_address): Call
14         address_significant.
15
16 2017-12-08  Yao Qi  <yao.qi@linaro.org>
17
18         * aarch64-tdep.c (aarch64_gdbarch_init): Install gdbarch
19         significant_addr_bit.
20         * gdbarch.sh (significant_addr_bit): New.
21         * gdbarch.c, gdbarch.h: Re-generated.
22         * target.c (memory_xfer_partial): Call address_significant.
23         * utils.c (address_significant): New function.
24         * utils.h (address_significant): Declare.
25
26 2017-12-08  Tom Tromey  <tom@tromey.com>
27
28         * printcmd.c (ui_printf): Update.  Use std::vector.
29         * common/format.h (struct format_piece): Add constructor.
30         <string>: Now const.
31         (class format_pieces): New class.
32         (parse_format_string, free_format_pieces)
33         (free_format_pieces_cleanup): Remove.
34         * common/format.c (format_pieces::format_pieces): Rename from
35         parse_format_string.  Update.
36         (free_format_pieces, free_format_pieces_cleanup): Remove.
37         * breakpoint.c (parse_cmd_to_aexpr): Update.  Use std::vector.
38         * ax-gdb.h (gen_printf): Remove argument.
39         * ax-gdb.c (gen_printf): Remove "frags" argument.
40         (maint_agent_printf_command): Update.  Use std::vector.
41
42 2017-12-08  Yao Qi  <yao.qi@linaro.org>
43
44         PR breakpionts/22567
45         * linespec.c (minsym_found): Set sal.section.
46
47 2017-12-08  Andreas Arnez  <arnez@linux.vnet.ibm.com>
48
49         * configure.tgt (s390*-*-linux*): Add symfile-mem.o.
50
51 2017-12-07  Keith Seitz  <keiths@redhat.com>
52
53         PR breakpoints/22569
54         * location.c (string_to_explicit_location): When terminating
55         parsing early, break out of enclosing loop instead of returning.
56
57 2017-12-07  Keith Seitz  <keiths@redhat.com>
58
59         * NEWS (New commands): Mention set/show print type nested-type-limit.
60         * c-typeprint.c (c_type_print_base): Print out nested types.
61         * dwarf2read.c (struct typedef_field_list): Rename to ...
62         (struct decl_field_list): ... this.  Change all uses.
63         (struct field_info) <nested_types_list, nested_types_list_count>:
64         New fields.
65         (add_partial_symbol): Look for nested type definitions in C++, too.
66         (dwarf2_add_typedef): Rename to ...
67         (dwarf2_add_type_defn): ... this.
68         (type_can_define_types): New function.
69         Update assertion to use type_can_define_types.
70         Permit NULL for a field's name.
71         (process_structure_scope): Handle child DIEs of types that can
72         define types.
73         Copy the list of nested types into the type struct.
74         * gdbtypes.h (struct typedef_field): Rename to ...
75         (struct decl_field): ... this.  Change all uses.
76         [is_protected, is_private]: New fields.
77         (struct cplus_struct_type) <nested_types, nested_types_count>: New
78         fields.
79         (TYPE_NESTED_TYPES_ARRAY, TYPE_NESTED_TYPES_FIELD)
80         (TYPE_NESTED_TYPES_FIELD_NAME, TYPE_NESTED_TYPES_FIELD_TYPE)
81         (TYPE_NESTED_TYPES_COUNT, TYPE_NESTED_TYPES_FIELD_PROTECTED)
82         (TYPE_NESTED_TYPES_FIELD_PRIVATE): New macros.
83         * typeprint.c (type_print_raw_options, default_ptype_flags): Add
84         default value for print_nested_type_limit.
85         (print_nested_type_limit): New static variable.
86         (set_print_type_nested_types, show_print_type_nested_types): New
87         functions.
88         (_initialize_typeprint): Register new commands for set/show
89         `print-nested-type-limit'.
90         * typeprint.h (struct type_print_options) [print_nested_type_limit]:
91         New field.
92
93 2017-12-07  Tom Tromey  <tom@tromey.com>
94
95         PR breakpoints/22511:
96         * breakpoint.c (commands_command_1): Don't throw an exception when
97         no commands have been read.
98
99 2017-12-07  Adam Stylinski  <adam.stylinski@etegent.com>
100
101         PR c++/21222
102         * target-descriptions.c (print_c_tdesc::visit_pre): Change type of
103         range-for variable.
104
105 2017-12-07  Simon Marchi  <simon.marchi@ericsson.com>
106
107         * common/selftest.h (struct selftest): Add virtual destructor.
108
109 2017-12-07  Phil Muldoon  <pmuldoon@redhat.com>
110
111         * python/py-breakpoint.c (bppy_init): Use string_to_event_location
112         over basic location code. Implement explicit location keywords.
113         (bppy_init_validate_args): New function.
114         * NEWS: Document Python explicit breakpoint locations.
115
116 2017-12-07  Joel Brobecker  <brobecker@adacore.com>
117
118         * MAINTAINERS: Restore target entries for m68hc11-elf,
119         score-elf and xstormy16-elf, incorrectly removed in a previous
120         patch meant to only update the list of active maintainers.
121
122 2017-12-06  Pedro Alves  <palves@redhat.com>
123
124         * break-catch-syscall.c (insert_catch_syscall)
125         (remove_catch_syscall): Adjust to pass reference to
126         inf_data->syscalls_counts directly via gdb::array_view.
127         * fbsd-nat.c (fbsd_set_syscall_catchpoint): Adjust to use bool
128         and gdb::array_view.
129         * linux-nat.c (linux_child_set_syscall_catchpoint): Likewise.
130         * remote.c (remote_set_syscall_catchpoint): Likewise.
131         * target-debug.h (target_debug_print_bool): New.
132         (define target_debug_print_gdb_array_view_const_int): New.
133         * target-delegates.c: Regenerate.
134         * target.h (target_ops) <to_set_syscall_catchpoint>: Use
135         gdb::array_view and bool.
136         (target_set_syscall_catchpoint): Likewise.
137
138 2017-12-06  Simon Marchi  <simon.marchi@ericsson.com>
139
140         * break-catch-syscall.c (catch_syscall_completer): Get pointers
141         to syscall group strings after building the string vector.
142
143 2017-12-06  Pedro Alves  <palves@redhat.com>
144
145         * remote.c (remote_query_supported): Don't send "xmlRegisters=" if
146         "qXfer:features:read"" is disabled.
147         (remote_write_qxfer, remote_read_qxfer, remote_search_memory):
148         Check packet_config_support instead of packet->support directly.
149
150 2017-12-05  Simon Marchi  <simon.marchi@ericsson.com>
151
152         * target-descriptions.c (struct tdesc_feature) <registers>: Use
153         tdesc_reg_up typedef.
154         (struct target_desc) <features>: Use tdesc_feature_up typedef.
155
156 2017-12-05  Simon Marchi  <simon.marchi@polymtl.ca>
157
158         * target-descriptions.c (struct tdesc_type): Use default
159         destructor.
160         <u>: Remove.
161         <accept>: Remove.
162         (struct tdesc_type_builtin): New.
163         (struct tdesc_type_vector): New.
164         (struct tdesc_type_with_fields): New.
165         (tdesc_predefined_types): Change type to tdesc_type_builtin[].
166         (tdesc_gdb_type): Remove.
167         (tdesc_register_type): Adjust.
168         (tdesc_create_vector): Create tdesc_type_vector.
169         (tdesc_create_struct): Create tdesc_type_with_fields.
170         (tdesc_set_struct_size): Change parameter type.
171         (tdesc_create_union): Create tdesc_type_with_fields.
172         (tdesc_create_flags): Likewise.
173         (tdesc_create_enum): Likewise.
174         (tdesc_add_field): Change parameter type.
175         (tdesc_add_typed_bitfield): Likewise.
176         (tdesc_add_bitfield): Likewise.
177         (tdesc_add_flag): Likewise.
178         (tdesc_add_enum_value): Likewise.
179         (print_c_tdesc) <visit>: Remove overload with tdesc_type
180         parameter, add overloads for tdesc_type_builtin,
181         tdesc_type_with_fields and tdesc_type_vector.
182         <m_printed_type>: Remove.
183         <m_printed_element_type, m_printed_type_with_fields>: Add.
184         * target-descriptions.h (tdesc_create_enum): Change return type.
185         (tdesc_add_typed_bitfield): Change parameter type.
186         (tdesc_add_enum_value): Change parameter type.
187         * xml-tdesc.c (struct tdesc_parsing_data) <current_type>: Change
188         type to tdesc_type_with_fields.
189         (tdesc_start_struct): Adjust.
190         (tdesc_start_flags): Adjust.
191         (tdesc_start_enum): Adjust.
192         (tdesc_start_field): Adjust.
193         * arch/tdesc.h (struct tdesc_type_builtin): Forward-declare.
194         (struct tdesc_type_vector): Forward-declare.
195         (struct tdesc_type_with_fields): Forward-declare.
196         (tdesc_create_struct): Change return type.
197         (tdesc_create_union): Likewise.
198         (tdesc_create_flags): Likewise.
199         (tdesc_add_field): Change parameter type.
200         (tdesc_set_struct_size): Likewise.
201         (tdesc_add_bitfield): Likewise.
202         (tdesc_add_flag): Likewise.
203         * features: Re-generate C files.
204
205 2017-12-05  Simon Marchi  <simon.marchi@polymtl.ca>
206
207         * target-descriptions.c (tdesc_arch_reg): Remove typedef.
208         (struct tdesc_arch_reg): Add constructor.
209         (DEF_VEC_O (tdesc_arch_reg)): Remove.
210         (struct tdesc_arch_data): Initialize fields.
211         <arch_regs>: Change type to std::vector.
212         (target_find_description): Adjust.
213         (tdesc_find_type): Adjust.
214         (tdesc_data_init): Call tdesc_arch_data constructor.
215         (tdesc_data_alloc): Allocate tdesc_arch_data with new.
216         (tdesc_data_cleanup): Free data with delete.
217         (tdesc_numbered_register): Adjust.
218         (tdesc_find_arch_register): Adjust.
219         (tdesc_use_registers): Adjust.
220
221 2017-12-05  Simon Marchi  <simon.marchi@polymtl.ca>
222
223         * target-descriptions.c (tdesc_type_field): Remove typedef.
224         (DEF_VEC_O (tdesc_type_field)): Remove.
225         (struct tdesc_type_field): Add constructor.
226         <name>: Change type to std::string.
227         (struct tdesc_type) <tdesc_type>: Instantiate vector if the type
228         kind uses it.
229         <~tdesc_type>: Destroy vector if the type kind uses it.
230         <u::u::fields>: Change type to std::vector.
231         (tdesc_gdb_type): Adjust.
232         (tdesc_add_field): Adjust.
233         (tdesc_add_typed_bitfield): Adjust.
234         (tdesc_add_field): Adjust.
235         (tdesc_add_enum_value): Adjust.
236         (class print_c_tdesc) <visit>: Adjust.
237
238 2017-12-05  Simon Marchi  <simon.marchi@polymtl.ca>
239
240         * target-descriptions.c (struct tdesc_type) <name>: Change type
241         to std::string.
242         <~tdesc_type>: Don't manually free name.
243         <operator==>: Adjust.
244         (tdesc_named_type): Adjust.
245         (tdesc_find_type): Adjust.
246         (tdesc_gdb_type): Adjust.
247         (class print_c_tdesc) <visit>: Adjust.
248
249 2017-12-05  Simon Marchi  <simon.marchi@polymtl.ca>
250
251         * target-descriptions.c (tdesc_type_p): Remove typedef.
252         (DEF_VEC_P (tdesc_type_p)): Remove.
253         (struct tdesc_feature) <types>: Change type to std::vector.
254         <~tdesc_feature>: Replace with default implementation.
255         <accept>: Adjust.
256         (tdesc_named_type): Adjust.
257         (tdesc_create_vector): Adjust.
258         (tdesc_create_struct): Adjust.
259         (tdesc_create_union): Adjust.
260         (tdesc_create_flags): Adjust.
261         (tdesc_create_enum): Adjust.
262
263 2017-12-05  Simon Marchi  <simon.marchi@ericsson.com>
264
265         * target-descriptions.c (struct tdesc_reg) <tdesc_reg>: Change
266         type of name_ parameter, adjust to std::string change.
267         <name, group, type>: Change type to std::string.
268         <~tdesc_reg>: Replace with default implementation.
269         <operator==>: Adjust.
270         (tdesc_find_register_early): Adjust.
271         (tdesc_register_name): Adjust.
272         (tdesc_register_type): Adjust.
273         (tdesc_register_in_reggroup_p): Adjust.
274         (class print_c_tdesc) <visit>: Adjust.
275         (class print_c_feature) <visit>: Adjust.
276         * features/arc-arcompact.c: Re-generate.
277         * features/arc-v2.c: Re-generate.
278
279 2017-12-05  Simon Marchi  <simon.marchi@ericsson.com>
280
281         * target-descriptions.c (tdesc_reg_p): Remove typedef.
282         (DEF_VEC_P (tdesc_reg_p)): Remove.
283         (struct tdesc_feature) <registers>: Change type to std::vector.
284         <~tdesc_feature>: Don't manually free registers.
285         <accept>: Adjust.
286         <operator==>: Adjust.
287         (tdesc_has_registers): Adjust.
288         (tdesc_find_register_early): Adjust.
289         (tdesc_use_registers): Adjust.
290         (tdesc_create_reg): Adjust.
291
292 2017-12-05  Simon Marchi  <simon.marchi@polymtl.ca>
293
294         * target-descriptions.c (tdesc_feature) <name>: Change type to
295         std::string.
296         <~tdesc_feature>: Don't manually free name.
297         <operator==>: Adjust.
298         (tdesc_find_feature): Adjust.
299         (tdesc_feature_name): Adjust.
300         (class print_c_tdesc) <visit_pre>: Adjust.
301         (class print_c_feature) <visit_pre>: Adjust.
302
303 2017-12-05  Simon Marchi  <simon.marchi@polymtl.ca>
304
305         * target-descriptions.c (tdesc_feature_p): Remove typedef.
306         (DEF_VEC_P (tdesc_feature_p)): Remove.
307         (struct target_desc) <features>: Change type to std::vector.
308         <~target_desc>: Replace with default implementation.
309         <accept>: Adjust.
310         <operator==>: Adjust.
311         (tdesc_has_registers): Adjust.
312         (tdesc_find_feature): Adjust.
313         (tdesc_use_registers): Adjust.
314         (tdesc_create_feature): Adjust.
315
316 2017-12-05  Simon Marchi  <simon.marchi@polymtl.ca>
317
318         * target-descriptions.c (arch_p): Remove typedef.
319         (DEF_VEC_P (arch_p)): Remove.
320         (struct target_desc) <compatible>: Change type to std::vector.
321         <~target_desc>: Don't manually free compatible.
322         (tdesc_compatible_p): Adjust.
323         (tdesc_add_compatible): Adjust.
324         (class print_c_tdesc) <visit_pre>: Adjust.
325
326 2017-12-05  Simon Marchi  <simon.marchi@polymtl.ca>
327
328         * target-descriptions.c (property_s): Remove typedef.
329         (DEF_VEC_O (property_s)): Remove.
330         (struct target_desc) <properties>: Make an std::vector.
331         <~target_desc>: Don't manually free properties.
332         (tdesc_property): Adjust.
333         (set_tdesc_property): Adjust.
334         (class print_c_tdesc) <visit_pre>: Adjust.
335
336 2017-12-05  Simon Marchi  <simon.marchi@ericsson.com>
337
338         * common/gdb_assert.h (gdb_static_assert): Redefine using
339         static_assert.
340
341 2017-12-05  Simon Marchi  <simon.marchi@ericsson.com>
342
343         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
344         unused variables.
345         (ada_is_redundant_range_encoding): Likewise.
346         * ada-varobj.c (ada_varobj_get_value_of_array_variable):
347         Likewise.
348         * alpha-tdep.c (alpha_software_single_step): Likewise.
349         * arm-tdep.c (_initialize_arm_tdep): Likewise.
350         * auto-load.c (info_auto_load_cmd): Likewise.
351         * break-catch-syscall.c (insert_catch_syscall): Likewise.
352         (remove_catch_syscall): Likewise.
353         * breakpoint.c (condition_completer): Likewise.
354         (clear_command): Likewise.
355         (update_breakpoint_locations): Likewise.
356         * btrace.c (btrace_disable): Likewise.
357         (btrace_teardown): Likewise.
358         (btrace_maint_update_pt_packets): Likewise.
359         (maint_btrace_clear_cmd): Likewise.
360         * cli/cli-decode.c (lookup_cmd_1): Likewise.
361         (lookup_cmd_composition): Likewise.
362         * cli/cli-dump.c (scan_filename): Likewise.
363         (restore_command): Likewise.
364         * compile/compile-loc2c.c (compute_stack_depth): Likewise.
365         * compile/compile-object-load.c (compile_object_load): Likewise.
366         * compile/compile-object-run.c (compile_object_run): Likewise.
367         * compile/compile.c (compile_to_object): Likewise.
368         * completer.c (filename_completer): Likewise.
369         (complete_files_symbols): Likewise.
370         (complete_expression): Likewise.
371         * corelow.c (core_open): Likewise.
372         * ctf.c (ctf_start): Likewise.
373         (ctf_write_status): Likewise.
374         (ctf_write_uploaded_tsv): Likewise.
375         (ctf_write_definition_end): Likewise.
376         (ctf_open_dir): Likewise.
377         (ctf_xfer_partial): Likewise.
378         (ctf_trace_find): Likewise.
379         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
380         Likewise.
381         * dwarf2loc.c (allocate_piece_closure): Likewise.
382         (indirect_pieced_value): Likewise.
383         (dwarf2_evaluate_loc_desc_full): Likewise.
384         * dwarf2read.c (dw2_expand_marked_cus): Likewise.
385         (dw2_expand_symtabs_matching): Likewise.
386         (dw2_map_symbol_filenames): Likewise.
387         (read_and_check_comp_unit_head): Likewise.
388         (read_cutu_die_from_dwo): Likewise.
389         (lookup_dwo_unit): Likewise.
390         (read_comp_units_from_section): Likewise.
391         (dwarf2_compute_name): Likewise.
392         (handle_DW_AT_stmt_list): Likewise.
393         (create_cus_hash_table): Likewise.
394         (create_dwp_v2_section): Likewise.
395         (dwarf2_rnglists_process): Likewise.
396         (dwarf2_ranges_process): Likewise.
397         (dwarf2_record_block_ranges): Likewise.
398         (is_vtable_name): Likewise.
399         (read_formatted_entries): Likewise.
400         (skip_form_bytes): Likewise.
401         * elfread.c (elf_symtab_read): Likewise.
402         * exec.c (exec_file_command): Likewise.
403         * f-valprint.c (f_val_print): Likewise.
404         (info_common_command_for_block): Likewise.
405         * guile/guile.c (initialize_scheme_side): Likewise.
406         * guile/scm-breakpoint.c (gdbscm_breakpoint_commands): Likewise.
407         * guile/scm-cmd.c (cmdscm_completer): Likewise.
408         (gdbscm_register_command_x): Likewise.
409         * guile/scm-frame.c (gdbscm_frame_read_var): Likewise.
410         * guile/scm-param.c (gdbscm_parameter_value): Likewise.
411         * guile/scm-ports.c (file_port_magic): Likewise.
412         * guile/scm-pretty-print.c (ppscm_search_pp_list): Likewise.
413         (ppscm_pretty_print_one_value): Likewise.
414         (ppscm_print_children): Likewise.
415         * guile/scm-string.c (gdbscm_string_to_argv): Likewise.
416         * guile/scm-symtab.c (gdbscm_sal_symtab): Likewise.
417         * guile/scm-type.c (gdbscm_type_next_field_x): Likewise.
418         * guile/scm-utils.c (gdbscm_parse_function_args): Likewise.
419         * i386-tdep.c (i386_register_reggroup_p): Likewise.
420         * infcmd.c (run_command_1): Likewise.
421         (until_next_fsm_clean_up): Likewise.
422         * linespec.c (linespec_complete): Likewise.
423         (find_label_symbols): Likewise.
424         * m2-valprint.c (m2_val_print): Likewise.
425         * memattr.c (require_user_regions): Likewise.
426         (lookup_mem_region): Likewise.
427         (disable_mem_command): Likewise.
428         (mem_delete): Likewise.
429         * mep-tdep.c (mep_register_name): Likewise.
430         (mep_analyze_prologue): Likewise.
431         * mi/mi-cmd-file.c (mi_cmd_file_list_shared_libraries): Likewise.
432         * mi/mi-interp.c (mi_on_sync_execution_done): Likewise.
433         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
434         * microblaze-linux-tdep.c (microblaze_linux_init_abi): Likewise.
435         * minidebug.c (lzma_open): Likewise.
436         * minsyms.c (lookup_minimal_symbol): Likewise.
437         * mips-linux-tdep.c (mips64_fill_fpregset): Likewise.
438         * mips-tdep.c (mips_stub_frame_sniffer): Likewise.
439         (mips_o64_return_value): Likewise.
440         (mips_single_step_through_delay): Likewise.
441         (_initialize_mips_tdep): Likewise.
442         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
443         (nios2_software_single_step): Likewise.
444         * parse.c (find_minsym_type_and_address): Likewise.
445         * psymtab.c (psym_relocate): Likewise.
446         * python/py-breakpoint.c (bppy_get_commands): Likewise.
447         (gdbpy_breakpoint_modified): Likewise.
448         * python/py-infevents.c (create_inferior_call_event_object):
449         Likewise.
450         * python/py-record-btrace.c (btpy_list_item): Likewise.
451         * python/py-type.c (typy_str): Likewise.
452         * python/py-value.c (valpy_call): Likewise.
453         * python/python.c (do_start_initialization): Likewise.
454         * record-btrace.c (record_btrace_insn_history_range): Likewise.
455         (record_btrace_call_history_range): Likewise.
456         (record_btrace_record_method): Likewise.
457         (record_btrace_xfer_partial): Likewise.
458         (btrace_get_frame_function): Likewise.
459         * record-full.c (record_full_open): Likewise.
460         * record.c (get_context_size): Likewise.
461         * registry.h (DEFINE_REGISTRY): Likewise.
462         * remote-fileio.c (remote_fileio_request): Likewise.
463         * remote.c (remote_update_thread_list): Likewise.
464         (remote_check_symbols): Likewise.
465         (remote_commit_resume): Likewise.
466         (remote_interrupt): Likewise.
467         (remote_insert_breakpoint): Likewise.
468         (compare_sections_command): Likewise.
469         * rust-exp.y (super_name): Likewise.
470         (lex_string): Likewise.
471         (convert_ast_to_type): Likewise.
472         (convert_ast_to_expression): Likewise.
473         * rust-lang.c (rust_print_struct_def): Likewise.
474         (rust_print_type): Likewise.
475         (rust_evaluate_subexp): Likewise.
476         * rx-tdep.c (rx_register_type): Likewise.
477         * ser-event.c (serial_event_clear): Likewise.
478         * serial.c (serial_open): Likewise.
479         * spu-tdep.c (spu_overlay_new_objfile): Likewise.
480         * symfile.c (section_is_overlay): Likewise.
481         (overlay_unmapped_address): Likewise.
482         (overlay_mapped_address): Likewise.
483         (simple_overlay_update_1): Likewise.
484         (simple_overlay_update): Likewise.
485         * symtab.c (symbol_find_demangled_name): Likewise.
486         (search_symbols): Likewise.
487         * target-descriptions.c (tdesc_predefined_type): Likewise.
488         * target.c (target_commit_resume): Likewise.
489         * thread.c (print_selected_thread_frame): Likewise.
490         * top.c (new_ui_command): Likewise.
491         (gdb_readline_no_editing): Likewise.
492         * tracefile-tfile.c (tfile_open): Likewise.
493         * tracepoint.c (create_tsv_from_upload): Likewise.
494         * utils.c (quit): Likewise.
495         (defaulted_query): Likewise.
496         * valarith.c (value_concat): Likewise.
497         * xml-syscall.c (xml_list_syscalls_by_group): Likewise.
498         * xml-tdesc.c (target_fetch_description_xml): Likewise.
499         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
500         (xtensa_pseudo_register_write): Likewise.
501
502 2017-12-04  Tom Tromey  <tom@tromey.com>
503
504         * NEWS: Mention Rust trait object inspection.
505
506 2017-12-04  Pedro Alves  <palves@redhat.com>
507
508         PR gdb/22499
509         * amd64-tdep.c (amd64_insn::rex_offset): Rename to...
510         (amd64_insn::enc_prefix_offset): ... this, and tweak comment.
511         (vex2_prefix_p, vex3_prefix_p): New functions.
512         (amd64_get_insn_details): Adjust to rename.  Also skip VEX2 and
513         VEX3 prefixes.
514         (fixup_riprel): Set VEX3.!B.
515
516 2017-12-03  Simon Marchi  <simon.marchi@ericsson.com>
517
518         * target.h (mem_region_vector): Remove.
519         (struct target_ops) <to_memory_map>: Change return type to
520         std::vector<mem_region>.
521         * target-debug.h (target_debug_print_mem_region_vector): Rename
522         to ...
523         (target_debug_print_std_vector_mem_region): ... this.
524         * target-delegates.c: Re-generate.
525
526 2017-12-03  Pedro Alves  <palves@redhat.com>
527
528         * make-target-delegates (munge_type): Also munge '<', '>', and
529         ':'.  Avoid double underscores in identifiers, and trailing
530         underscores.
531         * target-debug.h
532         (target_debug_print_VEC_static_tracepoint_marker_p__p): Rename to
533         ...
534         (target_debug_print_VEC_static_tracepoint_marker_p_p): ... this.
535         * target-delegates.c: Regenerate.
536
537 2017-12-02  Simon Marchi  <simon.marchi@polymtl.ca>
538
539         * common/poison.h (XDELETE): Fix typo.
540
541 2017-12-01  Andrew Cagney  <cagney@redhat.com>
542             Joel Brobecker  <brobecker@adacore.com>
543             Sergio Durigan Junior  <sergiodj@redhat.com>
544
545         * NEWS (Changes since GDB 8.0: Mention new '--readnever'
546         feature.
547         * coffread.c (coff_symfile_read): Do not map over sections with
548         'coff_locate_sections' if readnever is on.
549         * dwarf2read.c (dwarf2_has_info): Return 0 if
550         readnever is on.
551         * elfread.c (elf_symfile_read): Do not map over sections with
552         'elf_locate_sections' if readnever is on.
553         * main.c (validate_readnow_readnever): New function.
554         (captured_main_1): Add support for --readnever.
555         (print_gdb_help): Document --readnever.
556         * objfile-flags.h (enum objfile_flag) <OBJF_READNEVER>: New
557         flag.
558         * symfile.c (readnever_symbol_files): New global.
559         (symbol_file_add_with_addrs): Set 'OBJF_READNEVER' when
560         'READNEVER_SYMBOL_FILES' is set.
561         (validate_readnow_readnever): New function.
562         (symbol_file_command): Handle '-readnever' option.
563         Call 'validate_readnow_readnever'.
564         (add_symbol_file_command): Handle '-readnever' option.
565         Call 'validate_readnow_readnever'.
566         (_initialize_symfile): Document new '-readnever' option for
567         both 'symbol-file' and 'add-symbol-file' commands.
568         * top.h (readnever_symbol_files): New extern global.
569         * xcoffread.c (xcoff_initial_scan): Do not read debug
570         information if readnever is on.
571
572 2017-12-01  Sergio Durigan Junior  <sergiodj@redhat.com>
573
574         * symfile.c (symbol_file_command): Call
575         'symbol_file_add_main_1' only after processing all command
576         line options.
577         (add_symbol_file_command): Modify logic to make arguments
578         position-independent.
579
580 2017-12-01  Joel Brobecker  <brobecker@adacore.com>
581
582         * ada-lang.c (symbol_list_obstack): Delete.
583         (resolve_subexp): Make sure "candidates" gets xfree'ed.
584         (ada_lookup_symbol_list_worker): Remove the limitation that
585         the result is only good until the next call, now making it
586         the responsibility of the caller to free the result when no
587         longer needed.  Adjust the function's intro comment accordingly.
588         (ada_lookup_symbol_list): Adjust the function's intro comment.
589         (ada_iterate_over_symbols): Make sure "results" gets xfree'ed.
590         (ada_lookup_encoded_symbol, get_var_value): Likewise.
591         (_initialize_ada_language): Remove symbol_list_obstack
592         initialization.
593         * ada-exp.y (block_lookup): Make sure "syms" gets xfree'ed.
594         (write_var_or_type, write_name_assoc): Likewise.
595
596 2017-12-01  Tom Tromey  <tom@tromey.com>
597
598         * Makefile.in (all_deps_files): New variable.
599         Include .Po files using all_deps_files.
600
601 2017-12-01  Joel Brobecker  <brobecker@adacore.com>
602
603         * MAINTAINERS: Update list of maintainers, moving those who
604         stepped down or became inactive to the "Past Maintainers"
605         section.
606
607 2017-11-30  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
608
609         * configure.ac Don't check for sys/fault.h, sys/syscall.h,
610         sys/proc.h.
611         (NEW_PROC_API): Remove.
612         (prsysent_t, pr_sigset_t, pr_sigaction64_t, pr_siginfo64_t):
613         Likewise.
614         * common/common.m4 (GDB_AC_COMMON): Don't check for sys/syscall.h.
615         * configure: Regenerate.
616         * config.in: Regenerate.
617         * gdbserver/configure: Regenerate.
618         * gdbserver/config.in: Regenerate.
619
620         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Remove
621         NEW_PROC_API test.
622         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Likewise.
623
624         * linux-btrace.c: Remove HAVE_SYS_SYSCALL_H test.
625
626         * proc-api.c: Remove !NEW_PROC_API support.
627         Remove HAVE_SYS_PROC_H and HAVE_SYS_USER_H tests.
628         Remove tests for macros always defined on Solaris.
629         * proc-events.c: Remove !NEW_PROC_API support.
630         Remove Remove HAVE_SYS_SYSCALL_H, HAVE_SYS_PROC_H and
631         HAVE_SYS_USER_H tests.
632         (init_syscall_table): Remove non-Solaris syscalls.
633         Remove tests for syscalls present on all Solaris versions.
634         Add missing Solaris 10+ syscalls.
635         (signal_table): Remove non-Solaris signals.
636         Remove tests for signals present on all Solaris versions.
637         (fault_table): Remove non-Solaris faults.
638         Remove tests for faults present on all Solaris versions.
639         * proc-flags.c: Remove !NEW_PROC_API support.
640         (pr_flag_table): Remove non-Solaris and pre-Solaris 7 comments.
641         Remove non-Solaris flags.
642         * proc-why.c: Remove !NEW_PROC_API support.
643         (pr_why_table): Remove meaningless comments.
644         Remove tests for reasons present on all Solaris versions.
645         Remove OSF/1 cases.
646         (proc_prettyfprint_why): Likewise.
647
648         * procfs.c: Remove !NEW_PROC_API and DYNAMIC_SYSCALLS support.
649         Remove HAVE_SYS_FAULT_H and HAVE_SYS_SYSCALL_H tests.
650         Remove WA_READ test, IRIX watchpoint support.
651         (gdb_sigset_t, gdb_sigaction_t, gdb_siginfo_t): Replace by base
652         types.  Change users.
653         (gdb_praddset, gdb_prdelset, gdb_premptysysset, gdb_praddsysset)
654         (gdb_prdelset, gdb_pr_issyssetmember): Replace by base macros.
655         Change callers.
656         Remove CTL_PROC_NAME_FMT tests.
657         (gdb_prstatus_t, gdb_lwpstatus_t): Replace by base types.  Change
658         users.
659         (sysset_t_size): Remove.  Use sizeof (sysset_t) in callers.
660         Remove PROCFS_DONT_PIOCSSIG_CURSIG support.
661         (proc_modify_flag): Replace GDBRESET by PCUNSET.
662         Remove PR_ASYNC, PR_KLC tests.
663         (proc_unset_inherit_on_fork): Remove PR_ASYNC test.
664         (proc_parent_pid): Remove PCWATCH etc. tests.
665         (proc_set_watchpoint): Remove !PCWATCH && !PIOCSWATCH support.
666         Remove PCAGENT test.
667         (proc_get_nthreads) [PIOCNTHR && PIOCTLIST]: Remove.
668         Remove SYS_lwpcreate || SYS_lwp_create test.
669         (proc_get_current_thread): Likewise.
670         [PIOCNTHR && PIOCTLIST]: Remove.
671         [PIOCLSTATUS]: Remove.
672         (procfs_debug_inferior): Remove non-Solaris cases, conditionals.
673         [PRFS_STOPEXEC]: Remove.
674         (syscall_is_lwp_exit): Remove non-Solaris cases, conditionals.
675         (syscall_is_exit): Likewise.
676         (syscall_is_exec): Likewise.
677         (syscall_is_lwp_create): Likewise.
678         Remove SYS_syssgi support.
679         (procfs_wait): Remove PR_ASYNC, !PIOCSSPCACT tests.
680         [SYS_syssgi]: Remove.
681         Remove non-Solaris cases, conditionals.
682         (unconditionally_kill_inferior) [PROCFS_NEED_PIOCSSIG_FOR_KILL]:
683         Remove.
684         (procfs_init_inferior) [SYS_syssgi]: Remove.
685         (procfs_set_exec_trap) [PRFS_STOPEXEC]: Remove.
686         (procfs_inferior_created) [SYS_syssgi]: Remove.
687         (procfs_set_watchpoint): Remove !AIX5 test.
688         (procfs_stopped_by_watchpoint): Remove FLTWATCH test, FLTKWATCH
689         case.
690         (mappingflags) [MA_PHYS]: Remove.
691         (info_mappings_callback): Remove PCAGENT test.
692         Remove PIOCOPENLWP || PCAGENT test.
693
694 2017-11-30  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
695
696         * sol-thread.c (info_solthreads): Constify args.
697         Cast args to void *.
698
699 2017-11-29  John Baldwin  <jhb@FreeBSD.org>
700
701         * target-float.c [HAVE_LIBMPFR]: Define MPFR_USE_INTMAX_T.
702
703 2017-11-29  Joel Brobecker  <brobecker@adacore.com>
704
705         * ada-lang.c (to_fixed_range_type): Make sure that the size
706         of the range type being returned is the same as the size
707         of the range type being fixed.
708
709 2017-11-29  Pedro Alves  <palves@redhat.com>
710
711         PR c++/19436
712         * NEWS: Mention setting breakpoints on functions with C++ ABI
713         tags.
714         * completer.h (completion_match_for_lcd) <match,
715         mark_ignored_range>: New methods.
716         <finish>: Consider ignored ranges.
717         <clear>: Clear ignored ranges.
718         <m_ignored_ranges, m_finished_storage>: New fields.
719         * cp-support.c (cp_search_name_hash): Ignore ABI tags.
720         (cp_symbol_name_matches_1, cp_fq_symbol_name_matches): Pass the
721         completion_match_for_lcd pointer to strncmp_iw_with_mode.
722         (test_cp_symbol_name_cmp): Add [abi:...] tags unit tests.
723         * language.c (default_symbol_name_matcher): Pass the
724         completion_match_for_lcd pointer to strncmp_iw_with_mode.
725         * linespec.c (linespec_lexer_lex_string): Don't tokenize ABI tags.
726         * utils.c (skip_abi_tag): New function.
727         (strncmp_iw_with_mode): Add completion_match_for_lcd parameter.
728         Handle ABI tags.
729         * utils.h (strncmp_iw_with_mode): Add completion_match_for_lcd
730         parameter.
731
732 2017-11-29  Pedro Alves  <palves@redhat.com>
733
734         PR c++/19436
735         * NEWS: Mention setting breakpoints on functions with C++ ABI
736         tags.
737         * completer.h (completion_match_for_lcd) <match,
738         mark_ignored_range>: New methods.
739         <finish>: Consider ignored ranges.
740         <clear>: Clear ignored ranges.
741         <m_ignored_ranges, m_finished_storage>: New fields.
742         * cp-support.c (cp_search_name_hash): Ignore ABI tags.
743         (cp_symbol_name_matches_1, cp_fq_symbol_name_matches): Pass the
744         completion_match_for_lcd pointer to strncmp_iw_with_mode.
745         (test_cp_symbol_name_cmp): Add [abi:...] tags unit tests.
746         * language.c (default_symbol_name_matcher): Pass the
747         completion_match_for_lcd pointer to strncmp_iw_with_mode.
748         * linespec.c (linespec_lexer_lex_string): Don't tokenize ABI tags.
749         * utils.c (skip_abi_tag): New function.
750         (strncmp_iw_with_mode): Add completion_match_for_lcd parameter.
751         Handle ABI tags.
752         * utils.h (strncmp_iw_with_mode): Add completion_match_for_lcd
753         parameter.
754
755 2017-11-29  Pedro Alves  <palves@redhat.com>
756
757         * NEWS: Mention that breakpoints on C++ functions are now set on
758         on all namespaces/classes by default, and mention "break
759         -qualified".
760         * ax-gdb.c (agent_command_1): Adjust to pass a
761         symbol_name_match_type to new_linespec_location.
762         * breakpoint.c (parse_breakpoint_sals): Adjust to
763         get_linespec_location's return type change.
764         (strace_marker_create_sals_from_location): Adjust to pass a
765         symbol_name_match_type to new_linespec_location.
766         (strace_marker_decode_location): Adjust to get_linespec_location's
767         return type change.
768         (strace_command): Adjust to pass a symbol_name_match_type to
769         new_linespec_location.
770         (LOCATION_HELP_STRING): Add paragraph about wildmatching, and
771         mention "-qualified".
772         * c-lang.c (cplus_language_defn): Install cp_search_name_hash.
773         * completer.c (explicit_location_match_type::MATCH_QUALIFIED): New
774         enumerator.
775         (complete_address_and_linespec_locations): New parameter
776         'match_type'.  Pass it down.
777         (explicit_options): Add "-qualified".
778         (collect_explicit_location_matches): Pass the requested match type
779         to the linespec completers.  Handle MATCH_QUALIFIED.
780         (location_completer): Handle "-qualified" combined with linespecs.
781         * cp-support.c (cp_search_name_hash): New.
782         (cp_symbol_name_matches_1): Implement wild matching for C++.
783         (cp_fq_symbol_name_matches): Reimplement.
784         (cp_get_symbol_name_matcher): Return different matchers depending
785         on the lookup name's match type.
786         (selftests::test_cp_symbol_name_matches): Add wild matching tests.
787         * cp-support.h (cp_search_name_hash): New declaration.
788         * dwarf2read.c
789         (selftests::dw2_expand_symtabs_matching::test_symbols): Add
790         symbols.
791         (test_dw2_expand_symtabs_matching_symbol): Add wild matching
792         tests.
793         * guile/scm-breakpoint.c (gdbscm_register_breakpoint_x): Adjust to
794         pass a symbol_name_match_type to new_linespec_location.
795         * linespec.c (linespec_parse_basic): Lookup function symbols using
796         the parser's symbol name match type.
797         (convert_explicit_location_to_linespec): New
798         symbol_name_match_type parameter.  Pass it down to
799         find_linespec_symbols.
800         (convert_explicit_location_to_sals): Pass the location's name
801         match type to convert_explicit_location_to_linespec.
802         (parse_linespec): New match_type parameter.  Save it in the
803         parser.
804         (linespec_parser_new): Default to symbol_name_match_type::WILD.
805         (linespec_complete_function): New symbol_name_match_type
806         parameter.  Use it.
807         (complete_linespec_component): Pass down the parser's recorded
808         name match type.
809         (linespec_complete_label): New symbol_name_match_type parameter.
810         Use it.
811         (linespec_complete): New symbol_name_match_type parameter.  Save
812         it in the parser and pass it down.  Adjust to
813         get_linespec_location's prototype change.
814         (find_function_symbols, find_linespec_symbols): New
815         symbol_name_match_type parameter.  Pass it down instead of
816         assuming symbol_name_match_type::WILD.
817         * linespec.h (linespec_complete, linespec_complete_function)
818         (linespec_complete_label): New symbol_name_match_type parameter.
819         * location.c (event_location::linespec_location): Now a struct
820         linespec_location.
821         (EL_LINESPEC): Adjust.
822         (initialize_explicit_location): Default to
823         symbol_name_match_type::WILD.
824         (new_linespec_location): New symbol_name_match_type parameter.
825         Record it in the location.
826         (get_linespec_location): Now returns a struct linespec_location.
827         (new_explicit_location): Also copy func_name_match_type.
828         (explicit_to_string_internal)
829         (string_to_explicit_location): Handle "-qualified".
830         (copy_event_location): Adjust to LINESPEC_LOCATION type change.
831         Copy symbol_name_match_type fields.
832         (event_location_deleter::operator()): Adjust to LINESPEC_LOCATION
833         type change.
834         (event_location_to_string): Adjust to LINESPEC_LOCATION type
835         change.  Handle "-qualfied".
836         (string_to_explicit_location): Handle "-qualified".
837         (string_to_event_location_basic): New symbol_name_match_type
838         parameter.  Pass it down.
839         (string_to_event_location): Handle "-qualified".
840         * location.h (struct linespec_location): New.
841         (explicit_location::func_name_match_type): New field.
842         (new_linespec_location): Now returns a const linespec_location *.
843         (string_to_event_location_basic): New symbol_name_match_type
844         parameter.
845         (explicit_completion_info::saw_explicit_location_option): New
846         field.
847         * mi/mi-cmd-break.c (mi_cmd_break_insert_1): Adjust to pass a
848         symbol_name_match_type to new_linespec_location.
849         * python/py-breakpoint.c (bppy_init): Likewise.
850         * python/python.c (gdbpy_decode_line): Likewise.
851
852 2017-11-29  Pedro Alves  <palves@redhat.com>
853
854         * ada-lang.c (ada_lookup_name_info::matches): Change type of
855         parameter from completion_match to completion_match_result.
856         Adjust.
857         (do_wild_match, do_full_match, ada_symbol_name_matches): Likewise.
858         * completer.c (completion_tracker::maybe_add_completion): Add
859         match_for_lcd parameter and use it.
860         (completion_tracker::add_completion): Likewise.
861         * completer.h (class completion_match_for_lcd): New class.
862         (completion_match_result::match_for_lcd): New field.
863         (completion_match_result::set_match): New method.
864         (completion_tracker): Add comments.
865         (completion_tracker::add_completion): Add match_for_lcd parameter.
866         (completion_tracker::reset_completion_match_result): Reset
867         match_for_lcd too.
868         (completion_tracker::maybe_add_completion): Add match_for_lcd
869         parameter.
870         (completion_tracker::m_lowest_common_denominator_unique): Extend
871         comments.
872         * cp-support.c (cp_symbol_name_matches_1)
873         (cp_fq_symbol_name_matches): Change type of parameter from
874         completion_match to completion_match_result.  Adjust.
875         * language.c (default_symbol_name_matcher): Change type of
876         parameter from completion_match to completion_match_result.
877         Adjust.
878         * language.h (completion_match_for_lcd): Forward declare.
879         (default_symbol_name_matcher): Change type of parameter from
880         completion_match to completion_match_result.
881         * symtab.c (compare_symbol_name): Adjust.
882         (completion_list_add_name): Pass the match_for_lcd to the tracker.
883         * symtab.h (ada_lookup_name_info::matches): Change type of
884         parameter from completion_match to completion_match_result.
885         (symbol_name_matcher_ftype): Likewise, and update comments.
886
887 2017-11-29  Pedro Alves  <palves@redhat.com>
888
889         * linespec.c (minsym_found, add_minsym): Use msymbol_is_function.
890         * minsyms.c (msymbol_is_text): Delete.
891         (msymbol_is_function): New function.
892         * minsyms.h (msymbol_is_text): Delete.
893         (msymbol_is_function): New declaration.
894         * symtab.c (find_function_alias_target): Use msymbol_is_function.
895
896 2017-11-29  Tom Tromey  <tom@tromey.com>
897
898         * Makefile.in (distclean): Handle the case where rmdir fails.
899
900 2017-11-29  Tom Tromey  <tom@tromey.com>
901
902         * symfile.c (_initialize_symfile): Update usage text for
903         add-symbol-file, symbol-file, load.
904
905 2017-11-29  Tom Tromey  <tom@tromey.com>
906
907         * symfile.c (add_symbol_file_command): Error if some arguments to
908         -s are missing.  Change unrecognized-argument error message.
909         (_initialize_symfile): Fix usage text for add-symbol-file.
910
911 2017-11-27  Tom Tromey  <tom@tromey.com>
912
913         * Makefile.in (REMOTE_OBS): Remove.
914         (SFILES): Remove remote sources.
915         (COMMON_SFILES): Add remote sources.
916         (ALLDEPFILES): Remove dcache.c.
917
918 2017-11-27  Tom Tromey  <tom@tromey.com>
919
920         * Makefile.in (SUBDIR_TARGET_SRCS, SUBDIR_TARGET_OBS): New
921         variables.
922         (SFILES): Use SUBDIR_TARGET_SRCS.
923         (COMMON_OBS): Use SUBDIR_TARGET_OBS.  Remove waitstatus.o.
924         (CONFIG_SRC_SUBDIR): Add target.
925         (%.o): Remove target rule.
926
927 2017-11-27  Tom Tromey  <tom@tromey.com>
928
929         * Makefile.in (COMMON_OBS): Remove filename-seen-cache.o,
930         registry.o, thread-fsm.o, debug.o.
931         (COMMON_SFILES): Add filename-seen-cache.c, registry.c,
932         thread-fsm.c, debug.c.
933
934 2017-11-27  Tom Tromey  <tom@tromey.com>
935
936         * Makefile.in (COMMON_SFILES): New.
937         (SFILES): Move some entries to COMMON_SFILES.
938         (COMMON_OBS): Use COMMON_SFILES.
939
940 2017-11-27  Tom Tromey  <tom@tromey.com>
941
942         * Makefile.in (YYFILES): Update comment.
943         (YYOBJ): Redefine.
944
945 2017-11-27  Tom Tromey  <tom@tromey.com>
946
947         * Makefile.in (SUBDIR_PYTHON_OBS): Redefine.
948         (CONFIG_SRC_SUBDIR): Add python.
949         (%.o): Remove python rule.
950         (python/%.o): New rule.
951         * configure: Rebuild.
952         * configure.ac (CONFIG_OBS): Refer to python/python.o
953
954 2017-11-27  Tom Tromey  <tom@tromey.com>
955
956         * configure: Rebuild.
957         * configure.ac (CONFIG_OBS): Refer to guile/guile.o.
958         * Makefile.in (SUBDIR_GUILE_OBS): Redefine.
959         (CONFIG_SRC_SUBDIR): Add guile.
960         (%.o): Remove guile rule.
961
962 2017-11-27  Tom Tromey  <tom@tromey.com>
963
964         * Makefile.in (SUBDIR_UNITTESTS_OBS): Redefine.
965         (%.o): Remove unittests rule.
966         (CONFIG_SRC_SUBDIR): Add unittests.
967
968 2017-11-27  Tom Tromey  <tom@tromey.com>
969
970         * Makefile.in (SUBDIR_TUI_OBS): Redefine.
971         (CONFIG_SRC_SUBDIR): Add tui.
972         (%.o): Remove tui rule.
973
974 2017-11-27  Tom Tromey  <tom@tromey.com>
975
976         * Makefile.in (SUBDIR_GCC_COMPILE_OBS): Redefine.
977         (%.o): Remove compile rule.
978         (CONFIG_SRC_SUBDIR): Add compile.
979
980 2017-11-27  Tom Tromey  <tom@tromey.com>
981
982         * Makefile.in (SUBDIR_MI_OBS): Redefine.
983         (%.o): Remove mi rule.
984         (CONFIG_SRC_SUBDIR): Add mi.
985         (COMMON_OBS): Use mi/mi-common.o
986
987 2017-11-27  Tom Tromey  <tom@tromey.com>
988
989         * Makefile.in (SUBDIR_CLI_OBS): Redefine.
990         (%.o): Remove cli rule.
991         (CONFIG_SRC_SUBDIR): Add cli.
992
993 2017-11-27  Tom Tromey  <tom@tromey.com>
994
995         * configure.ac (CONFIG_SRC_SUBDIR): Don't subst.
996         * configure: Rebuild.
997         * Makefile.in (CONFIG_SRC_SUBDIR): Redefine.
998         (CONFIG_DEP_SUBDIR): New variable.
999         (%.o): Add order-only dependency.
1000         ($(CONFIG_DEP_SUBDIR)): New target.
1001
1002 2017-11-26  Dominik Czarnota  <dominik.b.czarnota@gmail.com>
1003
1004         PR gdb/21945
1005         * findcmd.c (_initialize_mem_search): Update find command help
1006         text.
1007
1008 2017-11-26  Simon Marchi  <simon.marchi@polymtl.ca>
1009
1010         * python/python.c (do_start_initialization): Change progname
1011         type to gdb::unique_xmalloc_ptr.  Release the pointer when using
1012         Python 2.
1013
1014 2017-11-26  Tom Tromey  <tom@tromey.com>
1015
1016         * common/format.h: Add include guards.
1017
1018 2017-11-26  Tom Tromey  <tom@tromey.com>
1019
1020         * nat/linux-personality.h (class
1021         maybe_disable_address_space_randomization): New class.
1022         (maybe_disable_address_space_randomization): Don't declare
1023         function.
1024         * nat/linux-personality.c (restore_personality)
1025         (make_disable_asr_cleanup): Remove.
1026         (maybe_disable_address_space_randomization): Now a constructor.
1027         (~maybe_disable_address_space_randomization): New destructor.
1028         * linux-nat.c (linux_nat_create_inferior): Update.
1029
1030 2017-11-26  Tom Tromey  <tom@tromey.com>
1031
1032         * gcore.c (write_gcore_file_1): Use gdb::unique_xmalloc_ptr.
1033
1034 2017-11-26  Ulrich Weigand  <uweigand@de.ibm.com>
1035
1036         * spu-tdep.c (spu_software_single_step): Access SPU_LSLR_REGNUM as
1037         "cooked" register.  Access only first four bytes of branch target
1038         registers.
1039
1040 2017-11-25  Sergio Durigan Junior  <sergiodj@redhat.com>
1041
1042         PR gdb/22491
1043         * stap-probe.c (relocate_address): New function.
1044         (stap_probe::get_relocated_address): Use 'relocate_address'.
1045         (stap_probe::set_semaphore): Use 'relocate_address' and pass
1046         'm_sem_addr'.
1047         (stap_probe::clear_semaphore): Likewise.
1048
1049 2017-11-25  Pedro Alves  <palves@redhat.com>
1050
1051         * dictionary.c: Include "safe-ctype.h".
1052         * minsyms.c: Include "safe-ctype.h".
1053         * minsyms.c (SYMBOL_HASH_NEXT): Use TOLOWER instead of tolower.
1054
1055 2017-11-25   Pedro Alves  <palves@redhat.com>
1056
1057         * completer.c (complete_line_internal_1): Skip spaces until the
1058         start of the command.
1059
1060 2017-11-24  Pedro Alves  <palves@redhat.com>
1061
1062         * cp-support.c (cp_symbol_name_matches_1): New, factored out from
1063         cp_fq_symbol_name_matches.  Pass language_cplus to
1064         strncmp_with_mode.
1065         (cp_fq_symbol_name_matches): Call cp_symbol_name_matches_1.
1066         (selftests::test_cp_symbol_name_cmp): New.
1067         (_initialize_cp_support): Register "cp_symbol_name_matches"
1068         selftests.
1069         * language.c (default_symbol_name_matcher): Pass language_minimal
1070         to strncmp_iw_with_mode.
1071         * utils.c: Include "cp-support.h" and <algorithm>.
1072         (valid_identifier_name_char, cp_skip_operator_token, skip_ws)
1073         (cp_is_operator): New functions.
1074         (strncmp_iw_with_mode): Use them.  Add language parameter.  Don't
1075         skip whitespace in the symbol name when the lookup name doesn't
1076         have spaces, and vice versa.
1077         (strncmp_iw, strcmp_iw): Pass language to strncmp_iw_with_mode.
1078         * utils.h (strncmp_iw_with_mode): Add language parameter.
1079
1080 2017-11-24  Joel Brobecker  <brobecker@adacore.com>
1081
1082         * ada-lang.c (ada_exception_message_1, ada_exception_message):
1083         New functions.
1084         (print_it_exception): If available, display the exception
1085         message as well.
1086         * NEWS: Document new feature.
1087
1088 2017-11-24  Ulrich Weigand  <uweigand@de.ibm.com>
1089
1090         * configure.nat <spu-linux>: Add fork-inferior.o to NATDEPFILES.
1091
1092 2017-11-24  Philipp Rudo  <prudo@linux.vnet.ibm.com>
1093
1094         * dtrace-probe.c (dtrace_probe::build_arg_exprs)
1095         (dtrace_probe::is_enabled, dtrace_probe::enable)
1096         (dtrace_probe::disable): Remove keyword 'struct' at for-range
1097         variable
1098         * probe.c (gen_ui_out_table_header_info)
1099         (print_ui_out_not_applicables):  Remove keyword 'struct' at
1100         for-range variable
1101
1102 2017-11-24  Alan Hayward  <alan.hayward@arm.com>
1103
1104         * configure.tgt: Add arch/aarch64.o
1105
1106 2017-11-24  Simon Marchi  <simon.marchi@polymtl.ca>
1107
1108         * common/common-utils.h: Include poison.h.
1109         (xfree): Remove declaration, add definition with static_assert.
1110         * common/common-utils.c (xfree): Remove.
1111         * common/poison.h (IsMallocatable): Define.
1112         (IsFreeable): Define.
1113         (free): Delete for non-freeable types.
1114         (xnew): New.
1115         (XNEW): Undef and redefine.
1116         (xcnew): New.
1117         (XCNEW): Undef and redefine.
1118         (xdelete): New.
1119         (XDELETE): Undef and redefine.
1120         (xnewvec): New.
1121         (XNEWVEC): Undef and redefine.
1122         (xcnewvec): New.
1123         (XCNEWVEC): Undef and redefine.
1124         (xresizevec): New.
1125         (XRESIZEVEC): Undef and redefine.
1126         (xdeletevec): New.
1127         (XDELETEVEC): Undef and redefine.
1128         (xnewvar): New.
1129         (XNEWVAR): Undef and redefine.
1130         (xcnewvar): New.
1131         (XCNEWVAR): Undef and redefine.
1132         (xresizevar): New.
1133         (XRESIZEVAR): Undef and redefine.
1134
1135 2017-11-24  Simon Marchi  <simon.marchi@polymtl.ca>
1136
1137         * gdbthread.h (private_thread_info): Define structure type, add
1138         virtual pure destructor.
1139         (thread_info) <priv>: Change type to unique_ptr.
1140         <private_dtor>: Remove.
1141         * thread.c (add_thread_with_info): Adjust to use of unique_ptr.
1142         (private_thread_info::~private_thread_info): Provide default
1143         implementation.
1144         (thread_info::~thread_info): Don't call private_dtor nor
1145         manually free priv.
1146         * aix-thread.c (private_thread_info): Rename to ...
1147         (aix_thread_info): ... this.
1148         (get_aix_thread_info): New.
1149         (sync_threadlists): Adjust.
1150         (iter_tid): Adjust.
1151         (aix_thread_resume): Adjust.
1152         (aix_thread_fetch_registers): Adjust.
1153         (aix_thread_store_registers): Adjust.
1154         (aix_thread_extra_thread_info): Adjust.
1155         * darwin-nat.h (private_thread_info): Rename to ...
1156         (darwin_thread_info): ... this.
1157         (get_darwin_thread_info): New.
1158         * darwin-nat.c (darwin_init_thread_list): Adjust.
1159         (darwin_check_new_threads): Adjust.
1160         (thread_info_from_private_thread_info): Adjust.
1161         * linux-thread-db.c (private_thread_info): Rename to ...
1162         (thread_db_thread_info): ... this, initialize fields.
1163         (get_thread_db_thread_info): New.
1164         <dying>: Change type to bool.
1165         (update_thread_state): Adjust to type rename.
1166         (record_thread): Adjust to type rename an use of unique_ptr.
1167         (thread_db_pid_to_str): Likewise.
1168         (thread_db_extra_thread_info): Likewise.
1169         (thread_db_thread_handle_to_thread_info): Likewise.
1170         (thread_db_get_thread_local_address): Likewise.
1171         * nto-tdep.h (private_thread_info): Rename to ...
1172         (nto_thread_info): ... this, initialize fields.
1173         (get_nto_thread_info): New.
1174         <name>: Change type to std::string.
1175         * nto-tdep.c (nto_extra_thread_info): Adjust to type rename and
1176         use of unique_ptr.
1177         * nto-procfs.c (update_thread_private_data_name): Adjust to
1178         std::string change, allocate nto_private_thread_info with new.
1179         (update_thread_private_data): Adjust to unique_ptr.
1180         * remote.c (private_thread_info): Rename to ...
1181         (remote_thread_info): ... this, initialize data members with
1182         default values.
1183         <extra, name>: Change type to std::string.
1184         <thread_handle>: Change type to non-pointer.
1185         (free_private_thread_info): Remove.
1186         (get_private_info_thread): Rename to...
1187         (get_remote_thread_info): ... this, change return type, adjust to
1188         use of unique_ptr, use remote_thread_info constructor.
1189         (remote_add_thread): Adjust.
1190         (get_private_info_ptid): Rename to...
1191         (get_remote_thread_info): ...this, change return type.
1192         (remote_thread_name): Use get_remote_thread_info, adjust to
1193         change to std::string.
1194         (struct thread_item) <~thread_item>: Remove.
1195         <thread_handle>: Make non pointer.
1196         (start_thread): Adjust to thread_item::thread_handle type
1197         change.
1198         (remote_update_thread_list): Adjust to type name change, move
1199         strings from temporary to long-lived object instead of
1200         duplicating.
1201         (remote_threads_extra_info): Use get_remote_thread_info.
1202         (process_initial_stop_replies): Likewise.
1203         (resume_clear_thread_private_info): Likewise.
1204         (remote_resume): Adjust to type name change.
1205         (remote_commit_resume): Use get_remote_thread_info.
1206         (process_stop_reply): Adjust to type name change.
1207         (remote_stopped_by_sw_breakpoint): Use get_remote_thread_info.
1208         (remote_stopped_by_hw_breakpoint): Likewise.
1209         (remote_stopped_by_watchpoint): Likewise.
1210         (remote_stopped_data_address): Likewise.
1211         (remote_core_of_thread): Likewise.
1212         (remote_thread_handle_to_thread_info): Use
1213         get_private_info_thread, adjust to thread_handle field type
1214         change.
1215
1216 2017-11-24  Simon Marchi  <simon.marchi@polymtl.ca>
1217
1218         * remote.c (struct thread_item): Add constructor, disable copy
1219         construction and copy assignment, define default move
1220         construction and move assignment.
1221         <extra, name>: Change type to std::string.
1222         <core>: Initialize.
1223         <thread_handle>: Make non-pointer.
1224         (thread_item_t): Remove typedef.
1225         (DEF_VEC_O(thread_item_t)): Remove.
1226         (threads_listing_context) <contains_thread>: New method.
1227         <remove_thread>: New method.
1228         <items>: Change type to std::vector.
1229         (clear_threads_listing_context): Remove.
1230         (threads_listing_context_remove): Remove.
1231         (remote_newthread_step): Use thread_item constructor, adjust to
1232         change to std::vector.
1233         (start_thread): Use thread_item constructor, adjust to change to
1234         std::vector.
1235         (end_thread): Adjust to change to std::vector and std::string.
1236         (remote_get_threads_with_qthreadinfo): Use thread_item
1237         constructor, adjust to std::vector.
1238         (remote_update_thread_list): Adjust to change to std::vector and
1239         std::string, use threads_listing_context methods.
1240         (remove_child_of_pending_fork): Adjust.
1241         (remove_new_fork_children): Adjust.
1242         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add rsp-low-selftests.c.
1243         (SUBDIR_UNITTESTS_OBS): Add rsp-low-selftests.o.
1244         * unittests/rsp-low-selftests.c: New file.
1245         * common/rsp-low.h: Include common/byte-vector.h.
1246         (hex2bin): New overload.
1247         * common/rsp-low.c (hex2bin): New overload.
1248
1249 2017-11-24  Simon Marchi  <simon.marchi@ericsson.com>
1250
1251         * inferior.h (private_inferior): Define structure type, add
1252         virtual pure destructor.
1253         (inferior) <priv>: Change type to unique_ptr.
1254         * inferior.c (private_inferior::~private_inferior): Provide
1255         default implementation.
1256         (inferior::~inferior): Don't free priv field.
1257         (exit_inferior_1): Likewise.
1258         * darwin-nat.h (struct darwin_exception_info): Initialize fields.
1259         (darwin_exception_info): Remove typedef.
1260         (DEF_VEC_O (darwin_thread_t)); Remove.
1261         (private_inferior): Rename to ...
1262         (darwin_private_inferior): ... this, extend private_inferior.
1263         (get_darwin_inferior): New.
1264         <threads>: Change type to std::vector of darwin_thread_t pointers.
1265         * darwin-nat.c (darwin_check_new_threads): Adjust.
1266         (find_inferior_task_it): Adjust.
1267         (darwin_find_thread); Adjust.
1268         (darwin_suspend_inferior): Adjust.
1269         (darwin_resume_inferior): Adjust.
1270         (darwin_find_new_inferior): Adjust.
1271         (darwin_decode_notify_message): Adjust.
1272         (darwin_send_reply): Adjust.
1273         (darwin_resume_inferior_threads): Adjust.
1274         (darwin_suspend_inferior_threads): Adjust.
1275         (darwin_decode_message): Adjust.
1276         (darwin_wait): Adjust.
1277         (darwin_interrupt): Adjust.
1278         (darwin_deallocate_threads): Adjust.
1279         (darwin_mourn_inferior): Adjust, don't free private data.
1280         (darwin_reply_to_all_pending_messages): Adjust.
1281         (darwin_stop_inferior): Adjust.
1282         (darwin_setup_exceptions): Adjust.
1283         (darwin_kill_inferior): Adjust.
1284         (darwin_setup_request_notification): Adjust.
1285         (darwin_attach_pid): Adjust.
1286         (darwin_init_thread_list): Adjust.
1287         (darwin_setup_fake_stop_event): Adjust.
1288         (darwin_attach): Adjust.
1289         (darwin_detach): Adjust.
1290         (darwin_xfer_partial): Adjust.
1291         (set_enable_mach_exceptions): Adjust.
1292         (darwin_pid_to_exec_file): Adjust.
1293         (darwin_get_ada_task_ptid): Adjust.
1294         * darwin-nat-info.c (get_task_from_args): Adjust.
1295         (info_mach_ports_command): Adjust.
1296         (info_mach_region_command): Adjust.
1297         (info_mach_exceptions_command): Adjust.
1298         * remote.c (private_inferior): Rename to ...
1299         (remote_private_inferior): ... this, initialize fields.
1300         (get_remote_inferior); New.
1301         (remote_commit_resume): Use get_remote_inferior.
1302         (check_pending_event_prevents_wildcard_vcont_callback): Likewise.
1303
1304 2017-11-24  Pedro Alves  <palves@redhat.com>
1305
1306         * NEWS: Mention linespecs and explicit locations, and completion
1307         improvements.
1308
1309 2017-11-24  Yao Qi  <yao.qi@linaro.org>
1310
1311         * regcache.c (regcache::dump): Remove footnote_register_size.
1312
1313 2017-11-24  Yao Qi  <yao.qi@linaro.org>
1314
1315         * regcache.c (cooked_read_test): Add more test for readonly
1316         regcache.
1317
1318 2017-11-24  Yao Qi  <yao.qi@linaro.org>
1319
1320         * gdbarch-selftests.c (test_target_has_registers): Move it to
1321         target.c.
1322         (test_target_has_stack): Likewise.
1323         (test_target_has_memory): Likewise.
1324         (test_target_prepare_to_store): Likewise.
1325         (test_target_store_registers): Likewise.
1326         (test_target_ops): Likewise.
1327         * regcache.c: Include selftest-arch.h and gdbthread.h.
1328         (target_ops_no_register): New class.
1329         (test_target_fetch_registers): New.
1330         (test_target_store_registers): New.
1331         (test_target_xfer_partial): New.
1332         (readwrite_regcache): New.
1333         (cooked_read_test): New.
1334         (_initialize_regcache): Register the test.
1335         * target.c: (test_target_has_registers): Moved from
1336         gdbarch-selftests.c.
1337         (test_target_has_stack): Likewise.
1338         (test_target_has_memory): Likewise.
1339         (test_target_prepare_to_store): Likewise.
1340         (test_target_store_registers): Likewise.
1341         * target.h (test_target_ops): New class.
1342
1343 2017-11-24  Alan Hayward  <alan.hayward@arm.com>
1344
1345         * aarch64-tdep.c (_initialize_aarch64_tdep): Add target desc
1346         selftest.
1347
1348 2017-11-24  Alan Hayward  <alan.hayward@arm.com>
1349
1350         * aarch64-tdep.c (_initialize_aarch64_tdep): Remove init.
1351         * arch/aarch64.c (aarch64_create_target_description): Create
1352         new target description.
1353         * features/Makefile: Add new files.
1354         * features/aarch64.c: Remove file.
1355         * features/aarch64-core.c: New autogenerated file.
1356         * features/aarch64-fpu.c: New autogenerated file.
1357         * target-descriptions.c (maint_print_c_tdesc_cmd): Check for aarch64.
1358
1359 2017-11-24  Alan Hayward  <alan.hayward@arm.com>
1360
1361         * Makefile.in: Add new files.
1362         * aarch64-linux-nat.c (aarch64_linux_read_description): Call
1363         aarch64_read_description.
1364         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
1365         Call aarch64_read_description.
1366         * aarch64-tdep.c (aarch64_read_description): New function.
1367         (aarch64_gdbarch_init): Call aarch64_read_description.
1368         * aarch64-tdep.h (aarch64_read_description): New function.
1369         * arch/aarch64.c: New file.
1370         * configure.tgt: Add new files.
1371
1372 2017-11-24  Yao Qi  <yao.qi@linaro.org>
1373
1374         * mi/mi-main.c (register_changed_p): Update.
1375         * value.c (value_contents_bits_eq): Change return type.
1376         (value_contents_eq): Likewise.
1377         * value.h: Update comments.
1378
1379 2017-11-24  Yao Qi  <yao.qi@linaro.org>
1380
1381         * mi/mi-main.c (mi_cmd_data_list_changed_registers): Remove
1382         local 'changed'.  Remove error.
1383         (register_changed_p): Change return type to bool.
1384
1385 2017-11-24  Yao Qi  <yao.qi@linaro.org>
1386
1387         * arch/tic6x.c: New file.
1388         * arch/tic6x.h: New file.
1389         * features/Makefile (FEATURE_XMLFILES): Add tic6x-c6xp.xml,
1390         tic6x-core.xml and tic6x-gp.xml.
1391         * features/tic6x-c6xp.c: Generated.
1392         * features/tic6x-core.c: Generated.
1393         * features/tic6x-gp.c: Generated.
1394         * target-descriptions.c (maint_print_c_tdesc_cmd): Match
1395         "tic6x-".
1396
1397 2017-11-23  Simon Marchi  <simon.marchi@ericsson.com>
1398
1399         * mi/mi-main.c (list_available_thread_groups): Change map value
1400         type to std::vector.
1401
1402 2017-11-23  Simon Marchi  <simon.marchi@ericsson.com>
1403
1404         * osdata.c (osdata_end_column, get_osdata): Remove std::move.
1405
1406 2017-11-23  Simon Marchi  <simon.marchi@ericsson.com>
1407
1408         * varobj.c (struct varobj_dynamic) <children_requested_>: Rename
1409         back to...
1410         <children_requested>: ... this.
1411         (varobj_get_num_children, varobj_update): Adjust.
1412
1413 2017-11-23  Simon Marchi  <simon.marchi@ericsson.com>
1414
1415         * ada-varobj.c (ada_value_is_changeable_p): Change int to bool where applicable.
1416         (ada_value_has_mutated): Likewise.
1417         * c-varobj.c (varobj_is_anonymous_child): Likewise.
1418         (c_is_path_expr_parent): Likewise.
1419         * mi/mi-cmd-var.c (varobj_update_one): Likewise.
1420         (mi_cmd_var_set_frozen): Likewise.
1421         (mi_cmd_var_update_iter): Likewise.
1422         (mi_cmd_var_update): Likewise.
1423         * varobj.c (pretty_printing): Likewise.
1424         (varobj_enable_pretty_printing): Likewise.
1425         (struct varobj_root) <floating, is_valid>: Likewise.
1426         (struct varobj_dynamic) <children_requested>: Likewise.
1427         (delete_variable): Likewise.
1428         (delete_variable_1): Likewise.
1429         (install_variable): Likewise.
1430         (update_type_if_necessary): Likewise.
1431         (install_new_value): Likewise.
1432         (value_of_root): Likewise.
1433         (is_root_p): Likewise.
1434         (varobj_create): Likewise.
1435         (varobj_delete): Likewise.
1436         (varobj_has_more): Likewise.
1437         (varobj_set_frozen): Likewise.
1438         (varobj_get_frozen): Likewise.
1439         (install_dynamic_child): Likewise.
1440         (dynamic_varobj_has_child_method): Likewise.
1441         (update_dynamic_varobj_children): Likewise.
1442         (varobj_get_num_children): Likewise.
1443         (varobj_list_children): Likewise.
1444         (is_path_expr_parent): Likewise.
1445         (varobj_default_is_path_expr_parent): Likewise.
1446         (varobj_is_dynamic_p): Likewise.
1447         (varobj_set_value): Likewise.
1448         (varobj_value_has_mutated): Likewise.
1449         (varobj_update): Likewise.
1450         (check_scope): Likewise.
1451         (value_of_root_1): Likewise.
1452         (varobj_value_get_print_value): Likewise.
1453         (varobj_editable_p): Likewise.
1454         (varobj_value_is_changeable_p): Likewise.
1455         (varobj_floating_p): Likewise.
1456         (varobj_default_value_is_changeable_p): Likewise.
1457         (varobj_invalidate_iter): Likewise.
1458         * varobj.h (struct varobj_update_result) <type_changed,
1459         children_changed, changed, value_installed>: Likewise.
1460         (struct varobj) <updated, frozen, not_fetched>: Likewise.
1461         (struct lang_varobj_ops) <value_is_changeable_p,
1462         value_has_mutated, is_path_expr_parent>: Likewise.
1463         (varobj_delete): Likewise.
1464         (varobj_set_frozen): Likewise.
1465         (varobj_get_frozen): Likewise.
1466         (varobj_set_value): Likewise.
1467         (varobj_update): Likewise.
1468         (varobj_editable_p): Likewise.
1469         (varobj_floating_p): Likewise.
1470         (varobj_has_more): Likewise.
1471         (varobj_is_dynamic_p): Likewise.
1472         (varobj_default_value_is_changeable_p): Likewise.
1473         (varobj_value_is_changeable_p): Likewise.
1474         (varobj_is_anonymous_child): Likewise.
1475         (varobj_default_is_path_expr_parent): Likewise.
1476
1477 2017-11-22  Sergio Durigan Junior  <sergiodj@redhat.com>
1478
1479         * dtrace-probe.c (struct probe_ops dtrace_probe_ops): Delete.
1480         (struct dtrace_probe_arg) <dtrace_probe_arg>: New constructor.
1481         <type_str>: Convert to 'std::string'.
1482         <expr>: Convert to 'expression_up'.
1483         (dtrace_probe_arg_s): Delete type and VEC.
1484         (dtrace_probe_enabler_s): Likewise.
1485         (struct dtrace_probe): Replace by...
1486         (class dtrace_static_probe_ops): ...this and...
1487         (class dtrace_probe): ...this.
1488         (dtrace_probe_is_linespec): Rename to...
1489         (dtrace_static_probe_ops::is_linespec): ...this.  Adjust code
1490         to reflect change.
1491         (dtrace_process_dof_probe): Use 'std::vector' instead of VEC.
1492         Adjust code.  Create new instance of 'dtrace_probe'.
1493         (dtrace_build_arg_exprs): Rename to...
1494         (dtrace_probe::build_arg_exprs): ...this.  Adjust code to
1495         reflect change.
1496         (dtrace_get_probes): Rename to...
1497         (dtrace_static_probe_ops::get_probes): ...this.  Adjust code
1498         to reflect change.
1499         (dtrace_get_arg): Rename to...
1500         (dtrace_probe::get_arg_by_number): ...this.  Adjust code to
1501         reflect change.
1502         (dtrace_probe_is_enabled): Rename to...
1503         (dtrace_probe::is_enabled): ...this.  Adjust code to reflect
1504         change.
1505         (dtrace_get_probe_address): Rename to...
1506         (dtrace_probe::get_relocated_address): ...this.  Adjust code
1507         to reflect change.
1508         (dtrace_get_probe_argument_count): Rename to...
1509         (dtrace_probe::get_argument_count): ...this.  Adjust code to
1510         reflect change.
1511         (dtrace_can_evaluate_probe_arguments): Rename to...
1512         (dtrace_probe::can_evaluate_arguments): ...this.  Adjust code
1513         to reflect change.
1514         (dtrace_evaluate_probe_argument): Rename to...
1515         (dtrace_probe::evaluate_argument): ...this.  Adjust code to
1516         reflect change.
1517         (dtrace_compile_to_ax): Rename to...
1518         (dtrace_probe::compile_to_ax): ...this.  Adjust code to
1519         reflect change.
1520         (dtrace_probe_destroy): Delete.
1521         (dtrace_type_name): Rename to...
1522         (dtrace_static_probe_ops::type_name): ...this.  Adjust code to
1523         reflect change.
1524         (dtrace_probe::get_static_ops): New method.
1525         (dtrace_gen_info_probes_table_header): Rename to...
1526         (dtrace_static_probe_ops::gen_info_probes_table_header):
1527         ...this.  Adjust code to reflect change.
1528         (dtrace_gen_info_probes_table_values): Rename to...
1529         (dtrace_probe::gen_info_probes_table_values): ...this.  Adjust
1530         code to reflect change.
1531         (dtrace_enable_probe): Rename to...
1532         (dtrace_probe::enable_probe): ...this.  Adjust code to reflect
1533         change.
1534         (dtrace_disable_probe): Rename to...
1535         (dtrace_probe::disable_probe): ...this.  Adjust code to reflect
1536         change.
1537         (struct probe_ops dtrace_probe_ops): Delete.
1538         (info_probes_dtrace_command): Call 'info_probes_for_spops'
1539         instead of 'info_probes_for_ops'.
1540         (_initialize_dtrace_probe): Use 'all_static_probe_ops' instead
1541         of 'all_probe_ops'.
1542
1543 2017-11-22  Sergio Durigan Junior  <sergiodj@redhat.com>
1544             Simon Marchi  <simark@simark.ca>
1545
1546         * stap-probe.c (struct probe_ops stap_probe_ops): Delete
1547         variable.
1548         (struct stap_probe_arg) <stap_probe_arg>: New constructor.
1549         <aexpr>: Change type to 'expression_up'.
1550         (stap_probe_arg_s): Delete type and VEC.
1551         (struct stap_probe): Delete.  Replace by...
1552         (class stap_static_probe_ops): ...this and...
1553         (class stap_probe): ...this.  Rename variables to add 'm_'
1554         prefix.  Do not use 'union' for arguments anymore.
1555         (stap_get_expected_argument_type): Receive probe name instead
1556         of 'struct stap_probe'.  Adjust code.
1557         (stap_parse_probe_arguments): Rename to...
1558         (stap_probe::parse_arguments): ...this.  Adjust code to
1559         reflect change.
1560         (stap_get_probe_address): Rename to...
1561         (stap_probe::get_relocated_address): ...this.  Adjust code
1562         to reflect change.
1563         (stap_get_probe_argument_count): Rename to...
1564         (stap_probe::get_argument_count): ...this.  Adjust code
1565         to reflect change.
1566         (stap_get_arg): Rename to...
1567         (stap_probe::get_arg_by_number'): ...this. Adjust code to
1568         reflect change.
1569         (can_evaluate_probe_arguments): Rename to...
1570         (stap_probe::can_evaluate_arguments): ...this.  Adjust code
1571         to reflect change.
1572         (stap_evaluate_probe_argument): Rename to...
1573         (stap_probe::evaluate_argument): ...this.  Adjust code
1574         to reflect change.
1575         (stap_compile_to_ax): Rename to...
1576         (stap_probe::compile_to_ax): ...this.  Adjust code to
1577         reflect change.
1578         (stap_probe_destroy): Delete.
1579         (stap_modify_semaphore): Adjust comment.
1580         (stap_set_semaphore): Rename to...
1581         (stap_probe::set_semaphore): ...this.  Adjust code to reflect
1582         change.
1583         (stap_clear_semaphore): Rename to...
1584         (stap_probe::clear_semaphore): ...this.  Adjust code to
1585         reflect change.
1586         (stap_probe::get_static_ops): New method.
1587         (handle_stap_probe): Adjust code to create instance of
1588         'stap_probe'.
1589         (stap_get_probes): Rename to...
1590         (stap_static_probe_ops::get_probes): ...this.  Adjust code to
1591         reflect change.
1592         (stap_probe_is_linespec): Rename to...
1593         (stap_static_probe_ops::is_linespec): ...this.  Adjust code to
1594         reflect change.
1595         (stap_type_name): Rename to...
1596         (stap_static_probe_ops::type_name): ...this.  Adjust code to
1597         reflect change.
1598         (stap_gen_info_probes_table_header): Rename to...
1599         (stap_static_probe_ops::gen_info_probes_table_header):
1600         ...this.  Adjust code to reflect change.
1601         (stap_gen_info_probes_table_values): Rename to...
1602         (stap_probe::gen_info_probes_table_values): ...this.  Adjust
1603         code to reflect change.
1604         (struct probe_ops stap_probe_ops): Delete.
1605         (info_probes_stap_command): Use 'info_probes_for_spops'
1606         instead of 'info_probes_for_ops'.
1607         (_initialize_stap_probe): Use 'all_static_probe_ops' instead
1608         of 'all_probe_ops'.
1609
1610 2017-11-22  Sergio Durigan Junior  <sergiodj@redhat.com>
1611
1612         * break-catch-throw.c (fetch_probe_arguments): Use
1613         'probe.prob' instead of 'probe.probe'.
1614         * breakpoint.c (create_longjmp_master_breakpoint): Call
1615         'can_evaluate_arguments' and 'get_relocated_address' methods
1616         from probe.
1617         (create_exception_master_breakpoint): Likewise.
1618         (add_location_to_breakpoint): Use 'sal->prob' instead of
1619         'sal->probe'.
1620         (bkpt_probe_insert_location): Call 'set_semaphore' method from
1621         probe.
1622         (bkpt_probe_remove_location): Likewise, for 'clear_semaphore'.
1623         * elfread.c (elf_get_probes): Use 'static_probe_ops' instead
1624         of 'probe_ops'.
1625         (probe_key_free): Call 'delete' on probe.
1626         (check_exception_resume): Use 'probe.prob' instead of
1627         'probe.probe'.
1628         * location.c (string_to_event_location_basic): Call
1629         'probe_linespec_to_static_ops'.
1630         * probe.c (class any_static_probe_ops): New class.
1631         (any_static_probe_ops any_static_probe_ops): New variable.
1632         (parse_probes_in_pspace): Receive 'static_probe_ops' as
1633         argument.  Adjust code to reflect change.
1634         (parse_probes): Use 'static_probe_ops' instead of
1635         'probe_ops'.  Adjust code to reflect change.
1636         (find_probes_in_objfile): Call methods to get name and
1637         provider from probe.
1638         (find_probe_by_pc): Use 'result.prob' instead of
1639         'result.probe'.  Call 'get_relocated_address' method from
1640         probe.
1641         (collect_probes): Adjust comment and argument list to receive
1642         'static_probe_ops' instead of 'probe_ops'.  Adjust code to
1643         reflect change.  Call necessary methods from probe.
1644         (compare_probes): Call methods to get name and provider from
1645         probes.
1646         (gen_ui_out_table_header_info): Receive 'static_probe_ops'
1647         instead of 'probe_ops'.  Use 'std::vector' instead of VEC,
1648         adjust code accordingly.
1649         (print_ui_out_not_applicables): Likewise.
1650         (info_probes_for_ops): Rename to...
1651         (info_probes_for_spops): ...this.  Receive 'static_probe_ops'
1652         as argument instead of 'probe_ops'.  Adjust code.  Call
1653         necessary methods from probe.
1654         (info_probes_command): Use 'info_probes_for_spops'.
1655         (enable_probes_command): Pass correct argument to
1656         'collect_probes'.  Call methods from probe.
1657         (disable_probes_command): Likewise.
1658         (get_probe_address): Move to 'any_static_probe_ops::get_address'.
1659         (get_probe_argument_count): Move to
1660         'any_static_probe_ops::get_argument_count'.
1661         (can_evaluate_probe_arguments): Move to
1662         'any_static_probe_ops::can_evaluate_arguments'.
1663         (evaluate_probe_argument): Move to
1664         'any_static_probe_ops::evaluate_argument'.
1665         (probe_safe_evaluate_at_pc): Use 'probe.prob' instead of
1666         'probe.probe'.
1667         (probe_linespec_to_ops): Rename to...
1668         (probe_linespec_to_static_ops): ...this.  Adjust code.
1669         (probe_any_is_linespec): Rename to...
1670         (any_static_probe_ops::is_linespec): ...this.
1671         (probe_any_get_probes): Rename to...
1672         (any_static_probe_ops::get_probes): ...this.
1673         (any_static_probe_ops::type_name): New method.
1674         (any_static_probe_ops::gen_info_probes_table_header): New
1675         method.
1676         (compute_probe_arg): Use 'pc_probe.prob' instead of
1677         'pc_probe.probe'.  Call methods from probe.
1678         (compile_probe_arg): Likewise.
1679         (std::vector<const probe_ops *> all_probe_ops): Delete.
1680         (std::vector<const static_probe_ops *> all_static_probe_ops):
1681         New variable.
1682         (_initialize_probe): Use 'all_static_probe_ops' instead of
1683         'all_probe_ops'.
1684         * probe.h (struct info_probe_column) <field_name>: Delete
1685         extraneous newline
1686         (info_probe_column_s): Delete type and VEC.
1687         (struct probe_ops): Delete.  Replace with...
1688         (class static_probe_ops): ...this and...
1689         (clas probe): ...this.
1690         (struct bound_probe) <bound_probe>: Delete extraneous
1691         newline.  Adjust constructor to receive 'probe' instead of
1692         'struct probe'.
1693         <probe>: Rename to...
1694         <prob>: ...this.  Delete extraneous newline.
1695         <objfile>: Delete extraneous newline.
1696         (register_probe_ops): Delete unused prototype.
1697         (info_probes_for_ops): Rename to...
1698         (info_probes_for_spops): ...this.  Adjust comment.
1699         (get_probe_address): Move to 'probe::get_address'.
1700         (get_probe_argument_count): Move to
1701         'probe::get_argument_count'.
1702         (can_evaluate_probe_arguments): Move to
1703         'probe::can_evaluate_arguments'.
1704         (evaluate_probe_argument): Move to 'probe::evaluate_argument'.
1705         * solib-svr4.c (struct svr4_info): Adjust comment.
1706         (struct probe_and_action) <probe>: Rename to...
1707         <prob>: ...this.
1708         (register_solib_event_probe): Receive 'probe' instead of
1709         'struct probe' as argument.  Use 'prob' instead of 'probe'
1710         when applicable.
1711         (solib_event_probe_action): Call 'get_argument_count' method
1712         from probe.  Adjust comment.
1713         (svr4_handle_solib_event): Adjust comment.  Call
1714         'evaluate_argument' method from probe.
1715         (svr4_create_probe_breakpoints): Call 'get_relocated_address'
1716         from probe.
1717         (svr4_create_solib_event_breakpoints): Use 'probe' instead of
1718         'struct probe'.  Call 'can_evaluate_arguments' from probe.
1719         * symfile.h: Forward declare 'class probe' instead of 'struct
1720         probe'.
1721         * symtab.h: Likewise.
1722         (struct symtab_and_line) <probe>: Rename to...
1723         <prob>: ...this.
1724         * tracepoint.c (start_tracing): Use 'prob' when applicable.
1725         Call probe methods.
1726         (stop_tracing): Likewise.
1727
1728 2017-11-22  Joel Brobecker  <brobecker@adacore.com>
1729
1730         * ravenscar-thread.c (ravenscar_inferior_created): Remove
1731         trailing newline at end of string in call to warning.
1732
1733 2017-11-22  Simon Marchi  <simon.marchi@polymtl.ca>
1734
1735         * osdata.h: Include vector isntead of vec.h.
1736         (osdata_column_s): Remove typedef.
1737         (struct osdata_column): Add constructor.
1738         <name, value>: Change type to std::string.
1739         (DEF_VEC_O (osdata_column_s)): Remove.
1740         (osdata_item_s): Remove typedef.
1741         (struct osdata_item) <columns>: Change type to std::vector.
1742         (DEF_VEC_O (osdata_item_s)): Remove.
1743         (struct osdata): Add constructor.
1744         <type>: Change type to std::string.
1745         <items>: Change type to std::vector.
1746         (osdata_p): Remove typedef.
1747         (DEF_VEC_P (osdata_p)): Remove.
1748         (osdata_parse): Return a unique_ptr.
1749         (osdata_free): Remove.
1750         (make_cleanup_osdata_free): Remove.
1751         (get_osdata): Return a unique_ptr.
1752         (get_osdata_column): Return pointer to std::string, take a
1753         reference to osdata_item as parameter.
1754         * osdata.c (struct osdata_parsing_data) <osdata>: Change type to
1755         unique_ptr.
1756         <property_name>: Change type to std::string.
1757         (osdata_start_osdata): Allocate osdata with new and adjust.
1758         (osdata_start_item): Adjust.
1759         (osdata_start_column): Adjust.
1760         (osdata_end_column): Adjust.
1761         (clear_parsing_data): Remove.
1762         (osdata_parse): Return a unique_ptr and adjust, remove cleanup.
1763         (osdata_item_clear): Remove.
1764         (get_osdata): return a unique_ptr and adjust.
1765         (get_osdata_column): Return a pointer to std::string and adjust.
1766         (info_osdata): Adjust.
1767         * mi/mi-main.c: Include <map>.
1768         (free_vector_of_osdata_items): Remove.
1769         (list_available_thread_groups): Adjust, use std::map instead of
1770         splay tree.
1771
1772 2017-11-22  Simon Marchi  <simon.marchi@ericsson.com>
1773
1774         * stack.c (iterate_over_block_locals): Add LOC_OPTIMIZED_OUT
1775         case in switch.
1776
1777 2017-11-22  Simon Marchi  <simon.marchi@polymtl.ca>
1778
1779         * varobj.h (DEF_VEC_P (varobj_p)): Remove.
1780
1781 2017-11-22  Simon Marchi  <simon.marchi@polymtl.ca>
1782
1783         * varobj.h (struct varobj_update_result): Add constructor, add
1784         move constructor, disable copy and assign, initialize fields.
1785         <newobj>: Change type to std::vector.
1786         (varobj_update): Return std::vector.
1787         * varobj.c (install_dynamic_child): Change VEC parameters to
1788         std::vector and adjust.
1789         (update_dynamic_varobj_children): Likewise.
1790         (varobj_update): Return std::vector and adjust.
1791         * mi/mi-cmd-var.c (varobj_update_one): Adjust to vector changes.
1792
1793 2017-11-22  Simon Marchi  <simon.marchi@polymtl.ca>
1794
1795         * varobj.h (struct varobj) <parent>: Remove const.
1796         <children>: Change type to std::vector.
1797         (varobj_list_children): Return std::vector const reference.
1798         (varobj_restrict_range): Change parameter type to std::vector
1799         const reference.
1800         * varobj.c (varobj_has_more): Adjust.
1801         (varobj_restrict_range): Change parameter type to std::vector
1802         const reference and adjust.
1803         (install_dynamic_child): Adjust.
1804         (update_dynamic_varobj_children): Adjust.
1805         (varobj_list_children): Return std::vector const reference and
1806         adjust.
1807         (varobj_add_child): Adjust.
1808         (update_type_if_necessary): Adjust.
1809         (varobj_update): Adjust.
1810         (delete_variable_1): Adjust.
1811         * ada-varobj.c (ada_value_has_mutated): Adjust.
1812         * mi/mi-cmd-var.c (mi_cmd_var_list_children): Adjust.
1813
1814 2017-11-22  Simon Marchi  <simon.marchi@polymtl.ca>
1815
1816         * varobj.h (struct varobj): Add constructor and destructor,
1817         initialize fields.
1818         * varobj.c (struct varobj_root): Initialize fields.
1819         (struct varobj_dynamic): Initialize fields.
1820         (varobj_create): Use unique_ptr instead of cleanup.  Create
1821         varobj with new instead of new_root_variable.
1822         (delete_variable_1): Free variable with delete instead of
1823         free_variable.
1824         (create_child_with_value): Create variable with new instead of
1825         new_variable.
1826         (varobj::varobj): New.
1827         (varobj::~varobj): New (body mostly coming from free_variable).
1828         (new_variable): Remove.
1829         (free_variable): Remove.
1830         (do_free_variable_cleanup): Remove.
1831         (make_cleanup_free_variable): Remove.
1832
1833 2017-11-22  Ulrich Weigand  <uweigand@de.ibm.com>
1834
1835         * core-regset.c: Remove file.
1836         * Makefile.in (ALLDEPFILES): Remove core-regset.c.
1837
1838 2017-11-22  Ulrich Weigand  <uweigand@de.ibm.com>
1839
1840         * NEWS: Document use of GNU MPFR.
1841         * README: Likewise.
1842
1843         * Makefile.in (LIBMPFR): Add define.
1844         (CLIBS): Add $(LIBMPFR).
1845         * configure.ac: Add --with-mpfr configure option.
1846         * configure: Regenerate.
1847         * config.in: Regenerate.
1848
1849         * target-float.c [HAVE_LIBMPFR]: Include <mpfr.h>.
1850         (class mpfr_float_ops): New type.
1851         (mpfr_float_ops::from_target): Two new overloaded functions.
1852         (mpfr_float_ops::to_target): Likewise.
1853         (mpfr_float_ops::to_string): New function.
1854         (mpfr_float_ops::from_string): Likewise.
1855         (mpfr_float_ops::to_longest): Likewise.
1856         (mpfr_float_ops::from_longest): Likewise.
1857         (mpfr_float_ops::from_ulongest): Likewise.
1858         (mpfr_float_ops::to_host_double): Likewise.
1859         (mpfr_float_ops::from_host_double): Likewise.
1860         (mpfr_float_ops::convert): Likewise.
1861         (mpfr_float_ops::binop): Likewise.
1862         (mpfr_float_ops::compare): Likewise.
1863         (get_target_float_ops): Use mpfr_float_ops if available.
1864
1865 2017-11-22  Ulrich Weigand  <uweigand@de.ibm.com>
1866
1867         * target-float.c: Do not include <math.h>.
1868         Include <cmath> and <limits>.
1869         (DOUBLEST): Do not define.
1870         (class target_float_ops): New type.
1871         (class host_float_ops): New templated type.
1872         (class decimal_float_ops): New type.
1873
1874         (floatformat_to_doublest): Rename to ...
1875         (host_float_ops<T>::from_target): ... this.  Use template type T
1876         instead of DOUBLEST.  Use C++ math routines.  Update recursive calls.
1877         (host_float_ops<T>::from_target): New overload using a type argument.
1878         (floatformat_from_doublest): Rename to ...
1879         (host_float_ops<T>::to_target): ... this.  Use template type T
1880         instead of DOUBLEST.  Use C++ math routines.  Update recursive calls.
1881         (host_float_ops<T>::to_target): New overload using a type argument.
1882         (floatformat_printf_format): New function.
1883         (struct printf_length_modifier): New templated type.
1884         (floatformat_to_string): Rename to ...
1885         (host_float_ops<T>::to_string): ... this.  Use type instead of
1886         floatformat argument.  Use floatformat_printf_format and
1887         printf_length_modifier.  Remove special handling of invalid numbers,
1888         infinities and NaN (moved to target_float_to_string).
1889         (struct scanf_length_modifier): New templated type.
1890         (floatformat_from_string): Rename to ...
1891         (host_float_ops<T>::from_string): ... this.  Use type instead of
1892         floatformat argument.  Use scanf_length_modifier.
1893         (floatformat_to_longest): Rename to ...
1894         (host_float_ops<T>::to_longest): ... this.  Use type instead of
1895         floatformat argument.  Handle out-of-range values deterministically.
1896         (floatformat_from_longest): Rename to ...
1897         (host_float_ops<T>::from_longest): ... this.  Use type instead of
1898         floatformat argument.
1899         (floatformat_from_ulongest): Rename to ...
1900         (host_float_ops<T>::from_ulongest): ... this.  Use type instead of
1901         floatformat argument.
1902         (floatformat_to_host_double): Rename to ...
1903         (host_float_ops<T>::to_host_double): ... this.  Use type instead of
1904         floatformat argument.
1905         (floatformat_from_host_double): Rename to ...
1906         (host_float_ops<T>::from_host_double): ... this.  Use type instead of
1907         floatformat argument.
1908         (floatformat_convert): Rename to ...
1909         (host_float_ops<T>::convert): ... this.  Use type instead of
1910         floatformat arguments.  Remove handling of no-op conversions.
1911         (floatformat_binop): Rename to ...
1912         (host_float_ops<T>::binop): ... this.  Use type instead of
1913         floatformat arguments.
1914         (floatformat_compare): Rename to ...
1915         (host_float_ops<T>::compare): ... this.  Use type instead of
1916         floatformat arguments.
1917
1918         (match_endianness): Use type instead of length/byte_order arguments.
1919         (set_decnumber_context): Likewise.
1920         (decimal_from_number): Likewise.  Update calls.
1921         (decimal_to_number): Likewise.
1922         (decimal_is_zero): Likewise.  Update calls.  Move to earlier in file.
1923         (decimal_float_ops::to_host_double): New dummy function.
1924         (decimal_float_ops::from_host_double): Likewise.
1925         (decimal_to_string): Rename to ...
1926         (decimal_float_ops::to_string): ... this.  Use type instead of
1927         length/byte_order arguments.  Update calls.
1928         (decimal_from_string): Rename to ...
1929         (decimal_float_ops::from_string): ... this.  Use type instead of
1930         length/byte_order arguments.  Update calls.
1931         (decimal_from_longest): Rename to ...
1932         (decimal_float_ops::from_longest): ... this.  Use type instead of
1933         length/byte_order arguments.  Update calls.
1934         (decimal_from_ulongest): Rename to ...
1935         (decimal_float_ops::from_ulongest): ... this.  Use type instead of
1936         length/byte_order arguments.  Update calls.
1937         (decimal_to_longest): Rename to ...
1938         (decimal_float_ops::to_longest): ... this.  Use type instead of
1939         length/byte_order arguments.  Update calls.
1940         (decimal_binop): Rename to ...
1941         (decimal_float_ops::binop): ... this.  Use type instead of
1942         length/byte_order arguments.  Update calls.
1943         (decimal_compare): Rename to ...
1944         (decimal_float_ops::compare): ... this.  Use type instead of
1945         length/byte_order arguments.  Update calls.
1946         (decimal_convert): Rename to ...
1947         (decimal_float_ops::convert): ... this.  Use type instead of
1948         length/byte_order arguments.  Update calls.
1949
1950         (target_float_same_category_p): New function.
1951         (target_float_same_format_p): Likewise.
1952         (target_float_format_length): Likewise.
1953         (enum target_float_ops_kind): New type.
1954         (get_target_float_ops_kind): New function.
1955         (get_target_float_ops): Three new overloaded functions.
1956
1957         (target_float_is_zero): Update call.
1958         (target_float_to_string): Add special handling of invalid numbers,
1959         infinities and NaN (moved from floatformat_to_string).  Use
1960         target_float_ops callback.
1961         (target_float_from_string): Use target_float_ops callback.
1962         (target_float_to_longest): Likewise.
1963         (target_float_from_longest): Likewise.
1964         (target_float_from_ulongest): Likewise.
1965         (target_float_to_host_double): Likewise.
1966         (target_float_from_host_double): Likewise.
1967         (target_float_convert): Add special case for no-op conversions.
1968         Use target_float_ops callback.
1969         (target_float_binop): Use target_float_ops callback.
1970         (target_float_compare): Likewise.
1971
1972 2017-11-22  Yao Qi  <yao.qi@linaro.org>
1973
1974         * python/py-gdb-readline.c (gdbpy_readline_wrapper): Use strcpy.
1975
1976 2017-11-22  Yao Qi  <yao.qi@linaro.org>
1977
1978         * cli/cli-decode.c (help_list): Use memcpy instead of strncpy.
1979         * cp-namespace.c (cp_lookup_transparent_type_loop): Likewise.
1980
1981 2017-11-21  Jerome Guitton  <guitton@adacore.com>
1982
1983         * ravenscar-thread.c (ravenscar_wait): Update inferior ptid
1984         with event ptid from the lower layer before doing the
1985         ravenscar-specific update.
1986
1987 2017-11-21  Joel Brobecker  <brobecker@adacore.com>
1988
1989         * ravenscar-thread.c (is_ravenscar_task): Also verify that
1990         the ptid's TID is nonzero.
1991
1992 2017-11-21  Joel Brobecker  <brobecker@adacore.com>
1993
1994         * ada-lang.h (ada_get_tcb_types_info): Add declaration.
1995         * ada-tasks.c (ada_get_tcb_types_info): Renames get_tcb_types_info.
1996         Make non-static.  Change return type to char *.  Adjust code
1997         accordingly.  Rewrite the function's documentation.
1998         (read_atcb): Adjust call to get_tcb_types_info accordingly.
1999         * ravenscar-thread.c (ravenscar_inferior_created): Check that
2000         we have enough debugging information in the runtime to support
2001         Ada task debugging before we enable the ravenscar-thread layer.
2002
2003 2017-11-21  Joel Brobecker  <brobecker@adacore.com>
2004
2005         * ada-lang.h (ada_get_task_info_from_ptid): Add declaration.
2006         * ada-tasks.c (ada_get_task_info_from_ptid): New function.
2007         * ravenscar-thread.c: Add into comment.
2008         (base_magic_null_ptid): Delete.
2009         (base_ptid): Change documentation.
2010         (ravenscar_active_task): Renames ravenscar_running_thread.
2011         All callers updated throughout.
2012         (is_ravenscar_task, ravenscar_get_thread_base_cpu): New function.
2013         (ravenscar_task_is_currently_active): Likewise.
2014         (get_base_thread_from_ravenscar_task): Ditto.
2015         (ravenscar_update_inferior_ptid): Adjust to handle multiple CPUs.
2016         (ravenscar_runtime_initialized): Likewise.
2017         (get_running_thread_id): Add new parameter "cpu".  Adjust
2018         implementation to handle this new parameter.
2019         (ravenscar_fetch_registers): Small adjustment to use
2020         is_ravenscar_task and ravenscar_task_is_currently_active in
2021         order to decide whether to use the target beneath or this
2022         module's arch_ops.
2023         (ravenscar_store_registers, ravenscar_prepare_to_store): Likewise.
2024         (ravenscar_stopped_by_sw_breakpoint): Use
2025         get_base_thread_from_ravenscar_task to get the underlying
2026         thread, rather than using base_ptid.
2027         (ravenscar_stopped_by_hw_breakpoint, ravenscar_stopped_by_watchpoint)
2028         (ravenscar_stopped_data_address, ravenscar_core_of_thread):
2029         Likewise.
2030         (ravenscar_inferior_created): Do not set base_magic_null_ptid.
2031
2032 2017-11-21  Joel Brobecker  <brobecker@adacore.com>
2033
2034         * ada-lang.h (struct ada_task_info) <base_cpu>: New field.
2035         * ada-lang.c (struct atcb_fieldno) <base_cpu>: New field.
2036         (get_tcb_types_info): Set fieldnos.base_cpu.
2037         (read_atcb): Set task_info->base_cpu.
2038         (info_task): Print "Base CPU" info if set by runtime.
2039
2040 2017-11-21  Joel Brobecker  <brobecker@adacore.com>
2041
2042         * ravenscar-thread.c (ravenscar_stopped_by_sw_breakpoint)
2043         (ravenscar_stopped_by_hw_breakpoint, ravenscar_stopped_by_watchpoint)
2044         (ravenscar_stopped_data_address, ravenscar_core_of_thread):
2045         New functions.
2046         (init_ravenscar_thread_ops): Set the to_stopped_by_sw_breakpoint,
2047         to_stopped_by_hw_breakpoint, to_stopped_by_watchpoint,
2048         to_stopped_data_address and to_core_of_thread fields of
2049         ravenscar_ops.
2050
2051 2017-11-21  Ulrich Weigand  <uweigand@de.ibm.com>
2052
2053         * ppc-tdep.h (enum powerpc_long_double_abi): New data type.
2054         (struct gdbarch_tdep): New member long_double_abi.
2055         * rs6000-tdep.c (rs6000_gdbarch_init): Initialize long_double_abi
2056         member of tdep struct based on Tag_GNU_Power_ABI_FP attribute.
2057         * ppc-linux-tdep.c (ppc_linux_init_abi): Install long double data
2058         format depending on long_double_abi tdep member.
2059         (ppc_floatformat_for_type): Handle __ibm128 type.
2060
2061 2017-11-20  Simon Marchi  <simon.marchi@polymtl.ca>
2062
2063         * darwin-nat.c (set_enable_mach_exceptions): Constify parameter.
2064
2065 2017-11-21  Pedro Alves  <palves@redhat.com>
2066
2067         * dwarf2read.c (mapped_index::find_name_components_bounds)
2068         <completion mode, upper bound>: Use std::lower_bound instead of
2069         std::upper_bound.
2070         (test_mapped_index_find_name_component_bounds): Remove incorrect
2071         "t1_fund" from expected symbols.
2072
2073 2017-11-21  Pedro Alves  <palves@redhat.com>
2074
2075         * dwarf2read.c (mapped_index::name_components_casing): New field.
2076         (mapped_index) <build_name_components,
2077         find_name_components_bounds): Declare new methods.
2078         (mapped_index::find_name_components_bounds)
2079         (mapped_index::build_name_components): New methods, factored out
2080         from dw2_expand_symtabs_matching_symbol.
2081         (check_find_bounds_finds)
2082         (test_mapped_index_find_name_component_bounds): New.
2083         (run_test): Rename to ...
2084         (test_dw2_expand_symtabs_matching_symbol): ... this.
2085         (run_test): Reimplement.
2086
2087 2017-11-21  Pedro Alves  <palves@redhat.com>
2088
2089         * cp-name-parser.y (cp_ident_is_alpha, cp_ident_is_alnum): New.
2090         (symbol_end): Use cp_ident_is_alnum.
2091         (yylex): Use cp_ident_is_alpha and cp_ident_is_alnum.
2092         * dwarf2read.c (make_sort_after_prefix_name): New function.
2093         (dw2_expand_symtabs_matching_symbol): Use it.
2094         (test_symbols): Add more symbols.
2095         (run_test): Add tests.
2096
2097 2017-11-17  Tom Tromey  <tom@tromey.com>
2098
2099         * symtab.h (enum symbol_subclass_kind): New.
2100         (struct symbol) <is_cplus_template_function, is_rust_vtable>:
2101         Remove.
2102         <subclass>: New member.
2103         (SYMBOL_IS_CPLUS_TEMPLATE_FUNCTION): Update.
2104         * rust-lang.c (rust_get_trait_object_pointer): Update.
2105         * dwarf2read.c (read_func_scope): Update.
2106         (read_variable): Update.
2107
2108 2017-11-17  Tom Tromey  <tom@tromey.com>
2109
2110         * dwarf2read.c (read_func_scope): Update.
2111         * symtab.h (struct template_symbol): Derive from symbol.
2112         <base>: Remove.
2113
2114 2017-11-17  Tom Tromey  <tom@tromey.com>
2115
2116         * symtab.h (struct symbol) <is_rust_vtable>: New member.
2117         (struct rust_vtable_symbol): New.
2118         (find_symbol_at_address): Declare.
2119         * symtab.c (find_symbol_at_address): New function.
2120         * symfile.h (struct quick_symbol_functions)
2121         <find_compunit_symtab_by_address>: New member.
2122         * symfile-debug.c (debug_qf_find_compunit_symtab_by_address): New
2123         function.
2124         (debug_sym_quick_functions): Link to
2125         debug_qf_find_compunit_symtab_by_address.
2126         * rust-lang.c (rust_get_trait_object_pointer): New function.
2127         (rust_evaluate_subexp) <case UNOP_IND>: New case.  Call
2128         rust_get_trait_object_pointer.
2129         * psymtab.c (psym_relocate): Clear psymbol_map.
2130         (psym_fill_psymbol_map, psym_find_compunit_symtab_by_address): New
2131         functions.
2132         (psym_functions): Link to psym_find_compunit_symtab_by_address.
2133         * objfiles.h (struct objfile) <psymbol_map>: New member.
2134         * dwarf2read.c (dwarf2_gdb_index_functions): Update.
2135         (process_die) <DW_TAG_variable>: New case.  Call read_variable.
2136         (rust_containing_type, read_variable): New functions.
2137
2138 2017-11-17  Simon Marchi  <simon.marchi@polymtl.ca>
2139
2140         * common/gdb_vecs.h (DEF_VEC_I (int)): Remove.
2141
2142 2017-11-17  Simon Marchi  <simon.marchi@polymtl.ca>
2143
2144         * common/filestuff.c: Include <algorithm>.
2145         (open_fds): Change type to std::vector<int>.
2146         (do_mark_open_fd): Adjust.
2147         (unmark_fd_no_cloexec): Adjust.
2148         (do_close): Adjust.
2149
2150 2017-11-17  Simon Marchi  <simon.marchi@polymtl.ca>
2151
2152         * breakpoint.c (output_thread_groups): Take an std::vector.
2153         (print_one_breakpoint_location): Adjust.
2154
2155 2017-11-17  Joel Brobecker  <brobecker@adacore.com>
2156
2157         * ada-lang.c (resolve_subexp): Add handling of OP_VAR_MSYM_VALUE.
2158         (ada_evaluate_subexp_for_cast): New function.
2159         (ada_evaluate_subexp) <UNOP_CAST>: Replace code by call to
2160         ada_evaluate_subexp_for_cast.
2161         (ada_evaluate_subexp) <nosideret>: Replace code by call to
2162         eval_skip_value.
2163         * eval.c (evaluate_var_value): Make non-static.
2164         (evaluate_var_msym_value, eval_skip_value): Likewise.
2165         * value.h (evaluate_var_value, evaluate_var_msym_value)
2166         (eval_skip_value): Declare.
2167
2168 2017-11-16  Joel Brobecker  <brobecker@adacore.com>
2169
2170         * ada-lang.c (ada_value_cast): Remove parameter "noside".
2171         Update all callers.
2172
2173 2017-11-16  Pedro Alves  <palves@redhat.com>
2174
2175         * python/py-unwind.c (pyuw_sniffer): Translate
2176         PyExc_KeyboardInterrupt to a GDB Quit exception.
2177
2178 2017-11-16  Pedro Alves  <palves@redhat.com>
2179
2180         * infrun.c (resume_cleanups): Delete.
2181         (resume): No longer install a resume_cleanups cleanup nor call
2182         QUIT.
2183         (proceed): Pass the terminal to the inferior.
2184         (keep_going_pass_signal): No longer install a resume_cleanups
2185         cleanup.
2186
2187 2017-11-16  Pedro Alves  <palves@redhat.com>
2188
2189         * inf-loop.c (inferior_event_handler): Don't swallow the exception
2190         if the prompt is blocked.
2191
2192 2017-11-16  Pedro Alves  <palves@redhat.com>
2193
2194         * breakpoint.c (insert_bp_location): Replace bp_err and
2195         bp_err_message locals by a gdb_exception local.
2196
2197 2017-11-16  Pedro Alves  <palves@redhat.com>
2198
2199         * inflow.c (scoped_ignore_sigttou): New class.
2200         (child_terminal_ours_1, new_tty): Use it.
2201
2202 2017-11-16  Ulrich Weigand  <uweigand@de.ibm.com>
2203
2204         * target-float.c (decimal_from_number): Add byte_order argument and
2205         call match_endianness.  Error if unknown floating-point type.
2206         (decimal_to_number): Add byte_order argument and call match_endianness.
2207         (decimal_from_longest): Update call.  Do not call match_endianness.
2208         (decimal_from_ulongest): Likewise.
2209         (decimal_binop): Likewise.
2210         (decimal_is_zero): Likewise.
2211         (decimal_compare): Likewise.
2212         (decimal_convert): Likewise.
2213
2214 2017-11-16  Phil Muldoon  <pmuldoon@redhat.com>
2215
2216         * python/python.c (gdbpy_rbreak): New function.
2217         * NEWS: Document Python rbreak feature.
2218
2219 2017-11-16  Yao Qi  <yao.qi@linaro.org>
2220
2221         * features/tic6x-c62x.xml: Remove.
2222         * features/tic6x-c64x.xml: Remove.
2223         * features/tic6x-c64xp.xml: Remove.
2224
2225 2017-11-15  John Baldwin  <jhb@FreeBSD.org>
2226
2227         * symtab.h: Include <array>.
2228
2229 2017-11-15  John Baldwin  <jhb@FreeBSD.org>
2230
2231         * bsd-kvm.c (bsd_kvm_cmd): Constify 'arg'.
2232         (bsd_kvm_proc_cmd): Likewise.
2233
2234 2017-11-15  Simon Marchi  <simon.marchi@ericsson.com>
2235
2236         * tui/tui-win.c (window_name_completer): Replace VEC with
2237         std::vector.
2238
2239 2017-11-15  Andrew Cagney  <cagney@gnu.org>
2240
2241         * MAINTAINERS: Remove no-longer applicable entries.
2242
2243 2017-11-15  Andrew Cagney  <cagney@gnu.org>
2244
2245         * MAINTAINERS: Move self to Past Maintainers.
2246
2247 2017-11-15  Yao Qi  <yao.qi@linaro.org>
2248
2249         * features/Makefile (XMLTOC): Remove nios2-linux.xml.
2250         * features/nios2-linux.c: Remove.
2251         * nios2-linux-tdep.c (_initialize_nios2_linux_tdep): Don't call
2252         initialize_tdesc_nios2_linux.
2253
2254 2017-11-15  Yao Qi  <yao.qi@linaro.org>
2255
2256         * m68hc11-tdep.c (M68HC11_NUM_REGS): Change it to
2257         M68HC11_LAST_HARD_REG + 1.
2258
2259 2017-11-14  Paul Carroll  <pcarroll@codesourcery.com>
2260
2261         PR gdb/22388
2262         * remote.c (remote_write_bytes_aux, remote_read_bytes_1,
2263         remote_read_bytes, remote_write_qxfer, remote_xfer_partial):
2264         Return TARGET_XFER_EOF if size of returned data is 0.
2265
2266 2017-11-14  Simon Marchi  <simon.marchi@ericsson.com>
2267
2268         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
2269         memory-map-selftests.c.
2270         (SUBDIR_UNITTESTS_OBS): Add memory-map-selftests.o.
2271         * memory-map.c (memory_map_start_memory): Fix computation of hi
2272         address.
2273         * unittests/memory-map-selftests.c: New file.
2274
2275 2017-11-09  Joel Brobecker  <brobecker@adacore.com>
2276
2277         * ada-lang.c: Fix some typos in the general command documenting
2278         how Ada expressions are being evaluated and how their result
2279         is printed.
2280
2281 2017-11-09  Tom Tromey  <tom@tromey.com>
2282
2283         * psymtab.c (psymbol_hash): Do not hash string contents.
2284         (psymbol_compare): Add comment.
2285
2286 2017-11-09  Tom Tromey  <tom@tromey.com>
2287
2288         * dictionary.c (dict_hash): Move "TKB" check into the "switch".
2289
2290 2017-11-08  Joel Brobecker  <brobecker@adacore.com>
2291
2292         * ada-exp.y (write_var_from_sym): Remove parameter
2293         "orig_left_context".  Update all callers.
2294
2295 2017-11-08  Simon Marchi  <simon.marchi@ericsson.com>
2296
2297         * tracepoint.h (class collection_list) <stringify>: Return
2298         std::vector<std::string>.
2299         (encode_actions_rsp): Change parameters to
2300         std::vector<std::string> *.
2301         * tracepoint.c (collection_list::stringify): Return
2302         std::vector<std::string> and adjust accordingly.
2303         (encode_actions_rsp): Changee parameters to
2304         std::vector<std::string> and adjust accordingly.
2305         * remote.c (free_actions_list),
2306         free_actions_list_cleanup_wrapper): Remove.
2307         (remote_download_tracepoint): Adjust to std::vector.
2308
2309 2017-11-08  Tom Tromey  <tom@tromey.com>
2310
2311         * dwarf2read.c (symbolp): Remove typedef.
2312         (read_func_scope): Use std::vector.
2313         (process_structure_scope): Use std::vector.
2314
2315 2017-11-08  Pedro Alves  <palves@redhat.com>
2316
2317         * ada-lang.c (ada_make_symbol_completion_list): Use
2318         completion_skip_symbol.
2319         * symtab.c (symbol_is_function_or_method(minimal_symbol*)): New.
2320         (symbol_is_function_or_method(symbol*)): New.
2321         (add_symtab_completions): Add complete_symbol_mode parameter.  Use
2322         completion_skip_symbol.
2323         (default_collect_symbol_completion_matches_break_on): Use
2324         completion_skip_symbol.  Pass down mode.
2325         (collect_file_symbol_completion_matches): Pass down mode.
2326         * symtab.h (symbol_is_function_or_method): New declarations.
2327         (completion_skip_symbol): New template function.
2328
2329 2017-11-08  Pedro Alves  <palves@redhat.com>
2330
2331         * linespec.c (iterate_over_all_matching_symtabs): Add
2332         search_domain parameter.  Pass it down to expand_symtabs_matching.
2333         (decode_objc): Request FUNCTIONS_DOMAIN symbols only.
2334         (lookup_prefix_sym): Adjust by passing ALL_DOMAIN as
2335         search_domain.
2336         (add_all_symbol_names_from_pspace): Add search_domain parameter.
2337         Pass it down.
2338         (find_method, find_function_symbols): Request FUNCTIONS_DOMAIN
2339         symbols.
2340         (add_matching_symbols_to_info): Add search_domain parameter.  Pass
2341         it down.
2342
2343 2017-11-08  Pedro Alves  <palves@redhat.com>
2344
2345         * ada-lang.c (ada_make_symbol_completion_list): Remove text and
2346         text_len locals and don't pass them down.
2347         * symtab.c (completion_list_add_name): Remove
2348         sym_text/sym_text_len parameters and adjust.
2349         (completion_list_add_symbol, completion_list_add_msymbol)
2350         (completion_list_objc_symbol, completion_list_add_fields)
2351         (add_symtab_completions): Likewise.
2352         (default_collect_symbol_completion_matches_break_on)
2353         (collect_file_symbol_completion_matches): Remove sym_text_len
2354         local and don't pass it down.
2355         * symtab.h (completion_list_add_name): Remove
2356         sym_text/sym_text_len parameters.
2357
2358 2017-11-08  Pedro Alves  <palves@redhat.com>
2359
2360         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
2361         unittests/lookup_name_info-selftests.c.
2362         (SUBDIR_UNITTESTS_OBS): Add lookup_name_info-selftests.o.
2363         * cp-support.c: Include "selftest.h".
2364         (cp_remove_params_1): Rename from cp_remove_params.  Add
2365         'require_param' parameter, and handle it.
2366         (cp_remove_params): Reimplement.
2367         (cp_remove_params_if_any): New.
2368         (selftests::quote): New.
2369         (selftests::check_remove_params): New.
2370         (selftests::test_cp_remove_params): New.
2371         (_initialize_cp_support): Install
2372         selftests::test_cp_remove_params.
2373         * cp-support.h (cp_remove_params_if_any): Declare.
2374         * dwarf2read.c :Include "selftest.h".
2375         (dw2_expand_symtabs_matching_symbol): Use
2376         lookup_name_info::make_ignore_params.
2377         (selftests::dw2_expand_symtabs_matching::mock_mapped_index)
2378         (selftests::dw2_expand_symtabs_matching::string_or_null)
2379         (selftests::dw2_expand_symtabs_matching::check_match)
2380         (selftests::dw2_expand_symtabs_matching::test_symbols)
2381         (selftests::dw2_expand_symtabs_matching::run_test): New.
2382         (_initialize_dwarf2_read): Register
2383         selftests::dw2_expand_symtabs_matching::run_test.
2384         * psymtab.c (psym_expand_symtabs_matching): Use
2385         lookup_name_info::make_ignore_params.
2386         * symtab.c (demangle_for_lookup_info::demangle_for_lookup_info):
2387         If the lookup name wants to ignore parameters, strip them.
2388         (compare_symbol_name): Remove sym_text/sym_text_len parameters and
2389         code handling '('.
2390         (completion_list_add_name): Don't pass down sym_text/sym_text_len.
2391         (default_collect_symbol_completion_matches_break_on): Don't try to
2392         strip parameters.
2393         * symtab.h (lookup_name_info::lookup_name_info): Add
2394         'ignore_parameters' parameter.
2395         (lookup_name_info::ignore_parameters)
2396         (lookup_name_info::make_ignore_params): New methods.
2397         (lookup_name_info::m_ignore_parameters): New field.
2398         * unittests/lookup_name_info-selftests.c: New file.
2399
2400 2017-11-08  Pedro Alves  <palves@redhat.com>
2401
2402         * dwarf2read.c (dw2_expand_marked_cus)
2403         (dw2_expand_symtabs_matching_symbol): Remove forward declarations.
2404         (dw2_expand_symtabs_matching): Move further below.
2405         (dw2_expand_marked_cus): Reindent.
2406
2407 2017-11-08  Pedro Alves  <palves@redhat.com>
2408
2409         * dwarf2read.c (byte_swap, MAYBE_SWAP): Move higher up in file.
2410         (struct name_component): New.
2411         (mapped_index::name_components): New field.
2412         (mapped_index::symbol_name_at): New method.
2413         (dwarf2_read_index): Call mapped_index ctor.
2414         (dw2_map_matching_symbols): Add comment about name_components
2415         table.
2416         (dw2_expand_symtabs_matching): Factor part to...
2417         (dw2_expand_symtabs_matching_symbol): ... this new function.
2418         Build name components table, and lookup symbols in it before
2419         calling the name matcher.
2420         (dw2_expand_marked_cus): New, factored out from
2421         dw2_expand_symtabs_matching.
2422         (dwarf2_per_objfile_free): Call the mapped_index's dtor.
2423
2424 2017-11-08   Pedro Alves  <palves@redhat.com>
2425
2426         * ada-lang.c (ada_encode): Rename to ..
2427         (ada_encode_1): ... this.  Add throw_errors parameter and handle
2428         it.
2429         (ada_encode): Reimplement.
2430         (match_name): Delete, folded into full_name.
2431         (resolve_subexp): No longer pass the encoded name to
2432         ada_lookup_symbol_list.
2433         (should_use_wild_match): Delete.
2434         (name_match_type_from_name): New.
2435         (ada_lookup_simple_minsym): Use lookup_name_info and the
2436         language's symbol_name_matcher_ftype.
2437         (add_symbols_from_enclosing_procs, ada_add_local_symbols)
2438         (ada_add_block_renamings): Adjust to use lookup_name_info.
2439         (ada_lookup_name): New.
2440         (add_nonlocal_symbols, ada_add_all_symbols)
2441         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list)
2442         (ada_iterate_over_symbols): Adjust to use lookup_name_info.
2443         (ada_name_for_lookup): Delete.
2444         (ada_lookup_encoded_symbol): Construct a verbatim name.
2445         (wild_match): Reverse sense of return type.  Use bool.
2446         (full_match): Reverse sense of return type.  Inline bits of old
2447         match_name here.
2448         (ada_add_block_symbols): Adjust to use lookup_name_info.
2449         (symbol_completion_match): Delete, folded into...
2450         (ada_lookup_name_info::matches): ... .this new method.
2451         (symbol_completion_add): Delete.
2452         (ada_collect_symbol_completion_matches): Add name_match_type
2453         parameter.  Adjust to use lookup_name_info and
2454         completion_list_add_name.
2455         (get_var_value, ada_add_global_exceptions): Adjust to use
2456         lookup_name_info.
2457         (ada_get_symbol_name_cmp): Delete.
2458         (do_wild_match, do_full_match): New functions.
2459         (ada_lookup_name_info::ada_lookup_name_info): New method.
2460         (ada_symbol_name_matches, ada_get_symbol_name_matcher): New
2461         functions.
2462         (ada_language_defn): Install ada_get_symbol_name_matcher.
2463         * ada-lex.l (processId): If name starts with '<', copy it
2464         verbatim.
2465         * block.c (block_iter_match_step, block_iter_match_first)
2466         (block_iter_match_next, block_lookup_symbol)
2467         (block_lookup_symbol_primary, block_find_symbol): Adjust to use
2468         lookup_name_info.
2469         * block.h (block_iter_match_first, block_iter_match_next)
2470         (ALL_BLOCK_SYMBOLS_WITH_NAME): Adjust to use lookup_name_info.
2471         * c-lang.c (c_language_defn, cplus_language_defn)
2472         (asm_language_defn, minimal_language_defn): Adjust comments to
2473         refer to la_get_symbol_name_matcher.
2474         * completer.c (complete_files_symbols)
2475         (collect_explicit_location_matches, symbol_completer): Pass a
2476         symbol_name_match_type down.
2477         * completer.h (class completion_match, completion_match_result):
2478         New classes.
2479         (completion_tracker::reset_completion_match_result): New method.
2480         (completion_tracker::m_completion_match_result): New field.
2481         * cp-support.c (make_symbol_overload_list_block): Adjust to use
2482         lookup_name_info.
2483         (cp_fq_symbol_name_matches, cp_get_symbol_name_matcher): New
2484         functions.
2485         * cp-support.h (cp_get_symbol_name_matcher): New declaration.
2486         * d-lang.c: Adjust comments to refer to
2487         la_get_symbol_name_matcher.
2488         * dictionary.c (dict_vector) <iter_match_first, iter_match_next>:
2489         Adjust to use lookup_name_info.
2490         (dict_iter_match_first, dict_iter_match_next)
2491         (iter_match_first_hashed, iter_match_next_hashed)
2492         (iter_match_first_linear, iter_match_next_linear): Adjust to work
2493         with a lookup_name_info.
2494         * dictionary.h (dict_iter_match_first, dict_iter_match_next):
2495         Likewise.
2496         * dwarf2read.c (dw2_lookup_symbol): Adjust to use lookup_name_info.
2497         (dw2_map_matching_symbols): Adjust to use symbol_name_match_type.
2498         (gdb_index_symbol_name_matcher): New class.
2499         (dw2_expand_symtabs_matching) Adjust to use lookup_name_info and
2500         gdb_index_symbol_name_matcher.  Accept a NULL symbol_matcher.
2501         * f-lang.c (f_collect_symbol_completion_matches): Adjust to work
2502         with a symbol_name_match_type.
2503         (f_language_defn): Adjust comments to refer to
2504         la_get_symbol_name_matcher.
2505         * go-lang.c (go_language_defn): Adjust comments to refer to
2506         la_get_symbol_name_matcher.
2507         * language.c (default_symbol_name_matcher)
2508         (language_get_symbol_name_matcher): New functions.
2509         (unknown_language_defn, auto_language_defn): Adjust comments to
2510         refer to la_get_symbol_name_matcher.
2511         * language.h (symbol_name_cmp_ftype): Delete.
2512         (language_defn) <la_collect_symbol_completion_matches>: Add match
2513         type parameter.
2514         <la_get_symbol_name_cmp>: Delete field.
2515         <la_get_symbol_name_matcher>: New field.
2516         <la_iterate_over_symbols>: Adjust to use lookup_name_info.
2517         (default_symbol_name_matcher, language_get_symbol_name_matcher):
2518         Declare.
2519         * linespec.c (iterate_over_all_matching_symtabs)
2520         (iterate_over_file_blocks): Adjust to use lookup_name_info.
2521         (find_methods): Add language parameter, and use lookup_name_info
2522         and the language's symbol_name_matcher_ftype.
2523         (linespec_complete_function): Adjust.
2524         (lookup_prefix_sym): Use lookup_name_info.
2525         (add_all_symbol_names_from_pspace): Adjust.
2526         (find_superclass_methods): Add language parameter and pass it
2527         down.
2528         (find_method): Pass symbol language down.
2529         (find_linespec_symbols): Don't demangle or Ada encode here.
2530         (search_minsyms_for_name): Add lookup_name_info parameter.
2531         (add_matching_symbols_to_info): Add name_match_type parameter.
2532         Use lookup_name_info.
2533         * m2-lang.c (m2_language_defn): Adjust comments to refer to
2534         la_get_symbol_name_matcher.
2535         * minsyms.c: Include <algorithm>.
2536         (add_minsym_to_demangled_hash_table): Remove table parameter and
2537         add objfile parameter.  Use search_name_hash, and add language to
2538         demangled languages vector.
2539         (struct found_minimal_symbols): New struct.
2540         (lookup_minimal_symbol_mangled, lookup_minimal_symbol_demangled):
2541         New functions.
2542         (lookup_minimal_symbol): Adjust to use them.  Don't canonicalize
2543         input names here.  Use lookup_name_info instead.  Lookup up
2544         demangled names once for each language in the demangled names
2545         vector.
2546         (iterate_over_minimal_symbols): Use lookup_name_info.  Lookup up
2547         demangled names once for each language in the demangled names
2548         vector.
2549         (build_minimal_symbol_hash_tables): Adjust.
2550         * minsyms.h (iterate_over_minimal_symbols): Adjust to pass down a
2551         lookup_name_info.
2552         * objc-lang.c (objc_language_defn): Adjust comment to refer to
2553         la_get_symbol_name_matcher.
2554         * objfiles.h: Include <vector>.
2555         (objfile_per_bfd_storage) <demangled_hash_languages>: New field.
2556         * opencl-lang.c (opencl_language_defn): Adjust comment to refer to
2557         la_get_symbol_name_matcher.
2558         * p-lang.c (pascal_language_defn): Adjust comment to refer to
2559         la_get_symbol_name_matcher.
2560         * psymtab.c (psym_lookup_symbol): Use lookup_name_info.
2561         (match_partial_symbol): Use symbol_name_match_type,
2562         lookup_name_info and psymbol_name_matches.
2563         (lookup_partial_symbol): Use lookup_name_info.
2564         (map_block): Use symbol_name_match_type and lookup_name_info.
2565         (psym_map_matching_symbols): Use symbol_name_match_type.
2566         (psymbol_name_matches): New.
2567         (recursively_search_psymtabs): Use lookup_name_info and
2568         psymbol_name_matches.  Rename 'kind' parameter to 'domain'.
2569         (psym_expand_symtabs_matching): Use lookup_name_info.  Rename
2570         'kind' parameter to 'domain'.
2571         * rust-lang.c (rust_language_defn): Adjust comment to refer to
2572         la_get_symbol_name_matcher.
2573         * symfile-debug.c (debug_qf_map_matching_symbols)
2574         (debug_qf_map_matching_symbols): Use symbol_name_match_type.
2575         (debug_qf_expand_symtabs_matching): Use lookup_name_info.
2576         * symfile.c (expand_symtabs_matching): Use lookup_name_info.
2577         * symfile.h (quick_symbol_functions) <map_matching_symbols>:
2578         Adjust to use symbol_name_match_type.
2579         <expand_symtabs_matching>: Adjust to use lookup_name_info.
2580         (expand_symtabs_matching): Adjust to use lookup_name_info.
2581         * symmisc.c (maintenance_expand_symtabs): Use
2582         lookup_name_info::match_any ().
2583         * symtab.c (symbol_matches_search_name): New.
2584         (eq_symbol_entry): Adjust to use lookup_name_info and the
2585         language's matcher.
2586         (demangle_for_lookup_info::demangle_for_lookup_info): New.
2587         (lookup_name_info::match_any): New.
2588         (iterate_over_symbols, search_symbols): Use lookup_name_info.
2589         (compare_symbol_name): Add language, lookup_name_info and
2590         completion_match_result parameters, and use them.
2591         (completion_list_add_name): Make extern.  Add language and
2592         lookup_name_info parameters.  Use them.
2593         (completion_list_add_symbol, completion_list_add_msymbol)
2594         (completion_list_objc_symbol): Add lookup_name_info parameters and
2595         adjust.  Pass down language.
2596         (completion_list_add_fields): Add lookup_name_info parameters and
2597         adjust.  Pass down language.
2598         (add_symtab_completions): Add lookup_name_info parameters and
2599         adjust.
2600         (default_collect_symbol_completion_matches_break_on): Add
2601         name_match_type parameter, and use it.  Use lookup_name_info.
2602         (default_collect_symbol_completion_matches)
2603         (collect_symbol_completion_matches): Add name_match_type
2604         parameter, and pass it down.
2605         (collect_symbol_completion_matches_type): Adjust.
2606         (collect_file_symbol_completion_matches): Add name_match_type
2607         parameter, and use lookup_name_info.
2608         * symtab.h: Include <string> and "common/gdb_optional.h".
2609         (enum class symbol_name_match_type): New.
2610         (class ada_lookup_name_info): New.
2611         (struct demangle_for_lookup_info): New.
2612         (class lookup_name_info): New.
2613         (symbol_name_matcher_ftype): New.
2614         (SYMBOL_MATCHES_SEARCH_NAME): Use symbol_matches_search_name.
2615         (symbol_matches_search_name): Declare.
2616         (MSYMBOL_MATCHES_SEARCH_NAME): Delete.
2617         (default_collect_symbol_completion_matches)
2618         (collect_symbol_completion_matches)
2619         (collect_file_symbol_completion_matches): Add name_match_type
2620         parameter.
2621         (iterate_over_symbols): Use lookup_name_info.
2622         (completion_list_add_name): Declare.
2623         * utils.c (enum class strncmp_iw_mode): Moved to utils.h.
2624         (strncmp_iw_with_mode): Now extern.
2625         * utils.h (enum class strncmp_iw_mode): Moved from utils.c.
2626         (strncmp_iw_with_mode): Declare.
2627
2628 2017-11-08  Keith Seitz  <keiths@redhat.com>
2629             Pedro Alves  <palves@redhat.com>
2630
2631         * ada-lang.c (ada_language_defn): Install
2632         default_search_name_hash.
2633         * buildsym.c (struct buildsym_compunit): <language>: New field.
2634         (finish_block_internal): Pass language when creating dictionaries.
2635         (start_buildsym_compunit, start_symtab): New language parameters.
2636         Use them.
2637         (restart_symtab): Pass down compilation unit's language.
2638         * buildsym.h (enum language): Forward declare.
2639         (start_symtab): New 'language' parameter.
2640         * c-lang.c (c_language_defn, cplus_language_defn)
2641         (asm_language_defn, minimal_language_defn): Install
2642         default_search_name_hash.
2643         * coffread.c (coff_start_symtab): Adjust.
2644         * d-lang.c (d_language_defn): Install default_search_name_hash.
2645         * dbxread.c (struct symloc): Add 'pst_language' field.
2646         (PST_LANGUAGE): Define.
2647         (start_psymtab, read_ofile_symtab): Use it.
2648         (process_one_symbol): New 'language' parameter.  Pass it down.
2649         * dictionary.c (struct dictionary) <language>: New field.
2650         (DICT_LANGUAGE): Define.
2651         (dict_create_hashed, dict_create_hashed_expandable)
2652         (dict_create_linear, dict_create_linear_expandable): New parameter
2653         'language'.  Set the dictionary's language.
2654         (iter_match_first_hashed): Adjust to rename.
2655         (insert_symbol_hashed): Assert we don't see mismatching
2656         languages.  Adjust to rename.
2657         (dict_hash): Rename to ...
2658         (default_search_name_hash): ... this and make extern.
2659         * dictionary.h (struct language_defn): Forward declare.
2660         (dict_create_hashed): New parameter 'language'.
2661         * dwarf2read.c (dwarf2_start_symtab): Pass down language.
2662         * f-lang.c (f_language_defn): Install default_search_name_hash.
2663         * go-lang.c (go_language_defn): Install default_search_name_hash.
2664         * jit.c (finalize_symtab): Pass compunit's language to dictionary
2665         creation.
2666         * language.c (unknown_language_defn, auto_language_defn):
2667         * language.h (language_defn::la_search_name_hash): New field.
2668         (default_search_name_hash): Declare.
2669         * m2-lang.c (m2_language_defn): Install default_search_name_hash.
2670         * mdebugread.c (new_block): New parameter 'language'.
2671         * mdebugread.c (parse_symbol): Pass symbol language to block
2672         allocation.
2673         (psymtab_to_symtab_1): Pass down language.
2674         (new_symtab): Pass compunit's language to block allocation.
2675         * objc-lang.c (objc_language_defn): Install
2676         default_search_name_hash.
2677         * opencl-lang.c (opencl_language_defn):
2678         * p-lang.c (pascal_language_defn): Install
2679         default_search_name_hash.
2680         * rust-lang.c (rust_language_defn): Install
2681         default_search_name_hash.
2682         * stabsread.h (enum language): Forward declare.
2683         (process_one_symbol): Add 'language' parameter.
2684         * symtab.c (search_name_hash): New function.
2685         * symtab.h (search_name_hash): Declare.
2686         * xcoffread.c (read_xcoff_symtab): Pass language to start_symtab.
2687
2688 2017-11-08  Pedro Alves  <palves@redhat.com>
2689
2690         * cp-name-parser.y (main): Don't initialize extra_chars.
2691
2692 2017-11-07  Tom Tromey  <tom@tromey.com>
2693
2694         * event-top.h (command_handler): Constify.
2695         * record-full.c (cmd_record_full_start): Update.
2696         * thread.c (thread_apply_all_command): Update.
2697         * printcmd.c (eval_command): Update.
2698         * mi/mi-main.c (mi_execute_cli_command): Update.
2699         (mi_execute_async_cli_command): Update.
2700         * tui/tui-stack.c (tui_update_command): Update.
2701         * cli/cli-interp.c (safe_execute_command): Constify.
2702         * record.c (record_start): Update.
2703         (record_start, record_stop, cmd_record_start): Update.
2704         * record-btrace.c (cmd_record_btrace_bts_start): Update.
2705         (cmd_record_btrace_pt_start): Update.
2706         (cmd_record_btrace_start): Update.
2707         (cmd_record_btrace_start): Update.
2708         * reverse.c (exec_reverse_once): Update.
2709         * python/python.c (execute_gdb_command): Don't copy the command.
2710         * event-top.c (command_line_handler): Update.
2711         (command_handler): Constify.
2712         * defs.h (deprecated_call_command_hook): Constify.
2713         * cli/cli-script.h (execute_user_command): Constify.
2714         * cli/cli-script.c (execute_user_command): Constify.
2715         (execute_cmd_pre_hook, execute_cmd_post_hook): Constify.
2716         (enum command_control_type): Update.
2717         * main.c (catch_command_errors): Remove non-const overload.
2718         (catch_command_errors_ftype): Remove.
2719         * python/py-cmd.c (cmdpy_function): Constify.
2720         * guile/scm-cmd.c (cmdscm_function): Constify.
2721         * cli/cli-dump.c (call_dump_func): Constify.
2722         * cli/cli-decode.c (do_const_cfunc): Constify.
2723         (do_sfunc): Constify.
2724         (cmd_func): Constify.
2725         * gdbcmd.h (execute_command, execute_command_to_string): Constify.
2726         * top.h (execute_command): Constify.
2727         * top.c (execute_command): Constify.
2728         (execute_command_to_string): Constify.
2729         (deprecated_call_command_hook): Constify.
2730         * command.h (cmd_func): Constify.
2731         * cli/cli-decode.h (struct cmd_list_element) <func>: Constify.
2732
2733 2017-11-07  Tom Tromey  <tom@tromey.com>
2734
2735         * ada-lang.c (catch_ada_exception_command): Constify.
2736         (catch_assert_command): Constify.
2737         * break-catch-throw.c (catch_catch_command, catch_throw_command)
2738         (catch_rethrow_command): Constify.
2739         (catch_exception_command_1): Constify.
2740         * breakpoint.h (add_catch_command): Constify.
2741         * break-catch-syscall.c (catch_syscall_command_1): Constify.
2742         (catch_syscall_split_args): Constify.
2743         * break-catch-sig.c (catch_signal_command): Constify.
2744         (catch_signal_split_args): Constify.
2745         * cli/cli-decode.h (struct cmd_list_element) <function>: Use
2746         cmd_const_sfunc_ftype.
2747         * cli/cli-decode.c (add_setshow_cmd_full): Constify.
2748         (add_setshow_enum_cmd, add_setshow_auto_boolean_cmd)
2749         (add_setshow_boolean_cmd, add_setshow_filename_cmd)
2750         (add_setshow_string_cmd, struct cmd_list_element)
2751         (add_setshow_optional_filename_cmd, add_setshow_integer_cmd)
2752         (add_setshow_uinteger_cmd, add_setshow_zinteger_cmd)
2753         (add_setshow_zuinteger_unlimited_cmd, add_setshow_zuinteger_cmd):
2754         Constify.
2755         (set_cmd_sfunc): Constify.
2756         (empty_sfunc): Constify.
2757         * command.h (add_setshow_enum_cmd, add_setshow_auto_boolean_cmd)
2758         (add_setshow_boolean_cmd, add_setshow_filename_cmd)
2759         (add_setshow_string_cmd, add_setshow_string_noescape_cmd)
2760         (add_setshow_optional_filename_cmd, add_setshow_integer_cmd)
2761         (add_setshow_uinteger_cmd, add_setshow_zinteger_cmd)
2762         (add_setshow_zuinteger_cmd, add_setshow_zuinteger_unlimited_cmd):
2763         Constify.
2764         (set_cmd_sfunc): Constify.
2765         (cmd_sfunc_ftype): Remove.
2766         * compile/compile.c (set_compile_args): Constify.
2767         * infrun.c (set_disable_randomization): Constify.
2768         * infcmd.c (set_args_command, set_cwd_command): Constify.
2769         * breakpoint.c (set_condition_evaluation_mode): Constify.
2770         (add_catch_command): Constify.
2771         (catch_fork_command_1, catch_exec_command_1)
2772         (catch_load_command_1, catch_unload_command_1): Constify.
2773         (catch_load_or_unload): Constify.
2774         * guile/scm-param.c (pascm_set_func): Constify.
2775         (add_setshow_generic): Constify.
2776         * python/py-param.c (get_set_value): Constify.
2777         * top.h (set_verbose): Constify.
2778         * tui/tui-win.c (tui_set_var_cmd): Constify.
2779         * mi/mi-main.c (set_mi_async_command): Constify.
2780         * cli/cli-logging.c (set_logging_overwrite)
2781         (set_logging_redirect): Constify.
2782         * value.c (set_max_value_size): Constify.
2783         * valprint.c (set_input_radix, set_output_radix): Constify.
2784         * utils.c (set_width_command, set_height_command): Constify.
2785         * typeprint.c (set_print_type_methods, set_print_type_typedefs): Constify.
2786         * tracepoint.c (set_disconnected_tracing)
2787         (set_circular_trace_buffer, set_trace_buffer_size)
2788         (set_trace_user, set_trace_notes, set_trace_stop_notes): Constify.
2789         * top.c (set_history_size_command, set_verbose, set_editing)
2790         (set_gdb_datadir, set_history_filename): Constify.
2791         * target.c (set_targetdebug, maint_set_target_async_command)
2792         (maint_set_target_non_stop_command, set_target_permissions)
2793         (set_write_memory_permission): Constify.
2794         (open_target): Constify.
2795         * target-descriptions.c (set_tdesc_filename_cmd): Constify.
2796         * target-dcache.c (set_stack_cache, set_code_cache): Constify.
2797         * symtab.c (set_symbol_cache_size_handler): Constify.
2798         * symfile.c (set_ext_lang_command): Constify.
2799         * symfile-debug.c (set_debug_symfile): Constify.
2800         * source.c (set_directories_command): Constify.
2801         * solib.c (reload_shared_libraries, gdb_sysroot_changed): Constify.
2802         * serial.c (set_parity): Constify.
2803         * rs6000-tdep.c (powerpc_set_soft_float, powerpc_set_vector_abi): Constify.
2804         * remote.c (set_remote_exec_file, set_remotebreak)
2805         (set_remote_protocol_Z_packet_cmd, set_range_stepping): Constify.
2806         * record.c (set_record_insn_history_size)
2807         (set_record_call_history_size): Constify.
2808         * record-full.c (set_record_full_insn_max_num): Constify.
2809         * proc-api.c (set_procfs_trace_cmd, set_procfs_file_cmd): Constify.
2810         * osabi.c (set_osabi): Constify.
2811         * mips-tdep.c (set_mips64_transfers_32bit_regs)
2812         (reinit_frame_cache_sfunc, mips_abi_update): Constify.
2813         * maint.c (maintenance_set_profile_cmd): Constify.
2814         * linux-thread-db.c (set_libthread_db_search_path): Constify.
2815         * language.c (set_language_command, set_range_command)
2816         (set_case_command): Constify.
2817         * infrun.c (set_non_stop, set_observer_mode)
2818         (set_stop_on_solib_events, set_schedlock_func)
2819         (set_exec_direction_func): Constify.
2820         * infcmd.c (set_inferior_tty_command): Constify.
2821         * disasm.c (set_disassembler_options_sfunc): Constify.
2822         * demangle.c (set_demangling_command): Constify.
2823         * dcache.c (set_dcache_size, set_dcache_line_size): Constify.
2824         * cris-tdep.c (set_cris_version, set_cris_mode)
2825         (set_cris_dwarf2_cfi): Constify.
2826         * corefile.c (set_gnutarget_command): Constify.
2827         * charset.c (set_host_charset_sfunc, set_target_charset_sfunc)
2828         (set_target_wide_charset_sfunc): Constify.
2829         * breakpoint.c (update_dprintf_commands): Constify.
2830         * auto-load.c (set_auto_load_dir, set_auto_load_safe_path): Constify.
2831         * arm-tdep.c (set_fp_model_sfunc, arm_set_abi)
2832         (set_disassembly_style_sfunc): Constify.
2833         * arch-utils.c (set_endian, set_architecture): Constify.
2834         * alpha-tdep.c (reinit_frame_cache_sfunc): Constify.
2835         * agent.c (set_can_use_agent): Constify.
2836
2837 2017-11-07  Tom Tromey  <tom@tromey.com>
2838
2839         * go32-nat.c (go32_sysinfo, go32_sldt, go32_sgdt, go32_sidt)
2840         (go32_pde, go32_pte, go32_pte_for_address): Constify.
2841         * gnu-nat.c (_parse_bool_arg, show_thread_default_pause_cmd)
2842         (set_thread_default_pause_cmd, set_thread_default_run_cmd)
2843         (show_thread_default_run_cmd, set_thread_default_detach_sc_cmd)
2844         (parse_int_arg, show_thread_default_detach_sc_cmd)
2845         (set_signals_cmd, show_signals_cmd, set_sig_thread_cmd)
2846         (show_sig_thread_cmd, set_stopped_cmd, show_stopped_cmd)
2847         (set_exceptions_cmd, show_exceptions_cmd, set_task_pause_cmd)
2848         (show_task_pause_cmd, set_task_detach_sc_cmd)
2849         (show_task_detach_sc_cmd, set_task_exc_port_cmd)
2850         (set_noninvasive_cmd, set_thread_pause_cmd)
2851         (show_thread_pause_cmd, set_thread_run_cmd, show_thread_run_cmd)
2852         (set_thread_detach_sc_cmd, show_thread_detach_sc_cmd)
2853         (set_thread_exc_port_cmd, thread_takeover_sc_cmd): Constify.
2854         * windows-nat.c (display_selectors): Constify.
2855         * cli/cli-decode.h (struct cmd_list_element) <function>: Remove
2856         non-const "cfunc".
2857         * cli/cli-decode.c (set_cmd_cfunc): Remove non-const overload.
2858         (cmd_cfunc_eq): Likewise.
2859         (struct cmd_list_element): Likewise.
2860         (do_cfunc): Remove.
2861         (cli_user_command_p): Update.
2862         * command.h (add_cmd): Remove non-const overload.
2863         (cmd_cfunc_ftype): Remove typedef.
2864         (cmd_cfunc_eq): Remove non-const overload.
2865         * value.c (show_values): Constify.
2866         * thread.c (thread_apply_all_command): Constify.
2867         * symfile.c (load_command): Constify.
2868         * source.c (directory_command): Constify.
2869         * maint.c (maintenance_internal_error)
2870         (maintenance_demangler_warning, maintenance_space_display)
2871         (maintenance_print_architecture, maintenance_translate_address)
2872         (maintenance_info_selftests, maintenance_internal_warning):
2873         Constify.
2874         * breakpoint.c (disable_trace_command, enable_trace_command):
2875         Constify.
2876         * auto-load.c (info_auto_load_local_gdbinit, add_auto_load_dir):
2877         Constify.
2878         (add_auto_load_safe_path): Constify.
2879         * guile/scm-auto-load.c (info_auto_load_guile_scripts): Constify.
2880         * top.h (show_commands): Constify.
2881         * linux-thread-db.c (info_auto_load_libthread_db): Constify.
2882         * sparc64-tdep.c (adi_examine_command): Constify.
2883         (adi_assign_command): Constify.
2884
2885 2017-11-07  Tom Tromey  <tom@tromey.com>
2886
2887         * frame.h (info_locals_command, info_args_command): Constify.
2888         * auto-load.h (auto_load_info_scripts): Constify.
2889         * inferior.h (registers_info): Constify.
2890         * copying.c: Rebuild.
2891         * copying.awk: Constify generated commands.
2892         * auto-load.c (auto_load_info_scripts)
2893         (info_auto_load_gdb_scripts): Constify.
2894         * cli/cli-decode.c (struct cmd_list_element): Take a
2895         cmd_const_cfunc_ftype.
2896         * command.h (add_info): Take a cmd_const_cfunc_ftype.
2897         * tui/tui-win.c (tui_all_windows_info): Constify.
2898         * python/py-auto-load.c (info_auto_load_python_scripts):
2899         Constify.
2900         * cli/cli-cmds.c (show_command): Remove non-const overload.
2901         * tracepoint.c (info_tvariables_command, info_scope_command):
2902         Constify.
2903         (info_static_tracepoint_markers_command): Constify.
2904         * thread.c (info_threads_command): Constify.
2905         (print_thread_info_1): Constify.
2906         * target.c (info_target_command): Constify.
2907         * symtab.c (info_sources_command, info_functions_command)
2908         (info_types_command): Constify.
2909         (info_variables_command): Remove non-const overload.
2910         * symfile.c (info_ext_lang_command): Constify.
2911         * stack.c (info_frame_command, info_locals_command)
2912         (info_args_command): Constify.
2913         (backtrace_command): Remove non-const overload.
2914         * source.c (info_source_command, info_line_command): Constify.
2915         * solib.c (info_sharedlibrary_command): Constify.
2916         * skip.c (info_skip_command): Constify.
2917         * ser-go32.c (info_serial_command): Constify.
2918         * reverse.c (info_bookmarks_command): Constify.
2919         * printcmd.c (info_symbol_command, info_address_command)
2920         (info_display_command): Constify.
2921         * osdata.c (info_osdata_command): Constify.
2922         * objc-lang.c (info_selectors_command, info_classes_command):
2923         Constify.
2924         * nto-procfs.c (procfs_pidlist, procfs_meminfo): Constify.
2925         * memattr.c (info_mem_command): Constify.
2926         * macrocmd.c (info_macro_command, info_macros_command): Constify.
2927         * linux-fork.c (info_checkpoints_command): Constify.
2928         * infrun.c (info_signals_command): Constify.
2929         * inflow.c (info_terminal_command): Constify.
2930         * inferior.c (info_inferiors_command): Constify.
2931         (print_inferior): Constify.
2932         * infcmd.c (info_program_command, info_all_registers_command)
2933         (info_registers_command, info_vector_command)
2934         (info_float_command): Constify.
2935         (registers_info): Constify.
2936         * gnu-nat.c (info_send_rights_cmd, info_recv_rights_cmd)
2937         (info_port_sets_cmd, info_dead_names_cmd, info_port_rights_cmd):
2938         Constify.
2939         * f-valprint.c (info_common_command): Constify.
2940         * dcache.c (info_dcache_command): Constify.
2941         (dcache_info_1): Constify.
2942         * darwin-nat-info.c (info_mach_tasks_command)
2943         (info_mach_task_command, info_mach_ports_command)
2944         (info_mach_port_command, info_mach_threads_command)
2945         (info_mach_thread_command, info_mach_regions_command)
2946         (info_mach_regions_recurse_command, info_mach_region_command)
2947         (info_mach_exceptions_command): Constify.
2948         (get_task_from_args): Constify.
2949         * cp-support.c (info_vtbl_command): Constify.
2950         * breakpoint.c (info_watchpoints_command)
2951         (info_tracepoints_command): Constify.
2952         (info_breakpoints_command): Remove non-const overload.
2953         * avr-tdep.c (avr_io_reg_read_command): Constify.
2954         * auxv.c (info_auxv_command): Constify.
2955         * ada-tasks.c (info_tasks_command): Constify.
2956         (info_task): Constify.
2957         * ada-lang.c (info_exceptions_command): Constify.
2958
2959 2017-11-07  Tom Tromey  <tom@tromey.com>
2960
2961         * solib.h (no_shared_libraries): Constify.
2962         * frame.h (return_command): Constify.
2963         * cli/cli-cmds.h (quit_command): Constify.
2964         * top.h (quit_command, execute_command): Constify.
2965         * target.h (flash_erase_command): Constify.
2966         * inferior.h (set_inferior_args, attach_command): Constify.
2967         * tracepoint.h (start_tracing, stop_tracing): Constify.
2968         * breakpoint.h (break_command, tbreak_command)
2969         (hbreak_command_wrapper, thbreak_command_wrapper)
2970         (rbreak_command_wrapper, watch_command_wrapper)
2971         (awatch_command_wrapper, rwatch_command_wrapper)
2972         (get_tracepoint_by_number): Constify.
2973         * symtab.c (info_variables_command, rbreak_command)
2974         (symtab_symbol_info): Constify.
2975         (info_variables_command): Add non-const overload.
2976         * top.c (dont_repeat_command): Constify.
2977         * breakpoint.c (ignore_command, commands_command)
2978         (condition_command, tbreak_command, hbreak_command)
2979         (thbreak_command, clear_command, break_command)
2980         (info_breakpoints_command, watch_command, rwatch_command)
2981         (awatch_command, trace_command, ftrace_command, strace_command)
2982         (trace_pass_command, break_range_command, dprintf_command)
2983         (agent_printf_command, get_tracepoint_by_number)
2984         (watch_maybe_just_location, trace_pass_command): Constify.
2985         (info_breakpoints_command): Add non-const overload.
2986         * tracefile.c (tsave_command): Constify.
2987         * infcmd.c (attach_command, disconnect_command, signal_command)
2988         (queue_signal_command, stepi_command, nexti_command)
2989         (finish_command, next_command, step_command, until_command)
2990         (advance_command, jump_command, continue_command, run_command)
2991         (start_command, starti_command, interrupt_command)
2992         (run_command_1, set_inferior_args, step_1): Constify.
2993         * inferior.c (add_inferior_command, remove_inferior_command)
2994         (clone_inferior_command): Constify.
2995         * linux-fork.c (checkpoint_command, restart_command): Constify.
2996         * windows-nat.c (signal_event_command): Constify.
2997         * guile/guile.c (guile_repl_command, guile_command): Constify.
2998         * printcmd.c (x_command, display_command, printf_command)
2999         (output_command, set_command, call_command, print_command)
3000         (eval_command): Constify.
3001         (non_const_set_command): Remove.
3002         (_initialize_printcmd): Update.
3003         * source.c (forward_search_command, reverse_search_command):
3004         Constify.
3005         * jit.c (jit_reader_load_command, jit_reader_unload_command):
3006         Constify.
3007         * infrun.c (handle_command): Constify.
3008         * memattr.c (mem_command): Constify.
3009         * stack.c (return_command, up_command, up_silently_command)
3010         (down_command, down_silently_command, frame_command)
3011         (backtrace_command, func_command, backtrace_command_1): Constify.
3012         (backtrace_command): Add non-const overload.
3013         * remote-sim.c (simulator_command): Constify.
3014         * exec.c (set_section_command): Constify.
3015         * tracepoint.c (tdump_command, trace_variable_command)
3016         (tstatus_command, tstop_command, tstart_command)
3017         (end_actions_pseudocommand, while_stepping_pseudocommand)
3018         (collect_pseudocommand, teval_pseudocommand, actions_command)
3019         (start_tracing, stop_tracing): Constify.
3020         * value.c (init_if_undefined_command): Constify.
3021         * tui/tui-stack.c (tui_update_command): Constify.
3022         * tui/tui-win.c (tui_refresh_all_command)
3023         (tui_set_tab_width_command, tui_set_win_height_command)
3024         (tui_set_focus_command, tui_scroll_forward_command)
3025         (tui_scroll_backward_command, tui_scroll_left_command)
3026         (tui_scroll_right_command, parse_scrolling_args, tui_set_focus)
3027         (tui_set_win_height): Constify.
3028         * tui/tui-layout.c (tui_layout_command): Constify.
3029         * procfs.c (proc_trace_syscalls, proc_trace_sysentry_cmd)
3030         (proc_trace_sysexit_cmd, proc_untrace_sysentry_cmd)
3031         (proc_untrace_sysexit_cmd): Constify.
3032         * remote.c (threadlist_test_cmd, threadinfo_test_cmd)
3033         (threadset_test_cmd, threadlist_update_test_cmd)
3034         (threadalive_test): Constify.
3035         * objc-lang.c (print_object_command): Constify.
3036         * command.h (add_com): Constify.
3037         * cli/cli-dump.c (restore_command): Constify.
3038         * cli/cli-cmds.c (pwd_command, echo_command, quit_command)
3039         (help_command, complete_command, shell_command, edit_command)
3040         (list_command, disassemble_command, make_command)
3041         (apropos_command, alias_command): Constify.
3042         * cli/cli-script.c (document_command, define_command)
3043         (while_command, if_command, validate_comname): Constify.
3044         * cli/cli-decode.c (struct cmd_list_element): Change type of
3045         "fun".
3046         * target.c (do_monitor_command, flash_erase_command): Constify.
3047         * regcache.c (reg_flush_command): Constify.
3048         * reverse.c (reverse_step, reverse_next, reverse_stepi)
3049         (reverse_nexti, reverse_continue, reverse_finish)
3050         (save_bookmark_command, goto_bookmark_command)
3051         (exec_reverse_once): Constify.
3052         * python/python.c (python_interactive_command, python_command):
3053         Constify.
3054         * typeprint.c (ptype_command, whatis_command, whatis_exp):
3055         Constify.
3056         * solib.c (sharedlibrary_command, no_shared_libraries): Constify.
3057         * gcore.c (gcore_command): Constify.
3058
3059 2017-11-07  Tom Tromey  <tom@tromey.com>
3060
3061         * printcmd.c (x_command): Call set_repeat_arguments.
3062         * cli/cli-cmds.c (list_command): Call set_repeat_arguments.
3063         * top.c (repeat_arguments): New global.
3064         (set_repeat_arguments): New function.
3065         (execute_command): Handle repeat_arguments.
3066         (show_commands): Calls set_repeat_arguments.
3067         * command.h (set_repeat_arguments): Declare.
3068
3069 2017-11-07  Tom Tromey  <tom@tromey.com>
3070
3071         * stack.c (backtrace_command): Use std::string.
3072         (backtrace_command_1): Make "count_exp" const.
3073
3074 2017-11-07  Tom Tromey  <tom@tromey.com>
3075
3076         * source.c (directory_switch, mod_path, add_path): Constify.
3077         * defs.h (add_path, mod_path, directory_switch): Constify.
3078         * mi/mi-cmd-env.c (env_mod_path): Constify.
3079
3080 2017-11-07  Tom Tromey  <tom@tromey.com>
3081
3082         * infcmd.c (strip_bg_char): Return gdb::unique_xmalloc_ptr.
3083         (run_command_1, continue_command, step_1, jump_command)
3084         (signal_command, until_command, advance_command, finish_command)
3085         (attach_command): Update.
3086
3087 2017-11-07  Tom Tromey  <tom@tromey.com>
3088
3089         * command.h (set_cmd_cfunc): Don't declare.
3090         * cli/cli-decode.c (set_cmd_cfunc): Now static.
3091
3092 2017-11-07  Tom Tromey  <tom@tromey.com>
3093
3094         * stack.c (select_frame_command): Constify.
3095         * cli/cli-decode.c (add_com_suppress_notification): Constify.
3096         * command.h (add_com_suppress_notification): Constify.
3097
3098 2017-11-07  Tom Tromey  <tom@tromey.com>
3099
3100         * breakpoint.c (stop_command): Constify.
3101         * cli/cli-decode.c (struct cmd_list_element): Constify.
3102         * command.h (add_abbrev_prefix_cmd): Constify.
3103
3104 2017-11-07  Pedro Alves  <palves@redhat.com>
3105
3106         * breakpoint.c (extract_bp_kind): New enum.
3107         (extract_bp_num, extract_bp_or_bp_range): New functions, partially
3108         factored out from ...
3109         (extract_bp_number_and_location): ... here.
3110         * cli/cli-utils.c (get_number_trailer): Handle '-$variable'.
3111
3112 2017-11-07  Pedro Alves  <palves@redhat.com>
3113
3114         * breakpoint.c (extract_bp_number_and_location): Change return
3115         type to void.  Throw error instead of warning.
3116         (enable_disable_command): Adjust.
3117
3118 2017-11-07  Xavier Roirand  <roirand@adacore.com>
3119             Pedro Alves  <palves@redhat.com>
3120
3121         * breakpoint.c (map_breakpoint_number_range): New, factored out
3122         from ...
3123         (map_breakpoint_numbers): ... here.
3124         (find_location_by_number): Change parameters from string to
3125         breakpoint number and location.
3126         (extract_bp_number_and_location): New function.
3127         (enable_disable_bp_num_loc)
3128         (enable_disable_breakpoint_location_range)
3129         (enable_disable_command): New functions, factored out ...
3130         (enable_command, disable_command): ... these functions, and
3131         adjusted to support ranges.
3132         * NEWS: Document enable/disable breakpoint location range feature.
3133
3134 2017-11-06  Luis Machado  <luis.machado@linaro.org>
3135
3136         * MAINTAINERS (Write After Approval): Update my e-mail address.
3137
3138 2017-11-06  Pedro Alves  <palves@redhat.com>
3139
3140         * gnu-nat.c (gnu_terminal_init): Delete.
3141         (gnu_target): Don't install gnu_terminal_init.
3142         * inflow.c (child_terminal_init_with_pgrp): Delete, merged with ...
3143         (child_terminal_init): ... this function.
3144
3145 2017-11-06  Pedro Alves  <palves@redhat.com>
3146
3147         * common/common.m4 (GDB_AC_COMMON): No longer check termio.h nor
3148         sgtty.h.
3149         * config.in, configure: Regenerate.
3150
3151 2017-11-06  Pedro Alves  <palves@redhat.com>
3152
3153         * event-top.c: Check SIGTSTP instead of STOP_SIGNAL thoughout.
3154         (async_init_signals): Adjust.
3155         (handle_stop_sig): Rename to ...
3156         (handle_sigtstp): ... this.
3157         (async_stop_sig): Rename to ...
3158         (async_sigtstp_handler): ... this, and delete STOP_SIGNAL !=
3159         SIGTSTP path.
3160         * event-top.h: Move signal.h include to the top.  Check SIGTSTP
3161         instead of STOP_SIGNAL thoughout.
3162         (handle_stop_sig): Rename to ...
3163         (handle_sigtstp): ... this.
3164         * top.c (command_line_input): Replace STOP_SIGNAL -> SIGTSTP.
3165
3166 2017-11-06  Pedro Alves  <palves@redhat.com>
3167
3168         * inflow.c (child_terminal_inferior, child_terminal_ours_1): No
3169         longer set flags twice in row.
3170
3171 2017-11-06  Pedro Alves  <palves@redhat.com>
3172
3173         * Makefile.in (SER_HARDWIRE): Update comment.
3174         (HFILES_NO_SRCDIR): Remove gdb_termios.h.
3175         * common/gdb_termios.h: Delete file.
3176         * common/job-control.c: Include termios.h and unistd.h instead of
3177         gdb_termios.h.
3178         (gdb_setpgid): Remove HAVE_TERMIOS || TIOCGPGRP preprocessor
3179         check.
3180         (have_job_control): Check HAVE_TERMIOS_H instead of HAVE_TERMIOS.
3181         Remove sgtty code.
3182         * configure.ac: No longer check for termio.h and sgtty.h.
3183         * configure: Regenerate.
3184         * inflow.c: Include termios.h instead of gdb_termios.h.  Replace
3185         PROCESS_GROUP_TYPE checks with HAVE_TERMIOS_H checks throughout.
3186         Replace PROCESS_GROUP_TYPE references with pid_t references
3187         throughout.
3188         (gdb_getpgrp): Delete.
3189         (set_initial_gdb_ttystate): Use tcgetpgrp instead of gdb_getpgrp.
3190         (child_terminal_inferior): Remove comment.  Remove sgtty code.
3191         (child_terminal_ours_1): Use tcgetpgrp directly instead of
3192         gdb_getpgrp.  Use serial_set_tty_state instead aof
3193         serial_noflush_set_tty_state.  Remove sgtty code.
3194         * inflow.h: Include unistd.h instead of gdb_termios.h.  Replace
3195         PROCESS_GROUP_TYPE check with HAVE_TERMIOS_H check.
3196         (inferior_process_group): Now returns pid_t.
3197         * ser-base.c (ser_base_noflush_set_tty_state): Delete.
3198         * ser-base.h (ser_base_noflush_set_tty_state): Delete.
3199         * ser-event.c (serial_event_ops): Update.
3200         * ser-go32.c (dos_noflush_set_tty_state): Delete.
3201         (dos_ops): Update.
3202         * ser-mingw.c (hardwire_ops, tty_ops, pipe_ops, tcp_ops): Update.
3203         * ser-pipe.c (pipe_ops): Update.
3204         * ser-tcp.c (tcp_ops): Update.
3205         * ser-unix.c: Include termios.h instead of gdb_termios.h.  Remove
3206         HAVE_TERMIOS checks.
3207         [HAVE_TERMIO] (struct hardwire_ttystate): Delete.
3208         [HAVE_SGTTY] (struct hardwire_ttystate): Delete.
3209         (get_tty_state, set_tty_state): Drop termio and sgtty code, and
3210         assume termios.
3211         (hardwire_noflush_set_tty_state): Delete.
3212         (hardwire_print_tty_state, hardwire_drain_output)
3213         (hardwire_flush_output, hardwire_flush_input)
3214         (hardwire_send_break, hardwire_raw, hardwire_setbaudrate)
3215         (hardwire_setstopbits, hardwire_setparity): Drop termio and sgtty
3216         code, and assume termios.
3217         (hardwire_ops): Update.
3218         (_initialize_ser_hardwire): Remove HAVE_TERMIOS check.
3219         * serial.c (serial_noflush_set_tty_state): Delete.
3220         * serial.h (serial_noflush_set_tty_state): Delete.
3221         (serial_ops::noflush_set_tty_state): Delete.
3222
3223 2017-11-06  Ulrich Weigand  <uweigand@de.ibm.com>
3224
3225         * Makefile.in (SFILES): Remove doublest.c and dfp.c.
3226         (HFILES_NO_SRCDIR): Remove doublest.h and dfp.h.
3227         (COMMON_OBS): Remove doublest.o and dfp.o.
3228         Do not build target-float.c (instead of doublest.c)
3229         with -Wformat-nonliteral.
3230
3231         * doublest.c: Remove file.
3232         * doublest.h: Remove file.
3233         * dfp.c: Remove file.
3234         * dfp.h: Remove file.
3235
3236         * target-float.c: Do not include "doublest.h" and "dfp.h".
3237         (DOUBLEST): Move here from doublest.h.
3238         (enum float_kind): Likewise.
3239         (FLOATFORMAT_CHAR_BIT): Likewise.
3240         (FLOATFORMAT_LARGEST_BYTES): Likewise.
3241         (floatformat_totalsize_bytes): Move here from doublest.c.  Make static.
3242         (floatformat_precision): Likewise.
3243         (floatformat_normalize_byteorder, get_field, put_field): Likewise.
3244         (floatformat_is_negative, floatformat_classify, floatformat_mantissa):
3245         Likewise.
3246         (host_float_format, host_double_format, host_long_double_format):
3247         Likewise.
3248         (floatformat_to_string, floatformat_from_string): Likewise.
3249         (floatformat_to_doublest): Likewise.  Also, inline the original
3250         convert_floatformat_to_doublest.
3251         (floatformat_from_doublest): Likewise.  Also, inline the original
3252         convert_floatformat_from_doublest.
3253
3254         Include "dpd/decimal128.h", "dpd/decimal64.h", and "dpd/decimal32.h".
3255         (MAX_DECIMAL_STRING): Move here from dfp.c.
3256         (match_endianness): Likewise.
3257         (set_decnumber_context, decimal_check_errors): Likewise.
3258         (decimal_from_number, decimal_to_number): Likewise.
3259         (decimal_to_string, decimal_from_string): Likewise.  Make static.
3260         (decimal_from_longest, decimal_from_ulongest): Likewise.
3261         (decimal_to_longest): Likewise.
3262         (decimal_binop, decimal_is_zero, decimal_compare): Likewise.
3263         (decimal_convert): Likewise.
3264
3265 2017-11-06  Ulrich Weigand  <uweigand@de.ibm.com>
3266
3267         * doublest.c: Do not include "gdbtypes.h".
3268         (extract_typed_floating): Remove.
3269         (store_typed_floating): Remove.
3270         (convert_typed_floating): Remove.
3271         * doublest.h (struct type): Remove.
3272         (DOUBLEST_PRINT_FORMAT): Remove.
3273         (DOUBLEST_SCAN_FORMAT): Remove.
3274         (extract_typed_floating): Remove.
3275         (store_typed_floating): Remove.
3276         (convert_typed_floating): Remove.
3277
3278         * dfp.c (decimal_from_doublest): Remove.
3279         (decimal_to_doublest): Remove.
3280         * dfp.h: Do not include "doublest.h".
3281         (decimal_from_doublest): Remove.
3282         (decimal_to_doublest): Remove.
3283
3284         * value.c: Do not include "doublest.h" and "dfp.h".
3285         (value_as_double): Remove.
3286         (unpack_double): Remove.
3287         (value_from_double): Remove.
3288         (value_from_decfloat): Remove.
3289         * value.h: Do not include "doublest.h".
3290         (value_as_double): Remove.
3291         (unpack_double): Remove.
3292         (value_from_double): Remove.
3293         (value_from_decfloat): Remove.
3294
3295 2017-11-06  Ulrich Weigand  <uweigand@de.ibm.com>
3296
3297         * i386-tdep.c: Include "target-float.h".  Do not include "doublest.h".
3298         (i386_extract_return_value): Use target_float_convert.
3299         (i386_store_return_value): Likewise.
3300         * i387-tdep.c (i387_register_to_value): Use target_float_convert.
3301         (i387_value_to_register): Likewise.
3302         * ia64-tdep.c: Include "target-float.h".  Do not include "doublest.h".
3303         (ia64_register_to_value): Use target_float_convert.
3304         (ia64_value_to_register): Likewise.
3305         (ia64_extract_return_value): Likewise.
3306         (ia64_store_return_value): Likewise.
3307         (ia64_push_dummy_call): Likewise.
3308         * m68k-tdep.c: Include "target-float.h".
3309         (m68k_register_to_value): Use target_float_convert.
3310         (m68k_value_to_register): Likewise.
3311         (m68k_svr4_extract_return_value): Likewise.
3312         (m68k_svr4_store_return_value): Likewise.
3313         * ppc-sysv-tdep.c: Include "target-float.h".
3314         (ppc_sysv_abi_push_dummy_call): Use target_float_convert.
3315         (do_ppc_sysv_return_value): Likewise.
3316         (ppc64_sysv_abi_push_freg): Likewise.
3317         (ppc64_sysv_abi_return_value_base): Likewise.
3318         * rs6000-aix-tdep.c: Include "target-float.h".
3319         (rs6000_push_dummy_call): Use target_float_convert.
3320         (rs6000_return_value): Likewise.
3321         * rs6000-lynx178-tdep.c: Include "target-float.h".
3322         (rs6000_lynx178_push_dummy_call): Use target_float_convert.
3323         (rs6000_lynx178_return_value): Likewise.
3324         * rs6000-tdep.c: Include "target-float.h".  Do not include "doublest.h".
3325         (rs6000_register_to_value): Use target_float_convert.
3326         (rs6000_value_to_register): Likewise.
3327         * arm-tdep.c: Include "target-float.h".  Do not include "doublest.h".
3328         (arm_extract_return_value): Use target_float_convert.
3329         (arm_store_return_value): Likewise.
3330         * sh-tdep.c: Include "target-float.h".  Do not include "doublest.h".
3331         (sh_register_convert_to_virtual): Use target_float_convert.
3332         (sh_register_convert_to_raw): Likewise.
3333         * sh64-tdep.c: Include "target-float.h".
3334         (sh64_extract_return_value): Use target_float_convert.
3335         (sh64_register_convert_to_virtual): Likewise.
3336         (sh64_register_convert_to_raw): Likewise.  Fix argument types.
3337
3338 2017-11-06  Ulrich Weigand  <uweigand@de.ibm.com>
3339
3340         * target-float.c (floatformat_to_host_double): New function.
3341         (floatformat_from_host_double): Likewise.
3342         (target_float_to_host_double): Likewise.
3343         (target_float_from_host_double): Likewise.
3344         * target-float.h (target_float_to_host_double): Add prototype.
3345         (target_float_from_host_double): Likewise.
3346
3347         * guile/scm-value.c: Include "target-float.h".
3348         (gdbscm_value_to_real): Use target_float_to_host_double.
3349         Handle integer source values via value_as_long.
3350         * guile/scm-math.c: Include "target-float.h".  Do not include
3351         "doublest.h", "dfp.h", and "expression.h".
3352         (vlscm_convert_typed_number): Use target_float_from_host_double.
3353         (vlscm_convert_number): Likewise.
3354
3355         * python/py-value.c (valpy_float): Use target_float_to_host_double.
3356         (convert_value_from_python): Use target_float_from_host_double.
3357
3358 2017-11-06  Ulrich Weigand  <uweigand@de.ibm.com>
3359
3360         * ada-lang.c (cast_to_fixed): Reimplement in target arithmetic.
3361         (cast_from_fixed): Likewise.
3362         (ada_scaling_type): New function.
3363         (ada_delta): Return value instead of DOUBLEST.  Perform target
3364         arithmetic instead of host arithmetic.
3365         (scaling_factor): Rename to ...
3366         (ada_scaling_factor) ... this.  Make non-static.  Return value instead
3367         of DOUBLEST.  Perform target arithmetic instead of host arithmetic.
3368         (ada_fixed_to_float): Remove.
3369         (ada_float_to_fixed): Remove.
3370         * ada-lang.h (ada_fixed_to_float): Remove.
3371         (ada_float_to_fixed): Remove.
3372         (ada_delta): Return value instead of DOUBLEST.
3373         (ada_scaling_factor): Add prototype.
3374
3375         * ada-typeprint.c: Include "target-float.h".
3376         (print_fixed_point_type): Perform target arithmetic instead of
3377         host arithmetic.
3378         * ada-valprint.c: Include "target-float.h".
3379         (ada_val_print_num): Perform target arithmetic instead of
3380         host arithmetic for fixed-point types.
3381
3382 2017-11-06  Ulrich Weigand  <uweigand@de.ibm.com>
3383
3384         * target-float.c: Include <math.h>.
3385         (floatformat_binop): New function.
3386         (floatformat_compare): Likewise.
3387         (target_float_binop): Likewise.
3388         (target_float_compare): Likewise.
3389         * target-float.h: Include "expression.h".
3390         (target_float_binop): Add prototype.
3391         (target_float_compare): Likewise.
3392
3393         * valarith.c: Do not include "doublest.h" and "dfp.h".
3394         Include "common/byte-vector.h".
3395         (value_args_as_decimal): Remove, replace by ...
3396         (value_args_as_target_float): ... this function.  Handle both
3397         binary and decimal target floating-point formats.
3398         (scalar_binop): Handle both binary and decimal FP using
3399         value_args_as_target_float and target_float_binop.
3400         (value_equal): Handle both binary and decimal FP using
3401         value_args_as_target_float and target_float_compare.
3402         (value_less): Likewise.
3403         (value_pos): Handle all scalar types as simple copy.
3404         (value_neg): Handle all scalar types via BINOP_SUB from 0.
3405         * dfp.c (decimal_binop): Throw error instead of internal_error
3406         when called with an unsupported operation code.
3407
3408 2017-11-06  Ulrich Weigand  <uweigand@de.ibm.com>
3409
3410         * target-float.c (target_float_to_string): New function.
3411         (target_float_from_string): New function.
3412         * target-float.h (target_float_to_string): Add prototype.
3413         (target_float_from_string): Add prototype.
3414
3415         * valprint.c: Include "target-float.h".  Do not include
3416         "doublest.h" and "dfp.h".
3417         (print_floating): Use target_float_to_string.
3418         * printcmd.c: Include "target-float.h".  Do not include "dfp.h".
3419         (printf_floating): Use target_float_to_string.
3420         * i387-tdep.c: Include "target-float.h".  Do not include "doublest.h".
3421         (print_i387_value): Use target_float_to_string.
3422         * mips-tdep.c: Include "target-float.h".
3423         (mips_print_fp_register): Use target_float_to_string.
3424         * sh64-tdep.c: Include "target-float.h".
3425         (sh64_do_fp_register): Use target_float_to_string.
3426
3427         * parse.c: Include "target-float.h".  Do not include
3428         "doublest.h" and "dfp.h".
3429         (parse_float): Use target_float_from_string.
3430         * stabsread.c: Include "target-float.h".  Do not include "doublest.h".
3431         (define_symbol): Use target_float_from_string.
3432         * gdbarch-selftests.c: Include "target-float.h".
3433         (register_to_value_test): Use target_float_from_string.
3434
3435 2017-11-06  Ulrich Weigand  <uweigand@de.ibm.com>
3436
3437         * Makefile.c (SFILES): Add target-float.c.
3438         (HFILES_NO_SRCDIR): Add target-float.h.
3439         (COMMON_OBS): Add target-float.o.
3440         * target-float.h: New file.
3441         * target-float.c: New file.
3442
3443         * doublest.c (floatformat_classify): Fix detection of float_zero.
3444
3445         * gdbtypes.c (is_floating_type): New function.
3446         * gdbtypes.h (is_floating_type): Add prototype.
3447
3448         * value.c: Do not include "floatformat.h".
3449         (unpack_double): Use target_float_is_valid.
3450         (is_floating_value): New function.
3451         * value.h (is_floating_value): Add prototype-
3452
3453         * valarith.c: Include "target-float.h".
3454         (value_logical_not): Use target_float_is_zero.
3455
3456         * python/py-value.c: Include "target-float.h".
3457         (valpy_nonzero): Use target_float_is_zero.
3458
3459 2017-11-04  Tom Tromey  <tom@tromey.com>
3460
3461         * h8300-tdep.c (h8300_push_dummy_call): Use std::vector.
3462
3463 2017-11-04  Tom Tromey  <tom@tromey.com>
3464
3465         * breakpoint.c (set_momentary_breakpoint): Return
3466         breakpoint_up.
3467         (until_break_command): Update.
3468         (new_until_break_fsm): Change argument types to
3469         breakpoint_up.
3470         (set_momentary_breakpoint_at_pc): Return breakpoint_up.
3471         (do_delete_breakpoint_cleanup, make_cleanup_delete_breakpoint):
3472         Remove.
3473         * infcmd.c (finish_forward): Update.
3474         * breakpoint.h (set_momentary_breakpoint)
3475         (set_momentary_breakpoint_at_pc): Return breakpoint_up.
3476         (make_cleanup_delete_breakpoint): Remove.
3477         (struct breakpoint_deleter): New.
3478         (breakpoint_up): New typedef.
3479         * infrun.c (insert_step_resume_breakpoint_at_sal_1): Update.
3480         (insert_exception_resume_breakpoint): Update.
3481         (insert_exception_resume_from_probe): Update.
3482         (insert_longjmp_resume_breakpoint): Update.
3483         * arm-linux-tdep.c (arm_linux_copy_svc): Update.
3484         * elfread.c (elf_gnu_ifunc_resolver_stop): Update.
3485         * infcall.c (call_function_by_hand_dummy): Update
3486
3487 2017-11-04  Tom Tromey  <tom@tromey.com>
3488
3489         * c-typeprint.c (c_type_print_base): Use gdb::unique_xmalloc_ptr.
3490
3491 2017-11-04  Tom Tromey  <tom@tromey.com>
3492
3493         * linux-tdep.c (linux_core_info_proc_mappings): Use
3494         gdb::def_vector.
3495         (linux_get_siginfo_data): Return gdb::byte_vector.  Remove
3496         "size" argument.
3497         (linux_corefile_thread): Update.
3498         (linux_make_corefile_notes): Remove unused variable.
3499
3500 2017-11-04  Tom Tromey  <tom@tromey.com>
3501
3502         * ppc-linux-tdep.c (ppc_linux_get_syscall_number): Use
3503         gdb::byte_vector.
3504
3505 2017-11-04  Tom Tromey  <tom@tromey.com>
3506
3507         * objfiles.c (do_free_objfile_cleanup): Remove.
3508         * compile/compile-object-load.c (compile_object_load): Update.
3509         * objfiles.h (make_cleanup_free_objfile): Remove.
3510
3511 2017-11-04  Tom Tromey  <tom@tromey.com>
3512
3513         * sparc64-tdep.c (do_examine): Use gdb::def_vector.
3514         (adi_read_versions): Change "tags" to "gdb_byte *".
3515         (adi_print_versions): Likewise.
3516
3517 2017-11-04  Tom Tromey  <tom@tromey.com>
3518
3519         * breakpoint.c
3520         (scoped_rbreak_breakpoints::scoped_rbreak_breakpoints): Rename
3521         from start_rbreak_breakpoints.
3522         (scoped_rbreak_breakpoints): Rename from end_rbreak_breakpoints.
3523         * breakpoint.h (class scoped_rbreak_breakpoints): New.
3524         (start_rbreak_breakpoints, end_rbreak_breakpoints): Remove.
3525         * symtab.c (do_end_rbreak_breakpoints): Remove.
3526         (rbreak_command): Use scoped_rbreak_breakpoints, std::string.
3527
3528 2017-11-04  Tom Tromey  <tom@tromey.com>
3529
3530         * cp-namespace.c (reset_directive_searched): Remove.
3531         (cp_lookup_symbol_via_imports): Use scoped_restore.
3532         * cp-support.c (reset_directive_searched): Remove.
3533         (make_symbol_overload_list_using): Use scoped_restore.
3534         * d-namespace.c (d_lookup_symbol_imports): Use scoped_restore.
3535         (reset_directive_searched): Remove.
3536
3537 2017-11-04  Tom Tromey  <tom@tromey.com>
3538
3539         * symfile.c (find_separate_debug_file_by_debuglink): Use
3540         unique_xmalloc_ptr.
3541
3542 2017-11-04  Tom Tromey  <tom@tromey.com>
3543
3544         * compile/compile-loc2c.c (compute_stack_depth_worker): Change
3545         type of "info".
3546         (compute_stack_depth): Likewise.
3547         (do_compile_dwarf_expr_to_c): Use std::vector.
3548
3549 2017-11-04  Tom Tromey  <tom@tromey.com>
3550
3551         * compile/compile-object-load.c (link_callbacks_einfo): Use
3552         std::string.
3553
3554 2017-11-04  Tom Tromey  <tom@tromey.com>
3555
3556         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
3557         Use scoped_free_pendings.
3558         * dbxread.c (dbx_symfile_read, dbx_psymtab_to_symtab_1): Use
3559         scoped_free_pendings.
3560         * xcoffread.c (xcoff_psymtab_to_symtab_1): Use scoped_free_pendings.
3561         (xcoff_initial_scan): Likewise.
3562         * buildsym.c (reset_symtab_globals): Update comment.
3563         (scoped_free_pendings): Rename from really_free_pendings.
3564         (prepare_for_building): Update comment.
3565         (buildsym_init): Likewise.
3566         * buildsym.h (class scoped_free_pendings): New class.
3567         (really_free_pendings): Don't declare.
3568
3569 2017-11-03  Ulrich Weigand  <uweigand@de.ibm.com>
3570
3571         * doublest.c (convert_doublest_to_floatformat): Fix uninitialized
3572         output when converting a zero value to a special byteorder format.
3573
3574 2017-11-02  Yao Qi  <yao.qi@linaro.org>
3575
3576         * frame.c (do_frame_register_read): Remove aspace.
3577         * jit.c (jit_frame_sniffer): Likwise.
3578         * ppc-linux-tdep.c (ppu2spu_sniffer): Likewise.
3579         * regcache.c (regcache::regcache): Pass nullptr.
3580         (regcache_print): Caller updated.
3581         * regcache.h (regcache::regcache): Remove one constructor
3582         parameter aspace.
3583
3584 2017-11-02  Yao Qi  <yao.qi@linaro.org>
3585
3586         * regcache.h (regcache) <m_readonly_p>: Change it to const bool.
3587
3588 2017-11-02  Yao Qi  <yao.qi@linaro.org>
3589
3590         * breakpoint.c (insert_single_step_breakpoints): Update.
3591         * frame.c (struct frame_info) <aspace>: Add const.
3592         (frame_save_as_regcache): Add const.
3593         (get_frame_address_space): Return const address_space *.
3594         * frame.h (get_frame_address_space): Update declaration.
3595         * infrun.c (struct step_over_info) <aspace>: Add const.
3596         (set_step_over_info): Make aspace const.
3597         (displaced_step_prepare_throw): Change variable const.
3598         (resume): Likewise.
3599         (proceed): Likewise.
3600         (adjust_pc_after_break): Likewise.
3601         (save_waitstatus): Likewise.
3602         (handle_signal_stop): Likewise.
3603         (keep_going_pass_signal): Likewise.
3604         * jit.c (jit_frame_sniffer): Add const.
3605         * mips-tdep.c (mips_single_step_through_delay): Likewise.
3606         * ppc-linux-tdep.c (ppu2spu_sniffer): Likewise.
3607         * record-full.c (record_full_wait_1): Likewise.
3608         * regcache.c (regcache::regcache): Change parameter to const.
3609         * regcache.h (regcache::regcache): Likewise.
3610         (regcache::aspace): Return const address_space *.
3611         (regcache) <m_aspace>: Add const.
3612
3613 2017-11-02  Yao Qi  <yao.qi@linaro.org>
3614
3615         * darwin-nat.c (cancel_breakpoint): Use regcache->aspace ().
3616         * frame.c (create_sentinel_frame): Likewise.
3617         * infrun.c (displaced_step_prepare_throw): Likewise.
3618         (resume): Likewise.
3619         (thread_still_needs_step_over_bp): Likewise.
3620         (proceed): Likewise.
3621         (do_target_wait): Likewise.
3622         (adjust_pc_after_break): Likewise.
3623         (handle_syscall_event): Likewise.
3624         (save_waitstatus): Likewise.
3625         (handle_inferior_event_1): Likewise.
3626         (handle_signal_stop): Likewise.
3627         (keep_going_pass_signal): Likewise.
3628         * linux-nat.c (status_callback): Likewise.
3629         (save_stop_reason): Likewise.
3630         (resume_stopped_resumed_lwps): Likewise.
3631         * record-full.c (record_full_exec_insn): Likewise.
3632         (record_full_wait_1): Likewise.
3633         * regcache.c (get_regcache_aspace): Remove.
3634         * regcache.h (get_regcache_aspace): Remove.
3635
3636 2017-11-02  Yao Qi  <yao.qi@linaro.org>
3637
3638         * regcache.c (struct regcache_descr) <nr_raw_registers>: Remove.
3639         (init_regcache_descr): Use gdbarch_num_regs.
3640         (regcache::regcache): Likewise.
3641         (regcache::get_register_status): Likewise.
3642         (regcache::assert_raw_regnum): Likewise.
3643         (regcache::cooked_read): Likewise.
3644         (regcache::cooked_read_value): Likewise.
3645         (regcache::cooked_write): Likewise.
3646         (regcache::dump): Likewise.
3647         (regcache::num_raw_registers): New method.
3648         * regcache.h (class regcache) <num_raw_registers>: New.
3649
3650 2017-11-02  Yao Qi  <yao.qi@linaro.org>
3651
3652         * regcache.c (regcache::assert_regnum): New method.
3653         (regcache::invalidate): Call assert_regnum.
3654         (regcache::raw_update): Likewise.
3655         (regcache::raw_write): Likewise.
3656         (regcache::raw_read_part): Likewise.
3657         (regcache::raw_write_part): Likewise.
3658         (regcache::raw_supply): Likewise.
3659         (regcache::raw_supply_integer): Likewise.
3660         (regcache::raw_supply_zeroed): Likewise.
3661         (regcache::raw_collect): Likewise.
3662         (regcache::raw_collect_integer): Likewise.
3663         * regcache.h (regcache::assert_regnum): Declare.
3664
3665 2017-11-02  Yao Qi  <yao.qi@linaro.org>
3666
3667         * regcache.c (regcache::dump): Remove code.
3668
3669 2017-11-02  Yao Qi  <yao.qi@linaro.org>
3670
3671         * regcache.c (struct regcache_descr) <sizeof_raw_register_status>:
3672         Remove.
3673         <sizeof_cooked_register_status>: Remove.
3674         (init_regcache_descr): Update.
3675         (regcache::regcache): Use nr_cooked_registers and nr_raw_registers.
3676         (regcache::save): Likewise.
3677         (regcache::dump): Likewise.
3678
3679 2017-11-01  James Bowman  <james.bowman@ftdichip.com>
3680
3681         * ft32-tdep.c (ft32_fetch_instruction): New function.
3682         (ft32_analyze_prologue): Use ft32_fetch_instruction().
3683
3684 2017-10-31  Simon Marchi  <simon.marchi@polymtl.ca>
3685
3686         * cli/cli-script.c (execute_control_command): Rename to ...
3687         (execute_control_command_1): ... this.
3688         (execute_control_command): New function.
3689
3690 2017-10-31  Simon Marchi  <simon.marchi@ericsson.com>
3691
3692         * tracepoint.c (tfind_command): Remove const_cast.
3693
3694 2017-10-30  Mike Gulick  <mgulick@mathworks.com>
3695
3696         * Makefile.in (HFILES_NO_SRCDIR): Remove reference to gdb.h.
3697
3698 2017-10-30  Simon Marchi  <simon.marchi@ericsson.com>
3699
3700         * common/common-utils.h (in_inclusive_range): New function.
3701         * arm-tdep.c (arm_record_extension_space): Use
3702         in_inclusive_range.
3703         (thumb_record_ld_st_reg_offset): Use in_inclusive_range.
3704         * cris-tdep.c (cris_spec_reg_applicable): Use
3705         in_inclusive_range.
3706
3707 2017-10-30  Pedro Alves  <palves@redhat.com>
3708             Simon Marchi <simon.marchi@ericsson.com>
3709
3710         * remote.c (remote_set_syscall_catchpoint): Build a std::string
3711         instead of a gdb::unique_xmalloc_ptr, using string_appendf.
3712
3713 2017-10-30  Pedro Alves  <palves@redhat.com>
3714
3715         * common/common-utils.c (string_appendf, string_vappendf): New
3716         functions.
3717         * common/common-utils.h (string_appendf, string_vappendf): New
3718         declarations.
3719         * unittests/common-utils-selftests.c (string_appendf_func)
3720         (test_appendf_func, string_vappendf_wrapper, string_appendf_tests)
3721         (string_vappendf_tests): New functions.
3722         (_initialize_common_utils_selftests): Register "string_appendf" and
3723         "string_vappendf tests".
3724
3725 2017-10-30  Pedro Alves  <palves@redhat.com>
3726
3727         * unittests/common-utils-selftests.c (format_func): New typedef.
3728         (string_printf_tests, string_vprintf_tests): Tests factored out
3729         and merged to ...
3730         (test_format_func): ... this new function.
3731         (string_printf_tests, string_vprintf_tests): Reimplement on top of
3732         test_format_func.
3733
3734 2017-10-29  Simon Marchi  <simon.marchi@ericsson.com>
3735
3736         * darwin-nat.c: Remove include of gdb.h.
3737
3738 2017-10-29  Simon Marchi  <simon.marchi@ericsson.com>
3739
3740         * xtensa-xtregs.c: Fix formatting issues.
3741
3742 2017-10-29  Simon Marchi  <simon.marchi@ericsson.com>
3743
3744         * xtensa-xtregs.c (xtensa_regtable_t) <name>: Constify.
3745
3746 2017-10-28  Maksim Dzabraev  <dzabraew@gmail.com>
3747
3748         PR python/21213
3749         * python/py-infthread.c (thpy_get_inferior): Increment reference
3750         of inferior before returning it.
3751
3752 2017-10-27  Simon Marchi  <simon.marchi@ericsson.com>
3753
3754         * unittests/common-utils-selftests.c (format): Add
3755         ATTRIBUTE_PRINTF.
3756
3757 2017-10-27  Simon Marchi  <simon.marchi@polymtl.ca>
3758
3759         * xml-syscall.c (struct syscall_desc): Add constructor.
3760         <name>: Change type to std::string.
3761         (syscall_desc_up): New typedef.
3762         (syscall_desc_p): Remove typeder.
3763         (DEF_VEC_P(syscall_desc_p)): Remove.
3764         (struct syscall_group_desc): Add constructor.
3765         <name>: Change type to std::string.
3766         <syscalls>: Change type to std::vector.
3767         (syscall_group_desc_up): New typedef.
3768         (syscall_group_desc_p): Remove typedef.
3769         (DEF_VEC_P(syscall_group_desc_p)): Remove.
3770         (struct syscalls_info) <syscalls>: Change type to std::vector of
3771         unique_ptr.
3772         <groups>: Likewise.
3773         <my_gdb_datadir>: Change type to std::string.
3774         (syscalls_info_up): New typedef.
3775         (allocate_syscalls_info): Remove.
3776         (syscalls_info_free_syscalls_desc): Remove.
3777         (syscalls_info_free_syscall_group_desc): Remove.
3778         (free_syscalls_info): Remove.
3779         (make_cleanup_free_syscalls_info): Remove.
3780         (syscall_group_create_syscall_group_desc): Adjust.
3781         (syscall_group_add_syscall): Adjust.
3782         (syscall_create_syscall_desc): Adjust.
3783         (syscall_parse_xml): Adjust, use unique_ptr instead of cleanup.
3784         (init_syscalls_info): Adjust.
3785         (syscall_group_get_group_by_name): Adjust.
3786         (xml_get_syscall_number): Adjust.
3787         (xml_get_syscall_name): Adjust.
3788         (xml_list_of_syscalls): Adjust.
3789         (xml_list_syscalls_by_group): Adjust.
3790         (xml_list_of_groups): Adjust.
3791
3792 2017-10-27  Simon Marchi  <simon.marchi@ericsson.com>
3793
3794         * probe.h: Don't include gdb_vecs.h.
3795         (DEF_VEC_P (probe_p)): Remove.
3796         (find_probes_in_objfile): Return an std::vector.
3797         * probe.c (find_probes_in_objfile): Likewise.
3798         * breakpoint.c (breakpoint_objfile_data)
3799         <longjmp_probes>: Change type to std::vector.
3800         <exception_probes>: Likewise.
3801         (free_breakpoint_probes): Don't manually free vectors.
3802         (create_longjmp_master_breakpoint): Adjust.
3803         (create_exception_master_breakpoint): Adjust.
3804         * solib-svr4.c (svr4_create_probe_breakpoints): Change
3805         parameter type, adjust.
3806         (svr4_create_solib_event_breakpoints): Adjust.
3807
3808 2017-10-27  Simon Marchi  <simon.marchi@ericsson.com>
3809
3810         * breakpoint.c (breakpoint_objfile_data): Initialize fields.
3811         (get_breakpoint_objfile_data): Allocate breakpoint_objfile_data
3812         with new.
3813         (free_breakpoint_probes): Rename to ...
3814         (free_breakpoint_objfile_data): ... this, and call delete on
3815         bp_objfile_data..
3816
3817 2017-10-27  Simon Marchi  <simon.marchi@polymtl.ca>
3818
3819         * auto-load.c: Don't include gdb_vecs.h, include algorithm.
3820         (loaded_script_ptr): Remove typedef.
3821         (DEF_VEC_P (loaded_script_ptr)): Remove.
3822         (struct collect_matching_scripts_data): Add constructor.
3823         <scripts_p>: Change type to (pointer to) std::vector.
3824         (collect_matching_scripts_data): Adjust.
3825         (sort_scripts_by_name): Make suitable for std::sort.
3826         (print_scripts): Don't sort vector, adjust to std::vector.
3827         (auto_load_info_scripts): Sort vectors, adjust to std::vector.
3828
3829 2017-10-27  Simon Marchi  <simon.marchi@ericsson.com>
3830
3831         * symfile.c (filename_language): Make struct, not typedef.  Add
3832         constructor.
3833         <ext>: Change type to std::string.
3834         (DEF_VEC_O (filename_language)): Remove.
3835         (filename_language_table): Change type to std::vector.
3836         (add_filename_language): Adjust.
3837         (set_ext_lang_command): Adjust.
3838         (info_ext_lang_command): Adjust.
3839         (deduce_language_from_filename): Adjust.
3840         (class scoped_restore_filename_language_table): Remove.
3841         (test_filename_language): Use scoped_restore.
3842         (test_set_ext_lang_command): Use scoped_restore, adjust to
3843         std::vector change.
3844
3845 2017-10-27  Simon Marchi  <simon.marchi@ericsson.com>
3846
3847         * symfile.c: Include selftest.h.
3848         (class scoped_restore_filename_language_table): New.
3849         (test_filename_language): New test.
3850         (test_set_ext_lang_command): New test.
3851         (_initialize_symfile): Register tests.
3852
3853 2017-10-27  Keith Seitz  <keiths@redhat.com>
3854
3855         * breakpoint.c (print_breakpoint_location): Use the symbol saved
3856         in the bp_location, falling back to find_pc_sect_function when
3857         needed.
3858         (add_location_to_breakpoint): Save sal->symbol.
3859         * breakpoint.h (struct bp_location) <symbol>: New field.
3860         * symtab.c (find_function_start_sal): Save the symbol into the SaL.
3861         * symtab.h (struct symtab_and_line) <symbol>: New field.
3862
3863 2017-10-26  Patrick Frants  <osscontribute@gmail.com>
3864
3865         PR gdb/13669
3866         * cp-valprint.c (cp_print_value_fields): Use obstack_blank_fast
3867         to rewind obstack.
3868
3869 2017-10-26  Pedro Alves  <palves@redhat.com>
3870
3871         * remote.c (remote_async_terminal_ours_p): Delete.
3872         (remote_open_1, remote_terminal_inferior, remote_terminal_ours):
3873         Remove references to 'remote_async_terminal_ours_p'.
3874
3875 2017-10-26  Yao Qi  <yao.qi@linaro.org>
3876
3877         * breakpoint.h (regular_breakpoint_inserted_here_p): Remove.
3878
3879 2017-10-26  Yao Qi  <yao.qi@linaro.org>
3880
3881         * break-catch-sig.c (signal_catchpoint_breakpoint_hit): Make
3882         aspace const.
3883         * break-catch-syscall.c (breakpoint_hit_catch_syscall):
3884         Likewise.
3885         * breakpoint.c (bpstat_check_location): Remove cast.
3886         (breakpoint_hit_catch_fork): Make aspce const.
3887         (breakpoint_hit_catch_solib): Likewise.
3888         (breakpoint_hit_catch_exec): Likewise.
3889         (breakpoint_hit_ranged_breakpoint): Likewise.
3890         (breakpoint_hit_watchpoint): Likewise.
3891         (base_breakpoint_breakpoint_hit): Likewise.
3892         (bkpt_breakpoint_hit): Likewise.
3893         (dprintf_breakpoint_hit): Likewise.
3894         (tracepoint_breakpoint_hit): Likewise.
3895         * breakpoint.h (breakpoint_ops) <breakpoint_hit>: Likewise.
3896
3897 2017-10-26  Yao Qi  <yao.qi@linaro.org>
3898
3899         * breakpoint.c (breakpoint_location_address_match): Change
3900         "struct address_space *" to "const address_space".
3901         (breakpoint_location_address_range_overlap): Likewise.
3902         (breakpoint_here_p): Likewise.
3903         (breakpoint_in_range_p): Likewise.
3904         (moribund_breakpoint_here_p): Likewise.
3905         (bp_location_inserted_here_p): Likewise.
3906         (software_breakpoint_inserted_here_p): Likewise.
3907         (hardware_breakpoint_inserted_here_p): Likewise.
3908         (hardware_watchpoint_inserted_in_range): Likewise.
3909         (bpstat_check_location): Likewise.
3910         (bpstat_stop_status): Likewise.
3911         (breakpoint_address_match): Likewise.
3912         (breakpoint_address_match_range): Likewise.
3913         (breakpoint_location_address_match): Likewise.
3914         (breakpoint_location_address_range_overlap): Likewise.
3915         (insert_single_step_breakpoint): Likewise.
3916         (breakpoint_has_location_inserted_here): Likewise.
3917         (single_step_breakpoint_inserted_here_p): Likewise.
3918         (pc_at_non_inline_function): Likewise.
3919         * breakpoint.h (bpstat_stop_status): Update declaration.
3920         (breakpoint_here_p): Likewise.
3921         (breakpoint_in_range_p): Likewise.
3922         (moribund_breakpoint_here_p): Likewise.
3923         (breakpoint_inserted_here_p): Likewise.
3924         (software_breakpoint_inserted_here_p): Likewise.
3925         (hardware_breakpoint_inserted_here_p): Likewise.
3926         (breakpoint_has_location_inserted_here): Likewise.
3927         (single_step_breakpoint_inserted_here_p): Likewise.
3928         (hardware_watchpoint_inserted_in_range): Likewise.
3929         (breakpoint_address_match): Likewise.
3930         (insert_single_step_breakpoint): Likewise.
3931         (pc_at_non_inline_function): Likewise.
3932         * gdbthread.h (thread_has_single_step_breakpoint_here): Likewise.
3933         * record.c (record_check_stopped_by_breakpoint): Likewise.
3934         * record.h (record_check_stopped_by_breakpoint): Likewise.
3935         * thread.c (thread_has_single_step_breakpoint_here): Likewise.
3936
3937 2017-10-25  Yao Qi  <yao.qi@linaro.org>
3938
3939         * aarch32-linux-nat.c (aarch32_gp_regcache_supply): Use
3940         regcache->arch () instead get_regcache_arch.
3941         * aarch64-fbsd-nat.c (aarch64_fbsd_fetch_inferior_registers):
3942         Likewise.
3943         (aarch64_fbsd_store_inferior_registers): Likewise.
3944         * aarch64-linux-nat.c (fetch_gregs_from_thread): Likewise.
3945         (store_gregs_to_thread): Likewise.
3946         (fetch_fpregs_from_thread): Likewise.
3947         (store_fpregs_to_thread): Likewise.
3948         * aarch64-tdep.c (aarch64_extract_return_value): Likewise.
3949         (aarch64_store_return_value): Likewise.
3950         (aarch64_software_single_step): Likewise.
3951         * aix-thread.c (aix_thread_wait): Likewise.
3952         (supply_reg32): Likewise.
3953         (supply_sprs64): Likewise.
3954         (supply_sprs32): Likewise.
3955         (fill_gprs64): Likewise.
3956         (fill_gprs32): Likewise.
3957         (fill_sprs64): Likewise.
3958         (fill_sprs32): Likewise.
3959         (store_regs_user_thread): Likewise.
3960         (store_regs_kernel_thread): Likewise.
3961         * alpha-bsd-nat.c (alphabsd_fetch_inferior_registers): Likewise.
3962         (alphabsd_store_inferior_registers): Likewise.
3963         * alpha-tdep.c (alpha_extract_return_value): Likewise.
3964         (alpha_store_return_value): Likewise.
3965         (alpha_deal_with_atomic_sequence): Likewise.
3966         (alpha_next_pc): Likewise.
3967         (alpha_software_single_step): Likewise.
3968         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers): Likewise.
3969         (amd64bsd_store_inferior_registers): Likewise.
3970         * amd64-linux-nat.c (amd64_linux_fetch_inferior_registers):
3971         Likewise.
3972         (amd64_linux_store_inferior_registers): Likewise.
3973         * amd64-nat.c (amd64_supply_native_gregset): Likewise.
3974         (amd64_collect_native_gregset): Likewise.
3975         * amd64-obsd-tdep.c (amd64obsd_supply_uthread): Likewise.
3976         (amd64obsd_collect_uthread): Likewise.
3977         * amd64-tdep.c (amd64_supply_fpregset): Likewise.
3978         (amd64_collect_fpregset): Likewise.
3979         (amd64_supply_fxsave): Likewise.
3980         (amd64_supply_xsave): Likewise.
3981         (amd64_collect_fxsave): Likewise.
3982         (amd64_collect_xsave): Likewise.
3983         * arc-tdep.c (arc_write_pc): Likewise.
3984         * arch-utils.c (default_skip_permanent_breakpoint): Likewise.
3985         * arm-fbsd-nat.c (arm_fbsd_fetch_inferior_registers): Likewise.
3986         (arm_fbsd_store_inferior_registers): Likewise.
3987         * arm-linux-nat.c (fetch_vfp_regs): Likewise.
3988         (store_vfp_regs): Likewise.
3989         (arm_linux_fetch_inferior_registers): Likewise.
3990         (arm_linux_store_inferior_registers): Likewise.
3991         * arm-linux-tdep.c (arm_linux_supply_gregset): Likewise.
3992         (arm_linux_sigreturn_next_pc): Likewise.
3993         (arm_linux_get_next_pcs_syscall_next_pc): Likewise.
3994         * arm-nbsd-nat.c (arm_supply_gregset): Likewise.
3995         (fetch_register): Likewise.
3996         (store_register): Likewise.
3997         * arm-tdep.c (arm_is_thumb): Likewise.
3998         (displaced_in_arm_mode): Likewise.
3999         (bx_write_pc): Likewise.
4000         (arm_get_next_pcs_addr_bits_remove): Likewise.
4001         (arm_software_single_step): Likewise.
4002         (arm_extract_return_value): Likewise.
4003         (arm_store_return_value): Likewise.
4004         (arm_write_pc): Likewise.
4005         * bfin-tdep.c (bfin_extract_return_value): Likewise.
4006         * bsd-uthread.c (bsd_uthread_fetch_registers): Likewise.
4007         (bsd_uthread_store_registers): Likewise.
4008         * core-regset.c (fetch_core_registers): Likewise.
4009         * corelow.c (get_core_registers): Likewise.
4010         * cris-tdep.c (cris_store_return_value): Likewise.
4011         (cris_extract_return_value): Likewise.
4012         (find_step_target): Likewise.
4013         (find_step_target): Likewise.
4014         (cris_software_single_step): Likewise.
4015         * ctf.c (ctf_fetch_registers): Likewise.
4016         * darwin-nat.c (cancel_breakpoint): Likewise.
4017         * fbsd-tdep.c (fbsd_collect_thread_registers): Likewise.
4018         * frv-tdep.c (frv_extract_return_value): Likewise.
4019         * ft32-tdep.c (ft32_store_return_value): Likewise.
4020         (ft32_extract_return_value): Likewise.
4021         * go32-nat.c (fetch_register): Likewise.
4022         (go32_fetch_registers): Likewise.
4023         (go32_store_registers): Likewise.
4024         (store_register): Likewise.
4025         * h8300-tdep.c (h8300_extract_return_value): Likewise.
4026         (h8300_store_return_value): Likewise.
4027         * hppa-linux-nat.c (fetch_register): Likewise.
4028         (store_register): Likewise.
4029         (hppa_linux_fetch_inferior_registers): Likewise.
4030         (hppa_linux_store_inferior_registers): Likewise.
4031         * i386-darwin-nat.c (i386_darwin_fetch_inferior_registers): Likewise.
4032         (i386_darwin_store_inferior_registers): Likewise.
4033         * i386-gnu-nat.c (gnu_fetch_registers): Likewise.
4034         (gnu_store_registers): Likewise.
4035         * i386-linux-nat.c (fetch_register): Likewise.
4036         (store_register): Likewise.
4037         (supply_gregset): Likewise.
4038         (fill_gregset): Likewise.
4039         (i386_linux_fetch_inferior_registers): Likewise.
4040         (i386_linux_store_inferior_registers): Likewise.
4041         (i386_linux_resume): Likewise.
4042         * i386-linux-tdep.c (i386_linux_get_syscall_number_from_regcache):
4043         Likewise.
4044         * i386-nto-tdep.c (i386nto_supply_gregset): Likewise.
4045         * i386-obsd-nat.c (i386obsd_supply_pcb): Likewise.
4046         * i386-obsd-tdep.c (i386obsd_supply_uthread): Likewise.
4047         (i386obsd_collect_uthread): Likewise.
4048         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
4049         (i386_supply_gregset): Likewise.
4050         (i386_collect_gregset): Likewise.
4051         (i386_supply_fpregset): Likewise.
4052         (i386_collect_fpregset): Likewise.
4053         (i386_mpx_bd_base): Likewise.
4054         * i386-v4-nat.c (supply_fpregset): Likewise.
4055         (fill_fpregset): Likewise.
4056         * i387-tdep.c (i387_supply_fsave): Likewise.
4057         (i387_collect_fsave): Likewise.
4058         (i387_supply_fxsave): Likewise.
4059         (i387_collect_fxsave): Likewise.
4060         (i387_supply_xsave): Likewise.
4061         (i387_collect_xsave): Likewise.
4062         * ia64-linux-nat.c (ia64_linux_fetch_registers): Likewise.
4063         (ia64_linux_store_registers): Likewise.
4064         * ia64-tdep.c (ia64_access_rse_reg): Likewise.
4065         (ia64_extract_return_value): Likewise.
4066         (ia64_store_return_value): Likewise.
4067         (find_func_descr): Likewise.
4068         * inf-child.c (inf_child_fetch_inferior_registers): Likewise.
4069         * inf-ptrace.c (inf_ptrace_fetch_registers): Likewise.
4070         (inf_ptrace_store_registers): Likewise.
4071         * infrun.c (use_displaced_stepping): Likewise.
4072         (displaced_step_prepare_throw): Likewise.
4073         (resume): Likewise.
4074         (proceed): Likewise.
4075         (do_target_wait): Likewise.
4076         (adjust_pc_after_break): Likewise.
4077         (handle_inferior_event_1): Likewise.
4078         (handle_signal_stop): Likewise.
4079         (save_infcall_suspend_state): Likewise.
4080         (restore_infcall_suspend_state): Likewise.
4081         * iq2000-tdep.c (iq2000_extract_return_value): Likewise.
4082         * jit.c (jit_frame_prev_register): Likewise.
4083         * linux-nat.c (save_stop_reason): Likewise.
4084         (linux_nat_wait_1): Likewise.
4085         (resume_stopped_resumed_lwps): Likewise.
4086         * linux-record.c (record_linux_sockaddr): Likewise.
4087         (record_linux_msghdr): Likewise.
4088         (record_linux_system_call): Likewise.
4089         * linux-tdep.c (linux_collect_thread_registers): Likewise.
4090         * lm32-tdep.c (lm32_extract_return_value): Likewise.
4091         (lm32_store_return_value): Likewise.
4092         * m32c-tdep.c (m32c_read_flg): Likewise.
4093         (m32c_pseudo_register_read): Likewise.
4094         (m32c_pseudo_register_write): Likewise.
4095         * m32r-linux-tdep.c (m32r_linux_supply_gregset): Likewise.
4096         (m32r_linux_collect_gregset): Likewise.
4097         * m32r-tdep.c (m32r_store_return_value): Likewise.
4098         (m32r_extract_return_value): Likewise.
4099         * m68k-bsd-nat.c (m68kbsd_supply_fpregset): Likewise.
4100         (m68kbsd_collect_fpregset): Likewise.
4101         * m68k-bsd-tdep.c (m68kbsd_supply_fpregset): Likewise.
4102         * m68k-linux-nat.c (fetch_register): Likewise.
4103         (old_fetch_inferior_registers): Likewise.
4104         (old_store_inferior_registers): Likewise.
4105         (store_regs): Likewise.
4106         * m68k-tdep.c (m68k_svr4_extract_return_value): Likewise.
4107         (m68k_svr4_store_return_value): Likewise.
4108         * m88k-tdep.c (m88k_store_arguments): Likewise.
4109         * mi/mi-main.c (mi_cmd_data_list_changed_registers): Likewise.
4110         (mi_cmd_data_write_register_values): Likewise.
4111         * mips-fbsd-nat.c (mips_fbsd_fetch_inferior_registers): Likewise.
4112         (mips_fbsd_store_inferior_registers): Likewise.
4113         * mips-fbsd-tdep.c (mips_fbsd_supply_fpregs): Likewise.
4114         (mips_fbsd_supply_gregs): Likewise.
4115         (mips_fbsd_collect_fpregs): Likewise.
4116         (mips_fbsd_collect_gregs): Likewise.
4117         (mips_fbsd_supply_fpregset): Likewise.
4118         (mips_fbsd_collect_fpregset): Likewise.
4119         (mips_fbsd_supply_gregset): Likewise.
4120         (mips_fbsd_collect_gregset): Likewise.
4121         * mips-linux-nat.c (supply_gregset): Likewise.
4122         (fill_gregset): Likewise.
4123         (supply_fpregset): Likewise.
4124         (fill_fpregset): Likewise.
4125         * mips-linux-tdep.c (mips_supply_gregset): Likewise.
4126         (mips_fill_gregset): Likewise.
4127         (mips_supply_fpregset): Likewise.
4128         (mips_fill_fpregset): Likewise.
4129         (mips64_supply_gregset): Likewise.
4130         (micromips_linux_sigframe_validate): Likewise.
4131         * mips-nbsd-nat.c (mipsnbsd_fetch_inferior_registers): Likewise.
4132         (mipsnbsd_fetch_inferior_registers): Likewise.
4133         (mipsnbsd_store_inferior_registers): Likewise.
4134         * mips-nbsd-tdep.c (mipsnbsd_supply_fpregset): Likewise.
4135         (mipsnbsd_supply_gregset): Likewise.
4136         (mipsnbsd_iterate_over_regset_sections): Likewise.
4137         (mipsnbsd_supply_reg): Likewise.
4138         (mipsnbsd_supply_fpreg): Likewise.
4139         * mips-tdep.c (mips_in_frame_stub): Likewise.
4140         (mips_dummy_id): Likewise.
4141         (is_octeon_bbit_op): Likewise.
4142         (micromips_bc1_pc): Likewise.
4143         (extended_mips16_next_pc): Likewise.
4144         (mips16_next_pc): Likewise.
4145         (deal_with_atomic_sequence): Likewise.
4146         * moxie-tdep.c (moxie_process_readu): Likewise.
4147         * nios2-tdep.c (nios2_get_next_pc): Likewise.
4148         * nto-procfs.c (procfs_store_registers): Likewise.
4149         * ppc-fbsd-nat.c (ppcfbsd_fetch_inferior_registers): Likewise.
4150         (ppcfbsd_store_inferior_registers): Likewise.
4151         * ppc-linux-nat.c (fetch_vsx_register): Likewise.
4152         (fetch_altivec_register): Likewise.
4153         (get_spe_registers): Likewise.
4154         (fetch_spe_register): Likewise.
4155         (fetch_altivec_registers): Likewise.
4156         (fetch_all_gp_regs): Likewise.
4157         (fetch_all_fp_regs): Likewise.
4158         (store_vsx_register): Likewise.
4159         (store_altivec_register): Likewise.
4160         (set_spe_registers): Likewise.
4161         (store_spe_register): Likewise.
4162         (store_altivec_registers): Likewise.
4163         (store_all_gp_regs): Likewise.
4164         (store_all_fp_regs): Likewise.
4165         * ppc-linux-tdep.c (ppc_linux_supply_gregset): Likewise.
4166         (ppc_linux_collect_gregset): Likewise.
4167         (ppc_canonicalize_syscall): Likewise.
4168         (ppc_linux_record_signal): Likewise.
4169         (ppu2spu_prev_register): Likewise.
4170         * ppc-nbsd-nat.c (ppcnbsd_supply_pcb): Likewise.
4171         * ppc-obsd-nat.c (ppcobsd_fetch_registers): Likewise.
4172         (ppcobsd_store_registers): Likewise.
4173         * ppc-ravenscar-thread.c (ppc_ravenscar_generic_fetch_registers):
4174         Likewise.
4175         (ppc_ravenscar_generic_store_registers): Likewise.
4176         * procfs.c (procfs_fetch_registers): Likewise.
4177         (procfs_store_registers): Likewise.
4178         * ravenscar-thread.c (ravenscar_fetch_registers): Likewise.
4179         (ravenscar_store_registers): Likewise.
4180         (ravenscar_prepare_to_store): Likewise.
4181         * record-btrace.c (record_btrace_fetch_registers): Likewise.
4182         * record-full.c (record_full_wait_1): Likewise.
4183         (record_full_registers_change): Likewise.
4184         (record_full_store_registers): Likewise.
4185         (record_full_core_fetch_registers): Likewise.
4186         (record_full_save): Likewise.
4187         (record_full_goto_insn): Likewise.
4188         * regcache.c (regcache_register_size): Likewise.
4189         (get_regcache_arch): Remove.
4190         (regcache_read_pc): Likewise.
4191         * regcache.h (get_regcache_arch): Remove.
4192         * remote-sim.c (gdbsim_fetch_register): Likewise.
4193         (gdbsim_store_register): Likewise.
4194         * remote.c (fetch_register_using_p): Likewise.
4195         (send_g_packet): Likewise.
4196         (remote_prepare_to_store): Likewise.
4197         (store_registers_using_G): Likewise.
4198         * reverse.c (save_bookmark_command): Likewise.
4199         (goto_bookmark_command): Likewise.
4200         * rs6000-aix-tdep.c (branch_dest): Likewise.
4201         * rs6000-nat.c (rs6000_ptrace64): Likewise.
4202         (fetch_register): Likewise.
4203         * rs6000-tdep.c (ppc_supply_reg): Likewise.
4204         (ppc_collect_reg): Likewise.
4205         (ppc_collect_gregset): Likewise.
4206         (ppc_collect_fpregset): Likewise.
4207         (ppc_collect_vsxregset): Likewise.
4208         (ppc_collect_vrregset): Likewise.
4209         (ppc_displaced_step_hw_singlestep): Likewise.
4210         (rs6000_pseudo_register_read): Likewise.
4211         (rs6000_pseudo_register_write): Likewise.
4212         * s390-linux-nat.c (supply_gregset): Likewise.
4213         (fill_gregset): Likewise.
4214         (s390_linux_fetch_inferior_registers): Likewise.
4215         * s390-linux-tdep.c (s390_write_pc): Likewise.
4216         (s390_software_single_step): Likewise.
4217         (s390_all_but_pc_registers_record): Likewise.
4218         (s390_linux_syscall_record): Likewise.
4219         * sentinel-frame.c (sentinel_frame_prev_arch): Likewise.
4220         * sh-nbsd-nat.c (shnbsd_fetch_inferior_registers): Likewise.
4221         (shnbsd_store_inferior_registers): Likewise.
4222         * sh-tdep.c (sh_extract_return_value_nofpu): Likewise.
4223         (sh_extract_return_value_fpu): Likewise.
4224         (sh_store_return_value_nofpu): Likewise.
4225         (sh_corefile_supply_regset): Likewise.
4226         (sh_corefile_collect_regset): Likewise.
4227         * sh64-tdep.c (sh64_extract_return_value): Likewise.
4228         (sh64_store_return_value): Likewise.
4229         * sparc-linux-tdep.c (sparc32_linux_collect_core_fpregset): Likewise.
4230         * sparc-nat.c (sparc_fetch_inferior_registers): Likewise.
4231         (sparc_store_inferior_registers): Likewise.
4232         * sparc-ravenscar-thread.c (register_in_thread_descriptor_p): Likewise.
4233         (sparc_ravenscar_prepare_to_store): Likewise.
4234         * sparc-tdep.c (sparc32_store_arguments): Likewise.
4235         (sparc_analyze_control_transfer): Likewise.
4236         (sparc_step_trap): Likewise.
4237         (sparc_software_single_step): Likewise.
4238         (sparc32_gdbarch_init): Likewise.
4239         (sparc_supply_rwindow): Likewise.
4240         (sparc_collect_rwindow): Likewise.
4241         * sparc64-linux-tdep.c (sparc64_linux_collect_core_fpregset): Likewise.
4242         * sparc64-nbsd-nat.c (sparc64nbsd_supply_gregset): Likewise.
4243         (sparc64nbsd_collect_gregset): Likewise.
4244         (sparc64nbsd_supply_fpregset): Likewise.
4245         (sparc64nbsd_collect_fpregset): Likewise.
4246         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
4247         (sparc64_supply_gregset): Likewise.
4248         (sparc64_collect_gregset): Likewise.
4249         (sparc64_supply_fpregset): Likewise.
4250         (sparc64_collect_fpregset): Likewise.
4251         * spu-linux-nat.c (spu_fetch_inferior_registers): Likewise.
4252         * spu-tdep.c (spu_unwind_sp): Likewise.
4253         (spu2ppu_prev_register): Likewise.
4254         (spu_memory_remove_breakpoint): Likewise.
4255         * stack.c (return_command): Likewise.
4256         * tic6x-tdep.c (tic6x_extract_signed_field): Likewise.
4257         * tracefile-tfile.c (tfile_fetch_registers): Likewise.
4258         * tracefile.c (trace_save_ctf): Likewise.
4259         * windows-nat.c (do_windows_fetch_inferior_registers): Likewise.
4260         (do_windows_store_inferior_registers): Likewise.
4261         (windows_resume): Likewise.
4262         * xtensa-linux-nat.c (fill_gregset): Likewise.
4263         (supply_gregset_reg): Likewise.
4264         * xtensa-tdep.c (xtensa_register_write_masked): Likewise.
4265         (xtensa_register_read_masked): Likewise.
4266         (xtensa_supply_gregset): Likewise.
4267         (xtensa_extract_return_value): Likewise.
4268         (xtensa_store_return_value): Likewise.
4269
4270 2017-10-25  Ulrich Weigand  <uweigand@de.ibm.com>
4271
4272         * doublest.c (floatformat_from_string): New function.
4273         * doublest.h (floatformat_from_string): Add prototype.
4274
4275         * std-operator.def (OP_DOUBLE, OP_DECFLOAT): Remove, replace by ...
4276         (OP_FLOAT): ... this.
4277         * expression.h: Do not include "doublest.h".
4278         (union exp_element): Replace doubleconst and decfloatconst by
4279         new element floatconst.
4280         * ada-lang.c (resolve_subexp): Handle OP_FLOAT instead of OP_DOUBLE.
4281         (ada_evaluate_subexp): Likewise.
4282         * eval.c (evaluate_subexp_standard): Handle OP_FLOAT instead of
4283         OP_DOUBLE and OP_DECFLOAT.
4284         * expprint.c (print_subexp_standard): Likewise.
4285         (dump_subexp_body_standard): Likewise.
4286         * breakpoint.c (watchpoint_exp_is_const): Likewise.
4287
4288         * parse.c: Include "dfp.h".
4289         (write_exp_elt_dblcst, write_exp_elt_decfloatcst): Remove.
4290         (write_exp_elt_floatcst): New function.
4291         (operator_length_standard): Handle OP_FLOAT instead of OP_DOUBLE
4292         and OP_DECFLOAT.
4293         (operator_check_standard): Likewise.
4294         (parse_float): Do not accept suffix.  Take type as input.  Return bool.
4295         Return target format buffer instead of host DOUBLEST.
4296         Use floatformat_from_string and decimal_from_string to parse
4297         either binary or decimal floating-point types.
4298         (parse_c_float): Remove.
4299         * parser-defs.h: Do not include "doublest.h".
4300         (write_exp_elt_dblcst, write_exp_elt_decfloatcst): Remove.
4301         (write_exp_elt_floatcst): Add prototype.
4302         (parse_float): Update prototype.
4303         (parse_c_float): Remove.
4304
4305         * c-exp.y: Do not include "dfp.h".
4306         (typed_val_float): Use byte buffer instead of DOUBLEST.
4307         (typed_val_decfloat): Remove.
4308         (DECFLOAT): Remove.
4309         (FLOAT): Use OP_FLOAT and write_exp_elt_floatcst.
4310         (parse_number): Update to new parse_float interface.
4311         Parse suffixes and determine type before calling parse_float.
4312         Handle decimal and binary FP types the same way.
4313
4314         * d-exp.y (typed_val_float): Use byte buffer instead of DOUBLEST.
4315         (FLOAT_LITERAL): Use OP_FLOAT and write_exp_elt_floatcst.
4316         (parse_number): Update to new parse_float interface.
4317         Parse suffixes and determine type before calling parse_float.
4318
4319         * f-exp.y: Replace dval by typed_val_float.
4320         (FLOAT): Use OP_FLOAT and write_exp_elt_floatcst.
4321         (parse_number): Use parse_float instead of atof.
4322
4323         * go-exp.y (typed_val_float): Use byte buffer instead of DOUBLEST.
4324         (parse_go_float): Remove.
4325         (FLOAT): Use OP_FLOAT and write_exp_elt_floatcst.
4326         (parse_number): Call parse_float instead of parse_go_float.
4327         Parse suffixes and determine type before calling parse_float.
4328
4329         * p-exp.y (typed_val_float): Use byte buffer instead of DOUBLEST.
4330         (FLOAT): Use OP_FLOAT and write_exp_elt_floatcst.
4331         (parse_number): Update to new parse_float interface.
4332         Parse suffixes and determine type before calling parse_float.
4333
4334         * m2-exp.y: Replace dval by byte buffer val.
4335         (FLOAT): Use OP_FLOAT and write_exp_elt_floatcst.
4336         (parse_number): Call parse_float instead of atof.
4337
4338         * rust-exp.y (typed_val_float): Use byte buffer instead of DOUBLEST.
4339         (lex_number): Call parse_float instead of strtod.
4340         (ast_dliteral): Use OP_FLOAT instead of OP_DOUBLE.
4341         (convert_ast_to_expression): Handle OP_FLOAT instead of OP_DOUBLE.
4342         Use write_exp_elt_floatcst.
4343         (unit_testing): Remove static variable.
4344         (rust_type): Do not check unit_testing.
4345         (rust_lex_tests): Do not set uint_testing.  Set up dummy rust_parser.
4346
4347         * ada-exp.y (type_float, type_double): Remove.
4348         (typed_val_float): Use byte buffer instead of DOUBLEST.
4349         (FLOAT): Use OP_FLOAT and write_exp_elt_floatcst.
4350         * ada-lex.l (processReal): Use parse_float instead of sscanf.
4351
4352 2017-10-25  Alan Hayward  <alan.hayward@arm.com>
4353
4354         * aarch64-tdep.h (enum aarch64_regnum): Remove.
4355         * arch/aarch64.h: New file.
4356
4357 2017-10-24  Ulrich Weigand  <uweigand@de.ibm.com>
4358
4359         * dfp.h (decimal_from_string): Use const reference for argument.
4360         * dfp.c (decimal_from_string): Likewise.
4361
4362 2017-10-24  Ulrich Weigand  <uweigand@de.ibm.com>
4363
4364         * i387-tdep.c (print_i387_value): Use floatformat_to_string.
4365         * sh64-tdep.c (sh64_do_fp_register): Likewise.
4366         * mips-tdep.c (mips_print_fp_register): Likewise.
4367
4368 2017-10-24  Ulrich Weigand  <uweigand@de.ibm.com>
4369
4370         * common/format.h (enum argclass): Replace decfloat_arg by
4371         dec32float_arg, dec64float_arg, and dec128float_arg.
4372         * common/format.c (parse_format_string): Update to return
4373         new decimal float argument classes.
4374
4375         * printcmd.c (printf_decfloat): Rename to ...
4376         (printf_floating): ... this.  Add argclass argument, and use it
4377         instead of parsing the format string again.  Add support for
4378         binary floating-point values, using floatformat_to_string.
4379         Convert value to the target format if it doesn't already match.
4380         (ui_printf): Call printf_floating instead of printf_decfloat,
4381         also for double_arg / long_double_arg.  Pass argclass.
4382
4383         * dfp.c (decimal_to_string): Add format string argument.
4384         * dfp.h (decimal_to_string): Likewise.
4385
4386         * doublest.c (floatformat_to_string): Add format string argument.
4387         * doublest.h (floatformat_to_string): Likewise.
4388
4389 2017-10-24  Ulrich Weigand  <uweigand@de.ibm.com>
4390
4391         * doublest.c (floatformat_precision): New routine.
4392         (floatformat_to_string): Likewise.
4393         * doublest.c (floatformat_to_string): Add prototype.
4394
4395         * printcmd.c (print_scalar_formatted): Only call print_floating
4396         on floating-point types.
4397         * valprint.c: Do not include "floatformat.h".
4398         (generic_val_print_decfloat): Remove.
4399         (generic_val_print): Call generic_val_print_float for both
4400         TYPE_CODE_FLT and TYPE_CODE_DECFLOAT.
4401         (print_floating): Use floatformat_to_string.  Handle decimal float.
4402         (print_decimal_floating): Remove, merge into floatformat_to_string.
4403         * value.h (print_decimal_floating): Remove.
4404
4405         * Makefile.in: Do not build doublest.c with -Wformat-nonliteral.
4406
4407 2017-10-24  Ulrich Weigand  <uweigand@de.ibm.com>
4408
4409         * buildsym.c (end_symtab_get_static_block): Use std::stable_sort.
4410
4411 2017-10-21  Simon Marchi  <simon.marchi@ericsson.com>
4412
4413         * memattr.h: Don't include vec.h.
4414         (struct mem_attrib): Initialize fields.
4415         <unknown>: New static method.
4416         (struct mem_region): Add constructors, operator<, initialize
4417         fields.
4418         * memattr.c: Include algorithm.
4419         (default_mem_attrib, unknown_mem_attrib): Remove.
4420         (user_mem_region_list): New global.
4421         (target_mem_region_list, mem_region_list): Change type to
4422         std::vector<mem_region>.
4423         (mem_use_target): Now a function.
4424         (target_mem_regions_valid): Change type to bool.
4425         (mem_region_lessthan, mem_region_cmp, mem_region_init): Remove.
4426         (require_user_regions): Adjust.
4427         (require_target_regions): Adjust.
4428         (create_mem_region): Adjust.
4429         (lookup_mem_region): Adjust.
4430         (invalidate_target_mem_regions): Adjust.
4431         (mem_clear): Rename to...
4432         (user_mem_clear): ... this, and adjust.
4433         (mem_command): Adjust.
4434         (info_mem_command): Adjust.
4435         (mem_enable, enable_mem_command, mem_disable,
4436         disable_mem_command): Adjust.
4437         (mem_delete): Adjust.
4438         (delete_mem_command): Adjust.
4439         * memory-map.h (parse_memory_map): Return an std::vector.
4440         * memory-map.c (parse_memory_map): Likewise.
4441         (struct memory_map_parsing_data): Add constructor.
4442         <memory_map>: Point to std::vector.
4443         (memory_map_start_memory): Adjust.
4444         (memory_map_end_memory): Adjust.
4445         (memory_map_end_property): Adjust.
4446         (clear_result): Remove.
4447         * remote.c (remote_memory_map): Return an std::vector.
4448         * target-debug.h (target_debug_print_VEC_mem_region_s__p):
4449         Remove.
4450         (target_debug_print_mem_region_vector): New.
4451         * target-delegates.c: Regenerate.
4452         * target.h (mem_region_vector): New typedef.
4453         (to_memory_map): Return mem_region_vector.
4454         (target_memory_map): Return an std::vector.
4455         * target.c (target_memory_map): Return an std::vector.
4456         (flash_erase_command): Adjust.
4457
4458 2017-10-21  Simon Marchi  <simon.marchi@ericsson.com>
4459
4460         * memory-map.c (struct memory_map_parsing_data) <property_name>:
4461         Change type to std::string.
4462         (memory_map_start_property): Adjust.
4463         (memory_map_end_property): Adjust.
4464
4465 2017-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
4466
4467         * infrun.h: Include common/byte-vector.h.
4468         (struct displaced_step_closure): New struct.
4469         (struct buf_displaced_step_closure): New struct.
4470         * infrun.c (displaced_step_closure::~displaced_step_closure):
4471         Provide default implementation.
4472         (displaced_step_clear): Deallocate step closure with delete.
4473         * aarch64-tdep.c (displaced_step_closure): Rename to ...
4474         (aarch64_displaced_step_closure): ... this, extend
4475         displaced_step_closure.
4476         (aarch64_displaced_step_data) <dsc>: Change type to
4477         aarch64_displaced_step_closure.
4478         (aarch64_displaced_step_copy_insn): Adjust to type change, use
4479         unique_ptr.
4480         (aarch64_displaced_step_fixup): Add cast for displaced step
4481         closure.
4482         * amd64-tdep.c (displaced_step_closure): Rename to ...
4483         (amd64_displaced_step_closure): ... this, extend
4484         displaced_step_closure.
4485         <insn_buf>: Change type to std::vector<gdb_byte>.
4486         <max_len>: Remove.
4487         (fixup_riprel): Change type of DSC parameter, adjust to type
4488         change of insn_buf.
4489         (fixup_displaced_copy): Change type of DSC parameter.
4490         (amd64_displaced_step_copy_insn): Instantiate
4491         amd64_displaced_step_closure.
4492         (amd64_displaced_step_fixup): Add cast for closure type, adjust
4493         to type change of insn_buf.
4494         * arm-linux-tdep.c (arm_linux_cleanup_svc): Change type of
4495         parameter DSC.
4496         (arm_linux_copy_svc): Likewise.
4497         (cleanup_kernel_helper_return): Likewise.
4498         (arm_catch_kernel_helper_return): Likewise.
4499         (arm_linux_displaced_step_copy_insn): Instantiate
4500         arm_displaced_step_closure.
4501         * arm-tdep.c (arm_pc_is_thumb): Add cast for closure.
4502         (displaced_read_reg): Change type of parameter DSC.
4503         (branch_write_pc): Likewise.
4504         (load_write_pc): Likewise.
4505         (alu_write_pc): Likewise.
4506         (displaced_write_reg): Likewise.
4507         (arm_copy_unmodified): Likewise.
4508         (thumb_copy_unmodified_32bit): Likewise.
4509         (thumb_copy_unmodified_16bit): Likewise.
4510         (cleanup_preload): Likewise.
4511         (install_preload): Likewise.
4512         (arm_copy_preload): Likewise.
4513         (thumb2_copy_preload): Likewise.
4514         (install_preload_reg): Likewise.
4515         (arm_copy_preload_reg): Likewise.
4516         (cleanup_copro_load_store): Likewise.
4517         (install_copro_load_store): Likewise.
4518         (arm_copy_copro_load_store) Likewise.
4519         (thumb2_copy_copro_load_store): Likewise.
4520         (cleanup_branch): Likewise.
4521         (install_b_bl_blx): Likewise.
4522         (arm_copy_b_bl_blx): Likewise.
4523         (thumb2_copy_b_bl_blx): Likewise.
4524         (thumb_copy_b): Likewise.
4525         (install_bx_blx_reg): Likewise.
4526         (arm_copy_bx_blx_reg): Likewise.
4527         (thumb_copy_bx_blx_reg): Likewise.
4528         (cleanup_alu_imm): Likewise.
4529         (arm_copy_alu_imm): Likewise.
4530         (thumb2_copy_alu_imm): Likewise.
4531         (cleanup_alu_reg): Likewise.
4532         (install_alu_reg): Likewise.
4533         (arm_copy_alu_reg): Likewise.
4534         (thumb_copy_alu_reg): Likewise.
4535         (cleanup_alu_shifted_reg): Likewise.
4536         (install_alu_shifted_reg): Likewise.
4537         (arm_copy_alu_shifted_reg): Likewise.
4538         (cleanup_load): Likewise.
4539         (cleanup_store): Likewise.
4540         (arm_copy_extra_ld_st): Likewise.
4541         (install_load_store): Likewise.
4542         (thumb2_copy_load_literal): Likewise.
4543         (thumb2_copy_load_reg_imm): Likewise.
4544         (arm_copy_ldr_str_ldrb_strb): Likewise.
4545         (cleanup_block_load_all): Likewise.
4546         (cleanup_block_store_pc): Likewise.
4547         (cleanup_block_load_pc): Likewise.
4548         (arm_copy_block_xfer): Likewise.
4549         (thumb2_copy_block_xfer): Likewise.
4550         (cleanup_svc): Likewise.
4551         (install_svc): Likewise.
4552         (arm_copy_svc): Likewise.
4553         (thumb_copy_svc): Likewise.
4554         (arm_copy_undef): Likewise.
4555         (thumb_32bit_copy_undef): Likewise.
4556         (arm_copy_unpred): Likewise.
4557         (arm_decode_misc_memhint_neon): Likewise.
4558         (arm_decode_unconditional): Likewise.
4559         (arm_decode_miscellaneous): Likewise.
4560         (arm_decode_dp_misc): Likewise.
4561         (arm_decode_ld_st_word_ubyte): Likewise.
4562         (arm_decode_media): Likewise.
4563         (arm_decode_b_bl_ldmstm): Likewise.
4564         (arm_decode_ext_reg_ld_st): Likewise.
4565         (thumb2_decode_dp_shift_reg): Likewise.
4566         (thumb2_decode_ext_reg_ld_st): Likewise.
4567         (arm_decode_svc_copro): Likewise.
4568         (thumb2_decode_svc_copro): Likewise.
4569         (install_pc_relative): Likewise.
4570         (thumb_copy_pc_relative_16bit): Likewise.
4571         (thumb_decode_pc_relative_16bit): Likewise.
4572         (thumb_copy_pc_relative_32bit): Likewise.
4573         (thumb_copy_16bit_ldr_literal): Likewise.
4574         (thumb_copy_cbnz_cbz): Likewise.
4575         (thumb2_copy_table_branch): Likewise.
4576         (cleanup_pop_pc_16bit_all): Likewise.
4577         (thumb_copy_pop_pc_16bit): Likewise.
4578         (thumb_process_displaced_16bit_insn): Likewise.
4579         (decode_thumb_32bit_ld_mem_hints): Likewise.
4580         (thumb_process_displaced_32bit_insn): Likewise.
4581         (thumb_process_displaced_insn): Likewise.
4582         (arm_process_displaced_insn): Likewise.
4583         (arm_displaced_init_closure): Likewise.
4584         (arm_displaced_step_fixup): Add cast for closure.
4585         * arm-tdep.h: Include infrun.h.
4586         (displaced_step_closure): Rename to ...
4587         (arm_displaced_step_closure): ... this, extend
4588         displaced_step_closure.
4589         <u::svc::copy_svc_os>: Change type of parameter DSC.
4590         <cleanup>: Likewise.
4591         (arm_process_displaced_insn): Likewise.
4592         (arm_displaced_init_closure): Likewise.
4593         (displaced_read_reg): Likewise.
4594         (displaced_write_reg): Likewise.
4595         * i386-linux-tdep.c (i386_linux_displaced_step_copy_insn):
4596         Adjust.
4597         * i386-tdep.h: Include infrun.h.
4598         (i386_displaced_step_closure): New typedef.
4599         * i386-tdep.c (i386_displaced_step_copy_insn): Use
4600         i386_displaced_step_closure.
4601         (i386_displaced_step_fixup): Adjust.
4602         * rs6000-tdep.c (ppc_displaced_step_closure): New typedef.
4603         (ppc_displaced_step_copy_insn): Use ppc_displaced_step_closure
4604         and unique_ptr.
4605         (ppc_displaced_step_fixup): Adjust.
4606         * s390-linux-tdep.c (s390_displaced_step_closure): New typedef.
4607         (s390_displaced_step_copy_insn): Use s390_displaced_step_closure
4608         and unique_ptr.
4609         (s390_displaced_step_fixup): Adjust.
4610
4611 2017-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
4612
4613         * interps.h (interp_resume, interp_suspend, interp_set_temp):
4614         Remove declarations.
4615
4616 2017-10-20  Tom Tromey  <tom@tromey.com>
4617
4618         * gdb_bfd.c (struct gdb_bfd_data) <included_bfds>: Now a
4619         std::vector.
4620         (gdb_bfd_record_inclusion): Update.
4621         (bfdp): Remove typedef.
4622
4623 2017-10-20  Tom Tromey  <tom@tromey.com>
4624
4625         * gdb_bfd.c (gdb_bfd_ref): Use new.
4626         (struct gdb_bfd_data): Add constructor, destructor, and member
4627         initializers.
4628         (gdb_bfd_unref): Use delete.
4629
4630 2017-10-20  Tom Tromey  <tom@tromey.com>
4631
4632         * exec.c (exec_file_attach): Use new_bfd_ref.
4633         * symfile-mem.c (symbol_file_add_from_memory): Use new_bfd_ref.
4634         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
4635         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_fdopenr): Use
4636         new_bfd_ref.
4637         * gdb_bfd.h (new_bfd_ref): New function.
4638
4639 2017-10-20  Pedro Alves  <palves@redhat.com>
4640
4641         * main.c (captured_command_loop): Add attribute noinline.
4642
4643 2017-10-19  Simon Marchi  <simon.marchi@ericsson.com>
4644
4645         * interps.c (struct interp_factory): Add constructor.
4646         (interp_factory_p): Remove typedef.
4647         (DEF_VEC_P(interp_factory_p)): Remove.
4648         (interpreter_factories): Change type to std::vector.
4649         (interp_factory_register): Adjust.
4650         (interp_lookup): Adjust.
4651         (interpreter_completer): Adjust.
4652
4653 2017-10-19  Tom Tromey  <tom@tromey.com>
4654
4655         * break-catch-syscall.c (catch_syscall_completer): Use
4656         std::string, gdb::unique_xmalloc_ptr.
4657
4658 2017-10-19  Tom Tromey  <tom@tromey.com>
4659
4660         * infcall.c (call_function_by_hand_dummy): Use std::string.
4661
4662 2017-10-19  Tom Tromey  <tom@tromey.com>
4663
4664         * mi/mi-main.c (mi_cmd_execute): Update.
4665         * top.h (prepare_execute_command): Return scoped_value_mark.
4666         * value.h (class scoped_value_mark): Use DISABLE_COPY_AND_ASSIGN.
4667         Add move constructor.
4668         * top.c (prepare_execute_command): Return scoped_value_mark.
4669         (execute_command): Update.
4670
4671 2017-10-19  Pedro Alves  <palves@redhat.com>
4672
4673         * xml-support.c (xml_fetch_content_from_file): Check fread's
4674         return.
4675
4676 2017-10-19  Pedro Alves  <palves@redhat.com>
4677
4678         * ser-base.c (ser_base_read_error_fd): Delete the file handler if
4679         async.
4680         (handle_error_fd): New function.
4681         (ser_base_async): Add/delete an event loop file handler for
4682         error_fd.
4683
4684 2017-10-19  Pedro Alves  <palves@redhat.com>
4685
4686         * xml-support.c (xml_fetch_content_from_file): Don't read in
4687         chunks.  Instead use fseek to determine the file's size, and read
4688         it in one go.
4689
4690 2017-11-18  Keith Seitz  <keiths@redhat.com>
4691
4692         * c-exp.y (oper): Canonicalize conversion operators of user-defined
4693         types.
4694         Add whitespace to front of type name.
4695
4696 2017-10-18  Keith Seitz  <keiths@redhat.com>
4697
4698         * dwarf2read.c (dwarf2_add_typedef): Issue a complaint on unhandled
4699         DW_AT_accessibility.
4700
4701 2017-10-18  Yao Qi  <yao.qi@linaro.org>
4702
4703         * features/tic6x-c62x-linux.c: Remove.
4704
4705 2017-10-17  Tom Tromey  <tom@tromey.com>
4706
4707         * disasm.c (do_mixed_source_and_assembly_deprecated): Use
4708         gdb::optional, ui_out_emit_list, ui_out_emit_tuple.
4709         (do_mixed_source_and_assembly): Likewise.
4710
4711 2017-10-17  Tom Tromey  <tom@tromey.com>
4712
4713         * regcache.c (regcache::xfer_part): Remove assertion.
4714
4715 2017-10-17  Pedro Alves  <palves@redhat.com>
4716
4717         * xml-support.c (xml_fetch_content_from_file): Call
4718         unique_ptr::release() instead unique_ptr::get() when passing
4719         through xrealloc.
4720
4721 2017-10-17  Yao Qi  <yao.qi@linaro.org>
4722
4723         * regcache.c (regcache::xfer_part): Remove parameters read and
4724         write, add parameter is_raw.  All callers are updated.
4725
4726 2017-10-16  Keith Seitz  <keiths@redhat.com>
4727
4728         * c-typeprint.c (enum access_specifier): Moved here from
4729         c_type_print_base.
4730         (output_access_specifier): New function.
4731         (c_type_print_base): Consider typedefs when assessing
4732         whether access labels are needed.
4733         Use output_access_specifier as needed.
4734         Output access specifier for typedefs, if needed.
4735         * dwarf2read.c (dwarf2_add_typedef): Record DW_AT_accessibility.
4736         * gdbtypes.h (struct typedef_field) <is_protected, is_private>: New
4737         fields.
4738         (TYPE_TYPEDEF_FIELD_PROTECTED, TYPE_TYPEDEF_FIELD_PRIVATE): New
4739         accessor macros.
4740
4741 2017-10-16  Tom Tromey  <tom@tromey.com>
4742
4743         * linux-tdep.c (linux_info_proc, linux_find_memory_regions_full)
4744         (linux_fill_prpsinfo, linux_vsyscall_range_raw): Update.
4745         * target.c (target_fileio_read_stralloc): Update.
4746         * sparc64-tdep.c (adi_is_addr_mapped): Update.
4747         * target.h (target_fileio_read_stralloc): Return
4748         unique_xmalloc_ptr.
4749
4750 2017-10-16  Tom Tromey  <tom@tromey.com>
4751
4752         * xml-syscall.c (xml_init_syscalls_info): Update.
4753         * xml-support.c (xinclude_start_include): Update.
4754         (xml_fetch_content_from_file): Return unique_xmalloc_ptr.
4755         * xml-support.h (xml_fetch_another): Return unique_xmalloc_ptr.
4756         (xml_fetch_content_from_file): Likewise.
4757         * osdata.c (get_osdata): Update.
4758         * target.h (target_read_stralloc, target_get_osdata): Return
4759         unique_xmalloc_ptr.
4760         * solib-aix.c (solib_aix_get_library_list): Update.
4761         * solib-target.c (solib_target_current_sos): Update.
4762         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Update.
4763         * xml-tdesc.c (fetch_available_features_from_target): Update.
4764         (target_fetch_description_xml): Update.
4765         (file_read_description_xml): Update.
4766         * remote.c (remote_get_threads_with_qxfer, remote_memory_map)
4767         (remote_traceframe_info, btrace_read_config, remote_read_btrace)
4768         (remote_pid_to_exec_file): Update.
4769         * target.c (target_read_stralloc): Return unique_xmalloc_ptr.
4770         (target_get_osdata): Likewise.
4771
4772 2017-10-16  Tom Tromey  <tom@tromey.com>
4773
4774         * remote.c (remote_register_number_and_offset): Use std::vector.
4775         (remote_set_syscall_catchpoint): Use gdb::unique_xmalloc_ptr.
4776         (putpkt_binary): Use gdb::def_vector.
4777         (compare_sections_command): Use gdb::byte_vector.
4778
4779 2017-10-16  Tom Tromey  <tom@tromey.com>
4780
4781         * ppc-linux-nat.c (hwdebug_insert_point): Use
4782         gdb::unique_xmalloc_ptr, XDUP.
4783
4784 2017-10-16  Tom Tromey  <tom@tromey.com>
4785
4786         * probe.c (parse_probes): Use std::string.
4787         (info_probes_for_ops, enable_probes_command)
4788         (disable_probes_command): Remove cleanups.
4789
4790 2017-10-16  Tom Tromey  <tom@tromey.com>
4791
4792         * buildsym.c (block_compar): Remove.
4793         (end_symtab_get_static_block): Use std::vector.
4794
4795 2017-10-16  Simon Marchi  <simon.marchi@ericsson.com>
4796
4797         * memrange.h (struct mem_range): Define operator< and operator==.
4798         (mem_range_s): Remove.
4799         (DEF_VEC_O (mem_range_s)): Remove.
4800         (normalize_mem_ranges): Change parameter type to std::vector.
4801         * memrange.c (compare_mem_ranges): Remove.
4802         (normalize_mem_ranges): Change parameter type to std::vector,
4803         adjust to vector change.
4804         * exec.c (section_table_available_memory): Return vector, remove
4805         parameter.
4806         (section_table_read_available_memory): Adjust to std::vector
4807         change.
4808         * remote.c (remote_read_bytes): Adjust to std::vector
4809         change.
4810         * tracepoint.h (traceframe_available_memory): Change parameter
4811         type to std::vector.
4812         * tracepoint.c (traceframe_available_memory): Change parameter
4813         type to std::vector, adjust.
4814         * gdb/mi/mi-main.c (mi_cmd_trace_frame_collected): Adjust to
4815         std::vector change.
4816         * gdb/Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4817         unittests/memrange-selftests.c.
4818         (SUBDIR_UNITTESTS_OBS): Add memrange-selftests.o.
4819         * gdb/unittests/memrange-selftests.c: New file.
4820
4821 2017-10-16  Pedro Alves  <palves@redhat.com>
4822
4823         * elfread.c (probe_key_free): Rename range-for variable.
4824         * probe.c (parse_probes_in_pspace, find_probes_in_objfile)
4825         (find_probe_by_pc, collect_probes): Rename range-for variable.
4826
4827 2017-10-16  Yao Qi  <yao.qi@linaro.org>
4828
4829         * features/Makefile (XMLTOC): Remove tic6x-*.xml.
4830         * features/tic6x-c62x.c: Remove.
4831         * features/tic6x-c64x-linux.c: Remove.
4832         * features/tic6x-c64x.c: Remove.
4833         * features/tic6x-c64xp-linux.c: Remove.
4834         * features/tic6x-c64xp.c: Remove.
4835         * tic6x-linux-tdep.c (_initialize_tic6x_linux_tdep): Don't call
4836         initialize_tdesc_tic6x_*_linux functions.
4837         * tic6x-tdep.c (_initialize_tic6x_tdep): Don't call
4838         initialize_tdesc_tic6x_* functions.
4839
4840 2017-10-16  Yao Qi  <yao.qi@linaro.org>
4841
4842         * features/Makefile (WHICH): Remove tic6x-c64xp, tic6x-c64x
4843         tic6x-c62x.
4844         * regformats/tic6x-c62x.dat: Remove.
4845         * regformats/tic6x-c64x.dat: Remove.
4846         * regformats/tic6x-c64xp.dat: Remove.
4847
4848 2017-10-15  Simon Marchi  <simon.marchi@ericsson.com>
4849
4850         * tracepoint.c (parse_traceframe_info): Return a unique_ptr
4851         (the !HAVE_LIBEXPAT version).
4852
4853 2017-10-14  Simon Marchi  <simon.marchi@ericsson.com>
4854
4855         * nat/linux-osdata.c (struct pid_pgid_entry) <operator<>: Make
4856         const.
4857
4858 2017-10-14  Simon Marchi  <simon.marchi@polymtl.ca>
4859
4860         * target.h: Include tracepoint.h.
4861         (enum trace_find_type): Move to tracepoint.h.
4862         (struct target_ops) <to_traceframe_info>: Return a unique ptr.
4863         * tracepoint.h: Don't include target.h
4864         (enum trace_find_type): Move from target.h.
4865         (parse_traceframe_info): Return a unique ptr.
4866         * tracepoint.c (current_traceframe_info): Change type to unique
4867         ptr.
4868         (free_traceframe_info): Remove.
4869         (clear_traceframe_info): Don't manually free
4870         current_traceframe_info.
4871         (free_result): Remove.
4872         (parse_traceframe_info): Return a unique ptr.
4873         (get_traceframe_info): Adjust to unique ptr.
4874         * ctf.c (ctf_traceframe_info): Return a unique ptr.
4875         * remote.c (remote_traceframe_info): Return a unique ptr.
4876         * tracefile-tfile.c (tfile_traceframe_info): Return a unique
4877         ptr.
4878         * target-debug.h (target_debug_print_traceframe_info_up): New
4879         macro.
4880         * target-delegates.c: Regenerate.
4881
4882 2017-10-14  Simon Marchi  <simon.marchi@polymtl.ca>
4883
4884         * memrange.h (struct mem_range): Add constructors.
4885         * tracepoint.h (struct traceframe_info) <memory>: Change type to
4886         std::vector<mem_range>.
4887         * tracepoint.c (free_traceframe_info): Don't manually free
4888         vector.
4889         (traceframe_info_start_memory): Adjust to vector change.
4890         (traceframe_available_memory): Likewise.
4891         * tracefile-tfile.c (build_traceframe_info): Likewise.
4892         * ctf.c (ctf_traceframe_info): Likewise.
4893
4894 2017-10-14  Simon Marchi  <simon.marchi@polymtl.ca>
4895
4896         * tracepoint.h (struct traceframe_info) <tvars>: Change type to
4897         std::vector<int>.
4898         * tracepoint.c (free_traceframe_info): Deallocate with delete.
4899         (traceframe_info_start_tvar): Adjust to vector change.
4900         (parse_traceframe_info): Allocate with new.
4901         * ctf.c (ctf_traceframe_info): Allocate with new, adjust to
4902         vector change.
4903         * tracefile-tfile.c (build_traceframe_info): Adjust to vector
4904         change.
4905         tfile_traceframe_info): Allocate with new.
4906         * mi/mi-main.c (mi_cmd_trace_frame_collected): Adjust to vector
4907         change.
4908
4909 2017-10-14  Simon Marchi  <simon.marchi@polymtl.ca>
4910
4911         * tracepoint.c (traceframe_info): Rename to...
4912         (current_traceframe_info): ...this.
4913         (clear_traceframe_info): Adjust.
4914         (get_traceframe_info): Adjust.
4915
4916 2017-10-14  Simon Marchi  <simon.marchi@ericsson.com>
4917
4918         * nat/linux-osdata.c: Include algorithm.
4919         (compare_processes): Remove.
4920         (struct pid_pgid_entry): New struct.
4921         (linux_xfer_osdata_processgroups): Use std::vector instead of
4922         XNEWVEC.
4923
4924 2017-10-14  Simon Marchi  <simon.marchi@ericsson.com>
4925
4926         * objfiles.h: Don't include symfile.h.
4927         (struct partial_symbol): Remove forward-declaration.
4928         (struct objfile) <global_psymbols, static_psymbols>: Change type
4929         to std::vector<partial_symbol *>.
4930         * objfiles.c (objfile::objfile): Don't memset those fields.
4931         (objfile::~objfile): Don't free those fields.
4932         * psympriv.h (struct psymbol_allocation_list): Remove
4933         forward-declaration.
4934         (add_psymbol_to_list): Change psymbol_allocation_list parameter
4935         to std::vector.
4936         (start_psymtab_common): Change parameters to std::vector.
4937         * psymtab.c: Include algorithm.
4938         (require_partial_symbols): Call shrink_to_fit.
4939         (find_pc_sect_psymbol): Adjust to vector change.
4940         (match_partial_symbol): Likewise.
4941         (lookup_partial_symbol): Likewise.
4942         (psym_relocate): Likewise.
4943         (dump_psymtab): Likewise.
4944         (recursively_search_psymtabs): Likewise.
4945         (compare_psymbols): Remove.
4946         (sort_pst_symbols): Adjust to vector change.
4947         (start_psymtab_common): Likewise.
4948         (end_psymtab_common): Likewise.
4949         (psymbol_bcache_full): De-constify return value.
4950         (add_psymbol_to_bcache): Likewise.
4951         (extend_psymbol_list): Remove.
4952         (append_psymbol_to_list): Adjust to vector change.
4953         (add_psymbol_to_list): Likewise.
4954         (init_psymbol_list): Likewise.
4955         (maintenance_info_psymtabs): Likewise.
4956         (maintenance_check_psymtabs): Likewise.
4957         * symfile.h (struct psymbol_allocation_list): Remove.
4958         * symfile.c (reread_symbols): Adjust to vector change.
4959         * dbxread.c (start_psymtab): Change type of parameters.
4960         (dbx_symfile_read): Adjust to vector change.
4961         (read_dbx_symtab): Likewise.
4962         (start_psymtab): Change type of parameters.
4963         * dwarf2read.c (dwarf2_build_psymtabs): Adjust to vector change.
4964         (create_partial_symtab): Likewise.
4965         (add_partial_symbol): Likewise.
4966         (write_one_signatured_type): Likewise.
4967         (recursively_write_psymbols): Likewise.
4968         * mdebugread.c (parse_partial_symbols): Likewise.
4969         * xcoffread.c (xcoff_start_psymtab): Change type of parameters.
4970         (scan_xcoff_symtab): Adjust to vector change.
4971         (xcoff_initial_scan): Likewise.
4972
4973 2017-10-13  Simon Marchi  <simon.marchi@ericsson.com>
4974
4975         * ada-typeprint.c (print_dynamic_range_bound): Use std::string.
4976
4977 2017-10-13  Yao Qi  <yao.qi@linaro.org>
4978
4979         * features/Makefile: Remove tic6x-*-expedite, add tic6x-expedite.
4980         Remove s390x-*-expedite, add s390x-expedite.
4981
4982 2017-10-13  Yao Qi  <yao.qi@linaro.org>
4983
4984         * features/s390-gs-linux64.c: Regenerated.
4985         * features/s390x-gs-linux64.c: Regenerated.
4986
4987 2017-10-13  Tom Tromey  <tom@tromey.com>
4988
4989         * compile/compile-object-run.c (do_module_cleanup): Use delete.
4990         * solib.c (update_solib_list, reload_shared_libraries_1): Use
4991         delete.
4992         * symfile.c (symbol_file_add_with_addrs): Use new.
4993         (symbol_file_add_separate): Update comment.
4994         (syms_from_objfile_1, remove_symbol_file_command): Use delete.
4995         * jit.c (jit_object_close_impl): Use new.
4996         (jit_unregister_code): Use delete.
4997         * objfiles.c (objfile::objfile): Rename from allocate_objfile.
4998         (~objfile): Rename from free_objfile.
4999         (free_objfile_separate_debug, do_free_objfile_cleanup)
5000         (free_all_objfiles, objfile_purge_solibs): Use delete.
5001         * objfiles.h (struct objfile): Add constructor and destructor.
5002         Use DISABLE_COPY_AND_ASSIGN.  Add initializers to data members.
5003         (allocate_objfile, free_objfile): Don't declare.
5004         (struct objstats): Add initializers.
5005
5006 2017-10-12  Simon Marchi  <simon.marchi@ericsson.com>
5007
5008         * arch-utils.h (simple_displaced_step_copy_insn): Remove.
5009         * arch-utils.c (simple_displaced_step_copy_insn): Remove.
5010         * gdbarch.sh (displaced_step_copy_insn): Adjust comment.
5011         * gdbarch.h: Regenerate.
5012         * i386-linux-tdep.c (i386_linux_displaced_step_copy_insn):
5013         Adjust comment.
5014         * i386-tdep.c (i386_displaced_step_copy_insn): Adjust comment.
5015         (i386_displaced_step_fixup): Adjust comment.
5016         * rs6000-tdep.c (ppc_displaced_step_copy_insn): Adjust comment.
5017
5018 2017-10-12  Tom Tromey  <tom@tromey.com>
5019
5020         * prologue-value.h (pv_area::store_would_trash): Return bool.
5021         (pv_area::find_reg): Likewise.
5022         * prologue-value.c (pv_area::store_would_trash): Return bool.
5023         (pv_area::find_reg): Likewise.
5024
5025 2017-10-12  Tom Tromey  <tom@tromey.com>
5026
5027         * s390-linux-tdep.c (s390_store, s390_load)
5028         (s390_check_for_saved, s390_analyze_prologue): Update.
5029         * rx-tdep.c (check_for_saved, rx_analyze_prologue): Update.
5030         * rl78-tdep.c (rl78_analyze_prologue, check_for_saved): Update.
5031         * prologue-value.h (class pv_area): Move from prologue-value.c.
5032         Change names of members.  Add constructor, destructor, member
5033         functions.
5034         (make_pv_area, free_pv_area, make_cleanup_free_pv_area)
5035         (pv_area_store, pv_area_fetch, pv_area_store_would_trash)
5036         (pv_area_fetch, pv_area_scan): Don't declare.
5037         * prologue-value.c (struct pv_area::area_entry): Now member of
5038         pv_area.
5039         (struct pv_area): Move to prologue-value.h.
5040         (pv_area::pv_area): Rename from make_pv_area.
5041         (pv_area::~pv_area): Rename from free_pv_area.
5042         (do_free_pv_area_cleanup, make_cleanup_free_pv_area): Remove.
5043         (clear_entries, find_entry, overlaps, store_would_trash, store)
5044         (fetch, find_reg, scan): Now member of pv_area.
5045         Remove "area" argument.  Update.
5046         * msp430-tdep.c (check_for_saved, msp430_analyze_prologue):
5047         Update.
5048         * mn10300-tdep.c (push_reg, check_for_saved)
5049         (mn10300_analyze_prologue): Update.
5050         * mep-tdep.c (is_arg_spill, check_for_saved)
5051         (mep_analyze_prologue): Update.
5052         * m32c-tdep.c (m32c_pv_push, m32c_srcdest_fetch)
5053         (m32c_srcdest_store, m32c_pv_enter, m32c_is_arg_spill)
5054         (m32c_is_struct_return, m32c_analyze_prologue): Update.
5055         * arm-tdep.c (thumb_analyze_prologue, arm_analyze_prologue):
5056         Update.
5057         * arc-tdep.c (arc_is_in_prologue, arc_analyze_prologue): Update.
5058         * aarch64-tdep.c (aarch64_analyze_prologue): Update.
5059
5060 2017-10-12  Simon Marchi  <simon.marchi@ericsson.com>
5061
5062         * linux-nat.h (linux_nat_set_delete_thread): New declaration.
5063         * linux-nat.c (linux_nat_delete_thread): New variable.
5064         (lwp_free): Invoke linux_nat_delete_thread if set.
5065         (linux_nat_set_delete_thread): New function.
5066         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Assign
5067         thread delete callback.
5068         * arm-linux-nat.c (arm_linux_delete_thread): New function.
5069         (_initialize_arm_linux_nat): Assign thread delete callback.
5070         * s390-linux-nat.c (s390_delete_thread): New function.
5071         (_initialize_s390_nat): Assign thread delete callback.
5072         * x86-linux-nat.c (x86_linux_add_target): Likewise.
5073         * nat/aarch64-linux.c (aarch64_linux_delete_thread): New
5074         function.
5075         * nat/aarch64-linux.h (aarch64_linux_delete_thread): New
5076         declaration.
5077         * nat/x86-linux.c (x86_linux_delete_thread): New function.
5078         * nat/x86-linux.h (x86_linux_delete_thread): New declaration.
5079
5080 2017-10-09  Tom Tromey  <tom@tromey.com>
5081
5082         * tui/tui-win.c (tui_set_win_height, parse_scrolling_args): Use
5083         std::string.
5084         * tui/tui-layout.c (enum tui_status): Use std::string.
5085
5086 2017-10-11  Tom Tromey  <tom@tromey.com>
5087
5088         * gdbthread.h (thread_command): Constify.
5089         * inferior.h (detach_command): Constify.
5090         * top.h (set_history, show_history): Constify.
5091         * arm-tdep.c (set_arm_command, show_arm_command): Constify.
5092         * serial.c (serial_set_cmd, serial_show_cmd): Constify.
5093         * bsd-kvm.c (bsd_kvm_cmd): Constify.
5094         * printcmd.c (set_command): Constify.
5095         (non_const_set_command): New function.
5096         * dcache.c (set_dcache_command, show_dcache_command): Constify.
5097         * breakpoint.c (enable_command, disable_command, delete_command)
5098         (catch_command, tcatch_command, set_breakpoint_cmd)
5099         (show_breakpoint_cmd): Constify.
5100         * macrocmd.c (macro_command): Constify.
5101         * infcmd.c (unset_command, kill_command, detach_command)
5102         (info_proc_cmd): Constify.
5103         * i386-tdep.c (set_mpx_cmd, show_mpx_cmd): Constify.
5104         * auto-load.c (show_auto_load_cmd, set_auto_load_cmd)
5105         (info_auto_load_cmd): Constify.
5106         * target-descriptions.c (set_tdesc_cmd, show_tdesc_cmd)
5107         (unset_tdesc_cmd): Constify.
5108         * ada-lang.c (set_ada_command, show_ada_command)
5109         (maint_set_ada_cmd, maint_show_ada_cmd): Constify.
5110         * guile/guile.c (set_guile_command, show_guile_command)
5111         (info_guile_command): Constify.
5112         * tui/tui-win.c (tui_command, set_tui_cmd, show_tui_cmd):
5113         Constify.
5114         * skip.c (skip_command): Constify.
5115         * compile/compile.c (_initialize_compile): Constify.
5116         * dwarf2read.c (set_dwarf_cmd, show_dwarf_cmd): Constify.
5117         * btrace.c (maint_btrace_cmd, maint_btrace_set_cmd)
5118         (maint_btrace_show_cmd, maint_btrace_pt_set_cmd)
5119         (maint_btrace_pt_show_cmd): Constify.
5120         * remote.c (set_remote_cmd, show_remote_cmd, remote_command):
5121         Constify.
5122         * python/python.c (user_show_python, user_set_python): Constify.
5123         * mips-tdep.c (set_mips_command, show_mips_command)
5124         (set_mipsfpu_command): Constify.
5125         * record-btrace.c (cmd_record_btrace_start)
5126         (cmd_set_record_btrace, cmd_show_record_btrace)
5127         (cmd_set_record_btrace_bts, cmd_show_record_btrace_bts)
5128         (cmd_set_record_btrace_pt, cmd_show_record_btrace_pt): Constify.
5129         * rs6000-tdep.c (set_powerpc_command, show_powerpc_command):
5130         Constify.
5131         * symfile.c (overlay_command): Constify.
5132         * spu-tdep.c (set_spu_command, show_spu_command): Constify.
5133         * cli/cli-logging.c (set_logging_command, show_logging_command):
5134         Constify.
5135         * cli/cli-dump.c (dump_command, append_command)
5136         (srec_dump_command, ihex_dump_command, verilog_dump_command)
5137         (tekhex_dump_command, binary_dump_command)
5138         (binary_append_command): Constify.
5139         * cli/cli-decode.c (struct cmd_list_element): Change type of
5140         "fun".
5141         * cli/cli-cmds.c (info_command, show_command, set_debug)
5142         (show_debug): Constify.
5143         (show_command): Add non-const overload.
5144         * top.c (set_history, show_history): Constify.
5145         * sh-tdep.c (set_sh_command, show_sh_command): Constify.
5146         * command.h (add_prefix_cmd): Accept a cmd_const_cfunc_ftype.
5147         * target.c (target_command): Constify.
5148         * sparc64-tdep.c (info_adi_command): Constify.
5149         * record-full.c (cmd_record_full_start): Constify.
5150         (set_record_full_command): Constify.  Fix typo.
5151         (show_record_full_command): Constify.
5152         * thread.c (thread_command, thread_apply_command): Constify.
5153         * memattr.c (dummy_cmd): Constify.
5154         * value.c (function_command): Constify.
5155         * frame.c (set_backtrace_cmd, show_backtrace_cmd): Constify.
5156         * probe.c (info_probes_command): Constify.
5157         * ser-tcp.c (set_tcp_cmd, show_tcp_cmd): Constify.
5158         * gnu-nat.c (set_task_cmd, show_task_cmd, set_thread_cmd)
5159         (show_thread_cmd, set_thread_default_cmd)
5160         (show_thread_default_cmd): Constify.
5161         (check_empty): Constify.
5162         * tracepoint.c (tfind_command): Constify.
5163         * cp-support.c (maint_cplus_command): Constify.
5164         * windows-tdep.c (info_w32_command): Constify.
5165         * record.c (cmd_record_start, set_record_command)
5166         (show_record_command, info_record_command, cmd_record_goto):
5167         Constify.
5168         * ravenscar-thread.c (set_ravenscar_command)
5169         (show_ravenscar_command): Constify.
5170         * utils.c (set_internal_problem_cmd, show_internal_problem_cmd):
5171         Constify.
5172         (add_internal_problem_command): Remove casts.
5173         * arc-tdep.c (maintenance_print_arc_command): Constify.
5174         * valprint.c (set_print, show_print, set_print_raw)
5175         (show_print_raw): Constify.
5176         * maint.c (maintenance_command, maintenance_info_command)
5177         (maintenance_print_command, maintenance_set_cmd)
5178         (maintenance_show_cmd, set_per_command_cmd)
5179         (show_per_command_cmd, maintenance_check_command): Constify.
5180         * language.c (set_check, show_check): Constify.
5181         * typeprint.c (show_print_type, set_print_type): Constify.
5182         * go32-nat.c (go32_info_dos_command): Constify.
5183
5184 2017-10-11  Tom Tromey  <tom@tromey.com>
5185
5186         * breakpoint.c (prepare_re_set_context): Remove.
5187         (breakpoint_re_set_one): Update.  Don't use cleanups.
5188         (breakpoint_re_set): Use scoped_restore, std::string, and
5189         scoped_restore_current_language.
5190
5191 2017-10-11  Tom Tromey  <tom@tromey.com>
5192
5193         * breakpoint.c (commands_command_1): Use std::string.
5194         (cleanup_executing_breakpoints): Remove.
5195         (bpstat_do_actions_1): Use scoped_restore.
5196         (bpstat_check_watchpoint): Use std::string.
5197         (decode_static_tracepoint_spec): Likewise.
5198         (break_range_command): Likewise.
5199         (watch_command_1): Likewise.
5200         (compare_breakpoints): Change argument types.
5201         (clear_command): Use std::vector.
5202         (cleanup_executing_breakpoints): Remove.
5203         (update_global_location_list): Use unique_xmalloc_ptr.
5204         (strace_command): Remove unused declaration.
5205
5206 2017-10-11  John Baldwin  <jhb@FreeBSD.org>
5207
5208         * Makefile.in (ALLDEPFILES): Add arm-fbsd-nat.c.
5209         * NEWS: Mention new FreeBSD/arm native configuration.
5210         * configure.host: Add arm*-*-freebsd*.
5211         * configure.nat: Likewise.
5212         * arm-fbsd-nat.c: New file.
5213
5214 2017-10-11  John Baldwin  <jhb@FreeBSD.org>
5215
5216         * Makefile.in (ALL_TARGET_OBS): Add arm-fbsd-tdep.o.
5217         (ALLDEPFILES): Add arm-fbsd-tdep.c.
5218         * NEWS: Mention new FreeBSD/arm target.
5219         * configure.tgt: Add arm*-*-freebsd*.
5220         * arm-fbsd-tdep.c: New file.
5221         * arm-fbsd-tdep.h: New file.
5222
5223 2017-10-11  Maciej W. Rozycki  <macro@imgtec.com>
5224
5225         * linux-tdep.c (linux_make_corefile_notes): Remove call to
5226         `gdbarch_elfcore_write_linux_prpsinfo'.
5227         * gdbarch.sh (elfcore_write_linux_prpsinfo): Remove architecture
5228         method.
5229         (elf_internal_linux_prpsinfo): Remove declaration.
5230         * gdbarch.h: Regenerate.
5231         * gdbarch.c: Regenerate.
5232
5233 2017-10-11  Maciej W. Rozycki  <macro@imgtec.com>
5234
5235         * ppc-linux-tdep.c (ppc_linux_init_abi): Remove call to
5236         `set_gdbarch_elfcore_write_linux_prpsinfo'.
5237
5238 2017-10-11  Pedro Alves  <palves@redhat.com>
5239
5240         * breakpoint.c (reattach_breakpoints): Delete.
5241         * breakpoint.h (reattach_breakpoints): Delete.
5242
5243 2017-10-11  Simon Marchi  <simon.marchi@ericsson.com>
5244
5245         * symfile.c (registered_sym_fns): Make struct, not typedef.
5246         (DEF_VEC_O (registered_sym_fns)): Remove.
5247         (symtab_fns): Change type to std::vector.
5248         (add_symtab_fns): Adjust.
5249         (find_sym_fns): Adjust.
5250
5251 2017-10-11  Anton Kolesov  <Anton.Kolesov@synopsys.com>
5252
5253         * arc-tdep.c (arc_gdbarch_init): Pass proper cpu value to disassembler.
5254         * arc-tdep.h (arc_arch_is_em): New function.
5255         (arc_arch_is_hs): Likewise.
5256
5257 2017-10-11  Egeyar Bagcioglu  <egeyar.bagcioglu@oracle.com>
5258
5259         * macrotab.h (macro_lookup_inclusion): Remove unnecessary
5260         parentheses in the declaration.
5261         (macro_lookup_inclusion): Likewise.
5262         (macro_lookup_definition): Likewise.
5263         * p-lang.h (pascal_builtin_types): Likewise.
5264         * tui/tui-data.c (tui_win_list): Likewise.
5265         * tui/tui-data.h (tui_win_list): Likewise.
5266         * utils.h (make_cleanup_free_section_addr_info): Likewise.
5267
5268 2017-10-11  Mark Rages  <markrages@gmail.com>
5269
5270         * target-memory.c (block_boundaries): Fix for block address not
5271         aligned on block size.
5272
5273 2017-10-10  Pedro Alves <palves@redhat.com>
5274             Tom Tromey  <tom@tromey.com>
5275
5276         * breakpoint.c (struct captured_breakpoint_query_args)
5277         (do_captured_breakpoint_query, gdb_breakpoint_query): Delete.
5278         (print_breakpoint): New.
5279         * breakpoint.h (print_breakpoint): Declare.
5280         * common/common-exceptions.h (enum return_reason): Remove
5281         references to catch_exceptions.
5282         * exceptions.c (catch_exceptions, catch_exceptions_with_msg):
5283         Delete.
5284         * exceptions.h (catch_exceptions_ftype, catch_exceptions)
5285         (catch_exception_ftype, catch_exceptions_with_msg): Delete.
5286         * gdb.h: Delete.
5287         * gdbthread.h (thread_select): Declare.
5288         * mi/mi-cmd-break.c: Don't include gdb.h.
5289         (breakpoint_notify): Use print_breakpoint.
5290         * mi/mi-cmd-catch.c: Don't include gdb.h.
5291         * mi/mi-interp.c: Don't include gdb.h.
5292         (mi_print_breakpoint_for_event): New.
5293         (mi_breakpoint_created, mi_breakpoint_modified): Use
5294         mi_print_breakpoint_for_event.
5295         * mi/mi-main.c: Don't include gdb.h.
5296         (mi_cmd_thread_select): Parse the global thread ID here.  Use
5297         thread_select instead of gdb_thread_select.
5298         (mi_cmd_thread_list_ids): Output "thread-ids" tuple here instead
5299         of using gdb_list_thread_ids.
5300         * remote-fileio.c (do_remote_fileio_request): Change type.  Reply
5301         FILEIO_ENOSYS here.
5302         (remote_fileio_request): Use TRY/CATCH instead of
5303         catch_exceptions.
5304         * symfile-mem.c (struct symbol_file_add_from_memory_args)
5305         (symbol_file_add_from_memory_wrapper): Delete.
5306         (add_vsyscall_page): Use TRY/CATCH instead of catch_exceptions.
5307         * thread.c: Don't include gdb.h.
5308         (do_captured_list_thread_ids, gdb_list_thread_ids): Delete.
5309         (thread_alive): Use thread_select.
5310         (do_captured_thread_select): Delete, parts salvaged as ...
5311         (thread_select): ... this new function.
5312         (gdb_thread_select): Delete.
5313
5314 2017-10-10  Pedro Alves  <palves@redhat.com>
5315             Tom Tromey  <tom@tromey.com>
5316
5317         * breakpoint.c (breakpoint_cond_eval): Change return type to bool
5318         and reverse logic.
5319         (WP_DELETED, WP_VALUE_CHANGED, WP_VALUE_NOT_CHANGED, WP_IGNORE):
5320         No longer macros.  Instead ...
5321         (enum wp_check_result): They're now values of this new
5322         enumeration.
5323         (watchpoint_check): Change return type to wp_check_result and
5324         parameter type to bpstat.
5325         (bpstat_check_watchpoint): Use TRY/CATCH instead of catch_errors.
5326         (bpstat_check_breakpoint_conditions): Use TRY/CATCH instead of
5327         catch_errors.  Reverse logic of watchpoint_check call.
5328         (breakpoint_re_set_one): Now returns void and takes a breakpoint
5329         pointer as parameter.
5330         (breakpoint_re_set): Use TRY/CATCH instead of catch_errors.
5331         * common/common-exceptions.c (throw_exception_sjlj): Update
5332         comments to avoid mentioning catch_errors.
5333         * exceptions.c (catch_errors): Delete.
5334         * exceptions.h: Update comments to avoid mentioning catch_errors.
5335         (catch_errors_ftype, catch_errors): Delete.
5336         * infrun.c (normal_stop): Use TRY/CATCH instead of catch_errors.
5337         (hook_stop_stub): Delete.
5338         (restore_selected_frame): Change return type to void, and
5339         parameter type to const frame_id &.
5340         (restore_infcall_control_state): Use TRY/CATCH instead of
5341         catch_errors.
5342         * main.c (captured_command_loop): Return void and remove
5343         parameter.  Remove references to catch_errors.
5344         (captured_main): Use TRY/CATCH instead of catch_errors.
5345         * objc-lang.c (objc_submethod_helper_data)
5346         (find_objc_msgcall_submethod_helper): Delete.
5347         (find_objc_msgcall_submethod): Use TRY/CATCH instead of
5348         catch_errors.
5349         * record-full.c (record_full_message): Return void.
5350         (record_full_message_args, record_full_message_wrapper): Delete.
5351         (record_full_message_wrapper_safe): Return bool and use TRY/CATCH
5352         instead of catch_errors.
5353         * solib-aix.c (solib_aix_open_symbol_file_object): Change
5354         parameter type to int.
5355         * solib-darwin.c (open_symbol_file_object): Ditto.
5356         * solib-dsbt.c (open_symbol_file_object): Ditto.
5357         * solib-frv.c (open_symbol_file_object): Ditto.
5358         * solib-svr4.c (open_symbol_file_object): Ditto.
5359         * solib-target.c (solib_target_open_symbol_file_object): Ditto.
5360         * solib.c (update_solib_list): Use TRY/CATCH instead of
5361         catch_errors.
5362         * solist.h (struct target_so_ops) <open_symbol_file_object>:
5363         Change type.
5364         * symmisc.c (struct print_symbol_args): Remove.
5365         (dump_symtab_1): Use TRY/CATCH instead of catch_errors.
5366         (print_symbol): Change type.
5367         * windows-nat.c (handle_load_dll, handle_unload_dll): Return void
5368         and remove parameters.
5369         (catch_errors): New.
5370         (get_windows_debug_event): Adjust.
5371
5372 2017-10-09  Tom Tromey  <tom@tromey.com>
5373
5374         * mi/mi-main.c (free_splay_tree): Remove.
5375         (list_available_thread_groups): Use splay_tree_up.
5376         * common/gdb_splay_tree.h: New file.
5377
5378 2017-10-09  Tom Tromey  <tom@tromey.com>
5379
5380         * mi/mi-main.c (do_nothing): Remove.
5381         (list_available_thread_groups): Update.
5382
5383 2017-10-09  Pedro Alves  <palves@redhat.com>
5384
5385         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>: Skip
5386         reading registers when switching context.
5387
5388 2017-10-09  John Baldwin  <jhb@FreeBSD.org>
5389
5390         * fbsd-nat.c (fbsd_siginfo_size): Use gdbarch_long_bit.
5391         (fbsd_convert_siginfo): Likewise.
5392         * fbsd-tdep.c (fbsd_core_xfer_siginfo): Likewise.
5393
5394 2017-10-09  Simon Marchi  <simon.marchi@polymtl.ca>
5395
5396         * configure.ac (try_guile_versions): Remove guile-2.2.
5397         * configure: Regenerate.
5398
5399 2017-10-09  Tom Tromey  <tom@tromey.com>
5400
5401         * Makefile.in (COMPILE.post, POSTCOMPILE): Restore $(basename).
5402         (COMPILE.pre): Use $(CXX).
5403
5404 2017-10-09  Pedro Alves  <palves@redhat.com>
5405
5406         * cp-support.c (cp_remove_params): Return a gdb::unique_xmalloc_ptr.
5407         Use bool.
5408         (overload_list_add_symbol): Adjust to use gdb::unique_xmalloc_ptr.
5409         * cp-support.h (cp_remove_params): Now returns a
5410         gdb::unique_xmalloc_ptr.
5411         * dwarf2read.c (find_slot_in_mapped_hash): Now returns bool.
5412         Adjust to cp_remove_params returning a gdb::unique_xmalloc_ptr.
5413         * psymtab.c (psymtab_search_name): Adjust to cp_remove_params
5414         returning a gdb::unique_xmalloc_ptr.
5415         (lookup_partial_symbol): Adjust to use gdb::unique_xmalloc_ptr.
5416         * stack.c (find_frame_funname): Adjust to cp_remove_params
5417         returning a gdb::unique_xmalloc_ptr.
5418
5419 2017-10-08  Tom Tromey  <tom@tromey.com>
5420
5421         * dwarf2read.c (dwarf2_get_dwz_file): Use
5422         gdb::unique_xmalloc_ptr.
5423         (find_slot_in_mapped_hash): Likewise.
5424         (dwarf2_physname): Likewise.
5425         (create_dwo_unit_in_dwp_v1): Use std::string.
5426         (create_dwo_unit_in_dwp_v2): Likewise.
5427         (lookup_dwo_cutu): Likewise.
5428         (inherit_abstract_dies): Use std::vector.
5429         (read_array_type): Likewise.
5430         (dwarf_decode_macros): Remove unused declaration.
5431         (unsigned_int_compar): Remove.
5432         (dwarf2_build_psymtabs_hard): Use scoped_restore.
5433         (psymtabs_addrmap_cleanup): Remove.
5434
5435 2017-10-08  Tom Tromey  <tom@tromey.com>
5436
5437         * frame-unwind.c (frame_unwind_try_unwinder): Update.
5438         * frame.h (frame_cleanup_after_sniffer): Declare.
5439         (frame_prepare_for_sniffer): Return void.
5440         * frame.c (frame_cleanup_after_sniffer): No longer static.  Change
5441         type of argument.
5442         (frame_prepare_for_sniffer): Return void.
5443
5444 2017-10-08  Tom Tromey  <tom@tromey.com>
5445
5446         * utils.h (make_cleanup_value_free): Remove.
5447         * utils.c (do_value_free, struct cleanup): Remove.
5448         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full) <DWARF_VALUE_STACK>:
5449         Use gdb_value_up.
5450         * value.h (struct value_deleter): New.
5451         (gdb_value_up): New typedef.
5452
5453 2017-10-08  Tom Tromey  <tom@tromey.com>
5454
5455         * symtab.c (free_search_symbols, do_free_search_symbols_cleanup)
5456         (make_cleanup_free_search_symbols): Remove.
5457         (search_symbols): Return std::vector.
5458         (symbol_search::compare_search_syms): Now member of
5459         symbol_search.  Change arguments.
5460         (sort_search_symbols_remove_dups): Change arguments.  Rewrite.
5461         (symtab_symbol_info, rbreak_command): Update.
5462         * symtab.h (struct symbol_search) <next>: Remove.
5463         Add constructors.
5464         (symbol_search::operator<): New function.
5465         (symbol_search::operator==): New function.
5466         (search_symbols): Remove std::vector.
5467         (free_search_symbols, make_cleanup_free_search_symbols): Remove.
5468         (symbol_search::compare_search_syms): Declare.
5469
5470 2017-10-06  Yao Qi  <yao.qi@linaro.org>
5471
5472         * Makefile.in (ALL_64_TARGET_OBS): Replace aarch64-insn.o with
5473         arch/aarch64-insn.o.
5474         Remove one rule.
5475         * configure.tgt: Replace aarch64-insn.o with arch/aarch64-insn.o.
5476
5477 2017-10-06  Yao Qi  <yao.qi@linaro.org>
5478
5479         * Makefile.in (ALL_TARGET_OBS): Replace arm.o, arm-get-next-pcs.o,
5480         and arm-linux.o with arch/arm.o, arch/arm-get-next-pcs.o and
5481         arch/arm-linux.o respectively.
5482         * configure.tgt: Likewise.
5483
5484 2017-10-06  Yao Qi  <yao.qi@linaro.org>
5485
5486         * Makefile.in (ALL_TARGET_OBS): Rename i386.o to arch/i386.o.
5487         * configure.tgt (i386_tobjs): Replace i386.o with arch/i386.o.
5488
5489 2017-10-06  Pedro Alves  <palves@redhat.com>
5490
5491         * windows-nat.c: Include <algorithm>.
5492
5493 2017-10-06  Yao Qi  <yao.qi@linaro.org>
5494
5495         * configure.tgt (i386_tobjs): New variable.
5496         (amd64_tobjs): New variable.
5497         Set $cpu_obs and $os_obs.
5498
5499 2017-10-06  Yao Qi  <yao.qi@linaro.org>
5500
5501         * Makefile.in (CONFIG_SRC_SUBDIR): New.
5502         (ALL_64_TARGET_OBS): Replace amd64.o with arch/amd64.o.
5503         (clean): Remove object files and dependency files.
5504         (distclean): Remove the directory.
5505         * configure.ac: Invoke AC_CONFIG_COMMANDS.
5506         * configure: Re-generated.
5507         * configure.tgt: Replace amd64.o with arch/amd64.o.
5508
5509 2017-10-05  Jose E. Marchesi  <jose.marchesi@oracle.com>
5510
5511         PR build/22188
5512         * arm-tdep.c (arm_decode_misc_memhint_neon): Fix decoding of CPS
5513         and SETEND.
5514
5515 2017-10-05  Pedro Alves  <palves@redhat.com>
5516
5517         * linux-nat.c (linux_child_follow_fork): When following the parent
5518         and detaching the child, consult the parent thread's architecture
5519         instead of the child's.
5520
5521 2017-10-05  Ulrich Weigand  <uweigand@de.ibm.com>
5522
5523         * ax.h: Do not include "doublest.h".
5524         (union agent_val): Remove.
5525
5526 2017-10-05  Ulrich Weigand  <uweigand@de.ibm.com>
5527
5528         * dfp.h (MAX_DECIMAL_STRING): Move to dfp.c.
5529         (decimal_to_string): Return std::string object.
5530         (decimal_from_string): Accept std::string object.  Return bool.
5531         (decimal_from_integral, decimal_from_doublest): Remove.
5532         (decimal_from_longest): Add prototype.
5533         (decimal_from_ulongest): Likewise.
5534         (decimal_to_longest): Likewise.
5535         (decimal_from_doublest): Likewise.
5536         * dfp.c: Do not include "gdbtypes.h" or "value.h".
5537         (MAX_DECIMAL_STRING): Move here.
5538         (decimal_to_string): Return std::string object.
5539         (decimal_from_string): Accept std::string object.  Return bool.
5540         (decimal_from_integral): Remove, replace by ...
5541         (decimal_from_longest, decimal_from_ulongest): ... these new functions.
5542         (decimal_to_longest): New function.
5543         (decimal_from_floating): Remove, replace by ...
5544         (decimal_from_doublest): ... this new function.
5545         (decimal_to_doublest): Update to new decimal_to_string interface.
5546
5547         * value.c (unpack_long): Use decimal_to_longest.
5548         * valops.c (value_cast): Use decimal_from_doublest instead of
5549         decimal_from_floating.  Use decimal_from_[u]longest isntead of
5550         decimal_from_integral.
5551         * valarith.c (value_args_as_decimal): Likewise.
5552         * valprint.c (print_decimal_floating): Update to new
5553         decimal_to_string interface.
5554         * printcmd.c (printf_decfloat): Likewise.
5555         * c-exp.y (parse_number): Update to new decimal_from_string interface.
5556
5557 2017-10-05  Ulrich Weigand  <uweigand@de.ibm.com>
5558
5559         * doublest.h: Do not include "floatformat.h".  Remove stale comments.
5560         * gdbtypes.c: Include "floatformat.h".
5561         * value.c: Likewise.
5562         * m68k-tdep.c: Likewise.
5563
5564         * findvar.c: Do not include "floatformat.h".
5565         * amd64-darwin-tdep.c: Likewise.
5566         * arm-linux-tdep.c: Likewise.
5567         * i386-darwin-tdep.c: Likewise.
5568         * i387-tdep.c: Likewise.
5569         * m68k-linux-tdep.c: Likewise.
5570         * mep-tdep.c: Likewise.
5571         * mips-tdep.c: Likewise.
5572         * nios2-tdep.c: Likewise.
5573         * s390-linux-tdep.c: Likewise.
5574         * sparc-obsd-tdep.c: Likewise.
5575         * sparc-tdep.c: Likewise.
5576         * sparc64-tdep.c: Likewise.
5577         * spu-tdep.c: Likewise.
5578         * tic6x-tdep.c: Likewise.
5579         * tilegx-tdep.c: Likewise.
5580         * vax-tdep.c: Likewise.
5581         * xstormy16-tdep.c: Likewise.
5582         * xtensa-tdep.c: Likewise.
5583
5584         * top.c: Do not include "doublest.h".
5585         * aarch64-tdep.c: Likewise.
5586         * alpha-tdep.c: Likewise.
5587         * arm-linux-tdep.c: Likewise.
5588         * m68k-linux-tdep.c: Likewise.
5589         * tilegx-tdep.c: Likewise.
5590         * xstormy16-tdep.c: Likewise.
5591
5592 2017-10-05  John Baldwin  <jhb@FreeBSD.org>
5593
5594         * mips-fbsd-tdep.c (MIPS_INST_ADDIU_A0_SP_N32): Define.
5595         (mipsn32_fbsd_sigframe): Define.
5596         (mips_fbsd_init_abi): Install mipsn32_fbsd_sigframe unwinder
5597         for FreeBSD/mipsn32.
5598
5599 2017-10-05  John Baldwin  <jhb@FreeBSD.org>
5600
5601         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_EHDRFLAGS and
5602         AT_HWCAP.
5603
5604 2017-10-05  Tristan Gingold  <tgingold@free.fr>
5605
5606         * MAINTAINERS (Misc): Update my email address.
5607
5608 2017-10-04  Pedro Alves  <palves@redhat.com>
5609
5610         * remote.c (get_remote_arch_state): New 'gdbarch' parameter.  Use
5611         it instead of target_gdbarch.
5612         (get_remote_state, get_remote_packet_size): Adjust
5613         get_remote_arch_state calls, passing down target_gdbarch
5614         explicitly.
5615         (packet_reg_from_regnum, packet_reg_from_pnum): New parameter
5616         'gdbarch' and use it instead of target_gdbarch.
5617         (get_memory_packet_size): Adjust get_remote_arch_state calls,
5618         passing down target_gdbarch explicitly.
5619         (struct stop_reply) <arch>: New field.
5620         (remote_parse_stop_reply): Use the stopped thread's architecture,
5621         not the current inferior's.  Save the architecture in the
5622         stop_reply.
5623         (process_stop_reply): Use the stop reply's architecture.
5624         (process_g_packet, remote_fetch_registers)
5625         (remote_prepare_to_store, store_registers_using_G)
5626         (remote_store_registers): Adjust get_remote_arch_state calls,
5627         using the regcache's architecture.
5628         (remote_get_trace_status): Adjust get_remote_arch_state calls,
5629         passing down target_gdbarch explicitly.
5630         * spu-multiarch.c (spu_thread_architecture): Defer to the target
5631         beneath instead of calling target_gdbarch.
5632         * target.c (default_thread_architecture): Use the specified
5633         inferior's architecture, instead of the current inferior's
5634         architecture (via target_gdbarch).
5635
5636 2017-10-04  Pedro Alves  <palves@redhat.com>
5637
5638         * regcache.c (get_thread_arch_regcache): Remove null_ptid special
5639         case.
5640         (regcache_print): Handle !target_has_registers here instead.
5641
5642 2017-10-04  Pedro Alves  <palves@redhat.com>
5643
5644         * frame.c (create_test_frame): Delete.
5645         * frame.h (create_test_frame): Delete.
5646         * gdbarch-selftests.c: Include gdbthread.h and target.h.
5647         (class regcache_test): Delete.
5648         (test_target_has_registers, test_target_has_stack)
5649         (test_target_has_memory, test_target_prepare_to_store)
5650         (test_target_store_registers): New functions.
5651         (test_target_ops): New class.
5652         (register_to_value_test): Error out if there's already a
5653         process_stratum (or higher) target pushed.  Create a fuller mock
5654         environment, with mock target_ops, inferior, address space, thread
5655         and inferior_ptid.
5656         * progspace.c (struct address_space): Move to ...
5657         * progspace.h (struct address_space): ... here.
5658         * regcache.h (regcache::~regcache, regcache::raw_write)
5659         [GDB_SELF_TEST]: No longer virtual.
5660
5661 2017-10-04  Simon Marchi  <simon.marchi@ericsson.com>
5662
5663         * mi/mi-main.c (list_available_thread_groups): Reverse filter logic.
5664
5665 2017-10-04  Pedro Alves  <palves@redhat.com>
5666
5667         * guile/scm-breakpoint.c (gdbscm_breakpoint_commands): Move code
5668         out of 'between TRY and CATCH'.
5669
5670 2017-10-04  Pedro Alves  <palves@redhat.com>
5671
5672         * cli/cli-cmds.c (complete_command): Add missing END_CATCH.
5673         * common/common-exceptions.h (TRY): Open an outermost scope.
5674         Expand intro comment.
5675         (CATCH): Reindent.
5676         (END_CATCH): Close the outermost scope.
5677         * completer.c (complete_line_internal): Add missing END_CATCH.
5678
5679 2017-10-04  Sergio Durigan Junior  <sergiodj@redhat.com>
5680
5681         * NEWS (Changes since GDB 8.0): Add entry about new
5682         'set-cwd-on-gdbserver' feature.
5683         (New remote packets): Add entry for QSetWorkingDir.
5684         * common/common-inferior.h (set_inferior_cwd): New prototype.
5685         * infcmd.c (set_inferior_cwd): Remove "static".
5686         (show_cwd_command): Expand text to include remote debugging.
5687         * remote.c: Add PACKET_QSetWorkingDir.
5688         (remote_protocol_features) <QSetWorkingDir>: New entry for
5689         PACKET_QSetWorkingDir.
5690         (extended_remote_set_inferior_cwd): New function.
5691         (extended_remote_create_inferior): Call
5692         "extended_remote_set_inferior_cwd".
5693         (_initialize_remote): Call "add_packet_config_cmd" for
5694         QSetWorkingDir.
5695
5696 2017-10-04  Sergio Durigan Junior  <sergiodj@redhat.com>
5697
5698         * NEWS (New commands): Mention "set/show cwd".
5699         * cli/cli-cmds.c (_initialize_cli_cmds): Mention "set cwd" on
5700         "cd" command's help text.
5701         * common/common-inferior.h (get_inferior_cwd): New prototype.
5702         * infcmd.c (inferior_cwd_scratch): New global variable.
5703         (set_inferior_cwd): New function.
5704         (get_inferior_cwd): Likewise.
5705         (set_cwd_command): Likewise.
5706         (show_cwd_command): Likewise.
5707         (_initialize_infcmd): Add "set/show cwd" commands.
5708         * inferior.h (class inferior) <cwd>: New field.
5709         * nat/fork-inferior.c: Include "gdb_tilde_expand.h".
5710         (fork_inferior): Change inferior's cwd before its execution.
5711         * windows-nat.c (windows_create_inferior): Pass inferior's cwd
5712         to CreateProcess.
5713
5714 2017-10-04  Sergio Durigan Junior  <sergiodj@redhat.com>
5715
5716         * Makefile.in (SFILES): Add gdb_tilde_expand.c.
5717         (HFILES_NO_SRCDIR): Add gdb_tilde_expand.h.
5718         (COMMON_OBS): Add gdb_tilde_expand.o.
5719         * common/gdb_tilde_expand.c: New file.
5720         * common/gdb_tilde_expand.h: Likewise.
5721
5722 2017-10-03  Maciej W. Rozycki  <macro@imgtec.com>
5723
5724         * gdbarch.sh (objfile): Remove duplicate declaration.
5725         * gdbarch.h: Regenerate.
5726
5727 2017-10-03  Tom Tromey  <tom@tromey.com>
5728
5729         * utils.c (internal_vproblem): Use string_vprintf.
5730
5731 2017-10-03  Tom Tromey  <tom@tromey.com>
5732
5733         * printcmd.c (info_symbol_command): Use std::string.
5734
5735 2017-10-03  Tom Tromey  <tom@tromey.com>
5736
5737         * top.c (gdb_safe_append_history): Use std::string.
5738
5739 2017-10-03  Tom Tromey  <tom@tromey.com>
5740
5741         * event-top.c (stdin_event_handler): Update.
5742         * main.c (captured_main_1): Update.
5743         * top.h (make_delete_ui_cleanup): Remove.
5744         (struct ui): Add constructor and destructor.
5745         (new_ui, delete_ui): Remove.
5746         * top.c (make_delete_ui_cleanup): Remove.
5747         (new_ui_command): Use std::unique_ptr.
5748         (delete_ui_cleanup): Remove.
5749         (ui::ui): Rename from new_ui.  Update.
5750         (free_ui): Remove.
5751         (ui::~ui): Rename from delete_ui.  Update.
5752
5753 2017-10-03  Tom Tromey  <tom@tromey.com>
5754
5755         * symfile.c (load_progress): Use gdb::byte_vector.
5756
5757 2017-10-03  Tom Tromey  <tom@tromey.com>
5758
5759         * mi/mi-main.c (mi_cmd_trace_frame_collected): Remove unused
5760         declaration.
5761         * printcmd.c (x_command): Remove unused declaration.
5762         * symfile.c (symbol_file_command): Remove unused declaration.
5763
5764 2017-10-03  Tom Tromey  <tom@tromey.com>
5765
5766         * utils.c (internal_vproblem): Use std::string.
5767         (defaulted_query): Likewise.
5768
5769 2017-10-03  Tom Tromey  <tom@tromey.com>
5770
5771         * guile/scm-ports.c (ioscm_with_output_to_port_worker): Update.
5772         * top.c (execute_command_to_string): Update.
5773         * utils.c (make_cleanup_restore_page_info): Remove.
5774         (do_restore_page_info_cleanup): Remove.
5775         (set_batch_flag_and_restore_page_info):
5776         New.
5777         (make_cleanup_restore_page_info): Remove.
5778         (set_batch_flag_and_make_cleanup_restore_page_info): Remove.
5779         (~set_batch_flag_and_restore_page_info): New
5780         (make_cleanup_restore_uinteger): Remove.
5781         (make_cleanup_restore_integer): Remove.
5782         (struct restore_integer_closure): Remove.
5783         (restore_integer): Remove.
5784         * utils.h (struct set_batch_flag_and_restore_page_info): New
5785         class.
5786         (set_batch_flag_and_make_cleanup_restore_page_info): Remove.
5787         (make_cleanup_restore_page_info): Remove.
5788         (make_cleanup_restore_uinteger) Remove.
5789         (make_cleanup_restore_integer) Remove.
5790
5791 2017-10-03  Tom Tromey  <tom@tromey.com>
5792
5793         * record-full.h (record_full_gdb_operation_disable_set): Return
5794         scoped_restore_tmpl<int>.
5795         * infrun.c (adjust_pc_after_break): Update.
5796         (handle_signal_stop): Update.
5797         * record-full.c (record_full_gdb_operation_disable_set): Return
5798         scoped_restore_tmpl<int>.
5799         (record_full_wait_1, record_full_insert_breakpoint)
5800         (record_full_remove_breakpoint, record_full_save)
5801         (record_full_goto_insn): Update.
5802
5803 2017-10-02  Tom Tromey  <tom@tromey.com>
5804
5805         PR rust/22236:
5806         * rust-lang.c (rust_val_print_str): New function.
5807         (val_print_struct): Call it.
5808         (rust_subscript): Preserve name of slice type.
5809
5810 2017-10-02  Tom Tromey  <tom@tromey.com>
5811
5812         * rust-lang.c (rust_subscript): Handle slices in
5813         EVAL_AVOID_SIDE_EFFECTS case.
5814
5815 2017-10-02  Tom Tromey  <tom@tromey.com>
5816
5817         * rust-lang.c (rust_slice_type_p): Recognize &str as a slice type.
5818
5819 2017-10-02  Tom Tromey  <tom@tromey.com>
5820
5821         * rust-lang.h (rust_slice_type): Add "extern".
5822
5823 2017-10-02  Tom Tromey  <tom@tromey.com>
5824             Pedro Alves  <palves@redhat.com>
5825
5826         * ada-lang.h (ada_exc_info::operator<): Make const.
5827         (ada_exc_info::operator==): Make const.
5828         * ada-lang.c (ada_exc_info::operator<, ada_exc_info::operator==):
5829         Make const.
5830
5831 2017-09-29  Tom Tromey  <tom@tromey.com>
5832
5833         * target.c (read_whatever_is_readable): Change type of "result".
5834         Update.
5835         (free_memory_read_result_vector): Remove.
5836         (read_memory_robust): Change return type.  Update.
5837         * mi/mi-main.c (mi_cmd_data_read_memory_bytes): Update.  Use
5838         bin2hex, std::string.
5839         * target.h (memory_read_result_s): Remove typedef.
5840         (free_memory_read_result_vector): Remove.
5841         (read_memory_robust): Return std::vector.
5842
5843 2017-09-29  Tom Tromey  <tom@tromey.com>
5844
5845         * mi/mi-main.c (captured_mi_execute_command): Use scope_restore.
5846
5847 2017-09-29  Tom Tromey  <tom@tromey.com>
5848
5849         * mi/mi-cmd-info.c (mi_cmd_info_ada_exceptions): Update.
5850         * ada-lang.h (struct ada_exc_info): Remove typedef.  Declare
5851         operator< and operator==.
5852         (ada_exceptions_list): Return a std::vector.
5853         * ada-lang.c (ada_exc_info::operator<): Rename from
5854         compare_ada_exception_info.
5855         (ada_exc_info::operator==): New.
5856         (sort_remove_dups_ada_exceptions_list): Change type of
5857         "exceptions".
5858         (ada_add_standard_exceptions, ada_add_exceptions_from_frame)
5859         (ada_add_global_exceptions): Likewise.
5860         (ada_exceptions_list_1): Return a std::vector.
5861         (ada_exceptions_list): Likewise.
5862
5863 2017-09-29  Tom Tromey  <tom@tromey.com>
5864
5865         * mi/mi-main.c (struct print_one_inferior_data) <inferiors>: Now a
5866         'std::set *'.
5867         (print_one_inferior): Update.
5868         (free_vector_of_ints): Remove.
5869         (list_available_thread_groups): Change "ids" to std::set.
5870         (mi_cmd_list_thread_groups): Update.
5871         (struct collect_cores_data) <core>: Now a std::set.
5872         (collect_cores): Update.
5873         (unique): Remove.
5874         (print_one_inferior): Update.
5875
5876 2017-09-29  Tom Tromey  <tom@tromey.com>
5877
5878         * mi/mi-main.c (mi_execute_cli_command): Use std::string.
5879         (mi_execute_async_cli_command): Likewise.
5880         (mi_cmd_trace_frame_collected): Use field_fmt.
5881
5882 2017-09-29  Tom Tromey  <tom@tromey.com>
5883
5884         * mi/mi-main.c (mi_cmd_data_write_memory_bytes): Use
5885         gdb::byte_vector.
5886
5887 2017-09-29  Tom Tromey  <tom@tromey.com>
5888
5889         * mi/mi-parse.c (mi_parse): Remove unused declaration.
5890
5891 2017-09-29  Tom Tromey  <tom@tromey.com>
5892
5893         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Don't copy "oarg".
5894
5895 2017-09-29  Tom Tromey  <tom@tromey.com>
5896
5897         * varobj.h (varobj_gen_name): Return std::string.
5898         * varobj.c (varobj_gen_name): Return std::string.
5899         * mi/mi-cmd-var.c (mi_cmd_var_create): Use std::string.
5900         (mi_cmd_var_delete): Don't copy "name".
5901
5902 2017-09-29  Tom Tromey  <tom@tromey.com>
5903
5904         * mi/mi-cmd-break.c (mi_argv_to_format): Return std::string.
5905         (mi_cmd_break_insert_1): Update.
5906
5907 2017-09-29  Tom Tromey  <tom@tromey.com>
5908
5909         * target.h (make_scoped_defer_target_commit_resume): Update.
5910         * target.c (make_scoped_defer_target_commit_resume): Rename from
5911         make_cleanup_defer_target_commit_resume.  Return a
5912         scoped_restore.
5913         * infrun.c (proceed): Use make_scoped_defer_target_commit_resume.
5914
5915 2017-09-29  Tom Tromey  <tom@tromey.com>
5916
5917         * main.c (captured_main_1): Remove unused declaration.
5918         * spu-multiarch.c (parse_spufs_run): Remove unused declaration.
5919
5920 2017-09-29  Tom Tromey  <tom@tromey.com>
5921
5922         * symtab.c (search_symbols): Remove unused outer cleanup.
5923         (make_source_files_completion_list): Remove unused declaration.
5924
5925 2017-09-29  Tom Tromey  <tom@tromey.com>
5926
5927         * mt-tdep.c (mt_push_dummy_call): Use gdb::byte_vector.
5928
5929 2017-09-29  Tom Tromey  <tom@tromey.com>
5930
5931         * xstormy16-tdep.c (xstormy16_push_dummy_call): Use
5932         gdb::byte_vector.
5933
5934 2017-09-29  Tom Tromey  <tom@tromey.com>
5935
5936         * complaints.c (vcomplaint): Use std::string.
5937
5938 2017-09-29  Tom Tromey  <tom@tromey.com>
5939
5940         * tracepoint.c (trace_variable_command): Use std::string.
5941         (encode_actions_1): Remove unused declarations.
5942         (create_tsv_from_upload): Use std::string.
5943
5944 2017-09-29  Tom Tromey  <tom@tromey.com>
5945
5946         * cp-support.c (gdb_demangle): Use std::string.
5947
5948 2017-09-29  Tom Tromey  <tom@tromey.com>
5949
5950         * stack.c (parse_frame_specification): Use std::string
5951         (info_frame_command): Use gdb::unique_xmalloc_ptr.
5952
5953 2017-09-29  Tom Tromey  <tom@tromey.com>
5954
5955         * tilegx-tdep.c (tilegx_push_dummy_call): Use gdb::byte_vector.
5956
5957 2017-09-29  Tom Tromey  <tom@tromey.com>
5958
5959         * utils.c (vfprintf_maybe_filtered): Use std::string.
5960         (vfprintf_unfiltered): Likewise.
5961
5962 2017-09-29  Tom Tromey  <tom@tromey.com>
5963
5964         * event-top.c (top_level_prompt): Return std::string.
5965         (display_gdb_prompt): Update.
5966
5967 2017-09-29  Tom Tromey  <tom@tromey.com>
5968
5969         * unittests/common-utils-selftests.c (format): New function.
5970         (string_vprintf_tests): New function.
5971         (_initialize_common_utils_selftests): Register new tests.
5972         * common/common-utils.c (string_vprintf): New function.
5973         * common/common-utils.h (string_vprintf): Declare.
5974
5975 2017-09-29  Pedro Alves  <palves@redhat.com>
5976
5977         * common/rsp-low.c (unpack_varlen_hex): Constify.
5978         * common/rsp-low.h (unpack_varlen_hex): Constify.
5979         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
5980         Constify.
5981         * remote.c (remote_set_permissions, read_ptid)
5982         (remote_current_thread, remote_get_threads_with_qthreadinfo)
5983         (remote_static_tracepoint_marker_at)
5984         (remote_static_tracepoint_markers_by_strid)
5985         (stop_reply_extract_thread, remote_parse_stop_reply): Constify.
5986         * tracepoint.c (parse_trace_status, parse_tracepoint_status)
5987         (parse_tracepoint_definition, parse_tsv_definition)
5988         (parse_static_tracepoint_marker_definition): Constify.
5989         * tracepoint.h (parse_static_tracepoint_marker_definition)
5990         (parse_trace_status, parse_tracepoint_status)
5991         (parse_tracepoint_definition, parse_tsv_definition): Constify.
5992
5993 2017-09-29  Pedro Alves  <palves@redhat.com>
5994
5995         * remote.c (target_buf, target_buf_size): Delete.
5996         (remote_get_noisy_reply): Remove buf_p and sizeof_buf parameters.
5997         Use the connection's packet buffer instead.
5998         All callers adjusted.
5999         (_initialize_remote): Remove references to target_buf and
6000         target_buf_size.
6001
6002 2017-09-28  Pedro Alves  <palves@redhat.com>
6003
6004         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6005         unittests/common-utils-selftests.c.
6006         (SUBDIR_UNITTESTS_OBS): Add common-utils-selftests.o.
6007         (COMMON_OBS): Remove utils-selftests.o.
6008         * utils-selftests.c: Move to ...
6009         * unittests/common-utils-selftests.c: ... here and rename self
6010         test to "string_printf".
6011
6012 2017-09-28  Alexander Shaposhnikov <alexander.v.shaposhnikov@gmail.com> (tiny patch)
6013
6014         * dwarf2read.c (open_and_init_dwp_file): Protect against dwp_file
6015         having NULL cus or tus.
6016
6017 2017-09-27  Ulrich Weigand  <uweigand@de.ibm.com>
6018
6019         * arm-tdep.c: (convert_from_extended): Remove.
6020         (convert_to_extended): Likewise.
6021         (arm_extract_return_value): Use convert_typed_floating.
6022         (arm_store_return_value): Likewise.
6023
6024         * sh-tdep.h (struct gdbarch_tdep): Add sh_littlebyte_bigword_type.
6025         * sh-tdep.c: Do not include "floatformat.h".
6026         (sh_littlebyte_bigword_type): New function.
6027         (sh_register_convert_to_virtual): Use convert_typed_floating.
6028         (sh_register_convert_to_raw): Likewise.
6029         * sh64-tdep.c: (struct gdbarch_tdep): Add sh_littlebyte_bigword_type.
6030         (sh64_littlebyte_bigword_type): New function.
6031         (sh64_extract_return_value): Use convert_typed_floating.
6032         (sh64_register_convert_to_virtual): Likewise.
6033         (sh64_register_convert_to_raw): Likewise.
6034
6035 2017-09-27  Ulrich Weigand  <uweigand@de.ibm.com>
6036
6037         * doublest.h (floatformat_from_type): Move to gdbtypes.h.
6038         * doublest.c (floatformat_from_type): Move to gdbtypes.c.
6039
6040         * gdbtypes.h (union type_specific): Make field floatformat hold
6041         just a single struct floatformat, not an array.
6042         (floatformat_from_type): Move here.
6043         * gdbtypes.c (floatformat_from_type): Move here.  Update to
6044         changed TYPE_FLOATFORMAT definition.
6045         (verify_floatformat): Update to changed TYPE_FLOATFORMAT.
6046         (recursive_dump_type): Likewise.
6047         (init_float_type): Install correct floatformat for byte order.
6048         (arch_float_type): Likewise.
6049
6050 2017-09-27  Ulrich Weigand  <uweigand@de.ibm.com>
6051
6052         * gdbtypes.c (init_type): Change incoming argument from
6053         length-in-bytes to length-in-bits.  Assert length is a
6054         multiple of TARGET_CHAR_BITS.
6055         (arch_type, arch_flags_type): Likewise.
6056         (init_integer_type): Update call to init_type.
6057         (init_character_type): Likewise.
6058         (init_boolean_type): Likewise.
6059         (init_float_type): Likewise.
6060         (init_decfloat_type): Likewise.
6061         (init_complex_type): Likewise.
6062         (init_pointer_type): Likewise.
6063         (objfile_type): Likewise.
6064         (arch_integer_type): Update call to arch_type.
6065         (arch_character_type): Likewise.
6066         (arch_boolean_type): Likewise.
6067         (arch_float_type): Likewise.
6068         (arch_decfloat_type): Likewise.
6069         (arch_complex_type): Likewise.
6070         (arch_pointer_type): Likewise.
6071         (gdbtypes_post_init): Likewise.
6072
6073         * dwarf2read.c (dwarf2_init_float_type): Update call to init_type.
6074         (read_base_type): Likewise.
6075         * mdebugread.c (basic_type): Likewise.
6076         * stabsread.c (dbx_init_float_type): Likewise.
6077         (rs6000_builtin_type): Likewise.
6078         (read_range_type): Likewise.  Also, fix call to init_integer_type
6079         with erroneous length argument.
6080
6081         * ada-lang.c (ada_language_arch_info): Update call to arch_type.
6082         * d-lang.c (build_d_types): Likewise.
6083         * f-lang.c (build_fortran_types): Likewise.
6084         * go-lang.c (build_go_types): Likewise.
6085         * opencl-lang.c (build_opencl_types): Likewise.
6086         * jit.c (finalize_symtab): Likewise.
6087         * gnu-v3-abi.c (build_gdb_vtable_type): Likewise.
6088         (build_std_type_info_type): Likewise.
6089         * target-descriptions.c (tdesc_gdb_type): Likewise.  Also,
6090         update call to arch_flags_type.
6091
6092         * linux-tdep.c (linux_get_siginfo_type_with_fields): Update call to
6093         arch_type.
6094         * fbsd-tdep.c (fbsd_get_siginfo_type): Likewise.
6095         * windows-tdep.c (windows_get_tlb_type): Likewise.
6096
6097         * avr-tdep.c (avr_gdbarch_init): Update call to arch_type.
6098         * ft32-tdep.c (ft32_gdbarch_init): Likewise.
6099         * m32c-tdep.c (make_types): Likewise.
6100         * rl78-tdep.c (rl78_gdbarch_init): Likewise.
6101         (rl78_psw_type): Update call to arch_flags_type.
6102         * m68k-tdep.c (m68k_ps_type): Update call to arch_flags_type.
6103         * rx-tdep.c (rx_psw_type): Likewise.
6104         (rx_fpsw_type): Likewise.
6105         * sparc-tdep.c (sparc_psr_type): Likewise.
6106         (sparc_fsr_type): Likewise.
6107         * sparc64-tdep.c (sparc64_pstate_type): Likewise.
6108         (sparc64_ccr_type): Likewise.
6109         (sparc64_fsr_type): Likewise.
6110         (sparc64_fprs_type): Likewise.
6111
6112 2017-09-27  Tom Tromey  <tom@tromey.com>
6113
6114         * findcmd.c (find_command): Constify.
6115
6116 2017-09-27  Tom Tromey  <tom@tromey.com>
6117
6118         * ada-tasks.c (task_command_1, task_command): Constify.
6119
6120 2017-09-27  Tom Tromey  <tom@tromey.com>
6121
6122         * symtab.c (maintenance_print_symbol_cache)
6123         (maintenance_flush_symbol_cache)
6124         (maintenance_print_symbol_cache_statistics): Constify.
6125
6126 2017-09-27  Tom Tromey  <tom@tromey.com>
6127
6128         * inferior.c (detach_inferior_command, kill_inferior_command)
6129         (inferior_command): Constify.
6130
6131 2017-09-27  Tom Tromey  <tom@tromey.com>
6132
6133         * regcache.c (regcache_print, maintenance_print_registers)
6134         (maintenance_print_raw_registers)
6135         (maintenance_print_cooked_registers)
6136         (maintenance_print_register_groups)
6137         (maintenance_print_remote_registers): Constify.
6138
6139 2017-09-27  Tom Tromey  <tom@tromey.com>
6140
6141         * printcmd.c (map_display_numbers, undisplay_command)
6142         (enable_disable_display_command, enable_display_command)
6143         (disable_display_command): Constify.
6144
6145 2017-09-27  Tom Tromey  <tom@tromey.com>
6146
6147         * breakpoint.h (delete_command): Don't declare.
6148         * breakpoint.c (delete_command, enable_once_command)
6149         (enable_count_command, enable_delete_command, breakpoint_1)
6150         (maintenance_info_breakpoints, stopin_command, stopat_command)
6151         (delete_command, delete_trace_command, save_breakpoints)
6152         (save_breakpoints_command, save_tracepoints_command): Constify.
6153
6154 2017-09-27  Tom Tromey  <tom@tromey.com>
6155
6156         * macrocmd.c (macro_expand_command, macro_expand_once_command)
6157         (skip_ws, extract_identifier, macro_define_command)
6158         (macro_undef_command, macro_list_command): Constify.
6159
6160 2017-09-27  Tom Tromey  <tom@tromey.com>
6161
6162         * infcmd.c (environment_info, set_environment_command)
6163         (unset_environment_command, path_info, info_proc_cmd_1)
6164         (info_proc_cmd_mappings, info_proc_cmd_stat)
6165         (info_proc_cmd_status, info_proc_cmd_cwd, info_proc_cmd_cmdline)
6166         (info_proc_cmd_exe, info_proc_cmd_all): Constify.
6167
6168 2017-09-27  Tom Tromey  <tom@tromey.com>
6169
6170         * i386-tdep.c (i386_mpx_info_bounds, i386_mpx_set_bounds):
6171         Constify.
6172
6173 2017-09-27  Tom Tromey  <tom@tromey.com>
6174
6175         * symfile-mem.c (add_symbol_file_from_memory_command): Constify.
6176
6177 2017-09-27  Tom Tromey  <tom@tromey.com>
6178
6179         * demangle.c (demangle_command): Constify.
6180
6181 2017-09-27  Tom Tromey  <tom@tromey.com>
6182
6183         * progspace.c (maintenance_info_program_spaces_command):
6184         Constify.
6185
6186 2017-09-27  Tom Tromey  <tom@tromey.com>
6187
6188         * compile/compile.c (check_raw_argument, compile_file_command)
6189         (compile_code_command, compile_print_command): Constify.
6190
6191 2017-09-27  Tom Tromey  <tom@tromey.com>
6192
6193         * reggroups.c (maintenance_print_reggroups): Constify.
6194
6195 2017-09-27  Tom Tromey  <tom@tromey.com>
6196
6197         * dwarf2read.c (save_gdb_index_command): Constify.
6198
6199 2017-09-27  Tom Tromey  <tom@tromey.com>
6200
6201         * stap-probe.c (info_probes_stap_command): Constify.
6202
6203 2017-09-27  Tom Tromey  <tom@tromey.com>
6204
6205         * fork-child.c (unset_exec_wrapper_command): Constify.
6206
6207 2017-09-27  Tom Tromey  <tom@tromey.com>
6208
6209         * btrace.c (get_uint, get_context_size, no_chunk)
6210         (maint_btrace_packet_history_cmd)
6211         (maint_btrace_clear_packet_history_cmd, maint_btrace_clear_cmd)
6212         (maint_info_btrace_cmd): Constify.
6213
6214 2017-09-27  Tom Tromey  <tom@tromey.com>
6215
6216         * reverse.c (delete_bookmark_command): Constify.
6217
6218 2017-09-27  Tom Tromey  <tom@tromey.com>
6219
6220         * remote.c (set_memory_packet_size)
6221         (set_memory_write_packet_size, show_memory_write_packet_size)
6222         (set_memory_read_packet_size, show_memory_read_packet_size)
6223         (compare_sections_command, packet_command, remote_put_command)
6224         (remote_get_command, remote_delete_command): Constify.
6225
6226 2017-09-27  Tom Tromey  <tom@tromey.com>
6227
6228         * mips-tdep.c (show_mipsfpu_command, set_mipsfpu_single_command)
6229         (set_mipsfpu_double_command, set_mipsfpu_none_command)
6230         (set_mipsfpu_auto_command): Constify.
6231
6232 2017-09-27  Tom Tromey  <tom@tromey.com>
6233
6234         * cli/cli-cmds.h (cd_command): Constify.
6235         * cli/cli-cmds.c (cd_command): Constify.
6236
6237 2017-09-27  Tom Tromey  <tom@tromey.com>
6238
6239         * thread.c (thread_name_command, thread_find_command): Constify.
6240
6241 2017-09-27  Tom Tromey  <tom@tromey.com>
6242
6243         * probe.c (enable_probes_command, disable_probes_command):
6244         Constify.
6245
6246 2017-09-27  Tom Tromey  <tom@tromey.com>
6247
6248         * symfile.c (symbol_file_command): Constify.
6249         * gdbcore.h (deprecated_file_changed_hook): Constify.
6250         * exec.c (deprecated_file_changed_hook, exec_file_command)
6251         (file_command): Constify.
6252         * defs.h (symbol_file_command): Constify.
6253
6254 2017-09-27  Tom Tromey  <tom@tromey.com>
6255
6256         * remote-fileio.c (set_system_call_allowed)
6257         (show_system_call_allowed): Constify.
6258
6259 2017-09-27  Tom Tromey  <tom@tromey.com>
6260
6261         * tracepoint.c (delete_trace_variable_command)
6262         (tfind_end_command, tfind_start_command, tfind_pc_command)
6263         (tfind_tracepoint_command, tfind_line_command)
6264         (tfind_range_command, tfind_outside_command): Constify.
6265
6266 2017-09-27  Tom Tromey  <tom@tromey.com>
6267
6268         * ax-gdb.c (maint_agent_printf_command, agent_command)
6269         (agent_eval_command): Constify.
6270
6271 2017-09-27  Tom Tromey  <tom@tromey.com>
6272
6273         * tracepoint.c (info_scope_command): Constify.
6274         * python/python.c (gdbpy_decode_line): Constify.
6275         * python/py-breakpoint.c (bppy_init): Constify.
6276         * mi/mi-cmd-break.c (mi_cmd_break_insert_1): Constify.
6277         * location.h: (new_linespec_location)
6278         (string_to_event_location_basic, string_to_event_location):
6279         Constify.
6280         * location.c (new_linespec_location)
6281         (string_to_event_location_basic, string_to_event_location):
6282         Constify.
6283         * linespec.h (decode_line_with_current_source)
6284         (decode_line_with_last_displayed, linespec_lex_to_end): Constify.
6285         * linespec.c (linespec_lex_to_end)
6286         (decode_line_with_current_source)
6287         (decode_line_with_last_displayed): Constify.
6288         * guile/scm-breakpoint.c (gdbscm_register_breakpoint_x):
6289         Constify.
6290         * cli/cli-cmds.c (edit_command, list_command): Constify.
6291         * breakpoint.h (until_break_command, watch_command_wrapper)
6292         (awatch_command_wrapper, rwatch_command_wrapper)
6293         (init_ada_exception_breakpoint): Constify.
6294         * breakpoint.c (break_command_1, dprintf_command)
6295         (break_range_command, watch_command_wrapper)
6296         (rwatch_command_wrapper, awatch_command_wrapper)
6297         (until_break_command, init_ada_exception_breakpoint)
6298         (strace_marker_create_sals_from_location, trace_command)
6299         (ftrace_command, strace_command, struct tracepoint): Constify.
6300         * ax-gdb.c (agent_command_1): Constify.
6301         * ada-lang.c (ada_exception_sal): Constify.
6302
6303 2017-09-27  Tom Tromey  <tom@tromey.com>
6304
6305         * record.c (cmd_record_delete, cmd_record_stop, cmd_record_save)
6306         (cmd_record_goto_begin, cmd_record_goto_end, get_insn_number)
6307         (get_context_size, no_chunk, get_insn_history_modifiers)
6308         (cmd_record_insn_history, get_call_history_modifiers)
6309         (cmd_record_call_history): Constify.
6310
6311 2017-09-27  Tom Tromey  <tom@tromey.com>
6312
6313         * source.c (show_substitute_path_command)
6314         (unset_substitute_path_command, set_substitute_path_command):
6315         Constify.
6316
6317 2017-09-27  Tom Tromey  <tom@tromey.com>
6318
6319         * typeprint.c (maintenance_print_type): Constify.
6320         * maint.c (maintenance_dump_me, maintenance_demangle)
6321         (maintenance_time_display, maintenance_info_sections)
6322         (maintenance_print_statistics, maintenance_deprecate)
6323         (maintenance_undeprecate): Constify.
6324         (maintenance_do_deprecate): Constify.  Use std::string.
6325         (maintenance_selftest): Constify.
6326         * gdbtypes.h (maintenance_print_type): Constify.
6327
6328 2017-09-27  Tom Tromey  <tom@tromey.com>
6329
6330         * hppa-tdep.c (unwind_command): Constify.
6331
6332 2017-09-27  Tom Tromey  <tom@tromey.com>
6333
6334         * target-descriptions.c (unset_tdesc_filename_cmd)
6335         (maint_print_c_tdesc_cmd, maintenance_check_xml_descriptions):
6336         Constify.
6337
6338 2017-09-27  Tom Tromey  <tom@tromey.com>
6339
6340         * dummy-frame.c (maintenance_print_dummy_frames): Constify.
6341
6342 2017-09-27  Tom Tromey  <tom@tromey.com>
6343
6344         * tui/tui.c (tui_enable_command, tui_disable_command): Constify.
6345
6346 2017-09-27  Tom Tromey  <tom@tromey.com>
6347
6348         * tui/tui-regs.c (tui_reg_command): Constify.
6349
6350 2017-09-27  Tom Tromey  <tom@tromey.com>
6351
6352         * skip.c (skip_file_command, skip_function_command)
6353         (skip_enable_command, skip_disable_command, skip_delete_command):
6354         Constify.
6355
6356 2017-09-27  Tom Tromey  <tom@tromey.com>
6357
6358         * record-btrace.c (cmd_record_btrace_bts_start)
6359         (cmd_record_btrace_pt_start): Constify.
6360
6361 2017-09-27  Tom Tromey  <tom@tromey.com>
6362
6363         * symmisc.c (maintenance_print_symbols)
6364         (maintenance_print_msymbols, maintenance_print_objfiles)
6365         (maintenance_info_symtabs, maintenance_check_symtabs)
6366         (maintenance_expand_symtabs, maintenance_info_line_tables):
6367         Constify.
6368
6369 2017-09-27  Tom Tromey  <tom@tromey.com>
6370
6371         * top.c (new_ui_command): Constify.
6372
6373 2017-09-27  Tom Tromey  <tom@tromey.com>
6374
6375         * symfile.c (add_symbol_file_command)
6376         (remove_symbol_file_command, list_overlays_command)
6377         (map_overlay_command, unmap_overlay_command)
6378         (overlay_auto_command, overlay_manual_command)
6379         (overlay_off_command, overlay_load_command): Constify.
6380
6381 2017-09-27  Tom Tromey  <tom@tromey.com>
6382
6383         * spu-tdep.c (info_spu_event_command, info_spu_signal_command)
6384         (info_spu_mailbox_command, info_spu_dma_command)
6385         (info_spu_proxydma_command): Constify.
6386
6387 2017-09-27  Tom Tromey  <tom@tromey.com>
6388
6389         * cli/cli-logging.c (set_logging_on, set_logging_off): Constify.
6390
6391 2017-09-27  Tom Tromey  <tom@tromey.com>
6392
6393         * cli/cli-script.c (user_defined_command): Constify.
6394
6395 2017-09-27  Tom Tromey  <tom@tromey.com>
6396
6397         * cli/cli-dump.c (dump_memory_command, dump_value_command)
6398         (dump_srec_memory, dump_srec_value, dump_ihex_memory)
6399         (dump_ihex_value, dump_verilog_memory, dump_verilog_value)
6400         (dump_tekhex_memory, dump_tekhex_value, dump_binary_memory)
6401         (dump_binary_value, append_binary_memory, append_binary_value):
6402         Constify.
6403         (struct dump_context) <func>: Constify.
6404         (add_dump_command): Update.
6405
6406 2017-09-27  Tom Tromey  <tom@tromey.com>
6407
6408         * cli/cli-cmds.c (show_version, show_configuration)
6409         (source_command, show_user): Constify.
6410
6411 2017-09-27  Tom Tromey  <tom@tromey.com>
6412
6413         * target.c (maintenance_print_target_stack): Constify.
6414
6415 2017-09-27  Tom Tromey  <tom@tromey.com>
6416
6417         * interps.c (interpreter_exec_cmd): Constify.
6418
6419 2017-09-27  Tom Tromey  <tom@tromey.com>
6420
6421         * record-full.c (cmd_record_full_restore): Constify.
6422
6423 2017-09-27  Tom Tromey  <tom@tromey.com>
6424
6425         * memattr.c (enable_mem_command, disable_mem_command)
6426         (delete_mem_command): Constify.
6427
6428 2017-09-27  Tom Tromey  <tom@tromey.com>
6429
6430         * value.c (show_convenience): Constify.
6431
6432 2017-09-27  Tom Tromey  <tom@tromey.com>
6433
6434         * gdbcore.h (core_file_command): Update.
6435         * corefile.c (core_file_command): Constify.
6436
6437 2017-09-27  Tom Tromey  <tom@tromey.com>
6438
6439         * user-regs.c (maintenance_print_user_registers): Constify.
6440
6441 2017-09-27  Tom Tromey  <tom@tromey.com>
6442
6443         * cp-namespace.c (maintenance_cplus_namespace): Constify.
6444
6445 2017-09-27  Tom Tromey  <tom@tromey.com>
6446
6447         * cp-support.c (first_component_command): Constify.
6448
6449 2017-09-27  Tom Tromey  <tom@tromey.com>
6450
6451         * psymtab.c (maintenance_print_psymbols)
6452         (maintenance_info_psymtabs, maintenance_check_psymtabs):
6453         Constify.
6454
6455 2017-09-27  Tom Tromey  <tom@tromey.com>
6456
6457         * windows-tdep.c (display_tib): Constify.
6458
6459 2017-09-27  Tom Tromey  <tom@tromey.com>
6460
6461         * linux-fork.c (delete_checkpoint_command)
6462         (detach_checkpoint_command): Constify.
6463
6464 2017-09-27  Tom Tromey  <tom@tromey.com>
6465
6466         * cp-abi.c (set_cp_abi_cmd, show_cp_abi_cmd): Constify.
6467
6468 2017-09-27  Tom Tromey  <tom@tromey.com>
6469
6470         * arc-tdep.c (dump_arc_instruction_command): Constify.
6471
6472 2017-09-27  Tom Tromey  <tom@tromey.com>
6473
6474         * valprint.c (set_radix, show_radix): Constify.
6475
6476 2017-09-27  Tom Tromey  <tom@tromey.com>
6477
6478         * dtrace-probe.c (info_probes_dtrace_command): Constify.
6479
6480 2017-09-27  Tom Tromey  <tom@tromey.com>
6481
6482         * command.h (not_just_help_class_command): Update.
6483         * cli/cli-decode.h (not_just_help_class_command): Update.
6484         * cli/cli-decode.c (not_just_help_class_command): Constify.
6485
6486 2017-09-27  Tom Tromey  <tom@tromey.com>
6487
6488         * gdb_bfd.c (maintenance_info_bfds): Constify.
6489
6490 2017-09-27  Tom Tromey  <tom@tromey.com>
6491
6492         * cli/cli-decode.c (add_cmd, set_cmd_cfunc): New function
6493         overloads.
6494         (do_add_cmd): Rename from add_cmd.  Don't call set_cmd_cfunc.
6495         (do_const_cfunc): New function.
6496         (cmd_cfunc_eq): New overload.
6497         (cli_user_command_p): Check do_const_cfunc.
6498         * cli/cli-decode.h (struct cmd_list_element) <function>: New field
6499         const_cfunc.
6500         * command.h (add_cmd): Add const overload and no-function
6501         overload.
6502         (set_cmd_cfunc): Add const overload.
6503         (cmd_const_cfunc_ftype): Declare.
6504         (cmd_cfunc_eq): Add const overload.
6505         * breakpoint.c, cli-cmds.c, cli-dump.c, guile/scm-cmd.c,
6506         python/py-cmd.c, target.c, tracepoint.c: Use no-function add_cmd
6507         overload.
6508
6509 2017-09-27  Tom Tromey  <tom@tromey.com>
6510
6511         * macroexp.c (get_next_token_for_substitution): New function.
6512         (substitute_args): Call it.  Check for __VA_OPT__.
6513
6514 2017-09-26  Walfred Tedeschi  <walfred.tedeschi@intel.com>
6515             Pedro Alves <palves@redhat.com>
6516
6517         * dwarf2read.c (dwarf2_cu): Remove field producer_is_icc and add
6518         producer_is_icc_lt_14.
6519         (producer_is_icc_lt_14): New function.
6520         (check_producer): Add code for checking version of ICC.
6521         (producer_is_icc): Move to producer.c.
6522         (read_structure_type): Restrict ICC workaround to ICC<14.
6523         * producer.c: Include selftest.h.
6524         (producer_is_icc, producer_parsing_tests, _initialize_producer):
6525         New functions.
6526         * producer.h (producer_is_icc): New declaration.
6527
6528 2017-09-26  Walfred Tedeschi  <walfred.tedeschi@intel.com>
6529
6530         * Makefile.in (SFILES): Add producer.c.
6531         (COMMON_OBS): Add producer.o
6532         * amd64-tdep.c (producer.h): Add new include.
6533         * dwarf2read.c (producer.h): Add new include.
6534         * producer.c: New file.
6535         * producer.h: New file.
6536         * utils.c (producer_is_gcc, producer_is_gcc_ge_4): Move to
6537         producer.c.
6538         * utils.h (producer_is_gcc, producer_is_gcc_ge_4): Move to
6539         producer.h.
6540
6541 2017-09-26  Matthias Klose  <doko@ubuntu.com>
6542
6543         * configure.ac: Search ncursesw before ncurses.
6544         Check ncursesw/ncurses.h before ncurses/ncurses.h.
6545         * gdb_curses.h: Include <ncursesw/ncurses.h>
6546         * config.in, configure: Regenerate.
6547
6548 2017-09-26  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6549
6550         PR gdb/22185
6551         * configure.host <*-*-solaris2.[01], *-*-solaris2.[2-9]*>: Mark as
6552         obsolete.
6553         Use gdb_host sol2 for i[34567]86-*-solaris2*, x86_64-*-solaris2*.
6554         Remove i386sol2 support.
6555         * configure.nat <i386sol2>: Remove.
6556         <sol2-64>: Fold into ...
6557         <sol2>: ... this.
6558         Move common settings to default section.
6559         Add sol-thread.o.
6560         * configure.tgt <i[34567]86-*-solaris2.1[0-9]*,
6561         x86_64-*-solaris2.1[0-9]*>: Rename to ...
6562         <i[34567]86-*-solaris2*, x86_64-*-solaris2*>: ... this.
6563         <i[34567]86-*-solaris*>: Remove.
6564         <sparc-*-solaris2.[0-6], sparc-*-solaris2.[0-6].*>: Remove.
6565
6566         * configure.ac: Remove wctype in libw check.
6567         (_MSE_INT_H): Don't define on Solaris 7-9.
6568         <solaris*>: Remove libthread_db.so.1 check.
6569         * configure: Regenerate.
6570         * config.in: Regenerate.
6571
6572         * proc-service.c: Remove PROC_SERVICE_IS_OLD handling.
6573         (gdb_ps_prochandle_t, gdb_ps_read_buf_t, gdb_ps_write_buf_t)
6574         (gdb_ps_size_t): Remove.
6575         Use base types in users.
6576         * sol-thread.c: Likewise, also for gdb_ps_addr_t.
6577
6578         * NEWS (Changes since GDB 8.0): Document Solaris 2.0-9 removal.
6579
6580 2017-09-26  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6581
6582         PR build/22206
6583         * sparc64-tdep.c (adi_tag_fd): Print pid as long.
6584         (adi_is_addr_mapped): Likewise.
6585         (PSR_ICC): Don't redefine.
6586         (PSR_IMPL): Likewise.
6587
6588 2017-09-25  Tom Tromey  <tom@tromey.com>
6589
6590         * regcache.c (regcache::dump): Use string_printf.
6591
6592 2017-09-25  Tom Tromey  <tom@tromey.com>
6593
6594         * regcache.c (class regcache_invalidator): New.
6595         (struct register_to_invalidate): Remove.
6596         (make_cleanup_regcache_invalidate): Remove.
6597         (regcache::raw_write): Use regcache_invalidator.
6598
6599 2017-09-25  Tom Tromey  <tom@tromey.com>
6600
6601         * spu-tdep.c (spu2ppu_sniffer): Update.
6602         * regcache.h (make_cleanup_regcache_xfree): Don't declare.
6603         * regcache.c (do_regcache_xfree, make_cleanup_regcache_xfree):
6604         Remove.
6605         * ppc-linux-tdep.c (ppu2spu_sniffer): Update.
6606         * mi/mi-main.c (mi_cmd_data_list_changed_registers): Update.
6607         * frame.h (frame_save_as_regcache): Return std::unique_ptr.
6608         * frame.c (frame_save_as_regcache): Return std::unique_ptr.
6609         (frame_pop): Update.
6610
6611 2017-09-25  Tom Tromey  <tom@tromey.com>
6612
6613         * spu-tdep.c (spu2ppu_dealloc_cache): Use delete.
6614         * regcache.h (regcache_xfree): Don't declare.
6615         * regcache.c (regcache_xfree): Remove.
6616         (do_regcache_xfree): Use delete.
6617         * ppc-linux-tdep.c (ppu2spu_dealloc_cache): Use delete.
6618         * linux-fork.c (free_fork): Use delete.
6619         (fork_save_infrun_state): Likewise.
6620         * jit.c (jit_dealloc_cache): Use delete.
6621         * infrun.c (discard_infcall_suspend_state): Use delete.
6622
6623 2017-09-25  Tom Tromey  <tom@tromey.com>
6624
6625         * regcache.h (regcache_xmalloc): Don't declare.
6626         (regcache_raw_set_cached_value): Update comment.
6627         * regcache.c (regcache_xmalloc): Remove.
6628         * ppc-linux-tdep.c (ppu2spu_sniffer): Use new.
6629         * jit.c (jit_frame_sniffer): Use new.
6630         * frame.c (frame_save_as_regcache): Use new.
6631
6632 2017-09-25  Andreas Arnez  <arnez@linux.vnet.ibm.com>
6633
6634         * NEWS: Advertise support for guarded-storage registers on IBM z.
6635
6636 2017-09-25  Andreas Arnez  <arnez@linux.vnet.ibm.com>
6637
6638         * s390-linux-nat.c (have_regset_gs): New static variable.
6639         (s390_linux_fetch_inferior_registers): Handle guarded-storage
6640         control block and guarded-storage broadcast control regsets.
6641         (s390_read_description): Detect whether the target has
6642         guarded-storage support, return appropriate tdesc.
6643         * s390-linux-tdep.c (features/s390-gs-linux64.c): New include.
6644         (features/s390x-gs-linux64.c): Likewise.
6645         (struct gdbarch_tdep) <have_gs>: New field.
6646         (s390_regmap_gs, s390_regmap_gsbc, s390_gs_regset)
6647         (s390_gsbc_regset): New variables.
6648         (s390_iterate_over_regset_sections): Iterate over s390_gs_regset
6649         and s390_gsbc_regset, if applicable.
6650         (s390_core_read_description): Check whether core file was from a
6651         target with guarded-storage support; include appropriate regsets.
6652         (s390_gdbarch_init): Add registers for guarded-storage support.
6653         (_initialize_s390_tdep): Initialize new target descriptions that
6654         include registers for guarded-storage support.
6655         * s390-linux-tdep.h (HWCAP_S390_GS, S390_GSD_REGNUM)
6656         (S390_GSSM_REGNUM, S390_GSEPLA_REGNUM)
6657         (S390_BC_GSD_REGNUM, S390_BC_GSSM_REGNUM): New defines.
6658         (S390_NUM_REGS): Adjust macro definition.
6659         (s390_gs_regset, s390_gsbc_regset, tdesc_s390_gs_linux64)
6660         (tdesc_s390x_gs_linux64): New declarations.
6661
6662 2017-09-25  Andreas Arnez  <arnez@linux.vnet.ibm.com>
6663
6664         * features/s390-gs-linux64.xml: New file.
6665         * features/s390-gs.xml: New file.
6666         * features/s390-gsbc.xml: New file.
6667         * features/s390x-gs-linux64.xml: New file.
6668         * features/Makefile (WHICH): Add s390-gs-linux64 and
6669         s390x-gs-linux64.
6670         (s390-gs-linux64-expedite, s390x-gs-linux64-expedite): New macros.
6671         (XMLTOC): Add s390-gs-linux64.xml and s390x-linux64.xml.
6672         * features/s390-gs-linux64.c: New generated file.
6673         * features/s390x-gs-linux64.c: New file.
6674         * regformats/s390-gs-linux64.dat: New file.
6675         * regformats/s390x-gs-linux64.dat: New file.
6676
6677 2017-09-23  Tom Tromey  <tom@tromey.com>
6678
6679         * defs.h (make_cleanup_override_quit_handler): Don't declare.
6680
6681 2017-09-22  Tom Tromey  <tom@tromey.com>
6682
6683         * utils.c (class scoped_input_handler) <m_quit_handler>: Change
6684         type to scoped_restore_tmpl.
6685         <scoped_input_handler>: Initialize m_quit_handler directly.
6686
6687 2017-09-22  Sergio Durigan Junior  <sergiodj@redhat.com>
6688
6689         * cli/cli-cmds.c (pwd_command): Use "getcwd (NULL, 0)".
6690         (cd_command): Likewise.  Free "current_directory" before
6691         assigning to it.
6692         * main.c (captured_main_1): Use "getcwd (NULL, 0)".
6693         * mi/mi-cmd-env.c (mi_cmd_env_pwd): Likewise.
6694         * top.c (gdb_dirbuf): Remove global declaration.
6695         * top.h (gdb_dirbuf): Likewise.
6696
6697 2017-09-22  Sergio Durigan Junior  <sergiodj@redhat.com>
6698
6699         * gnulib/aclocal.m4: Regenerate.
6700         * gnulib/config.in: Regenerate.
6701         * gnulib/configure: Regenerate.
6702         * gnulib/import/Makefile.am: Regenerate.
6703         * gnulib/import/Makefile.in: Regenerate.
6704         * gnulib/import/assure.h: New file.
6705         * gnulib/import/at-func.c: Likewise
6706         * gnulib/import/chdir-long.c: New file.
6707         * gnulib/import/chdir-long.h: New file.
6708         * gnulib/import/cloexec.c: New file.
6709         * gnulib/import/cloexec.h: New file.
6710         * gnulib/import/close.c: New file.
6711         * gnulib/import/closedir.c: New file.
6712         * gnulib/import/dirent-private.h: New file.
6713         * gnulib/import/dup-safer.c: New file.
6714         * gnulib/import/dup.c: New file.
6715         * gnulib/import/dup2.c: New file.
6716         * gnulib/import/error.c: New file.
6717         * gnulib/import/error.h: New file.
6718         * gnulib/import/exitfail.c: New file.
6719         * gnulib/import/exitfail.h: New file.
6720         * gnulib/import/fchdir.c: New file.
6721         * gnulib/import/fcntl.c: New file.
6722         * gnulib/import/fcntl.in.h: New file.
6723         * gnulib/import/fd-hook.c: New file.
6724         * gnulib/import/fd-hook.h: New file.
6725         * gnulib/import/fd-safer.c: New file.
6726         * gnulib/import/fdopendir.c: New file.
6727         * gnulib/import/filename.h: New file.
6728         * gnulib/import/filenamecat-lgpl.c: New file.
6729         * gnulib/import/filenamecat.h: New file.
6730         * gnulib/import/fstat.c: New file.
6731         * gnulib/import/fstatat.c: New file.
6732         * gnulib/import/getcwd-lgpl.c: New file.
6733         * gnulib/import/getcwd.c: New file.
6734         * gnulib/import/getdtablesize.c: New file.
6735         * gnulib/import/getlogin_r.c: New file.
6736         * gnulib/import/getprogname.c: New file.
6737         * gnulib/import/getprogname.h: New file.
6738         * gnulib/import/gettext.h: New file.
6739         * gnulib/import/glob-libc.h: New file.
6740         * gnulib/import/glob.c: New file.
6741         * gnulib/import/glob.in.h: New file.
6742         * gnulib/import/intprops.h: New file.
6743         * gnulib/import/m4/chdir-long.m4: New file.
6744         * gnulib/import/m4/close.m4: New file.
6745         * gnulib/import/m4/closedir.m4: New file.
6746         * gnulib/import/m4/d-ino.m4: New file.
6747         * gnulib/import/m4/d-type.m4: New file.
6748         * gnulib/import/m4/dup.m4: New file.
6749         * gnulib/import/m4/dup2.m4: New file.
6750         * gnulib/import/m4/error.m4: New file.
6751         * gnulib/import/m4/fchdir.m4: New file.
6752         * gnulib/import/m4/fcntl.m4: New file.
6753         * gnulib/import/m4/fcntl_h.m4: New file.
6754         * gnulib/import/m4/fdopendir.m4: New file.
6755         * gnulib/import/m4/filenamecat.m4: New file.
6756         * gnulib/import/m4/fstat.m4: New file.
6757         * gnulib/import/m4/fstatat.m4: New file.
6758         * gnulib/import/m4/getcwd-abort-bug.m4: New file.
6759         * gnulib/import/m4/getcwd-path-max.m4: New file.
6760         * gnulib/import/m4/getcwd.m4: New file.
6761         * gnulib/import/m4/getdtablesize.m4: New file.
6762         * gnulib/import/m4/getlogin_r.m4: New file.
6763         * gnulib/import/m4/getprogname.m4: New file.
6764         * gnulib/import/m4/glob.m4: New file.
6765         * gnulib/import/m4/gnulib-cache.m4: Regenerate.
6766         * gnulib/import/m4/gnulib-comp.m4: Regenerate.
6767         * gnulib/import/m4/mempcpy.m4: New file.
6768         * gnulib/import/m4/memrchr.m4: New file.
6769         * gnulib/import/m4/mode_t.m4: New file.
6770         * gnulib/import/m4/msvc-inval.m4: New file.
6771         * gnulib/import/m4/msvc-nothrow.m4: New file.
6772         * gnulib/import/m4/open.m4: New file.
6773         * gnulib/import/m4/openat.m4: New file.
6774         * gnulib/import/m4/opendir.m4: New file.
6775         * gnulib/import/m4/readdir.m4: New file.
6776         * gnulib/import/m4/realloc.m4: New file.
6777         * gnulib/import/m4/rewinddir.m4: New file.
6778         * gnulib/import/m4/save-cwd.m4: New file.
6779         * gnulib/import/m4/strdup.m4: New file.
6780         * gnulib/import/m4/strerror.m4: New file.
6781         * gnulib/import/m4/unistd-safer.m4: New file.
6782         * gnulib/import/mempcpy.c: New file.
6783         * gnulib/import/memrchr.c: New file.
6784         * gnulib/import/msvc-inval.c: New file.
6785         * gnulib/import/msvc-inval.h: New file.
6786         * gnulib/import/msvc-nothrow.c: New file.
6787         * gnulib/import/msvc-nothrow.h: New file.
6788         * gnulib/import/open.c: New file.
6789         * gnulib/import/openat-die.c: New file.
6790         * gnulib/import/openat-priv.h: New file.
6791         * gnulib/import/openat-proc.c: New file.
6792         * gnulib/import/openat.c: New file.
6793         * gnulib/import/openat.h: New file.
6794         * gnulib/import/opendir.c: New file.
6795         * gnulib/import/pipe-safer.c: New file.
6796         * gnulib/import/readdir.c: New file.
6797         * gnulib/import/realloc.c: New file.
6798         * gnulib/import/rewinddir.c: New file.
6799         * gnulib/import/save-cwd.c: New file.
6800         * gnulib/import/save-cwd.h: New file.
6801         * gnulib/import/strdup.c: New file.
6802         * gnulib/import/strerror-override.c: New file.
6803         * gnulib/import/strerror-override.h: New file.
6804         * gnulib/import/strerror.c: New file.
6805         * gnulib/import/unistd--.h: New file.
6806         * gnulib/import/unistd-safer.h: New file.
6807         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add
6808         "getcwd" and "glob".
6809         * ser-tcp.c: Undefine "close" before redefining it.
6810
6811 2017-09-21  Simon Marchi  <simon.marchi@ericsson.com>
6812
6813         * guile/scm-value.c (gdbscm_value_address): Initialize address,
6814         get rid of res_val.
6815
6816 2017-09-22  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6817
6818         * configure.nat <i386sol2,i386>: Add fork-inferior.o to NATDEPFILES.
6819         <sol2,sparc>: Likewise.
6820         <sol2-64,i386>: Likewise.
6821
6822         * warning.m4 (AM_GDB_WARNINGS): Disable -Wunknown-pragmas,
6823         -Wdeprecated-declarations on *-*-solaris*.
6824         * configure: Regenerate.
6825
6826         * procfs.c: Include "nat/inferior.h".
6827         (procfs_info_proc): Fix typo.
6828
6829 2017-09-21  Kevin Buettner  <kevinb@redhat.com>
6830
6831         * remote.c (vector): Include.
6832         (struct private_thread_info): Add field, thread_handle.
6833         (free_private_thread_info): Deallocate storage associated with
6834         thread handle.
6835         (get_private_info_thread): Initialize `thread_handle' field.
6836         (struct thread_item): Add field, thread_handle.
6837         (clear_threads_listing_context): Deallocate storage associated
6838         with thread handle.
6839         (start_thread): Add support for "handle" attribute.
6840         (thread_attributes): Add "handle".
6841         (remote_get_threads_with_qthreadinfo): Initialize thread_handle
6842         field.
6843         (remote_update_thread_list): Update thread_handle.
6844         (remote_thread_handle_to_thread_info): New function.
6845         (init_remote_ops): Initialize to_thread_handle_to_thread_info.
6846
6847 2017-09-21  Kevin Buettner  <kevinb@redhat.com>
6848
6849         * python/py-inferior.c (gdbpy_thread_from_thread_handle): New
6850         function.
6851         (inferior_object_methods): Add gdbpy_thread_from_thread_handle.
6852         * python/python-internal.h (thread_object_type): Declare.
6853
6854 2017-09-21  Kevin Buettner  <kevinb@redhat.com>
6855
6856         * target.h (struct target_ops): Add to_thread_handle_to_thread_info.
6857         (target_thread_handle_to_thread_info): Declare.
6858         * target.c (target_thread_handle_to_thread_info): New function.
6859         * target-delegates.c: Regenerate.
6860         * gdbthread.h (find_thread_by_handle): Declare.
6861         * thread.c (find_thread_by_handle): New function.
6862         * linux-thread-db.c (thread_db_thread_handle_to_thread_info): New
6863         function.
6864         (init_thread_db_ops): Register thread_db_thread_handle_to_thread_info.
6865
6866 2017-09-21  Simon Marchi  <simon.marchi@ericsson.com>
6867
6868         * nat/linux-waitpid.c (linux_debug): Add ATTRIBUTE_PRINTF.
6869
6870 2017-09-21  Simon Marchi  <simon.marchi@ericsson.com>
6871
6872         * microblaze-tdep.c (microblaze_debug): Add ATTRIBUTE_PRINTF.
6873
6874 2017-09-21  Yao Qi  <yao.qi@linaro.org>
6875
6876         * configure.tgt (aarch64*-*-freebsd*): Add fbsd-tdep.o solib-svr4.o
6877         to gdb_target_obs.
6878
6879 2017-09-20  Tom Tromey  <tom@tromey.com>
6880
6881         * breakpoint.c (struct counted_command_line): Remove.
6882         (breakpoint_commands): Update.
6883         (alloc_counted_command_line, incref_counted_command_line)
6884         (decref_counted_command_line, do_cleanup_counted_command_line)
6885         (make_cleanup_decref_counted_command_line): Remove.
6886         (breakpoint_set_commands, commands_command_1, ~bpstats, bpstats)
6887         (bpstat_clear_actions, bpstat_do_actions_1, watchpoint_check)
6888         (bpstat_stop_status, print_one_breakpoint_location, ~breakpoint)
6889         (save_breakpoints): Update.
6890         * breakpoint.h (counted_command_line): Now a typedef to
6891         shared_ptr.
6892         (struct breakpoint) <commands>: Now a counted_command_line.
6893         (struct bpstats) <command>: Likewise.
6894
6895 2017-09-20  Tom Tromey  <tom@tromey.com>
6896
6897         * breakpoint.c (struct commands_info, do_map_commands_command):
6898         Remove.
6899         (commands_command_1): Update.
6900         (iterate_over_related_breakpoints): Take a function_view.
6901         (do_delete_breakpoint, do_map_delete_breakpoint): Remove.
6902         (delete_command): Update.
6903         (map_breakpoint_numbers): Take a function_view.
6904         (do_disable_breakpoint, do_map_delete_breakpoint): Remove.
6905         (disable_command): Update.
6906         (do_enable_breakpoint, do_map_enable_breakpoint): Remove.
6907         (enable_command): Update.
6908         (struct disp_data, do_enable_breakpoint_disp)
6909         (do_map_enable_once_breakpoint, do_map_enable_count_breakpoint)
6910         (do_map_enable_delete_breakpoint): Remove.
6911         (enable_once_command, enable_count_command, enable_delete_command)
6912         (delete_trace_variable_command): Update.
6913
6914 2017-09-20  Tom Tromey  <tom@tromey.com>
6915
6916         * breakpoint.c (~bpstats): Rename from bpstat_free.  Update.
6917         (bpstat_clear): Use delete.
6918         (bpstats): New constructors.
6919         (bpstat_copy, bpstat_stop_status): Use new.
6920         (dprintf_after_condition_true): Update.
6921         * breakpoint.h (bpstats::bpstats): Add constructors.
6922         (bpstats::~bpstats): Add destructor.
6923
6924 2017-09-20  Pedro Alves  <palves@redhat.com>
6925
6926         * eval.c (make_params): Delete, refactored as ...
6927         (class fake_method): ... this new type's ctor.
6928         (fake_method::~fake_method): New.
6929         (evaluate_subexp_standard): Use 'fake_method'.
6930
6931 2017-09-20  Tom Tromey  <tom@tromey.com>
6932
6933         * windows-nat.c (get_windows_debug_event, windows_wait)
6934         (do_initial_windows_stuff, windows_attach): Update.
6935         * utils.c (vwarning, internal_vproblem): Update.
6936         (ui_unregister_input_event_handler_cleanup)
6937         (prepare_to_handle_input): Remove.
6938         (class scoped_input_handler): New.
6939         (defaulted_query, prompt_for_continue): Update.
6940         * tui/tui-hooks.c (tui_refresh_frame_and_register_information):
6941         Update.
6942         * top.c (undo_terminal_modifications_before_exit): Update.
6943         * target/target.h (target_terminal_init, target_terminal_inferior)
6944         (target_terminal_ours): Don't declare.
6945         (class target_terminal): New.
6946         * target.h (target_terminal_is_inferior, target_terminal_is_ours)
6947         (target_terminal_ours_for_output)
6948         (make_cleanup_restore_target_terminal): Don't declare.
6949         (target_terminal_info): Remove.
6950         * target.c (enum terminal_state, terminal_state): Remove.
6951         (target_terminal::terminal_state): Define.
6952         (target_terminal::init): Rename from target_terminal_init.
6953         (target_terminal::inferior): Rename from
6954         target_terminal_inferior.
6955         (target_terminal::ours): Rename from target_terminal_ours.
6956         (target_terminal::ours_for_output): Rename from
6957         target_terminal_ours_for_output.
6958         (target_terminal::info): New method.
6959         (cleanup_restore_target_terminal)
6960         (make_cleanup_restore_target_terminal): Remove.
6961         * solib.c (handle_solib_event): Update.
6962         * remote.c (remote_serial_quit_handler): Update.
6963         (remote_terminal_inferior, remote_wait_as): Update.
6964         * record-full.c (record_full_wait_1): Update.
6965         * nto-procfs.c (procfs_create_inferior): Update.
6966         * nat/fork-inferior.c (startup_inferior): Update.
6967         * mi/mi-interp.c (mi_new_thread, mi_thread_exit)
6968         (mi_record_changed, mi_inferior_added, mi_inferior_appeared)
6969         (mi_inferior_exit, mi_inferior_removed, mi_traceframe_changed)
6970         (mi_tsv_created, mi_tsv_deleted, mi_tsv_modified)
6971         (mi_breakpoint_created, mi_breakpoint_deleted)
6972         (mi_breakpoint_modified, mi_on_resume, mi_solib_loaded)
6973         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
6974         (mi_user_selected_context_changed, report_initial_inferior):
6975         Update.
6976         * linux-nat.c (linux_nat_attach, linux_nat_terminal_ours)
6977         (linux_nat_terminal_inferior): Update.
6978         * infrun.c (follow_fork_inferior)
6979         (handle_vfork_child_exec_or_exit, do_target_resume)
6980         (check_curr_ui_sync_execution_done, handle_inferior_event_1)
6981         (handle_signal_stop, maybe_remove_breakpoints, normal_stop):
6982         Update.
6983         * inflow.c (child_terminal_init, info_terminal_command): Update.
6984         * infcmd.c (post_create_inferior, continue_1, prepare_one_step)
6985         (attach_command): Update.
6986         * infcall.c (call_thread_fsm_should_stop): Update.
6987         * gnu-nat.c (gnu_attach): Update.
6988         * extension.c (struct active_ext_lang_state)
6989         (restore_active_ext_lang): Update.
6990         * exceptions.c (print_flush): Update.
6991         * event-top.c (async_enable_stdin, default_quit_handler): Update.
6992         (struct quit_handler_cleanup_data, restore_quit_handler)
6993         (restore_quit_handler_dtor, make_cleanup_override_quit_handler):
6994         Remove.
6995         * cp-support.c (gdb_demangle): Update.
6996         * breakpoint.c (update_inserted_breakpoint_locations)
6997         (insert_breakpoint_locations, handle_jit_event)
6998         (disable_breakpoints_in_unloaded_shlib): Update.
6999         * annotate.c (annotate_breakpoints_invalid)
7000         (annotate_frames_invalid): Update.
7001
7002 2017-09-20  Tom Tromey  <tom@tromey.com>
7003
7004         * main.c (catch_command_errors): Rename from
7005         catch_command_errors_const.
7006         (captured_main_1): Update.
7007
7008 2017-09-20  Pedro Alves  <palves@redhat.com>
7009
7010         * cli/cli-cmds.c (list_command): Use print_sal_location.
7011         (print_sal_location): New function.
7012         (ambiguous_line_spec): Use print_sal_location.
7013         * linespec.c (symbol_to_sal): Record the symbol in the sal.
7014         * symtab.c (find_function_start_sal): Likewise.
7015         * symtab.h (symtab_and_line::symbol): New field.
7016
7017 2017-09-20  Pedro Alves  <palves@redhat.com>
7018
7019         * linespec.c (minsym_found): Handle non-text minsyms.
7020         (symbol_to_sal): Record a sal.pc for non-block, non-label symbols.
7021
7022 2017-09-20  Walfred Tedeschi  <walfred.tedeschi@intel.com>
7023
7024         * features/Makefile (i386-avx-mpx-avx512-pku.dat): Add missing
7025         backslash.
7026
7027 2017-09-20  Walfred Tedeschi  <walfred.tedeschi@intel.com>
7028
7029         * gdb.arch/i386-avx512.c (move_zmm_data_to_reg): Use
7030         vmovups instead vmovaps.
7031         (move_zmm_data_to_memory): Use vmovups instead vmovaps.
7032
7033 2017-09-19  John Baldwin  <jhb@FreeBSD.org>
7034
7035         * NEWS (Changes since GDB 8.0): Add starti.
7036         * infcmd.c (enum run_break): New.
7037         (run_command_1): Queue pending event for RUN_STOP_AT_FIRST_INSN
7038         case.
7039         (run_command): Use enum run_how.
7040         (start_command): Likewise.
7041         (starti_command): New function.
7042         (RUN_ARGS_HELP): New macro.
7043         (_initialize_infcmd): Use RUN_ARGS_HELP for run and start
7044         commands.  Add starti command.
7045
7046 2017-09-19  Yao Qi  <yao.qi@linaro.org>
7047
7048         * Makefile.in (monitor.o): Remove the rule.
7049
7050 2017-09-19  Yao Qi  <yao.qi@linaro.org>
7051
7052         * annotate.h (struct annotate_arg_emitter): Use
7053         DISABLE_COPY_AND_ASSIGN.
7054         * common/refcounted-object.h (refcounted_object): Likewise.
7055         * completer.h (struct completion_result): Likewise.
7056         * dwarf2read.c (struct dwarf2_per_objfile): Likewise.
7057         * filename-seen-cache.h (filename_seen_cache): Likewise.
7058         * gdbcore.h (thread_section_name): Likewise.
7059         * gdb_regex.h (compiled_regex): Likewise.
7060         * gdbthread.h (scoped_restore_current_thread): Likewise.
7061         * inferior.h (scoped_restore_current_inferior): Likewise.
7062         * jit.c (jit_reader): Likewise.
7063         * linespec.h (struct linespec_result): Likewise.
7064         * mi/mi-parse.h (struct mi_parse): Likewise.
7065         * nat/fork-inferior.c (execv_argv): Likewise.
7066         * progspace.h (scoped_restore_current_program_space): Likewise.
7067         * python/python-internal.h (class gdbpy_enter): Likewise.
7068         * regcache.h (regcache): Likewise.
7069         * target-descriptions.c (struct tdesc_reg): Likewise.
7070         (struct tdesc_type): Likewise.
7071         (struct tdesc_feature): Likewise.
7072         * ui-out.h (ui_out_emit_type): Likewise.
7073
7074 2017-09-18  Simon Marchi  <simon.marchi@ericsson.com>
7075
7076         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Remove
7077         label abort_expression.
7078
7079 2017-09-16  Simon Marchi  <simon.marchi@ericsson.com>
7080
7081         * common/buffer.c (buffer_xml_printf): Adjust.
7082         * common/xml-utils.c (xml_escape_text): Change return type to
7083         std::string, update code accordingly.
7084         * common/xml-utils.h (xml_escape_text): Change return type to
7085         std::string.
7086         * rs6000-aix-tdep.c (rs6000_aix_shared_library_to_xml): Adjust.
7087         * windows-tdep.c (windows_xfer_shared_library): Adjust.
7088         * unittests/xml-utils-selftests.c (test_xml_escape_text):
7089         Adjust.
7090
7091 2017-09-16  Simon Marchi  <simon.marchi@ericsson.com>
7092
7093         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add new source file.
7094         (SUBDIR_UNITTESTS_OBS): Add new object file.
7095         * unittests/xml-utils-selftests.c: New file.
7096
7097 2017-09-16  Simon Marchi  <simon.marchi@ericsson.com>
7098
7099         * common/selftest.h (selftest): New struct/interface.
7100         (register_test): Add name parameter, add new overload.
7101         (run_tests): Add filter parameter.
7102         (for_each_selftest_ftype): New typedef.
7103         (for_each_selftest): New declaration.
7104         * common/selftest.c (tests): Change type to
7105         map<string, unique_ptr<selftest>>.
7106         (simple_selftest): New struct.
7107         (register_test): New function.
7108         (register_test): Add name parameter and use it.
7109         (run_tests): Add filter parameter and use it.  Add prints.
7110         Adjust to vector -> map change.
7111         * aarch64-tdep.c (_initialize_aarch64_tdep): Add names when
7112         registering selftests.
7113         * arm-tdep.c (_initialize_arm_tdep): Likewise.
7114         * disasm-selftests.c (_initialize_disasm_selftests): Likewise.
7115         * dwarf2-frame.c (_initialize_dwarf2_frame): Likewise.
7116         * dwarf2loc.c (_initialize_dwarf2loc): Likewise.
7117         * findvar.c (_initialize_findvar): Likewise.
7118         * gdbarch-selftests.c (_initialize_gdbarch_selftests): Likewise.
7119         * maint.c (maintenance_selftest): Update call to run_tests.
7120         (maintenance_info_selftests): New function.
7121         (_initialize_maint_cmds): Register "maintenance info selftests"
7122         command.  Update "maintenance selftest" doc.
7123         * regcache.c (_initialize_regcache): Add names when registering
7124         selftests.
7125         * rust-exp.y (_initialize_rust_exp): Likewise.
7126         * selftest-arch.c (gdbarch_selftest): New struct.
7127         (gdbarch_tests): Remove.
7128         (register_test_foreach_arch): Add name parameter.  Call
7129         register_test.
7130         (tests_with_arch): Remove, move most content to
7131         gdbarch_selftest::operator().
7132         (_initialize_selftests_foreach_arch): Remove.
7133         * selftest-arch.h (register_test_foreach_arch): Add name
7134         parameter.
7135         (run_tests_with_arch): New declaration.
7136         * utils-selftests.c (_initialize_utils_selftests): Add names
7137         when registering selftests.
7138         * utils.c (_initialize_utils): Likewise.
7139         * unittests/array-view-selftests.c
7140         (_initialize_array_view_selftests): Likewise.
7141         * unittests/environ-selftests.c (_initialize_environ_selftests):
7142         Likewise.
7143         * unittests/function-view-selftests.c
7144         (_initialize_function_view_selftests): Likewise.
7145         * unittests/offset-type-selftests.c
7146         (_initialize_offset_type_selftests): Likewise.
7147         * unittests/optional-selftests.c
7148         (_initialize_optional_selftests): Likewise.
7149         * unittests/scoped_restore-selftests.c
7150         (_initialize_scoped_restore_selftests): Likewise.
7151         * NEWS: Document "maintenance selftest" and "maint info
7152         selftests".
7153
7154 2017-09-16  Simon Marchi  <simon.marchi@ericsson.com>
7155
7156         * mi/mi-main.c (mi_load_progress): Restore current_uiout using a
7157         scoped_restore.
7158
7159 2017-09-16  Simon Marchi  <simon.marchi@ericsson.com>
7160
7161         * mi/mi-main.c (mi_load_progress): Make uiout variable
7162         a unique_ptr.
7163
7164 2017-09-15  Pedro Alves  <palves@redhat.com>
7165
7166         * compile/compile-c-types.c (convert_enum, convert_int)
7167         (convert_float): Adjust to refer to int_type_v0 and float_type_v0.
7168
7169 2017-09-15  Simon Marchi  <simon.marchi@ericsson.com>
7170
7171         * dwarf2read.c (copy_string): Remove.
7172         (parse_macro_definition): Replace copy_string with savestring.
7173
7174 2017-09-15  Yao Qi  <yao.qi@linaro.org>
7175
7176         * configure.tgt (i[34567]86-*-darwin*): Append amd64.o to
7177         gdb_target_obs.
7178         (i[34567]86-*-solaris2.1[0-9]* | x86_64-*-solaris2.1[0-9]*):
7179         Likewise.
7180         (i[34567]86-*-linux*): Likewise.
7181
7182 2017-09-14  Simon Marchi  <simon.marchi@ericsson.com>
7183
7184         * dwarf2expr.h (dwarf_stack_value): Add constructor.
7185         (dwarf_expr_context) <~dwarf_expr_context>: Define as default.
7186         <stack>: Change type to std::vector.
7187         <stack_len, stack_allocated>: Remove.
7188         <grow_stack>: Remove.
7189         * dwarf2expr.c (dwarf_expr_context::dwarf_expr_context): Adjust.
7190         (dwarf_expr_context::~dwarf_expr_context): Remove.
7191         (dwarf_expr_context::grow_stack): Remove.
7192         (dwarf_expr_context::push): Adjust.
7193         (dwarf_expr_context::pop): Adjust.
7194         (dwarf_expr_context::fetch): Adjust.
7195         (dwarf_expr_context::fetch_in_stack_memory): Adjust.
7196         (dwarf_expr_context::stack_empty_p): Adjust.
7197         (dwarf_expr_context::execute_stack_op): Adjust.
7198
7199 2017-09-14  Simon Marchi  <simon.marchi@ericsson.com>
7200
7201         * dwarf2expr.h (dwarf_expr_context) <stack_empty_p>: Change
7202         return type to bool.
7203         * dwarf2expr.c (dwarf_expr_context::stack_empty_p): Likewise.
7204
7205 2017-09-14  Simon Marchi  <simon.marchi@ericsson.com>
7206
7207         * dwarf2expr.h (dwarf_expr_piece) <v.mem.in_stack_memory>:
7208         Change type to bool.
7209         (dwarf_stack_value) <in_stack_memory>: Likewise.
7210         (dwarf_expr_context) <push_address>: Change parameter type to
7211         bool.
7212         <fetch_in_stack_memory>: Change return type to bool.
7213         <push>: Change parameter type to bool.
7214         * dwarf2expr.c (dwarf_expr_context::push): Change parameter type
7215         to bool.
7216         (dwarf_expr_context::push_address): Likewise.
7217         (dwarf_expr_context::fetch_in_stack_memory): Change return type
7218         to bool.
7219         (dwarf_expr_context::execute_stack_op): Adjust.
7220         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Adjust.
7221
7222 2017-09-14  Simon Marchi  <simon.marchi@ericsson.com>
7223
7224         * dwarf2expr.h (struct dwarf_expr_piece): Move up.
7225         (struct dwarf_expr_context) <n_pieces>: Remove.
7226         <pieces>: Change type to std::vector.
7227         * dwarf2expr.c (dwarf_expr_context::dwarf_expr_context): Adjust.
7228         (dwarf_expr_context::~dwarf_expr_context): Don't manually free
7229         pieces.
7230         (dwarf_expr_context::add_piece): Adjust.
7231         * dwarf2loc.c (struct piece_closure): Initialize fields.
7232         <n_pieces>: Remove.
7233         <pieces>: Change type to std::vector.
7234         (allocate_piece_closure): Adjust, change parameter to
7235         std::vector rvalue and std::move it to piece_closure.
7236         (rw_pieced_value): Adjust.
7237         (check_pieced_synthetic_pointer): Adjust.
7238         (indirect_synthetic_pointer): Adjust.
7239         (coerce_pieced_ref): Adjust.
7240         (free_pieced_value_closure):  Adjust.  Use delete to free
7241         piece_closure.
7242         (dwarf2_evaluate_loc_desc_full): Adjust.  std::move ctx.pieces
7243         to allocate_piece_closure.
7244         (dwarf2_loc_desc_get_symbol_read_needs): Adjust.
7245
7246 2017-09-12  Simon Marchi  <simon.marchi@ericsson.com>
7247
7248         * probe.h (probe_ops_cp): Remove typedef.
7249         (DEF_VEC_P (probe_ops_cp)): Remove.
7250         (all_probe_ops): Change type to std::vector.
7251         * probe.c (info_probes_for_ops): Adjust to vector change.
7252         (probe_linespec_to_ops): Likewise.
7253         (all_probe_ops): Change type to std::vector.
7254         (_initialize_probe): Adjust to vector change.
7255         * dtrace-probe.c (_initialize_dtrace_probe): Likewise.
7256         * elfread.c (elf_get_probes): Likewise.
7257         * stap-probe.c (_initialize_stap_probe): Likewise.
7258
7259 2017-09-12  Simon Marchi  <simon.marchi@ericsson.com>
7260
7261         * probe.h (struct bound_probe): Define constructors.
7262         * probe.c (bound_probe_s): Remove typedef.
7263         (DEF_VEC_O (bound_probe_s)): Remove VEC.
7264         (collect_probes): Change return type to std::vector, remove
7265         cleanup.
7266         (compare_probes): Return bool, change parameter type.  Change
7267         semantic to "less than".
7268         (gen_ui_out_table_header_info): Change parameter to std::vector
7269         and update.
7270         (exists_probe_with_pops): Likewise.
7271         (info_probes_for_ops): Update to std::vector change.
7272         (enable_probes_command): Likewise.
7273         (disable_probes_command): Likewise.
7274
7275 2017-09-12  Simon Marchi  <simon.marchi@ericsson.com>
7276
7277         * probe.h (struct probe_ops) <get_probes>: Change parameter from
7278         vec to std::vector.
7279         * probe.c (parse_probes_in_pspace): Update.
7280         (find_probes_in_objfile): Update.
7281         (find_probe_by_pc): Update.
7282         (collect_probes): Update.
7283         (probe_any_get_probes): Update.
7284         * symfile.h (struct sym_probe_fns) <sym_get_probes> Change
7285         return type to reference to std::vector.
7286         * dtrace-probe.c (dtrace_process_dof_probe): Change parameter to
7287         std::vector and update.
7288         (dtrace_process_dof): Likewise.
7289         (dtrace_get_probes): Likewise.
7290         * elfread.c (elf_get_probes): Change return type to std::vector,
7291         store an std::vector in bfd_data.
7292         (probe_key_free): Update to std::vector.
7293         * stap-probe.c (handle_stap_probe): Change parameter to
7294         std::vector and update.
7295         (stap_get_probes): Likewise.
7296         * symfile-debug.c (debug_sym_get_probes): Change return type to
7297         std::vector and update.
7298
7299 2017-09-11  Tom Tromey  <tom@tromey.com>
7300
7301         * breakpoint.c (program_breakpoint_here_p): Update.
7302         * target.c (make_scoped_restore_show_memory_breakpoints): Rename
7303         from make_show_memory_breakpoints_cleanup.  Return a
7304         scoped_restore_tmpl<int>.
7305         (restore_show_memory_breakpoints): Remove.
7306         * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint): Update.
7307         * mem-break.c (memory_validate_breakpoint): Update.
7308         * ia64-tdep.c (ia64_memory_insert_breakpoint): Update.
7309         (ia64_memory_remove_breakpoint): Update.
7310         (ia64_breakpoint_from_pc): Update.
7311         * target.h (make_scoped_restore_show_memory_breakpoints): Rename
7312         from make_show_memory_breakpoints_cleanup.
7313
7314 2017-09-11  Tom Tromey  <tom@tromey.com>
7315
7316         * d-namespace.c (d_lookup_symbol): Use std::string.
7317         (find_symbol_in_baseclass): Likewise.
7318
7319 2017-09-11  Tom Tromey  <tom@tromey.com>
7320
7321         * ctf.c (ctf_start): Use std::string.
7322
7323 2017-09-11  Tom Tromey  <tom@tromey.com>
7324
7325         * ada-lang.c (is_known_support_routine): Update.
7326         (ada_unhandled_exception_name_addr_from_raise): Update.
7327         * guile/scm-frame.c (gdbscm_frame_name): Update.
7328         * python/py-frame.c (frapy_name): Update.
7329         (frapy_function): Update.
7330         * stack.h (find_frame_funname): Update.
7331         * stack.c (find_frame_funname): Return unique_xmalloc_ptr.
7332         (print_frame): Update.
7333
7334 2017-09-11  Tom Tromey  <tom@tromey.com>
7335
7336         * findcmd.c (put_bits): Take a gdb::byte_vector.
7337         (parse_find_args): Return gdb::byte_vector.  "args" now const.
7338         Remove "pattern_bufp" and "pattern_lenp" parameters.  Remove
7339         cleanups.
7340         (find_command): Update.
7341
7342 2017-09-11  Tom Tromey  <tom@tromey.com>
7343
7344         * cli/cli-script.c (class scoped_restore_hook_in): New.
7345         (clear_hook_in_cleanup): Remove.
7346         (execute_cmd_pre_hook, execute_cmd_post_hook): Use
7347         scoped_restore_hook_in.
7348
7349 2017-09-11  Tom Tromey  <tom@tromey.com>
7350
7351         * cli/cli-script.c (restore_interp): Remove.
7352         (read_command_lines): Use scoped_restore_interp.
7353         * interps.c (scoped_restore_interp::set_temp): Rename from
7354         interp_set_temp.
7355         * interps.h (class scoped_restore_interp): New.
7356         (interp_set_temp): Remove.
7357
7358 2017-09-11  Tom Tromey  <tom@tromey.com>
7359
7360         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
7361         (mi_cmd_catch_exception, mi_catch_load_unload): Update.
7362         * mi/mi-cmd-break.c (setup_breakpoint_reporting): Return a
7363         scoped_restore.
7364         (mi_cmd_break_insert_1): Update.
7365         * mi/mi-cmd-break.h (setup_breakpoint_reporting): Return a
7366         scoped_restore.
7367
7368 2017-09-11  Tom Tromey  <tom@tromey.com>
7369
7370         * demangle.c (demangle_command): Update.
7371         * breakpoint.c (disable_command): Update.
7372         (enable_command): Update.
7373         (find_location_by_number): Make "number" const.  Use
7374         get_number_trailer.
7375         * cli/cli-utils.c (extract_arg): Return std::string.
7376         * probe.c (parse_probe_linespec): Update.  Change types.
7377         (collect_probes): Take string arguments.
7378         (parse_probe_linespec): Likewise.
7379         (info_probes_for_ops): Update.
7380         (enable_probes_command): Update.
7381         (disable_probes_command): Update.
7382         * break-catch-sig.c (catch_signal_split_args): Update.
7383         * mi/mi-parse.c (mi_parse): Update.
7384
7385 2017-09-11  Tom Tromey  <tom@tromey.com>
7386
7387         * language.h (language_enum): Make argument const.
7388         * language.c (language_enum): Make argument const.
7389
7390 2017-09-11  Tom Tromey  <tom@tromey.com>
7391
7392         * common/common-utils.h (skip_to_space): Remove macro, redeclare
7393         as function.
7394         (skip_to_space): Rename from skip_to_space_const.
7395         * common/common-utils.c (skip_to_space): New function.
7396         (skip_to_space): Rename from skip_to_space_const.
7397         * cli/cli-utils.h (get_number): Rename from get_number_const.
7398         (extract_arg): Rename from extract_arg_const.
7399         * cli/cli-utils.c (get_number): Rename from get_number_const.
7400         (extract_arg): Rename from extract_arg_const.
7401         (number_or_range_parser::get_number): Use ::get_number.
7402         * aarch64-linux-tdep.c, ada-lang.c, arm-linux-tdep.c, ax-gdb.c,
7403         break-catch-throw.c, breakpoint.c, cli/cli-cmds.c, cli/cli-dump.c,
7404         cli/cli-script.c, cli/cli-setshow.c, compile/compile.c,
7405         completer.c, demangle.c, disasm.c, findcmd.c, linespec.c,
7406         linux-tdep.c, linux-thread-db.c, location.c, mi/mi-parse.c,
7407         minsyms.c, nat/linux-procfs.c, printcmd.c, probe.c,
7408         python/py-breakpoint.c, record.c, rust-exp.y, serial.c, stack.c,
7409         stap-probe.c, tid-parse.c, tracepoint.c: Update all callers.
7410
7411 2017-09-11  Tom Tromey  <tom@tromey.com>
7412
7413         * python/python.c (do_start_initialization): Use
7414         py-event-types.def to initialize types.
7415         Define all object type structures.
7416         * python/python-internal.h: Don't declare event initialization
7417         functions.
7418         * python/py-threadevent.c (thread_event_object_type): Don't
7419         define.
7420         * python/py-stopevent.c (stop_event_object_type): Don't define.
7421         * python/py-signalevent.c (signal_event_object_type): Don't
7422         declare or define.
7423         * python/py-newobjfileevent.c (new_objfile_event_object_type)
7424         (clear_objfiles_event_object_type): Don't declare or define.
7425         * python/py-infevents.c (inferior_call_pre_event_object_type)
7426         (inferior_call_post_event_object_type)
7427         (register_changed_event_object_type)
7428         (memory_changed_event_object_type): Don't declare or define.
7429         * python/py-inferior.c (new_thread_event_object_type)
7430         (new_inferior_event_object_type)
7431         (inferior_deleted_event_object_type): Don't declare or define.
7432         * python/py-exitedevent.c (exited_event_object_type): Don't
7433         declare or define.
7434         * python/py-evts.c (gdbpy_initialize_py_events): Use
7435         py-all-events.def.
7436         * python/py-events.h (thread_event_object_type): Don't declare.
7437         (events_object): Use py-all-events.def.
7438         * python/py-event.h (GDBPY_NEW_EVENT_TYPE): Remove.  Use
7439         py-event-types.def.
7440         * python/py-event-types.def: New file.
7441         * python/py-continueevent.c (create_continue_event_object): Don't
7442         declare or define.
7443         * python/py-bpevent.c (breakpoint_event_object_type): Don't
7444         declare or define.
7445         * python/py-all-events.def: New file.
7446
7447 2017-09-11  Tom Tromey  <tom@tromey.com>
7448
7449         * python/py-threadevent.c (create_thread_event_object): Return
7450         gdbpy_ref.
7451         * python/py-stopevent.h (create_stop_event_object)
7452         (create_breakpoint_event_object, create_signal_event_object):
7453         Update.
7454         * python/py-stopevent.c (create_stop_event_object): Return
7455         gdbpy_ref.
7456         (emit_stop_event): Update.
7457         * python/py-signalevent.c (create_signal_event_object): Return
7458         gdbpy_ref.
7459         * python/py-infevents.c (create_inferior_call_event_object):
7460         Update.
7461         * python/py-event.h (create_event_object)
7462         (create_thread_event_object): Update.
7463         * python/py-event.c (create_event_object): Return gdbpy_ref.
7464         * python/py-continueevent.c: Return gdbpy_ref.
7465         * python/py-bpevent.c (create_breakpoint_event_object): Return
7466         gdbpy_ref.
7467
7468 2017-09-11  Tom Tromey  <tom@tromey.com>
7469
7470         PR python/15622:
7471         * NEWS: Add entry.
7472         * python/python.c (do_start_initialization): Initialize new event
7473         types.
7474         * python/python-internal.h (gdbpy_initialize_new_inferior_event)
7475         (gdbpy_initialize_inferior_deleted_event)
7476         (gdbpy_initialize_new_thread_event): Declare.
7477         * python/py-threadevent.c (create_thread_event_object): Add option
7478         "thread" parameter.
7479         * python/py-inferior.c (new_thread_event_object_type)
7480         (new_inferior_event_object_type)
7481         (inferior_deleted_event_object_type): Declare.
7482         (python_new_inferior, python_inferior_deleted): New functions.
7483         (add_thread_object): Emit new_thread event.
7484         (gdbpy_initialize_inferior): Attach new functions to corresponding
7485         observers.
7486         (new_thread, new_inferior, inferior_deleted): Define new event
7487         types.
7488         * python/py-evts.c (gdbpy_initialize_py_events): Add new
7489         registries.
7490         * python/py-events.h (events_object) <new_inferior,
7491         inferior_deleted, new_thread>: New fields.
7492         * python/py-event.h (create_thread_event_breakpoint): Add optional
7493         "thread" parameter.
7494
7495 2017-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
7496
7497         * utils.c (abort_with_message): Don't compare gdb_stderr to NULL,
7498         check current_ui instead.
7499         (internal_vproblem): Likewise.
7500
7501 2017-09-09  Simon Marchi  <simon.marchi@ericsson.com>
7502
7503         * thread.c (print_thread_info_1): Remove unnecessary calls to
7504         uiout->is_mi_like_p.
7505
7506 2017-09-09  Tom Tromey  <tom@tromey.com>
7507
7508         * namespace.h (add_using_directive): Update.
7509         * namespace.c (add_using_directive): Change type of excludes to
7510         std::vector.
7511         * dwarf2read.c (read_import_statement): Use std::vector.
7512         (read_namespace): Update.
7513         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
7514
7515 2017-09-09  Tom Tromey  <tom@tromey.com>
7516
7517         * linespec.c (create_sals_line_offset): Use gdb::def_vector.
7518
7519 2017-09-09  Tom Tromey  <tom@tromey.com>
7520
7521         * p-valprint.c (pascal_object_print_value): Use gdb::byte_vector.
7522
7523 2017-09-09  Tom Tromey  <tom@tromey.com>
7524
7525         * stack.c (func_command): Use gdb::def_vector.
7526
7527 2017-09-09  Tom Tromey  <tom@tromey.com>
7528
7529         * mi/mi-cmd-var.c (mi_cmd_var_list_children): Use gdb::optional,
7530         ui_out_emit_list, ui_out_emit_tuple.
7531         (mi_cmd_var_update): Likewise.
7532
7533 2017-09-09  Tom Tromey  <tom@tromey.com>
7534
7535         * mi/mi-interp.c (mi_user_selected_context_changed): Use
7536         ui_out_redirect_pop.
7537         * guile/scm-ports.c (ioscm_with_output_to_port_worker): Use
7538         ui_out_redirect_pop.
7539         * utils.c (do_ui_out_redirect_pop)
7540         (make_cleanup_ui_out_redirect_pop): Remove.
7541         * top.c (execute_command_to_string): Use ui_out_redirect_pop.
7542         * utils.h (make_cleanup_ui_out_redirect_pop): Remove.
7543         * ui-out.h (ui_out_redirect_pop): New class.
7544
7545 2017-09-09  Tom Tromey  <tom@tromey.com>
7546
7547         * mi/mi-main.c (output_cores): Use ui_out_emit_list.
7548         (list_available_thread_groups, mi_cmd_list_thread_groups)
7549         (mi_cmd_data_list_changed_registers, mi_cmd_data_read_memory)
7550         (mi_cmd_data_read_memory_bytes, mi_cmd_trace_frame_collected):
7551         Likewise.
7552
7553 2017-09-09  Tom Tromey  <tom@tromey.com>
7554
7555         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn): Use
7556         ui_out_emit_tuple.
7557
7558 2017-09-09  Tom Tromey  <tom@tromey.com>
7559
7560         * target.c (flash_erase_command): Use ui_out_emit_tuple.
7561         * stack.c (print_frame): Use ui_out_emit_tuple.
7562         * spu-tdep.c (info_spu_event_command): Use ui_out_emit_tuple.
7563         (info_spu_mailbox_command, info_spu_dma_command)
7564         (info_spu_proxydma_command): Likewise.
7565         * mi/mi-main.c (mi_cmd_trace_frame_collected): Use
7566         ui_out_emit_tuple, gdb::byte_vector, bin2hex.
7567         * mi/mi-cmd-file.c (mi_cmd_file_list_shared_libraries): Use
7568         ui_out_emit_tuple.
7569         * breakpoint.c (print_it_watchpoint): Use ui_out_emit_tuple.
7570
7571 2017-09-09  Tom Tromey  <tom@tromey.com>
7572
7573         * ui-out.h (make_cleanup_ui_out_table_begin_end): Remove.
7574         (class ui_out_emit_table): Update comment.
7575         * ui-out.c (do_cleanup_table_end)
7576         (make_cleanup_ui_out_table_begin_end): Remove.
7577         * spu-tdep.c (info_spu_mailbox_list): Use ui_out_emit_table.
7578         (info_spu_dma_cmdlist): Likewise.
7579         * probe.c (info_probes_for_ops): Use ui_out_emit_table.
7580         * darwin-nat-info.c (darwin_debug_regions_recurse): Use
7581         ui_out_emit_table.
7582
7583 2017-09-09  Tom Tromey  <tom@tromey.com>
7584
7585         * thread.c (print_thread_info_1): Use ui_out_emit_table,
7586         ui_out_emit_list, gdb::optional.
7587
7588 2017-09-09  John Baldwin  <jhb@FreeBSD.org>
7589
7590         * aarch64-linux-nat.c: Remove _initialize_aarch64_linux_nat
7591         prototype.
7592         * aarch64-linux-tdep.c: Remove _initialize_aarch64_linux_tdep
7593         prototype.
7594         * aarch64-newlib-tdep.c: Remove _initialize_aarch64_newlib_tdep
7595         prototype.
7596         * aarch64-tdep.c: Remove _initialize_aarch64_tdep prototype.
7597         * ada-exp.y: Remove _initialize_ada_exp prototype.
7598         * ada-lang.c: Remove _initialize_ada_language prototype.
7599         * ada-tasks.c: Remove _initialize_tasks prototype.
7600         * addrmap.c: Remove _initialize_addrmap prototype.
7601         * agent.c: Remove _initialize_agent prototype.
7602         * aix-thread.c: Remove _initialize_aix_thread prototype.
7603         * alpha-bsd-nat.c: Remove _initialize_alphabsd_nat prototype.
7604         * alpha-linux-nat.c: Remove _initialize_alpha_linux_nat prototype.
7605         * alpha-linux-tdep.c: Remove _initialize_alpha_linux_tdep
7606         prototype.
7607         * alpha-nbsd-tdep.c: Remove _initialize_alphanbsd_tdep prototype.
7608         * alpha-obsd-tdep.c: Remove _initialize_alphaobsd_tdep prototype.
7609         * alpha-tdep.c: Remove _initialize_alpha_tdep prototype.
7610         * amd64-darwin-tdep.c: Remove _initialize_amd64_darwin_tdep
7611         prototype.
7612         * amd64-dicos-tdep.c: Remove _initialize_amd64_dicos_tdep
7613         prototype.
7614         * amd64-fbsd-nat.c: Remove _initialize_amd64fbsd_nat prototype.
7615         * amd64-fbsd-tdep.c: Remove _initialize_amd64fbsd_tdep prototype.
7616         * amd64-linux-nat.c: Remove _initialize_amd64_linux_nat prototype.
7617         * amd64-linux-tdep.c: Remove _initialize_amd64_linux_tdep
7618         prototype.
7619         * amd64-nbsd-nat.c: Remove _initialize_amd64nbsd_nat prototype.
7620         * amd64-nbsd-tdep.c: Remove _initialize_amd64nbsd_tdep prototype.
7621         * amd64-obsd-nat.c: Remove _initialize_amd64obsd_nat prototype.
7622         * amd64-obsd-tdep.c: Remove _initialize_amd64obsd_tdep prototype.
7623         * amd64-sol2-tdep.c: Remove _initialize_amd64_sol2_tdep prototype.
7624         * amd64-tdep.c: Remove _initialize_amd64_tdep prototype.
7625         * amd64-windows-nat.c: Remove _initialize_amd64_windows_nat
7626         prototype.
7627         * amd64-windows-tdep.c: Remove _initialize_amd64_windows_tdep
7628         prototype.
7629         * annotate.c: Remove _initialize_annotate prototype.
7630         * arc-newlib-tdep.c: Remove _initialize_arc_newlib_tdep prototype.
7631         * arc-tdep.c: Remove _initialize_arc_tdep prototype.
7632         * arch-utils.c: Remove _initialize_gdbarch_utils prototype.
7633         * arm-linux-nat.c: Remove _initialize_arm_linux_nat prototype.
7634         * arm-linux-tdep.c: Remove _initialize_arm_linux_tdep prototype.
7635         * arm-nbsd-tdep.c: Remove _initialize_arm_netbsd_tdep prototype.
7636         * arm-obsd-tdep.c: Remove _initialize_armobsd_tdep prototype.
7637         * arm-symbian-tdep.c: Remove _initialize_arm_symbian_tdep
7638         prototype.
7639         * arm-tdep.c: Remove _initialize_arm_tdep prototype.
7640         * arm-wince-tdep.c: Remove _initialize_arm_wince_tdep prototype.
7641         * auto-load.c: Remove _initialize_auto_load prototype.
7642         * auxv.c: Remove _initialize_auxv prototype.
7643         * avr-tdep.c: Remove _initialize_avr_tdep prototype.
7644         * ax-gdb.c: Remove _initialize_ax_gdb prototype.
7645         * bfin-linux-tdep.c: Remove _initialize_bfin_linux_tdep prototype.
7646         * bfin-tdep.c: Remove _initialize_bfin_tdep prototype.
7647         * break-catch-sig.c: Remove _initialize_break_catch_sig prototype.
7648         * break-catch-syscall.c: Remove _initialize_break_catch_syscall
7649         prototype.
7650         * break-catch-throw.c: Remove _initialize_break_catch_throw
7651         prototype.
7652         * breakpoint.c: Remove _initialize_breakpoint prototype.
7653         * bsd-uthread.c: Remove _initialize_bsd_uthread prototype.
7654         * btrace.c: Remove _initialize_btrace prototype.
7655         * charset.c: Remove _initialize_charset prototype.
7656         * cli/cli-cmds.c: Remove _initialize_cli_cmds prototype.
7657         * cli/cli-dump.c: Remove _initialize_cli_dump prototype.
7658         * cli/cli-interp.c: Remove _initialize_cli_interp prototype.
7659         * cli/cli-logging.c: Remove _initialize_cli_logging prototype.
7660         * cli/cli-script.c: Remove _initialize_cli_script prototype.
7661         * coff-pe-read.c: Remove _initialize_coff_pe_read prototype.
7662         * coffread.c: Remove _initialize_coffread prototype.
7663         * compile/compile.c: Remove _initialize_compile prototype.
7664         * complaints.c: Remove _initialize_complaints prototype.
7665         * completer.c: Remove _initialize_completer prototype.
7666         * copying.awk: Remove _initialize_copying prototype.
7667         * copying.c: Regenerate.
7668         * core-regset.c: Remove _initialize_core_regset prototype.
7669         * corefile.c: Remove _initialize_core prototype.
7670         * corelow.c: Remove _initialize_corelow prototype.
7671         * cp-abi.c: Remove _initialize_cp_abi prototype.
7672         * cp-namespace.c: Remove _initialize_cp_namespace prototype.
7673         * cp-support.c: Remove _initialize_cp_support prototype.
7674         * cp-valprint.c: Remove _initialize_cp_valprint prototype.
7675         * cris-linux-tdep.c: Remove _initialize_cris_linux_tdep prototype.
7676         * cris-tdep.c: Remove _initialize_cris_tdep prototype.
7677         * ctf.c: Remove _initialize_ctf prototype.
7678         * d-lang.c: Remove _initialize_d_language prototype.
7679         * darwin-nat-info.c: Remove _initialize_darwin_info_commands
7680         prototype.
7681         * darwin-nat.c: Remove _initialize_darwin_inferior prototype.
7682         * dbxread.c: Remove _initialize_dbxread prototype.
7683         * dcache.c: Remove _initialize_dcache prototype.
7684         * demangle.c: Remove _initialize_demangler prototype.
7685         * disasm-selftests.c: Remove _initialize_disasm_selftests
7686         prototype.
7687         * disasm.c: Remove _initialize_disasm prototype.
7688         * dtrace-probe.c: Remove _initialize_dtrace_probe prototype.
7689         * dummy-frame.c: Remove _initialize_dummy_frame prototype.
7690         * dwarf2-frame-tailcall.c: Remove _initialize_tailcall_frame
7691         prototype.
7692         * dwarf2-frame.c: Remove _initialize_dwarf2_frame prototype.
7693         * dwarf2expr.c: Remove _initialize_dwarf2expr prototype.
7694         * dwarf2loc.c: Remove _initialize_dwarf2loc prototype.
7695         * dwarf2read.c: Remove _initialize_dwarf2_read prototype.
7696         * elfread.c: Remove _initialize_elfread prototype.
7697         * exec.c: Remove _initialize_exec prototype.
7698         * extension.c: Remove _initialize_extension prototype.
7699         * f-lang.c: Remove _initialize_f_language prototype.
7700         * f-valprint.c: Remove _initialize_f_valprint prototype.
7701         * fbsd-nat.c: Remove _initialize_fbsd_nat prototype.
7702         * fbsd-tdep.c: Remove _initialize_fbsd_tdep prototype.
7703         * filesystem.c: Remove _initialize_filesystem prototype.
7704         * findcmd.c: Remove _initialize_mem_search prototype.
7705         * fork-child.c: Remove _initialize_fork_child prototype.
7706         * frame-base.c: Remove _initialize_frame_base prototype.
7707         * frame-unwind.c: Remove _initialize_frame_unwind prototype.
7708         * frame.c: Remove _initialize_frame prototype.
7709         * frv-linux-tdep.c: Remove _initialize_frv_linux_tdep prototype.
7710         * frv-tdep.c: Remove _initialize_frv_tdep prototype.
7711         * ft32-tdep.c: Remove _initialize_ft32_tdep prototype.
7712         * gcore.c: Remove _initialize_gcore prototype.
7713         * gdb_bfd.c: Remove _initialize_gdb_bfd prototype.
7714         * gdbarch.c: Regenerate.
7715         * gdbarch.sh: Remove _initialize_gdbarch prototype.
7716         * gdbtypes.c: Remove _initialize_gdbtypes prototype.
7717         * gnu-nat.c: Remove _initialize_gnu_nat prototype.
7718         * gnu-v2-abi.c: Remove _initialize_gnu_v2_abi prototype.
7719         * gnu-v3-abi.c: Remove _initialize_gnu_v3_abi prototype.
7720         * go-lang.c: Remove _initialize_go_language prototype.
7721         * go32-nat.c: Remove _initialize_go32_nat prototype.
7722         * guile/guile.c: Remove _initialize_guile prototype.
7723         * h8300-tdep.c: Remove _initialize_h8300_tdep prototype.
7724         * hppa-linux-nat.c: Remove _initialize_hppa_linux_nat prototype.
7725         * hppa-linux-tdep.c: Remove _initialize_hppa_linux_tdep prototype.
7726         * hppa-nbsd-nat.c: Remove _initialize_hppanbsd_nat prototype.
7727         * hppa-nbsd-tdep.c: Remove _initialize_hppanbsd_tdep prototype.
7728         * hppa-obsd-nat.c: Remove _initialize_hppaobsd_nat prototype.
7729         * hppa-obsd-tdep.c: Remove _initialize_hppaobsd_tdep prototype.
7730         * hppa-tdep.c: Remove _initialize_hppa_tdep prototype.
7731         * i386-bsd-nat.c: Remove _initialize_i386bsd_nat prototype.
7732         * i386-cygwin-tdep.c: Remove _initialize_i386_cygwin_tdep
7733         prototype.
7734         * i386-darwin-tdep.c: Remove _initialize_i386_darwin_tdep
7735         prototype.
7736         * i386-dicos-tdep.c: Remove _initialize_i386_dicos_tdep prototype.
7737         * i386-fbsd-nat.c: Remove _initialize_i386fbsd_nat prototype.
7738         * i386-fbsd-tdep.c: Remove _initialize_i386fbsd_tdep prototype.
7739         * i386-gnu-nat.c: Remove _initialize_i386gnu_nat prototype.
7740         * i386-gnu-tdep.c: Remove _initialize_i386gnu_tdep prototype.
7741         * i386-linux-nat.c: Remove _initialize_i386_linux_nat prototype.
7742         * i386-linux-tdep.c: Remove _initialize_i386_linux_tdep prototype.
7743         * i386-nbsd-nat.c: Remove _initialize_i386nbsd_nat prototype.
7744         * i386-nbsd-tdep.c: Remove _initialize_i386nbsd_tdep prototype.
7745         * i386-nto-tdep.c: Remove _initialize_i386nto_tdep prototype.
7746         * i386-obsd-nat.c: Remove _initialize_i386obsd_nat prototype.
7747         * i386-obsd-tdep.c: Remove _initialize_i386obsd_tdep prototype.
7748         * i386-sol2-nat.c: Remove _initialize_amd64_sol2_nat prototype.
7749         * i386-sol2-tdep.c: Remove _initialize_amd64_sol2_tdep prototype.
7750         * i386-tdep.c: Remove _initialize_i386_tdep prototype.
7751         * i386-windows-nat.c: Remove _initialize_i386_windows_nat
7752         prototype.
7753         * ia64-libunwind-tdep.c: Remove _initialize_libunwind_frame
7754         prototype.
7755         * ia64-linux-nat.c: Remove _initialize_ia64_linux_nat prototype.
7756         * ia64-linux-tdep.c: Remove _initialize_ia64_linux_tdep prototype.
7757         * ia64-tdep.c: Remove _initialize_ia64_tdep prototype.
7758         * ia64-vms-tdep.c: Remove _initialize_ia64_vms_tdep prototype.
7759         * infcall.c: Remove _initialize_infcall prototype.
7760         * infcmd.c: Remove _initialize_infcmd prototype.
7761         * inferior.c: Remove _initialize_inferiors prototype.
7762         * inflow.c: Remove _initialize_inflow prototype.
7763         * infrun.c: Remove _initialize_infrun prototype.
7764         * interps.c: Remove _initialize_interpreter prototype.
7765         * iq2000-tdep.c: Remove _initialize_iq2000_tdep prototype.
7766         * jit.c: Remove _initialize_jit prototype.
7767         * language.c: Remove _initialize_language prototype.
7768         * linux-fork.c: Remove _initialize_linux_fork prototype.
7769         * linux-nat.c: Remove _initialize_linux_nat prototype.
7770         * linux-tdep.c: Remove _initialize_linux_tdep prototype.
7771         * linux-thread-db.c: Remove _initialize_thread_db prototype.
7772         * lm32-tdep.c: Remove _initialize_lm32_tdep prototype.
7773         * m2-lang.c: Remove _initialize_m2_language prototype.
7774         * m32c-tdep.c: Remove _initialize_m32c_tdep prototype.
7775         * m32r-linux-nat.c: Remove _initialize_m32r_linux_nat prototype.
7776         * m32r-linux-tdep.c: Remove _initialize_m32r_linux_tdep prototype.
7777         * m32r-tdep.c: Remove _initialize_m32r_tdep prototype.
7778         * m68hc11-tdep.c: Remove _initialize_m68hc11_tdep prototype.
7779         * m68k-bsd-nat.c: Remove _initialize_m68kbsd_nat prototype.
7780         * m68k-bsd-tdep.c: Remove _initialize_m68kbsd_tdep prototype.
7781         * m68k-linux-nat.c: Remove _initialize_m68k_linux_tdep prototype.
7782         * m68k-linux-tdep.c: Remove _initialize_m68k_linux_tdep prototype.
7783         * m68k-tdep.c: Remove _initialize_m68k_tdep prototype.
7784         * m88k-bsd-nat.c: Remove _initialize_m68kbsd_nat prototype.
7785         * m88k-tdep.c: Remove _initialize_m68kbsd_tdep prototype.
7786         * machoread.c: Remove _initialize_machoread prototype.
7787         * macrocmd.c: Remove _initialize_macrocmd prototype.
7788         * macroscope.c: Remove _initialize_macroscope prototype.
7789         * maint.c: Remove _initialize_maint_cmds prototype.
7790         * mdebugread.c: Remove _initialize_mdebugread prototype.
7791         * memattr.c: Remove _initialize_mem prototype.
7792         * mep-tdep.c: Remove _initialize_mep_tdep prototype.
7793         * mi/mi-cmd-env.c: Remove _initialize_mi_cmd_env prototype.
7794         * mi/mi-cmds.c: Remove _initialize_mi_cmds prototype.
7795         * mi/mi-interp.c: Remove _initialize_mi_interp prototype.
7796         * mi/mi-main.c: Remove _initialize_mi_main prototype.
7797         * microblaze-linux-tdep.c: Remove
7798         _initialize_microblaze_linux_tdep prototype.
7799         * microblaze-tdep.c: Remove _initialize_microblaze_tdep prototype.
7800         * mips-fbsd-nat.c: Remove _initialize_mips_fbsd_nat prototype.
7801         * mips-fbsd-tdep.c: Remove _initialize_mips_fbsd_tdep prototype.
7802         * mips-linux-nat.c: Remove _initialize_mips_linux_nat prototype.
7803         * mips-linux-tdep.c: Remove _initialize_mips_linux_tdep prototype.
7804         * mips-nbsd-nat.c: Remove _initialize_mipsnbsd_nat prototype.
7805         * mips-nbsd-tdep.c: Remove _initialize_mipsnbsd_tdep prototype.
7806         * mips-sde-tdep.c: Remove _initialize_mips_sde_tdep prototype.
7807         * mips-tdep.c: Remove _initialize_mips_tdep prototype.
7808         * mips64-obsd-nat.c: Remove _initialize_mips64obsd_nat prototype.
7809         * mips64-obsd-tdep.c: Remove _initialize_mips64obsd_tdep
7810         prototype.
7811         * mipsread.c: Remove _initialize_mipsread prototype.
7812         * mn10300-linux-tdep.c: Remove _initialize_mn10300_linux_tdep
7813         prototype.
7814         * mn10300-tdep.c: Remove _initialize_mn10300_tdep prototype.
7815         * moxie-tdep.c: Remove _initialize_moxie_tdep prototype.
7816         * msp430-tdep.c: Remove _initialize_msp430_tdep prototype.
7817         * mt-tdep.c: Remove _initialize_mt_tdep prototype.
7818         * nds32-tdep.c: Remove _initialize_nds32_tdep prototype.
7819         * nios2-linux-tdep.c: Remove _initialize_nios2_linux_tdep
7820         prototype.
7821         * nios2-tdep.c: Remove _initialize_nios2_tdep prototype.
7822         * nto-procfs.c: Remove _initialize_procfs prototype.
7823         * nto-tdep.c: Remove _initialize_nto_tdep prototype.
7824         * objc-lang.c: Remove _initialize_objc_language prototype.
7825         * objfiles.c: Remove _initialize_objfiles prototype.
7826         * observer.c: Remove observer_test_first_notification_function,
7827         observer_test_second_notification_function,
7828         observer_test_third_notification_function, and
7829         _initialize_observer prototypes.
7830         * opencl-lang.c: Remove _initialize_opencl_language prototypes.
7831         * osabi.c: Remove _initialize_gdb_osabi prototype.
7832         * osdata.c: Remove _initialize_osdata prototype.
7833         * p-valprint.c: Remove _initialize_pascal_valprint prototype.
7834         * parse.c: Remove _initialize_parse prototype.
7835         * ppc-fbsd-nat.c: Remove _initialize_ppcfbsd_nat prototype.
7836         * ppc-fbsd-tdep.c: Remove _initialize_ppcfbsd_tdep prototype.
7837         * ppc-linux-nat.c: Remove _initialize_ppc_linux_nat prototype.
7838         * ppc-linux-tdep.c: Remove _initialize_ppc_linux_tdep prototype.
7839         * ppc-nbsd-nat.c: Remove _initialize_ppcnbsd_nat prototype.
7840         * ppc-nbsd-tdep.c: Remove _initialize_ppcnbsd_tdep prototype.
7841         * ppc-obsd-nat.c: Remove _initialize_ppcobsd_nat prototype.
7842         * ppc-obsd-tdep.c: Remove _initialize_ppcobsd_tdep prototype.
7843         * printcmd.c: Remove _initialize_printcmd prototype.
7844         * probe.c: Remove _initialize_probe prototype.
7845         * proc-api.c: Remove _initialize_proc_api prototype.
7846         * proc-events.c: Remove _initialize_proc_events prototype.
7847         * proc-service.c: Remove _initialize_proc_service prototype.
7848         * procfs.c: Remove _initialize_procfs prototype.
7849         * psymtab.c: Remove _initialize_psymtab prototype.
7850         * python/python.c: Remove _initialize_python prototype.
7851         * ravenscar-thread.c: Remove _initialize_ravenscar prototype.
7852         * record-btrace.c: Remove _initialize_record_btrace prototype.
7853         * record-full.c: Remove _initialize_record_full prototype.
7854         * record.c: Remove _initialize_record prototype.
7855         * regcache.c: Remove _initialize_regcache prototype.
7856         * reggroups.c: Remove _initialize_reggroup prototype.
7857         * remote-notif.c: Remove _initialize_notif prototype.
7858         * remote-sim.c: Remove _initialize_remote_sim prototype.
7859         * remote.c: Remove _initialize_remote prototype.
7860         * reverse.c: Remove _initialize_reverse prototype.
7861         * rl78-tdep.c: Remove _initialize_rl78_tdep prototype.
7862         * rs6000-aix-tdep.c: Remove _initialize_rs6000_aix_tdep prototype.
7863         * rs6000-lynx178-tdep.c: Remove _initialize_rs6000_lynx178_tdep
7864         prototype.
7865         * rs6000-nat.c: Remove _initialize_rs6000_nat prototype.
7866         * rs6000-tdep.c: Remove _initialize_rs6000_tdep prototype.
7867         * rust-exp.y: Remove _initialize_rust_exp prototype.
7868         * rx-tdep.c: Remove _initialize_rx_tdep prototype.
7869         * s390-linux-nat.c: Remove _initialize_s390_nat prototype.
7870         * s390-linux-tdep.c: Remove _initialize_s390_tdep prototype.
7871         * score-tdep.c: Remove _initialize_score_tdep prototype.
7872         * selftest-arch.c: Remove _initialize_selftests_foreach_arch
7873         prototype.
7874         * ser-go32.c: Remove _initialize_ser_dos prototype.
7875         * ser-mingw.c: Remove _initialize_ser_windows prototype.
7876         * ser-pipe.c: Remove _initialize_ser_pipe prototype.
7877         * ser-tcp.c: Remove _initialize_ser_tcp prototype.
7878         * ser-unix.c: Remove _initialize_ser_hardwire prototype.
7879         * serial.c: Remove _initialize_serial prototype.
7880         * sh-linux-tdep.c: Remove _initialize_sh_linux_tdep prototype.
7881         * sh-nbsd-nat.c: Remove _initialize_shnbsd_nat prototype.
7882         * sh-nbsd-tdep.c: Remove _initialize_shnbsd_tdep prototype.
7883         * sh-tdep.c: Remove _initialize_sh_tdep prototype.
7884         * skip.c: Remove _initialize_step_skip prototype.
7885         * sol-thread.c: Remove _initialize_sol_thread prototype.
7886         * solib-aix.c: Remove _initialize_solib_aix prototype.
7887         * solib-darwin.c: Remove _initialize_darwin_solib prototype.
7888         * solib-dsbt.c: Remove _initialize_dsbt_solib prototype.
7889         * solib-frv.c: Remove _initialize_frv_solib prototype.
7890         * solib-spu.c: Remove _initialize_spu_solib prototype.
7891         * solib-svr4.c: Remove _initialize_svr4_solib prototype.
7892         * solib-target.c: Remove _initialize_solib_target prototype.
7893         * solib.c: Remove _initialize_solib prototype.
7894         * source.c: Remove _initialize_source prototype.
7895         * sparc-linux-nat.c: Remove _initialize_sparc_linux_nat prototype.
7896         * sparc-linux-tdep.c: Remove _initialize_sparc_linux_tdep
7897         prototype.
7898         * sparc-nat.c: Remove _initialize_sparc_nat prototype.
7899         * sparc-nbsd-nat.c: Remove _initialize_sparcnbsd_nat prototype.
7900         * sparc-nbsd-tdep.c: Remove _initialize_sparcnbsd_tdep prototype.
7901         * sparc-obsd-tdep.c: Remove _initialize_sparc32obsd_tdep
7902         prototype.
7903         * sparc-sol2-nat.c: Remove _initialize_sparc_sol2_nat prototype.
7904         * sparc-sol2-tdep.c: Remove _initialize_sparc_sol2_tdep prototype.
7905         * sparc-tdep.c: Remove _initialize_sparc_tdep prototype.
7906         * sparc64-fbsd-nat.c: Remove _initialize_sparc64fbsd_nat
7907         prototype.
7908         * sparc64-fbsd-tdep.c: Remove _initialize_sparc64fbsd_tdep
7909         prototype.
7910         * sparc64-linux-nat.c: Remove _initialize_sparc64_linux_nat
7911         prototype.
7912         * sparc64-linux-tdep.c: Remove _initialize_sparc64_linux_tdep
7913         prototype.
7914         * sparc64-nat.c: Remove _initialize_sparc64_nat prototype.
7915         * sparc64-nbsd-nat.c: Remove _initialize_sparc64nbsd_nat
7916         prototype.
7917         * sparc64-nbsd-tdep.c: Remove _initialize_sparc64nbsd_tdep
7918         prototype.
7919         * sparc64-obsd-nat.c: Remove _initialize_sparc64obsd_nat
7920         prototype.
7921         * sparc64-obsd-tdep.c: Remove _initialize_sparc64obsd_tdep
7922         prototype.
7923         * sparc64-sol2-tdep.c: Remove _initialize_sparc64_sol2_tdep
7924         prototype.
7925         * spu-linux-nat.c: Remove _initialize_spu_nat prototype.
7926         * spu-multiarch.c: Remove _initialize_spu_multiarch prototype.
7927         * spu-tdep.c: Remove _initialize_spu_tdep prototype.
7928         * stabsread.c: Remove _initialize_stabsread prototype.
7929         * stack.c: Remove _initialize_stack prototype.
7930         * stap-probe.c: Remove _initialize_stap_probe prototype.
7931         * std-regs.c: Remove _initialize_frame_reg prototype.
7932         * symfile-debug.c: Remove _initialize_symfile_debug prototype.
7933         * symfile-mem.c: Remove _initialize_symfile_mem prototype.
7934         * symfile.c: Remove _initialize_symfile prototype.
7935         * symmisc.c: Remove _initialize_symmisc prototype.
7936         * symtab.c: Remove _initialize_symtab prototype.
7937         * target-dcache.c: Remove _initialize_target_dcache prototype.
7938         * target-descriptions.c: Remove _initialize_target_descriptions
7939         prototype.
7940         * thread.c: Remove _initialize_thread prototype.
7941         * tic6x-linux-tdep.c: Remove _initialize_tic6x_linux_tdep
7942         prototype.
7943         * tic6x-tdep.c: Remove _initialize_tic6x_tdep prototype.
7944         * tilegx-linux-nat.c: Remove _initialize_tile_linux_nat prototype.
7945         * tilegx-linux-tdep.c: Remove _initialize_tilegx_linux_tdep
7946         prototype.
7947         * tilegx-tdep.c: Remove _initialize_tilegx_tdep prototype.
7948         * tracefile-tfile.c: Remove _initialize_tracefile_tfile prototype.
7949         * tracefile.c: Remove _initialize_tracefile prototype.
7950         * tracepoint.c: Remove _initialize_tracepoint prototype.
7951         * tui/tui-hooks.c: Remove _initialize_tui_hooks prototype.
7952         * tui/tui-interp.c: Remove _initialize_tui_interp prototype.
7953         * tui/tui-layout.c: Remove _initialize_tui_layout prototype.
7954         * tui/tui-regs.c: Remove _initialize_tui_regs prototype.
7955         * tui/tui-stack.c: Remove _initialize_tui_stack prototype.
7956         * tui/tui-win.c: Remove _initialize_tui_win prototype.
7957         * tui/tui.c: Remove _initialize_tui prototype.
7958         * typeprint.c: Remove _initialize_typeprint prototype.
7959         * user-regs.c: Remove _initialize_user_regs prototype.
7960         * utils.c: Remove _initialize_utils prototype.
7961         * v850-tdep.c: Remove _initialize_v850_tdep prototype.
7962         * valarith.c: Remove _initialize_valarith prototype.
7963         * valops.c: Remove _initialize_valops prototype.
7964         * valprint.c: Remove _initialize_valprint prototype.
7965         * value.c: Remove _initialize_values prototype.
7966         * varobj.c: Remove _initialize_varobj prototype.
7967         * vax-bsd-nat.c: Remove _initialize_vaxbsd_nat prototype.
7968         * vax-nbsd-tdep.c: Remove _initialize_vaxnbsd_tdep prototype.
7969         * vax-tdep.c: Remove _initialize_vax_tdep prototype.
7970         * windows-nat.c: Remove _initialize_windows_nat,
7971         _initialize_check_for_gdb_ini, and _initialize_loadable
7972         prototypes.
7973         * windows-tdep.c: Remove _initialize_windows_tdep prototype.
7974         * xcoffread.c: Remove _initialize_xcoffread prototype.
7975         * xml-support.c: Remove _initialize_xml_support prototype.
7976         * xstormy16-tdep.c: Remove _initialize_xstormy16_tdep prototype.
7977         * xtensa-linux-nat.c: Remove _initialize_xtensa_linux_nat
7978         prototype.
7979         * xtensa-linux-tdep.c: Remove _initialize_xtensa_linux_tdep
7980         prototype.
7981         * xtensa-tdep.c: Remove _initialize_xtensa_tdep prototype.
7982
7983 2017-09-08  Keith Seitz  <keiths@redhat.com>
7984
7985         * dwarf2read.c (struct field_info) <fnfields>: Remove unused
7986         field.
7987
7988 2017-09-08  Christoph Weinmann  <christoph.t.weinmann@intel.com>
7989
7990         * f-valprint.c (f_val_print): Remove check for one byte
7991         sized integers. Remove printing of character type.
7992
7993 2017-09-08  Frank Penczek  <frank.penczek@intel.com>
7994             Christoph Weinmann  <christoph.t.weinmann@intel.com>
7995             Bernhard Heckel  <bernhard.heckel@intel.com>
7996
7997         * f-typeprint.c (f_type_print_base): Use fprintfi_filtered
7998         to maintain proper indentation when printing pointers/refs.
7999
8000 2017-09-07  Joel Brobecker  <brobecker@adacore.com>
8001
8002         GDB 8.0.1 released.
8003
8004 2017-09-07  Joel Brobecker  <brobecker@adacore.com>
8005
8006         * NEWS (Changes in GDB 7.11): Remove entry for QStartupWithShell.
8007
8008 2017-09-05  Tom Tromey  <tom@tromey.com>
8009
8010         * parse.c (funcall_chain): Now a std::vector.
8011         (start_arglist, end_arglist): Simplify.
8012         (free_funcalls): Remove.
8013         (parse_exp_in_context_1): Remove cleanup.
8014
8015 2017-09-05  Tom Tromey  <tom@tromey.com>
8016
8017         * go-exp.y (go_parse): Don't create a cleanup.
8018
8019 2017-09-05  Tom Tromey  <tom@tromey.com>
8020
8021         * d-exp.y (PrimaryExpression): Use std::string.
8022         (d_parse): Don't create a cleanup.
8023
8024 2017-09-05  Tom Tromey  <tom@tromey.com>
8025
8026         * utils.c (do_clear_parser_state): Remove.
8027         (make_cleanup_clear_parser_state): Remove.
8028         * p-exp.y (pascal_parse): Use scoped_restore.
8029         * m2-exp.y (m2_parse): Use scoped_restore.
8030         * f-exp.y (f_parse): Use scoped_restore.
8031         * d-exp.y (d_parse): Use scoped_restore.
8032         * c-exp.y (c_parse): Use scoped_restore.
8033         * ada-exp.y (ada_parse): Use scoped_restore.
8034         * utils.h (make_cleanup_clear_parser_state): Remove.
8035
8036 2017-09-06  Keith Seitz  <keiths@redhat.com>
8037
8038         * dwarf2read.c (dw2_linkage_name_attr): New function.
8039         (dw2_linkage_name): New function.
8040         (dwarf2_compute_name, dwarf2_physname, read_call_site_scope)
8041         (guess_full_die_structure_name, dwarf2_name): Use dw2_linkage_name.
8042         (anonymous_struct_prefix, dwarf2_name): Use dw2_linkage_name_attr.
8043
8044 2017-09-06  Kamil Rytarowski  <n54@gmx.com>
8045
8046         * config/djgpp/djconfig.sh: Correct shell portability issue.
8047
8048 2017-09-06  Kamil Rytarowski  <n54@gmx.com>
8049
8050         * configure.nat: Define HAVE_NATIVE_GCORE_HOST on NetBSD.
8051
8052 2017-09-06  John Baldwin  <jhb@FreeBSD.org>
8053
8054         * Makefile.in (ALLDEPFILES): Add mips-fbsd-nat.c.
8055         * NEWS: Mention new FreeBSD/mips native configuration.
8056         * configure.host: Add aarch64*-*-freebsd*.
8057         * configure.nat: Likewise.
8058         * aarch64-fbsd-nat.c: New file.
8059
8060 2017-09-06  John Baldwin  <jhb@FreeBSD.org>
8061
8062         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-fbsd-tdep.o.
8063         (ALLDEPFILES): Add aarch64-fbsd-tdep.c.
8064         * NEWS: Mention new FreeBSD/aarch64 target.
8065         * configure.tgt: Add aarch64*-*-freebsd*.
8066         * aarch64-fbsd-tdep.c: New file.
8067         * aarch64-fbsd-tdep.h: New file.
8068
8069 2017-09-06  Kamil Rytarowski  <n54@gmx.com>
8070
8071         * MAINTAINERS (Write After Approval): Add Kamil Rytarowski.
8072
8073 2017-09-06  Jan Kratochvil  <jan.kratochvil@redhat.com>
8074
8075         * parse.c (find_minsym_type_and_address): Don't relocate addresses
8076         of TLS symbols.
8077
8078 2017-09-05  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8079
8080         * objfiles.c (get_objfile_bfd_data): Remove useless obstack_init
8081         call.
8082
8083 2017-09-05  Simon Marchi  <simon.marchi@ericsson.com>
8084
8085         * infrun.c (follow_exec): Call add_thread after
8086         target_find_description.
8087
8088 2017-09-05  Simon Marchi  <simon.marchi@ericsson.com>
8089
8090         * infrun.c (handle_inferior_event_1): When exec'ing, read
8091         stop_pc after follow_exec.
8092
8093 2017-09-05  Simon Marchi  <simon.marchi@ericsson.com>
8094
8095         * remote.c (process_g_packet): Update error message.
8096
8097 2017-09-05  Yao Qi  <yao.qi@linaro.org>
8098
8099         * configure.tgt (gdb_target_obs): Add i386.o for x86_64-*
8100         targets.
8101
8102 2017-09-05  Pedro Alves  <palves@redhat.com>
8103
8104         * eval.c (eval_call, evaluate_funcall): New functions, factored
8105         out from ...
8106         (evaluate_subexp_standard): ... this.
8107
8108 2017-09-05  Yao Qi  <yao.qi@linaro.org>
8109
8110         * amd64-tdep.c (amd64_target_description): Create target
8111         descriptions.
8112         (_initialize_amd64_tdep): Don't call functions
8113         initialize_tdesc_amd64_*.  Add self tests.
8114         * arch/amd64.c (amd64_create_target_description): Add parameter
8115         is_linux.  Call set_tdesc_osabi if is_linux is true.
8116         * arch/amd64.h (amd64_create_target_description): Update the
8117         declaration.
8118         * arch/i386.c (i386_create_target_description): Add parameter
8119         is_linux.  Call set_tdesc_osabi if is_linux is true.
8120         * arch/i386.h (i386_create_target_description): Update
8121         declaration.
8122         * configure.tgt: Add i386.o to gdb_target_obs.
8123         * features/Makefile (XMLTOC): Remove i386/*.xml.
8124         * features/i386/amd64-avx-avx512.c: Remove.
8125         * features/i386/amd64-avx-mpx-avx512-pku.c: Remove.
8126         * features/i386/amd64-avx-mpx.c: Remove.
8127         * features/i386/amd64-avx.c: Remove.
8128         * features/i386/amd64-mpx.c: Remove.
8129         * features/i386/amd64.c: Remove.
8130         * features/i386/i386-avx-avx512.c: Remove.
8131         * features/i386/i386-avx-mpx-avx512-pku.c: Remove.
8132         * features/i386/i386-avx-mpx.c: Remove.
8133         * features/i386/i386-avx.c: Remove.
8134         * features/i386/i386-mmx.c: Remove.
8135         * features/i386/i386-mpx.c: Remove.
8136         * features/i386/i386.c: Remove.
8137         * i386-tdep.c: Don't include features/i386/i386*.c., include
8138         target-descriptions.h and arch/i386.h.
8139         (i386_target_description): Create target descriptions.
8140         (i386_gdbarch_init): Don't call initialize_tdesc_i386_*
8141         functions.  Do self tests.
8142
8143 2017-09-05  Yao Qi  <yao.qi@linaro.org>
8144
8145         * features/Makefile (XMLTOC): Remove i386/amd64XXX-linux.xml.
8146         * features/i386/amd64-avx-avx512-linux.c: Removed.
8147         * features/i386/amd64-avx-linux.c: Removed.
8148         * features/i386/amd64-avx-mpx-avx512-pku-linux.c: Removed.
8149         * features/i386/amd64-avx-mpx-linux.c: Removed.
8150         * features/i386/amd64-linux.c: Removed.
8151         * features/i386/amd64-mpx-linux.c: Removed.
8152         * features/i386/x32-avx-avx512-linux.c: Removed.
8153         * features/i386/x32-avx-linux.c: Removed.
8154         * features/i386/x32-linux.c: Removed.
8155
8156 2017-09-05  Yao Qi  <yao.qi@linaro.org>
8157
8158         * amd64-linux-tdep.c: Include arch/amd64.h.  Don't include
8159         features/i386/*.c.
8160         (amd64_linux_read_description): Call
8161         amd64_create_target_description.
8162         * arch/amd64.c: New file.
8163         * arch/amd64.h: New file.
8164         * configure.tgt (x86_64-*-linux*): Append amd64.o.
8165         * Makefile.in (ALL_64_TARGET_OBS): Append amd64.o.
8166
8167 2017-09-05  Yao Qi  <yao.qi@linaro.org>
8168
8169         * amd64-linux-tdep.c: Don't include amd64-XXX-linux and
8170         x32-XXX-linux.c.  Include 64bit-XX.c and x32-XX.c.
8171         (amd64_linux_read_description): Create target descriptions.
8172         (_initialize_amd64_linux_tdep): Don't call initialize_tdesc_XXX
8173         functions.  Add unit tests.
8174         * features/Makefile (FEATURE_XMLFILES): Append 64bit-XXX.xml and
8175         x32-core.xml.
8176         * features/i386/64bit-avx.c: Generated.
8177         * features/i386/64bit-avx512.c: Generated.
8178         * features/i386/64bit-core.c: Generated.
8179         * features/i386/64bit-linux.c: Generated.
8180         * features/i386/64bit-mpx.c: Generated.
8181         * features/i386/64bit-pkeys.c: Generated.
8182         * features/i386/64bit-segments.c: Generated.
8183         * features/i386/64bit-sse.c: Generated.
8184         * features/i386/x32-core.c: Generated.
8185         * target-descriptions.c (maint_print_c_tdesc_cmd): Print feature
8186         c files for amd64-linux and x32-linux.
8187
8188 2017-09-05  Yao Qi  <yao.qi@linaro.org>
8189
8190         * amd64-linux-tdep.c (amd64_linux_read_description): New
8191         function.
8192         (amd64_linux_core_read_description): Call
8193         amd64_linux_read_description.
8194         (amd64_linux_init_abi): Likewise.
8195         (amd64_x32_linux_init_abi): Likewise.
8196         * amd64-linux-tdep.h (amd64_linux_read_description): Declare.
8197         * x86-linux-nat.c (x86_linux_read_description): Call
8198         amd64_linux_read_description.
8199
8200 2017-09-05  Yao Qi  <yao.qi@linaro.org>
8201
8202         * amd64-linux-tdep.c (amd64_linux_core_read_description): Update
8203         comments.
8204
8205 2017-09-05  Yao Qi  <yao.qi@linaro.org>
8206
8207         * features/Makefile (XMLTOC): Remove i386/i386-XX-linux.xml.
8208         * features/i386/i386-avx-avx512-linux.c: Remove.
8209         * features/i386/i386-avx-linux.c: Remove.
8210         * features/i386/i386-avx-mpx-avx512-pku-linux.c: Remove.
8211         * features/i386/i386-avx-mpx-linux.c: Remove.
8212         * features/i386/i386-linux.c: Remove.
8213         * features/i386/i386-mmx-linux.c: Remove.
8214         * features/i386/i386-mpx-linux.c: Remove.
8215
8216 2017-09-05  Yao Qi  <yao.qi@linaro.org>
8217
8218         * Makefile.in (ALL_TARGET_OBS): Add i386.o.
8219         (SFILES): Add arch/i386.c.
8220         (HFILES_NO_SRCDIR): Add arch/i386.h.
8221         * arch/i386.c: New file.
8222         * arch/i386.h: New file.
8223         * arch/tdesc.h (allocate_target_description): Declare.
8224         (set_tdesc_architecture): Declare.
8225         (set_tdesc_osabi): Declare.
8226         * configure.tgt (i[34567]86-*-linux*): Add i386.o.
8227         * i386-linux-tdep.c: Don't include ../features/i386/32bit-XXX.c.
8228         include arch/i386.h.
8229         (i386_linux_read_description): Remove code and call
8230         i386_create_target_description.
8231         (set_tdesc_architecture): New function.
8232         (set_tdesc_osabi): New function.
8233         * target-descriptions.h (allocate_target_description): Remove.
8234
8235 2017-09-05  Yao Qi  <yao.qi@linaro.org>
8236
8237         * arch/tdesc.h (tdesc_create_feature): Add an argument xml.
8238         * target-descriptions.c (tdesc_create_feature): Likewise, and
8239         adjust code.
8240         * features/i386/32bit-avx.c: Re-generated.
8241         * features/i386/32bit-avx512.c: Re-generated.
8242         * features/i386/32bit-core.c: Re-generated.
8243         * features/i386/32bit-linux.c: Re-generated.
8244         * features/i386/32bit-mpx.c: Re-generated.
8245         * features/i386/32bit-pkeys.c: Re-generated.
8246         * features/i386/32bit-sse.c: Re-generated.
8247
8248 2017-09-05  Yao Qi  <yao.qi@linaro.org>
8249
8250         * regformats/regdef.h (struct reg): Override operator == and !=.
8251
8252 2017-09-05  Yao Qi  <yao.qi@linaro.org>
8253
8254         * arch/tdesc.h: New file.
8255         * regformats/regdat.sh: Generate code using tdesc_create_reg.
8256         * target-descriptions.c: Update comments.
8257         * target-descriptions.h: Include "arch/tdesc.h".  Remove the
8258         declarations.
8259         * features/i386/32bit-avx.c: Re-generated.
8260         * features/i386/32bit-avx512.c: Re-generated.
8261         * features/i386/32bit-core.c: Re-generated.
8262         * features/i386/32bit-linux.c: Re-generated.
8263         * features/i386/32bit-mpx.c: Re-generated.
8264         * features/i386/32bit-pkeys.c: Re-generated.
8265         * features/i386/32bit-sse.c: Re-generated.
8266
8267 2017-09-05  Yao Qi  <yao.qi@linaro.org>
8268
8269         * regformats/regdat.sh: Update generated code.
8270
8271 2017-09-05  Yao Qi  <yao.qi@linaro.org>
8272
8273         * regformats/regdat.sh: Adjust code order.
8274
8275 2017-09-05  Simon Marchi  <simon.marchi@ericsson.com>
8276
8277         * expprint.c (dump_subexp_body_standard): Use constant format
8278         string in fprintf_filtered call.
8279
8280 2017-09-04  John Baldwin  <jhb@FreeBSD.org>
8281
8282         * configure.nat: Add "x86-nat.o x86-dregs.o" for NetBSD/amd64 and
8283         NetBSD/i386.
8284         * x86-bsd-nat.c [!DBREG_DRX && __NetBSD__]: Define DBREG_DRX.
8285
8286 2017-09-04  John Baldwin  <jhb@FreeBSD.org>
8287
8288         * bsd-kvm.o: Make <sys/user.h> conditional on HAVE_SYS_USER_H.
8289
8290 2017-09-04  John Baldwin  <jhb@FreeBSD.org>
8291
8292         * bsd-kvm.o: Define _KMEMUSER.
8293         * configure.ac: Define _KMEMUSER when checking for "struct lwp".
8294         * configure: Regenerate.
8295
8296 2017-09-04  John Baldwin  <jhb@FreeBSD.org>
8297
8298         * amd64-fbsd-nat.c: Add include of "x86-xstate.h".
8299         * i386-fbsd-nat.c: Likewise.
8300
8301 2017-09-04  John Baldwin  <jhb@FreeBSD.org>
8302
8303         * unittests/array-view-selftests.c: Add include of <array>.
8304
8305 2017-09-04  John Baldwin  <jhb@FreeBSD.org>
8306
8307         * spu-tdep.c (flush_ea_cache): Add missing argument to
8308         call_function_by_hand.
8309
8310 2017-09-04  Pedro Alves  <palves@redhat.com>
8311
8312         * NEWS (Safer support for debugging with no debug info): New.
8313
8314 2017-09-04  Pedro Alves  <palves@redhat.com>
8315
8316         * c-exp.y (function_method, function_method_void): Add current
8317         instance flags to TYPE_INSTANCE.
8318         * dwarf2read.c (check_modifier): New.
8319         (compute_delayed_physnames): Assert that only C++ adds delayed
8320         physnames.  Mark fn_fields as const/volatile depending on
8321         physname.
8322         * eval.c (make_params): New type_instance_flags parameter.  Use
8323         it as the new type's instance flags.
8324         (evaluate_subexp_standard) <TYPE_INSTANCE>: Extract the instance
8325         flags element and pass it to make_params.
8326         * expprint.c (print_subexp_standard) <TYPE_INSTANCE>: Handle
8327         instance flags element.
8328         (dump_subexp_body_standard) <TYPE_INSTANCE>: Likewise.
8329         * gdbtypes.h: Include "enum-flags.h".
8330         (type_instance_flags): New enum-flags type.
8331         (TYPE_CONST, TYPE_VOLATILE, TYPE_RESTRICT, TYPE_ATOMIC)
8332         (TYPE_CODE_SPACE, TYPE_DATA_SPACE): Return boolean.
8333         * parse.c (operator_length_standard) <TYPE_INSTANCE>: Adjust.
8334         (follow_type_instance_flags): New function.
8335         (operator_check_standard) <TYPE_INSTANCE>: Adjust.
8336         * parser-defs.h (follow_type_instance_flags): Declare.
8337         * valops.c (value_struct_elt_for_reference): const/volatile must
8338         match too.
8339
8340 2017-09-04  Pedro Alves  <palves@redhat.com>
8341
8342         * cp-namespace.c (cp_search_static_and_baseclasses): Handle
8343         function/method scopes; lookup the nested name as a function local
8344         static variable.
8345
8346 2017-09-04  Pedro Alves  <palves@redhat.com>
8347
8348         (%type <voidval>): Add function_method.
8349         * c-exp.y (exp): New production for calls with no arguments.
8350         (function_method, function_method_void_or_typelist): New
8351         productions.
8352         (exp): New production for "method()::static_var".
8353         * eval.c (evaluate_subexp_standard): Handle OP_FUNC_STATIC_VAR.
8354         * expprint.c (print_subexp_standard, dump_subexp_body_standard):
8355         Handle OP_FUNC_STATIC_VAR.
8356         * parse.c (operator_length_standard):
8357         Handle OP_FUNC_STATIC_VAR.
8358
8359 2017-09-04  Pedro Alves  <palves@redhat.com>
8360
8361         * eval.c (evaluate_subexp_standard): Remove UNOP_MEMVAL_TLS
8362         handling.
8363         * expprint.c (print_subexp_standard, dump_subexp_body_standard):
8364         Ditto.
8365         * parse.c (operator_length_standard, operator_check_standard):
8366         Ditto.
8367         * std-operator.def (UNOP_MEMVAL_TLS): Delete.
8368
8369 2017-09-04  Pedro Alves  <palves@redhat.com>
8370
8371         * ax-gdb.c: Include "typeprint.h".
8372         (gen_expr_for_cast): New function.
8373         (gen_expr) <OP_CAST, OP_CAST_TYPE>: Use it.
8374         <OP_VAR_VALUE, OP_MSYM_VAR_VALUE>: Error out if the variable's
8375         type is unknown.
8376         * dwarf2read.c (new_symbol_full): Fallback to int instead of
8377         nodebug_data_symbol.
8378         * eval.c: Include "typeprint.h".
8379         (evaluate_subexp_standard) <OP_VAR_VALUE, OP_VAR_MSYM_VALUE>:
8380         Error out if symbol has unknown type.
8381         <UNOP_CAST, UNOP_CAST_TYPE>: Common bits factored out to
8382         evaluate_subexp_for_cast.
8383         (evaluate_subexp_for_address, evaluate_subexp_for_sizeof): Handle
8384         OP_VAR_MSYM_VALUE.
8385         (evaluate_subexp_for_cast): New function.
8386         * gdbtypes.c (init_nodebug_var_type): New function.
8387         (objfile_type): Use it to initialize types of variables with no
8388         debug info.
8389         * typeprint.c (error_unknown_type): New.
8390         * typeprint.h (error_unknown_type): New declaration.
8391         * compile/compile-c-types.c (convert_type_basic): Handle
8392         TYPE_CODE_ERROR; warn and fallback to int for variables with
8393         unknown type.
8394
8395 2017-09-04  Pedro Alves  <palves@redhat.com>
8396
8397         * eval.c (evaluate_var_value): New function, factored out from ...
8398         (evaluate_subexp_standard): ... here.
8399
8400 2017-09-04  Pedro Alves  <palves@redhat.com>
8401
8402         * eval.c (evaluate_subexp_standard) <UNOP_COMPLEMENT, UNOP_ADDR>:
8403         Remove useless assignments to 'op'.
8404
8405 2017-09-04  Pedro Alves  <palves@redhat.com>
8406
8407         * eval.c (eval_skip_value): New function.
8408         (evaluate_subexp_standard): Use it.
8409
8410 2017-09-04  Pedro Alves  <palves@redhat.com>
8411
8412         * eval.c (evaluate_subexp_standard): <OP_FUNCALL>: Extract
8413         function name from symbol/minsym and pass it to
8414         error_call_unknown_return_type.
8415
8416 2017-09-04  Pedro Alves  <palves@redhat.com>
8417
8418         * ada-lang.c (resolve_subexp): Handle OP_VAR_MSYM_VALUE.
8419         * ax-gdb.c (gen_msym_var_ref): New function.
8420         (gen_expr): Handle OP_VAR_MSYM_VALUE.
8421         * eval.c (evaluate_var_msym_value): New function.
8422         * eval.c (evaluate_subexp_standard): Handle OP_VAR_MSYM_VALUE.
8423         <OP_FUNCALL>: Extract function name from symbol/minsym and pass it
8424         to call_function_by_hand.
8425         * expprint.c (print_subexp_standard, dump_subexp_body_standard):
8426         Handle OP_VAR_MSYM_VALUE.
8427         (union exp_element) <msymbol>: New field.
8428         * minsyms.h (struct type): Forward declare.
8429         (find_minsym_type_and_address): Declare.
8430         * parse.c (write_exp_elt_msym): New function.
8431         (write_exp_msymbol): Delete, refactored as ...
8432         (find_minsym_type_and_address): ... this new function.
8433         (write_exp_msymbol): Reimplement using OP_VAR_MSYM_VALUE.
8434         (operator_length_standard, operator_check_standard): Handle
8435         OP_VAR_MSYM_VALUE.
8436         * std-operator.def (OP_VAR_MSYM_VALUE): New.
8437
8438 2017-09-04  Pedro Alves  <palves@redhat.com>
8439
8440         * ada-lang.c (ada_evaluate_subexp) <TYPE_CODE_FUNC>: Don't handle
8441         TYPE_GNU_IFUNC specially here.  Throw error if return type is
8442         unknown.
8443         * ada-typeprint.c (print_func_type): Handle functions with unknown
8444         return type.
8445         * c-typeprint.c (c_type_print_base): Handle functions and methods
8446         with unknown return type.
8447         * compile/compile-c-symbols.c (convert_symbol_bmsym)
8448         <mst_text_gnu_ifunc>: Use nodebug_text_gnu_ifunc_symbol.
8449         * compile/compile-c-types.c: Include "objfiles.h".
8450         (convert_func): For functions with unknown return type, warn and
8451         default to int.
8452         * compile/compile-object-run.c (compile_object_run): Adjust call
8453         to call_function_by_hand_dummy.
8454         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust call to
8455         call_function_by_hand.
8456         * eval.c (evaluate_subexp_standard): Adjust calls to
8457         call_function_by_hand.  Handle functions and methods with unknown
8458         return type.  Pass expect_type to call_function_by_hand.
8459         * f-typeprint.c (f_type_print_base): Handle functions with unknown
8460         return type.
8461         * gcore.c (call_target_sbrk): Adjust call to
8462         call_function_by_hand.
8463         * gdbtypes.c (objfile_type): Leave nodebug text symbol with NULL
8464         return type instead of int.  Make nodebug_text_gnu_ifunc_symbol be
8465         an integer address type instead of nodebug.
8466         * guile/scm-value.c (gdbscm_value_call): Adjust call to
8467         call_function_by_hand.
8468         * infcall.c (error_call_unknown_return_type): New function.
8469         (call_function_by_hand): New "default_return_type" parameter.
8470         Pass it down.
8471         (call_function_by_hand_dummy): New "default_return_type"
8472         parameter.  Use it instead of defaulting to int.  If there's no
8473         default and the return type is unknown, throw an error.  If
8474         there's a default return type, and the called function has no
8475         debug info, then assume the function is prototyped.
8476         * infcall.h (call_function_by_hand, call_function_by_hand_dummy):
8477         New "default_return_type" parameter.
8478         (error_call_unknown_return_type): New declaration.
8479         * linux-fork.c (call_lseek): Cast return type of lseek.
8480         (inferior_call_waitpid, checkpoint_command): Adjust calls to
8481         call_function_by_hand.
8482         * linux-tdep.c (linux_infcall_mmap, linux_infcall_munmap): Adjust
8483         calls to call_function_by_hand.
8484         * m2-typeprint.c (m2_procedure): Handle functions with unknown
8485         return type.
8486         * objc-lang.c (lookup_objc_class, lookup_child_selector)
8487         (value_nsstring, print_object_command): Adjust calls to
8488         call_function_by_hand.
8489         * p-typeprint.c (pascal_type_print_varspec_prefix): Handle
8490         functions with unknown return type.
8491         (pascal_type_print_func_varspec_suffix): New function.
8492         (pascal_type_print_varspec_suffix) <TYPE_CODE_FUNC,
8493         TYPE_CODE_METHOD>: Use it.
8494         * python/py-value.c (valpy_call): Adjust call to
8495         call_function_by_hand.
8496         * rust-lang.c (rust_evaluate_funcall): Adjust call to
8497         call_function_by_hand.
8498         * valarith.c (value_x_binop, value_x_unop): Adjust calls to
8499         call_function_by_hand.
8500         * valops.c (value_allocate_space_in_inferior): Adjust call to
8501         call_function_by_hand.
8502         * typeprint.c (type_print_unknown_return_type): New function.
8503         * typeprint.h (type_print_unknown_return_type): New declaration.
8504
8505 2017-09-04  Pedro Alves  <palves@redhat.com>
8506
8507         * gdbtypes.c (lookup_function_type_with_arguments): Mark function
8508         types with more than one parameter as prototyped.
8509
8510 2017-09-04  Pedro Alves  <palves@redhat.com>
8511
8512         * cli/cli-cmds.c (print_disassembly, disassemble_current_function)
8513         (disassemble_command): Use gdb_disassembly_flags instead of bare
8514         int.
8515         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn)
8516         (dump_insns, do_mixed_source_and_assembly_deprecated)
8517         (do_mixed_source_and_assembly, do_assembly_only, gdb_disassembly):
8518         Use gdb_disassembly_flags instead of bare int.
8519         * disasm.h (DISASSEMBLY_SOURCE_DEPRECATED, DISASSEMBLY_RAW_INSN)
8520         (DISASSEMBLY_OMIT_FNAME, DISASSEMBLY_FILENAME)
8521         (DISASSEMBLY_OMIT_PC, DISASSEMBLY_SOURCE)
8522         (DISASSEMBLY_SPECULATIVE): No longer macros.  Instead they're...
8523         (enum gdb_disassembly_flag): ... values of this new enumeration.
8524         (gdb_disassembly_flags): Define.
8525         (gdb_disassembly)
8526         (gdb_pretty_print_disassembler::pretty_print_insn): Use it.
8527         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Use
8528         gdb_disassembly_flags instead of bare int.
8529         * record-btrace.c (btrace_insn_history)
8530         (record_btrace_insn_history, record_btrace_insn_history_range)
8531         (record_btrace_insn_history_from): Use gdb_disassembly_flags
8532         instead of bare int.
8533         * record.c (get_insn_history_modifiers, cmd_record_insn_history):
8534         Use gdb_disassembly_flags instead of bare int.
8535         * target-debug.h (target_debug_print_gdb_disassembly_flags):
8536         Define.
8537         * target-delegates.c: Regenerate.
8538         * target.c (target_insn_history, target_insn_history_from)
8539         (target_insn_history_range): Use gdb_disassembly_flags instead of
8540         bare int.
8541         * target.h: Include "disasm.h".
8542         (struct target_ops) <to_insn_history, to_insn_history_from,
8543         to_insn_history_range>: Use gdb_disassembly_flags instead of bare
8544         int.
8545         (target_insn_history, target_insn_history_from)
8546         (target_insn_history_range): Use gdb_disassembly_flags instead of
8547         bare int.
8548
8549 2017-09-04  Simon Marchi  <simon.marchi@ericsson.com>
8550
8551         * cli/cli-script.c (build_command_line): For if/while commands,
8552         check whether args is empty.
8553
8554 2017-09-04  Simon Marchi  <simon.marchi@ericsson.com>
8555
8556         * cli/cli-script.h (enum misc_command_type): Move from defs.h.
8557         (enum command_control_type): Likewise.
8558         (struct command_line): Likewise.
8559         (free_command_lines): Likewise.
8560         (struct command_lines_deleter): Likewise.
8561         (command_line_up): Likewise.
8562         (read_command_lines): Likewise.
8563         (read_command_lines_1): Likewise.
8564         * defs.h (enum misc_command_type): Move to cli/cli-script.h.
8565         (enum command_control_type): Likewise.
8566         (struct command_line): Likewise.
8567         (free_command_lines): Likewise.
8568         (struct command_lines_deleter): Likewise.
8569         (command_line_up): Likewise.
8570         (read_command_lines): Likewise.
8571         (read_command_lines_1): Likewise.
8572         * breakpoint.h: Include cli/cli-script.h.
8573         * extension-priv.h: Likewise.
8574         * gdbcmd.h: Likewise.
8575
8576 2017-09-04  Pedro Alves  <palves@redhat.com>
8577
8578         * ada-lang.c (is_known_support_routine): Move sal declaration to
8579         where it is initialized.
8580         * breakpoint.c (create_internal_breakpoint, init_catchpoint)
8581         (parse_breakpoint_sals, decode_static_tracepoint_spec)
8582         (clear_command, update_static_tracepoint): Remove init_sal
8583         references.  Move declarations closer to initializations.
8584         * cli/cli-cmds.c (list_command): Move sal declarations closer to
8585         initializations.
8586         * elfread.c (elf_gnu_ifunc_resolver_stop): Remove init_sal
8587         references.  Move sal declarations closer to initializations.
8588         * frame.c (find_frame_sal): Return a symtab_and_line via function
8589         return instead of output parameter.  Remove init_sal references.
8590         * frame.h (find_frame_sal): Return a symtab_and_line via function
8591         return instead of output parameter.
8592         * guile/scm-frame.c (gdbscm_frame_sal): Adjust.
8593         * guile/scm-symtab.c (stscm_make_sal_smob): Use in-place new
8594         instead of memset.
8595         (gdbscm_find_pc_line): Remove init_sal reference.
8596         * infcall.c (call_function_by_hand_dummy): Remove init_sal
8597         references.  Move declarations closer to initializations.
8598         * infcmd.c (set_step_frame): Update.  Move declarations closer to
8599         initializations.
8600         (finish_backward): Remove init_sal references.  Move declarations
8601         closer to initializations.
8602         * infrun.c (process_event_stop_test, handle_step_into_function)
8603         (insert_hp_step_resume_breakpoint_at_frame)
8604         (insert_step_resume_breakpoint_at_caller): Likewise.
8605         * linespec.c (create_sals_line_offset, decode_digits_ordinary)
8606         (symbol_to_sal): Likewise.
8607         * probe.c (parse_probes_in_pspace): Remove init_sal reference.
8608         * python/py-frame.c (frapy_find_sal): Move sal declaration closer
8609         to its initialization.
8610         * reverse.c (save_bookmark_command): Use new/delete.  Remove
8611         init_sal references.  Move declarations closer to initializations.
8612         * source.c (get_current_source_symtab_and_line): Remove brace
8613         initialization.
8614         (set_current_source_symtab_and_line): Now takes the sal by const
8615         reference.  Remove brace initialization.
8616         (line_info): Remove init_sal reference.
8617         * source.h (set_current_source_symtab_and_line): Now takes a
8618         symtab_and_line via const reference.
8619         * stack.c (set_current_sal_from_frame): Adjust.
8620         (print_frame_info): Adjust.
8621         (get_last_displayed_sal): Return the sal via function return
8622         instead of via output parameter.  Simplify.
8623         (frame_info): Adjust.
8624         * stack.h (get_last_displayed_sal): Return the sal via function
8625         return instead of via output parameter.
8626         * symtab.c (init_sal): Delete.
8627         (find_pc_sect_line): Remove init_sal references.  Move
8628         declarations closer to initializations.
8629         (find_function_start_sal): Remove init_sal references.  Move
8630         declarations closer to initializations.
8631         * symtab.h (struct symtab_and_line): In-class initialize all
8632         fields.
8633         * tracepoint.c (set_traceframe_context)
8634         (print_one_static_tracepoint_marker): Remove init_sal references.
8635         Move declarations closer to initializations.
8636         * tui/tui-disasm.c (tui_show_disassem_and_update_source): Adjust.
8637         * tui/tui-stack.c (tui_show_frame_info): Adjust.  Move
8638         declarations closer to initializations.
8639         * tui/tui-winsource.c (tui_update_source_window_as_is): Remove
8640         init_sal references.  Adjust.
8641
8642 2017-09-04  Pedro Alves  <palves@redhat.com>
8643
8644         * ax-gdb.c (agent_command_1): Use range-for.
8645         * break-catch-throw.c (re_set_exception_catchpoint): Update.
8646         * breakpoint.c: Include "common/array-view.h".
8647         (init_breakpoint_sal, create_breakpoint_sal): Change sals
8648         parameter from struct symtabs_and_lines to
8649         array_view<symtab_and_line>.  Adjust.  Use range-for.  Update.
8650         (breakpoint_sals_to_pc): Change sals parameter from struct
8651         symtabs_and_lines to std::vector reference.
8652         (check_fast_tracepoint_sals): Change sals parameter from struct
8653         symtabs_and_lines to std::array_view.  Use range-for.
8654         (decode_static_tracepoint_spec): Return a std::vector instead of
8655         symtabs_and_lines.  Update.
8656         (create_breakpoint): Update.
8657         (break_range_command, until_break_command, clear_command): Update.
8658         (base_breakpoint_decode_location, bkpt_decode_location)
8659         (bkpt_probe_create_sals_from_location)
8660         (bkpt_probe_decode_location, tracepoint_decode_location)
8661         (tracepoint_probe_decode_location)
8662         (strace_marker_create_sals_from_location): Return a std::vector
8663         instead of symtabs_and_lines.
8664         (strace_marker_create_breakpoints_sal): Update.
8665         (strace_marker_decode_location): Return a std::vector instead of
8666         symtabs_and_lines.  Update.
8667         (update_breakpoint_locations): Change struct symtabs_and_lines
8668         parameters to gdb::array_view.  Adjust.
8669         (location_to_sals): Return a std::vector instead of
8670         symtabs_and_lines.  Update.
8671         (breakpoint_re_set_default): Use std::vector instead of struct
8672         symtabs_and_lines.
8673         (decode_location_default): Return a std::vector instead of
8674         symtabs_and_lines.  Update.
8675         * breakpoint.h: Include "common/array-view.h".
8676         (struct breakpoint_ops) <decode_location>: Now returns a
8677         std::vector instead of returning a symtabs_and_lines via output
8678         parameter.
8679         (update_breakpoint_locations): Change sals parameters to use
8680         gdb::array_view.
8681         * cli/cli-cmds.c (edit_command, list_command): Update to use
8682         std::vector and gdb::array_view.
8683         (ambiguous_line_spec): Adjust to use gdb::array_view and
8684         range-for.
8685         (compare_symtabs): Rename to ...
8686         (cmp_symtabs): ... this.  Change parameters to symtab_and_line
8687         const reference and adjust.
8688         (filter_sals): Rewrite using std::vector and standard algorithms.
8689         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Simplify.
8690         (jump_command): Update to use std::vector.
8691         * linespec.c (struct linespec_state) <canonical_names>: Update
8692         comment.
8693         (add_sal_to_sals_basic): Delete.
8694         (add_sal_to_sals, filter_results, convert_results_to_lsals)
8695         (decode_line_2, create_sals_line_offset)
8696         (convert_address_location_to_sals, convert_linespec_to_sals)
8697         (convert_explicit_location_to_sals, parse_linespec)
8698         (event_location_to_sals, decode_line_full, decode_line_1)
8699         (decode_line_with_current_source)
8700         (decode_line_with_last_displayed, decode_objc)
8701         (decode_digits_list_mode, decode_digits_ordinary, minsym_found)
8702         (linespec_result::~linespec_result): Adjust to use std::vector
8703         instead of symtabs_and_lines.
8704         * linespec.h (linespec_sals::sals): Now a std::vector.
8705         (struct linespec_result): Use std::vector, bool, and in-class
8706         initialization.
8707         (decode_line_1, decode_line_with_current_source)
8708         (decode_line_with_last_displayed): Return std::vector.
8709         * macrocmd.c (info_macros_command): Use std::vector.
8710         * mi/mi-main.c (mi_cmd_trace_find): Use std::vector.
8711         * probe.c (parse_probes_in_pspace, parse_probes): Adjust to use
8712         std::vector.
8713         * probe.h (parse_probes): Return a std::vector.
8714         * python/python.c (gdbpy_decode_line): Use std::vector and
8715         gdb::array_view.
8716         * source.c (select_source_symtab, line_info): Use std::vector.
8717         * stack.c (func_command): Use std::vector.
8718         * symtab.h (struct symtabs_and_lines): Delete.
8719         * tracepoint.c (tfind_line_command, scope_info): Use std::vector.
8720
8721 2017-09-04  Pedro Alves  <palves@redhat.com>
8722
8723         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8724         unittests/array-view-selftests.c.
8725         (SUBDIR_UNITTESTS_OBS): Add array-view-selftests.o.
8726         * common/array-view.h: New file.
8727         * unittests/array-view-selftests.c: New file.
8728
8729 2017-09-04  Pedro Alves  <palves@redhat.com>
8730
8731         * cli/cli-cmds.c (edit_command): Pass message to
8732         ambiguous_line_spec.
8733         (list_command): Pass message to ambiguous_line_spec.  Say
8734         "first"/"last" instead of "start" and "end" to be consistent with
8735         the manual.
8736         (ambiguous_line_spec): Add 'format' and vararg parameters.  Use
8737         them to print formatted message.
8738
8739 2017-09-04  Pedro Alves  <palves@redhat.com>
8740
8741         * btrace.c (ftrace_add_pt): Pass btrace_insn to
8742         ftrace_update_insns by reference instead of pointer.
8743
8744 2017-09-04  Yao Qi  <yao.qi@linaro.org>
8745
8746         * i386-go32-tdep.c: Include x86-xstate.h.
8747         (i386_go32_init_abi): Call i386_target_description.
8748         * i386-tdep.c (i386_target_description): Return tdesc_i386_mmx
8749         if xcr0 is X86_XSTATE_X87_MASK.
8750         * i386-tdep.h (tdesc_i386): Remove the declaration.
8751         (tdesc_i386_mmx): Likewise.
8752
8753 2017-09-04  Yao Qi  <yao.qi@linaro.org>
8754
8755         * i386-fbsd-tdep.c (i386fbsd_core_read_xcr0): Return
8756         X86_XSTATE_SSE_MASK instead of 0.
8757
8758 2017-09-04  Yao Qi  <yao.qi@linaro.org>
8759
8760         * amd64-fbsd-nat.c (amd64fbsd_read_description): Call
8761         i386_target_description.
8762         * i386-fbsd-nat.c (i386fbsd_read_description): Call
8763         i386_target_description.
8764         * i386-tdep.c (i386_gdbarch_init): Likewise.
8765
8766 2017-09-04  Yao Qi  <yao.qi@linaro.org>
8767
8768         * amd64-darwin-tdep.c: Include "x86-xstate.h".
8769         (x86_darwin_init_abi_64): Call amd64_target_description.
8770         * amd64-dicos-tdep.c: Likewise.
8771         * amd64-fbsd-nat.c: Likewise.
8772         * amd64-fbsd-tdep.c: Likewise.
8773         * amd64-nbsd-tdep.c: Likewise.
8774         * amd64-obsd-tdep.c: Likewise.
8775         * amd64-sol2-tdep.c: Likewise.
8776         * amd64-windows-tdep.c: Likewise.
8777         * amd64-tdep.h (tdesc_amd64): Remove the declaration.
8778
8779 2017-09-04  Simon Marchi  <simon.marchi@ericsson.com>
8780
8781         * btrace.h (btrace_insn_s, DEF_VEC_O (btrace_insn_s)): Remove.
8782         (btrace_function) <insn>: Change type to use std::vector.
8783         * btrace.c (ftrace_debug, ftrace_call_num_insn,
8784         ftrace_find_call, ftrace_new_gap, ftrace_update_function,
8785         ftrace_update_insns, ftrace_compute_global_level_offset,
8786         btrace_stitch_bts, btrace_clear, btrace_insn_get,
8787         btrace_insn_end, btrace_insn_next, btrace_insn_prev): Adjust to
8788         change to std::vector.
8789         (ftrace_update_insns): Adjust to change to std::vector, change
8790         type of INSN parameter.
8791         (btrace_compute_ftrace_bts): Adjust call to ftrace_update_insns.
8792         * record-btrace.c (btrace_call_history_insn_range,
8793         btrace_compute_src_line_range,
8794         record_btrace_frame_prev_register): Adjust to change to
8795         std::vector.
8796         * python/py-record-btrace.c (recpy_bt_func_instructions): Adjust
8797         to change to std::vector.
8798
8799 2017-09-03  Tom Tromey  <tom@tromey.com>
8800
8801         * corefile.c (reopen_exec_file): Use std::string.
8802
8803 2017-09-03  Tom Tromey  <tom@tromey.com>
8804
8805         * compile/compile.c (compile_register_name_mangled): Return
8806         std::string.
8807         * compile/compile-loc2c.c (pushf_register_address): Update.
8808         (pushf_register): Update.
8809         * compile/compile-c-types.c (convert_array): Update.
8810         * compile/compile-c-symbols.c (generate_vla_size): Update.
8811         (error_symbol_once): Use a gdb::unique_xmalloc_ptr.
8812         (symbol_substitution_name): Return a gdb::unique_xmalloc_ptr.
8813         (convert_one_symbol): Update.
8814         (generate_c_for_for_one_variable): Update.
8815         * compile/compile-c-support.c (c_get_range_decl_name): Return a
8816         std::string.
8817         (generate_register_struct): Update.
8818         * compile/compile-internal.h (c_get_range_decl_name): Return a
8819         std::string.
8820         (compile_register_name_mangled): Return std::string.
8821
8822 2017-09-03  Tom Tromey  <tom@tromey.com>
8823
8824         * utils.c (perror_string): Return a std::string.
8825         (throw_perror_with_name, perror_warning_with_name): Update.
8826
8827 2017-09-03  Tom Tromey  <tom@tromey.com>
8828
8829         * demangle.c (demangle_command): Use std::string,
8830         unique_xmalloc_ptr.
8831
8832 2017-09-03  Tom Tromey  <tom@tromey.com>
8833
8834         * cli/cli-setshow.c (do_set_command): Use std::string.
8835
8836 2017-09-03  Tom Tromey  <tom@tromey.com>
8837
8838         * cli/cli-cmds.c (cd_command): Use gdb::unique_xmalloc_ptr.
8839
8840 2017-09-03  Tom Tromey  <tom@tromey.com>
8841
8842         * mi/mi-interp.c (mi_cmd_interpreter_exec): Use std::string.
8843
8844 2017-09-03  Tom Tromey  <tom@tromey.com>
8845
8846         * mi/mi-cmd-env.c (env_execute_cli_command): Use
8847         gdb::unique_xmalloc_ptr.
8848
8849 2017-09-03  Tom Tromey  <tom@tromey.com>
8850
8851         * thread.c (print_thread_info_1): Use string_printf.
8852         (thread_apply_command, thread_apply_all_command): Use
8853         std::string.
8854
8855 2017-09-03  Tom Tromey  <tom@tromey.com>
8856
8857         * valprint.c (val_print_string): Update.
8858         * gdbcore.h (memory_error_message): Return std::string.
8859         * corefile.c (memory_error_message): Return std::string.
8860         (memory_error): Update.
8861         * breakpoint.c (insert_bp_location): Update.
8862
8863 2017-09-03  Simon Marchi  <simon.marchi@ericsson.com>
8864
8865         * target/waitstatus.h (target_waitstatus_to_string): Change
8866         return type to std::string.
8867         * target/waitstatus.c (target_waitstatus_to_string): Return
8868         std::string.
8869         * target.h (target_waitstatus_to_string): Remove declaration.
8870         * infrun.c (resume, clear_proceed_status_thread,
8871         print_target_wait_results, do_target_wait, save_waitstatus,
8872         stop_all_threads): Adjust.
8873         * record-btrace.c (record_btrace_wait): Adjust.
8874         * target-debug.h
8875         (target_debug_print_struct_target_waitstatus_p): Adjust.
8876
8877 2017-09-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
8878
8879         PR gdb/22046
8880         * nat/linux-procfs.c (parse_proc_status_state): Fix PROC_STATE_STOPPED
8881         detection.
8882
8883 2017-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
8884
8885         * NEWS (Changes since GDB 8.0): Add entry mentioning new support
8886         for setting/unsetting environment variables on the remote target.
8887         (New remote packets): Add entries for QEnvironmentHexEncoded,
8888         QEnvironmentUnset and QEnvironmentReset.
8889         * common/environ.c (gdb_environ::operator=): Extend method to
8890         handle m_user_set_env_list and m_user_unset_env_list.
8891         (gdb_environ::clear): Likewise.
8892         (match_var_in_string): Change type of first parameter from 'char
8893         *' to 'const char *'.
8894         (gdb_environ::set): Extend method to handle
8895         m_user_set_env_list and m_user_unset_env_list.
8896         (gdb_environ::unset): Likewise.
8897         (gdb_environ::clear_user_set_env): New method.
8898         (gdb_environ::user_set_envp): Likewise.
8899         (gdb_environ::user_unset_envp): Likewise.
8900         * common/environ.h (gdb_environ): Handle m_user_set_env_list and
8901         m_user_unset_env_list on move constructor/assignment.
8902         (unset): Add new default parameter 'update_unset_list = true'.
8903         (clear_user_set_env): New method.
8904         (user_set_envp): Likewise.
8905         (user_unset_envp): Likewise.
8906         (m_user_set_env_list): New std::set.
8907         (m_user_unset_env_list): Likewise.
8908         * common/rsp-low.c (hex2str): New function.
8909         (bin2hex): New overload for bin2hex function.
8910         * common/rsp-low.c (hex2str): New prototype.
8911         (str2hex): New overload prototype.
8912         * remote.c: Include "environ.h". Add QEnvironmentHexEncoded,
8913         QEnvironmentUnset and QEnvironmentReset.
8914         (remote_protocol_features): Add QEnvironmentHexEncoded,
8915         QEnvironmentUnset and QEnvironmentReset packets.
8916         (send_environment_packet): New function.
8917         (extended_remote_environment_support): Likewise.
8918         (extended_remote_create_inferior): Call
8919         extended_remote_environment_support.
8920         (_initialize_remote): Add QEnvironmentHexEncoded,
8921         QEnvironmentUnset and QEnvironmentReset packet configs.
8922         * unittests/environ-selftests.c (gdb_selftest_env_var):
8923         New variable.
8924         (test_vector_initialization): New function.
8925         (test_init_from_host_environ): Likewise.
8926         (test_reinit_from_host_environ): Likewise.
8927         (test_set_A_unset_B_unset_A_cannot_find_A_can_find_B):
8928         Likewise.
8929         (test_unset_set_empty_vector): Likewise.
8930         (test_vector_clear): Likewise.
8931         (test_std_move): Likewise.
8932         (test_move_constructor):
8933         (test_self_move): Likewise.
8934         (test_set_unset_reset): Likewise.
8935         (run_tests): Rewrite in terms of the functions above.
8936
8937 2017-08-31  Weimin Pan  <weimin.pan@oracle.com>
8938
8939         * sparc64-tdep.c (adi_stat_t): Fix comment formatting.
8940         (adi_available): Use a temp variable of type CORE_ADDR as argument
8941         3 when calling target_auxv_search.
8942         (adi_normalize_address): Use masks and xor operators to calculate
8943         normalized address.
8944         (adi_read_versions, adi_write_versions, adi_print_versions)
8945         (do_examine, do_assign): Use paddress.
8946
8947 2017-08-29  John Baldwin  <jhb@FreeBSD.org>
8948
8949         * mips-fbsd-nat.c (getfpregs_supplies): Return true for FIR.
8950         * mips-fbsd-tdep.c (mips_fbsd_supply_fpregs): Split supply of FSR
8951         out of loop and add supply of FIR.
8952         (mips_fbsd_collect_fpregs): Split collect of FSR out of loop and
8953         add collect of FIR.
8954
8955 2017-08-28  Simon Marchi  <simon.marchi@ericsson.com>
8956
8957         PR gdb/21827
8958         * cli/cli-script.c (define_command): Don't convert command name
8959         to lower case.
8960
8961 2017-08-25  Joel Brobecker  <brobecker@adacore.com>
8962
8963         * ada-lang.c (ada_lookup_struct_elt_type): Remove parameter "dispp".
8964         Update all callers accordingly. Remove all code blocks handling
8965         the case where DISPP is not NULL.
8966
8967 2017-08-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
8968
8969         PR symtab/22003
8970         * dwarf2read.c (dwarf2_const_value_attr, dump_die_shallow)
8971         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
8972         (skip_form_bytes, attr_form_is_constant): Handle DW_FORM_implicit_const.
8973
8974 2017-08-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
8975
8976         * dwarf2read.c (build_type_psymtabs_reader): New prototype.
8977         (process_psymtab_comp_unit): Accept IS_DEBUG_TYPES.
8978         (read_comp_units_from_section): New parameter abbrev_section, use
8979         read_and_check_comp_unit_head, allocate signatured_type if needed.
8980         (create_all_comp_units): Update read_comp_units_from_section caller.
8981
8982 2017-08-23  Pedro Alves  <palves@redhat.com>
8983
8984         PR remote/21852
8985         * remote.c (add_current_inferior_and_thread): Set inferior_ptid
8986         to null_ptid and switch to thread without reading the registers
8987         after adding the inferior.
8988
8989 2017-08-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
8990
8991         * NEWS (Changes since GDB 8.0): Add set compile-gcc and show
8992         compile-gcc.
8993         * compile/compile.c (compile_gcc, show_compile_gcc): New.
8994         (compile_to_object): Implement compile_gcc.
8995         (_initialize_compile): Install "set compile-gcc".  Initialize
8996         compile_gcc.
8997
8998 2017-08-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
8999
9000         * compile/compile.c (compile_to_object): Conditionally call
9001         set_verbose.  Conditionally call compile or compile_v0.
9002
9003 2017-08-07  Weimin Pan  <weimin.pan@oracle.com>
9004
9005         * sparc64-tdep.h: (adi_normalize_address): New export.
9006         * sparc-nat.h: (open_adi_tag_fd): New export.
9007         * sparc64-linux-nat.c: (open_adi_tag_fd): New function.
9008         * sparc64-linux-tdep.c:
9009         (SEGV_ACCADI, SEGV_ADIDERR, SEGV_ADIPERR) New defines.
9010         (sparc64_linux_handle_segmentation_fault): New function.
9011         (sparc64_linux_init_abi): Register
9012         sparc64_linux_handle_segmentation_fault
9013         * sparc64-tdep.c: Include cli-utils.h,gdbcmd.h,auxv.h.
9014         (sparc64_addr_bits_remove): New function.
9015         (sparc64_init_abi): Register sparc64_addr_bits_remove.
9016         (MAX_PROC_NAME_SIZE): New macro.
9017         (AT_ADI_BLKSZ, AT_ADI_NBITS, AT_ADI_UEONADI) New defines.
9018         (sparc64adilist): New variable.
9019         (adi_proc_list): New variable.
9020         (find_adi_info): New function.
9021         (add_adi_info): New function.
9022         (get_adi_info_proc): New function.
9023         (get_adi_info): New function.
9024         (info_adi_command): New function.
9025         (read_maps_entry): New function.
9026         (adi_available): New function.
9027         (adi_normalize_address): New function.
9028         (adi_align_address): New function.
9029         (adi_convert_byte_count): New function.
9030         (adi_tag_fd): New function.
9031         (adi_is_addr_mapped): New function.
9032         (adi_read_versions): New function.
9033         (adi_write_versions): New function.
9034         (adi_print_versions): New function.
9035         (do_examine): New function.
9036         (do_assign): New function.
9037         (adi_examine_command): New function.
9038         (adi_assign_command): New function.
9039         (_initialize_sparc64_adi_tdep): New function.
9040
9041 2017-08-22  Simon Marchi  <simon.marchi@ericsson.com>
9042
9043         * breakpoint.c (breakpoints_info): Rename to ...
9044         (info_breakpoints_command): ... this.
9045         (watchpoints_info): Rename to ...
9046         (info_watchpoints_command): ... this.
9047         (tracepoints_info): Rename to ...
9048         (info_tracepoints_command): ... this.
9049         (_initialize_breakpoint): Adjust.
9050         * dcache.c (dcache_info): Rename to ...
9051         (info_display_command): ... this.
9052         (_initialize_dcache): Adjust.
9053         * frame.h (args_info): Rename to ...
9054         (info_args_command): ... this.
9055         (locals_info): Rename to ...
9056         (info_locals_command): ... this.
9057         * infcmd.c (nofp_registers_info): Rename to ...
9058         (info_registers_command): ... this.
9059         (float_info): Rename to ...
9060         (info_float_command): ... this.
9061         (program_info): Rename to ...
9062         (info_program_command): ... this.
9063         (all_registers_info): Rename to ...
9064         (info_all_registers_command): ... this.
9065         (vector_info): Rename to ...
9066         (info_vector_command): ... this.
9067         (float_info): Rename to ...
9068         (info_float_command): ... this.
9069         (_initialize_infcmd): Adjust.
9070         * inferior.h (term_info): Rename to ...
9071         (info_terminal_command): ... this.
9072         * inflow.c (term_info): Rename to ...
9073         (info_terminal_command): ... this.
9074         (_initialize_inflow): Adjust.
9075         * infrun.c (signals_info): Rename to ...
9076         (info_signals_command): ... this.
9077         (_initialize_infrun): Adjust.
9078         * objc-lang.c (classes_info): Rename to ...
9079         (info_classes_command): ... this.
9080         (selectors_info): Rename to ...
9081         (info_selectors_command): ... this.
9082         (_initialize_objc_language): Adjust.
9083         * printcmd.c (sym_info): Rename to ...
9084         (info_symbol_command): ... this.
9085         (address_info): Rename to ...
9086         (info_address_command): ... this.
9087         (display_info): Rename to ...
9088         (info_display_command): ... this.
9089         (_initialize_printcmd): Adjust.
9090         * reverse.c (bookmarks_info): Rename to ...
9091         (info_breakpoints_command): ... this.
9092         (_initialize_reverse): Adjust.
9093         * ser-go32.c (dos_info): Rename to ...
9094         (info_serial_command): ... this.
9095         (_initialize_ser_dos): Adjust.
9096         * skip.c (skip_info): Rename to ...
9097         (info_skip_command): ... this.
9098         (_initialize_step_skip): Adjust.
9099         * source.c (line_info): Rename to ...
9100         (info_line_command): ... this.
9101         (source_info): Rename to ...
9102         (info_source_command)
9103         * stack.c (frame_info): Rename to ...
9104         (info_frame_command): ... this.
9105         (locals_info): Rename to ...
9106         (info_locals_command): ... this.
9107         (args_info): Rename to ...
9108         (info_args_command): ... this.
9109         (_initialize_stack): Adjust.
9110         * symtab.c (sources_info): Rename to ...
9111         (info_sources_command): ... this.
9112         (variables_info): Rename to ...
9113         (info_variables_command): ... this.
9114         (functions_info): Rename to ...
9115         (info_functions_command): ... this.
9116         (types_info): Rename to ...
9117         (info_types_command): ... this.
9118         (_initialize_symtab): Adjust.
9119         * target.c (target_info): Rename to ...
9120         (info_target_command): ... this.
9121         (initialize_targets): Adjust.
9122         * tracepoint.c (tvariables_info): Rename to ...
9123         (info_tvariables_command): ... this.
9124         (scope_info): Rename to ...
9125         (info_scope_command): ... this.
9126         (trace_dump_actions): Adjust.
9127         (_initialize_tracepoint): Adjust.
9128
9129 2017-08-22  Tom Tromey  <tom@tromey.com>
9130
9131         * breakpoint.h (install_breakpoint): Update.
9132         * breakpoint.c (add_solib_catchpoint): Update.
9133         (install_breakpoint): Change argument to a std::unique_ptr.
9134         (create_fork_vfork_event_catchpoint): Use std::unique_ptr.
9135         (create_breakpoint_sal, create_breakpoint): Update.
9136         (watch_command_1, catch_exec_command_1)
9137         (strace_marker_create_breakpoints_sal): Use std::unique_ptr.
9138         (add_to_breakpoint_chain): Change argument to a std::unique_ptr.
9139         Return the breakpoint.
9140         (set_raw_breakpoint_without_location, set_raw_breakpoint)
9141         (new_single_step_breakpoint): Update.
9142         * break-catch-throw.c (handle_gnu_v3_exceptions): Use
9143         std::unique_ptr.
9144         * break-catch-syscall.c (create_syscall_event_catchpoint): Use
9145         std::unique_ptr.
9146         * break-catch-sig.c (create_signal_catchpoint): Use
9147         std::unique_ptr.
9148         * ada-lang.c (create_ada_exception_catchpoint): Use
9149         std::unique_ptr.
9150
9151 2017-08-22  Tom Tromey  <tom@tromey.com>
9152
9153         * breakpoint.c (add_solib_catchpoint): Use std::unique_ptr.
9154
9155 2017-08-22  Tom Tromey  <tom@tromey.com>
9156
9157         * psymtab.c (psymtab_search_name): Return a unique_xmalloc_ptr.
9158         (lookup_partial_symbol): Update.
9159
9160 2017-08-22  Tom Tromey  <tom@tromey.com>
9161
9162         * source.h (rewrite_source_path): Return a unique_xmalloc_ptr.
9163         * source.c (rewrite_source_path): Return a unique_xmalloc_ptr.
9164         (find_and_open_source, symtab_to_fullname): Update.
9165         * psymtab.c (psymtab_to_fullname): Update.
9166
9167 2017-08-22  Tom Tromey  <tom@tromey.com>
9168
9169         * exec.c (exec_file_attach): Update.
9170         * linux-thread-db.c (try_thread_db_load): Update.
9171         * guile/scm-safe-call.c (gdbscm_safe_source_script): Update.
9172         * utils.c (gdb_realpath): Change return type.
9173         (gdb_realpath_keepfile): Update.
9174         (gdb_realpath_check_trailer, gdb_realpath_tests): New functions.
9175         (_initialize_utils): Register the new self test.
9176         * source.c (openp): Update.
9177         (find_and_open_source): Update.
9178         * nto-tdep.c (nto_find_and_open_solib): Update.
9179         * main.c (set_gdb_data_directory): Update.
9180         (captured_main_1): Update.
9181         * dwarf2read.c (dwarf2_get_dwz_file): Update
9182         (dw2_map_symbol_filenames): Update.
9183         * auto-load.c (auto_load_safe_path_vec_update): Update.
9184         (filename_is_in_auto_load_safe_path_vec): Change type of
9185         "filename_realp".
9186         (auto_load_objfile_script): Update.
9187         (file_is_auto_load_safe): Update.  Use std::string.
9188         * utils.h (gdb_realpath): Return a gdb::unique_xmalloc_ptr.
9189
9190 2017-08-22  Tom Tromey  <tom@tromey.com>
9191
9192         * utils.c (gdb_realpath_keepfile): Return a
9193         gdb::unique_xmalloc_ptr.
9194         * exec.c (exec_file_attach): Update.
9195         * utils.h (gdb_realpath_keepfile): Return a
9196         gdb::unique_xmalloc_ptr.
9197
9198 2017-08-22  Tom Tromey  <tom@tromey.com>
9199
9200         * compile/compile.c (compile_file_command): Use
9201         gdb::unique_xmalloc_ptr, std::string.
9202         * utils.c (gdb_abspath): Change return type.
9203         * source.c (openp): Update.
9204         * objfiles.c (allocate_objfile): Update.
9205         * main.c (set_gdb_data_directory): Update.
9206         * utils.h (gdb_abspath): Return a gdb::unique_xmalloc_ptr.
9207
9208 2017-08-22  Zhouyi Zhou  <zhouzhouyi@gmail.com>
9209
9210         * cli-cmds.c (list_commands): List actual code around more than
9211         one location.
9212
9213 2017-08-21  John Baldwin  <jhb@FreeBSD.org>
9214
9215         * fbsd-nat.c (fbsd_add_threads): Use array type for `lwps'.
9216
9217 2017-08-21  Pedro Alves  <palves@redhat.com>
9218
9219         PR gdb/19487
9220         * c-exp.y (variable production): Handle function aliases.
9221         * minsyms.c (msymbol_is_text): New function.
9222         * minsyms.h (msymbol_is_text): Declare.
9223         * symtab.c (find_function_alias_target): New function.
9224         * symtab.h (find_function_alias_target): Declare.
9225
9226 2017-08-21  Pedro Alves  <palves@redhat.com>
9227
9228         * eval.c (evaluate_subexp_standard) <OP_TYPE>: Don't dig past
9229         typedefs.
9230         * typeprint.c (whatis_exp): If handling "whatis", and expression
9231         is OP_TYPE, strip one typedef level.  Otherwise don't strip
9232         typedefs here.
9233         * valops.c (value_cast): Save "to" type before resolving
9234         stubs/typedefs.  Use that type as resulting value's type.
9235
9236 2017-08-18  Tom Tromey  <tom@tromey.com>
9237             Pedro Alves  <palves@redhat.com>
9238
9239         * spu-multiarch.c (parse_spufs_run): Use scoped_restore.
9240         * sol-thread.c (sol_thread_resume, sol_thread_wait)
9241         (sol_thread_xfer_partial, rw_common): Use scoped_restore.
9242         * procfs.c (procfs_do_thread_registers): Use scoped_restore.
9243         * proc-service.c (ps_xfer_memory): Use scoped_restore.
9244         * linux-tdep.c (linux_corefile_thread): Remove a cleanup.
9245         (linux_get_siginfo_data): Add "thread" argument.  Use
9246         scoped_restore.
9247         * linux-nat.c (linux_child_follow_fork)
9248         (check_stopped_by_watchpoint): Use scoped_restore.
9249         * infrun.c (displaced_step_prepare_throw, write_memory_ptid)
9250         (THREAD_STOPPED_BY, handle_signal_stop): Use scoped_restore.
9251         (restore_inferior_ptid, save_inferior_ptid): Remove.
9252         * btrace.c (btrace_fetch): Use scoped_restore.
9253         * bsd-uthread.c (bsd_uthread_fetch_registers)
9254         (bsd_uthread_store_registers): Use scoped_restore.
9255         * breakpoint.c (reattach_breakpoints, detach_breakpoints): Use
9256         scoped_restore.
9257         * aix-thread.c (aix_thread_resume, aix_thread_wait)
9258         (aix_thread_xfer_partial): Use scoped_restore.
9259         * inferior.h (save_inferior_ptid): Remove.
9260
9261 2017-08-18  Yao Qi  <yao.qi@linaro.org>
9262
9263         PR tdep/21818
9264         * arm-tdep.c (gdb_print_insn_arm): Mark
9265         USER_SPECIFIED_MACHINE_TYPE if exec_bfd isn't NULL.
9266
9267 2017-08-18  Yao Qi  <yao.qi@linaro.org>
9268
9269         * NEWS: Mention GDBserver's new option "--selftest".
9270         * Makefile.in (SFILES): Remove selftest.c, add common/selftest.c.
9271         * selftest.c: Move it to common/selftest.c.
9272         * selftest.h: Move it to common/selftest.h.
9273         * selftest-arch.c (reset): New function.
9274         (tests_with_arch): Call reset.
9275
9276 2017-08-18  Yao Qi  <yao.qi@linaro.org>
9277
9278         * selftest.c (run_tests): Don't call QUIT.  Call debug_printf
9279         instead of exception_fprintf and printf_filtered.
9280
9281 2017-08-18  Yao Qi  <yao.qi@linaro.org>
9282
9283         * selftest.c (register_self_test): Rename it to
9284         selftests::register_test.
9285         (run_self_tests): selftest::run_tests.
9286         * selftest.h: Update declarations.
9287         * selftest-arch.c (register_self_test_foreach_arch): Rename it to
9288         selftests::register_test_foreach_arch.
9289         * selftest-arch.h: Update declaration.
9290         * aarch64-tdep.c: Update.
9291         * arm-tdep.c: Likewise.
9292         * disasm-selftests.c: Likewise.
9293         * dwarf2loc.c: Likewise.
9294         * dwarf2-frame.c: Likewise.
9295         * findvar.c: Likewise.
9296         * gdbarch-selftests.c: Likewise.
9297         * maint.c (maintenance_selftest): Likewise.
9298         * regcache.c: Likewise.
9299         * rust-exp.y: Likewise.
9300         * selftest-arch.c: Likewise.
9301         * unittests/environ-selftests.c: Likewise.
9302         * unittests/function-view-selftests.c: Likewise.
9303         * unittests/offset-type-selftests.c: Likewise.
9304         * unittests/optional-selftests.c: Likewise.
9305         * unittests/scoped_restore-selftests.c: Likewise.
9306         * utils-selftests.c: Likewise.
9307
9308 2017-08-17  Pedro Alves  <palves@redhat.com>
9309
9310         * cli/cli-cmds.c (source_command): Delete 'old_source_verbose'
9311         local.
9312
9313 2017-08-17  Pedro Alves  <palves@redhat.com>
9314
9315         * dwarf2read.c (struct dwarf2_cu) <line_header_die_owner>: New
9316         field.
9317         (reset_die_in_process): Delete, replaced by ...
9318         (process_die_scope): ... this new class.  Make it responsible for
9319         freeing cu->line_header too.
9320         (process_die): Use process_die_scope.
9321         (handle_DW_AT_stmt_list): Record the line header's owner CU/DIE in
9322         cu->line_header_die_owner.  Don't release the line header if it's
9323         owned by the CU.
9324         (setup_type_unit_groups): Make the CU/DIE own the line header.
9325         Don't release the line header here.
9326
9327 2017-08-17  Alex Lindsay  <alexlindsay239@gmail.com>  (tiny change)
9328
9329         * elfread.c (elf_read_minimal_symbols): xfree synthsyms.
9330
9331 2017-08-17  Ruslan Kabatsayev  <b7.10110111@gmail.com>
9332
9333         * NEWS: Mention new shortcuts for nexti and stepi in TUI
9334         Single-Key mode
9335
9336 2017-08-16  Ruslan Kabatsayev  <b7.10110111@gmail.com>
9337
9338         * tui/tui.c (tui_commands): Add "nexti" and "stepi" to the Single-Key
9339         mode command list.
9340
9341 2017-08-15  Stafford Horne  <shorne@gmail.com>
9342
9343         * MAINTAINERS (Write After Approval): Add Stafford Horne.
9344
9345 2017-08-15  Stafford Horne  <shorne@gmail.com>
9346
9347         * xtensa-tdep.c (xtensa_init_reggroups): Use xstrdup for cpname.
9348
9349 2017-08-15  Sergio Durigan Junior  <sergiodj@redhat.com>
9350
9351         PR gdb/21954
9352         * infcmd.c (unset_environment_command): Use the 'clear' method on
9353         the environment instead of resetting it.
9354
9355 2017-08-15  John Baldwin  <jhb@FreeBSD.org>
9356
9357         * fbsd-nat.c (fbsd_convert_siginfo): Fix compile on big-endian
9358         platforms.
9359
9360 2017-08-14  Tom Tromey  <tom@tromey.com>
9361
9362         * valprint.c (print_octal_chars): Use HOST_CHAR_BIT.
9363         (print_binary_chars): Likewise.
9364         (BITS_IN_BYTES): Remove.
9365
9366 2017-08-14  Tom Tromey  <tom@tromey.com>
9367
9368         PR gdb/21675
9369         * valprint.c (LOW_ZERO): Change value to 034.
9370         (print_octal_chars): Add static_asserts for octal constants.
9371         * printcmd.c (print_scalar_formatted): Add 'd' case.
9372
9373 2017-08-11  Tom Tromey  <tom@tromey.com>
9374
9375         * symfile.c (add_symbol_file_command): Use std::vector.
9376
9377 2017-08-14  Tom Tromey  <tom@tromey.com>
9378
9379         * break-catch-throw.c (handle_gnu_v3_exceptions): Use std::move.
9380         * break-catch-syscall.c (create_syscall_event_catchpoint): Use
9381         std::move.
9382         * break-catch-sig.c (create_signal_catchpoint): Use std::move.
9383
9384 2017-08-11  Pedro Alves  <palves@redhat.com>
9385
9386         * infrun.c (process_event_stop_test): Adjust
9387         function_name_is_marked_for_skip call.
9388         * skip.c: Include <list>.
9389         (skiplist_entry): Make it a class with private fields, and
9390         getters/setters.
9391         (skiplist_entry_chain): Delete.
9392         (skiplist_entries): New.
9393         (skiplist_entry_count): Delete.
9394         (highest_skiplist_entry_num): New.
9395         (ALL_SKIPLIST_ENTRIES, ALL_SKIPLIST_ENTRIES_SAFE): Delete.
9396         (add_skiplist_entry): Delete.
9397         (skiplist_entry::skiplist_entry): New.
9398         (skiplist_entry::add_entry): New.
9399         (skip_file_command, skip_function): Adjust.
9400         (compile_skip_regexp): Delete.
9401         (skip_command): Don't compile regexp here.  Adjust to use
9402         skiplist_entry::add_entry.
9403         (skip_info): Adjust to use range-for and getters.
9404         (skip_enable_command, skip_disable_command): Adjust to use
9405         range-for and setters.
9406         (skip_delete_command): Adjust to use std::list.
9407         (add_skiplist_entry): Delete.
9408         (skip_file_p): Delete, refactored as ...
9409         (skiplist_entry::do_skip_file_p): ... this new method.
9410         (skip_gfile_p): Delete, refactored as ...
9411         (skiplist_entry::do_gskip_file_p): ... this new method.
9412         (skip_function_p, skip_rfunction_p): Delete, refactored as ...
9413         (skiplist_entry::skip_function_p): ... this new method.
9414         (function_name_is_marked_for_skip): Now returns bool, and takes
9415         the function sal by const reference.  Adjust to use range-for and
9416         skiplist_entry methods.
9417         (_initialize_step_skip): Remove references to
9418         skiplist_entry_chain, skiplist_entry_count.
9419         * skip.h (function_name_is_marked_for_skip): Now returns bool, and
9420         takes the function sal by const reference.
9421
9422 2017-08-11  Yao Qi  <yao.qi@linaro.org>
9423
9424         * dwarf2-frame.c (clear_pointer_cleanup): Remove.
9425         (dwarf2_frame_cache): Remove reset_cache_cleanup.
9426         (dwarf2_frame_cache):
9427         * frame-unwind.c (frame_unwind_try_unwinder): Catch
9428         RETURN_MASK_ALL and set *this_case to NULL.
9429         * frame-unwind.h: Update comments.
9430
9431 2017-08-11  Yao Qi  <yao.qi@linaro.org>
9432
9433         * dwarf2-frame.c (dwarf2_frame_state_alloc_regs): Remove.
9434         (dwarf2_frame_state_copy_regs): Remove.
9435         (dwarf2_frame_state_free_regs): Remove.
9436         (dwarf2_frame_state::~dwarf2_frame_state): Remove.
9437         (dwarf2_restore_rule): Call method .alloc_regs instead of
9438         dwarf2_frame_state_alloc_regs.
9439         (execute_cfa_program): Likewise.  Call dwarf2_frame_state_reg_info
9440         constructor.  Call std::move.
9441         (dwarf2_fetch_cfa_info): Don't call dwarf2_frame_state_copy_regs.
9442         (dwarf2_frame_cache): Likewise.
9443
9444         [GDB_SELF_TEST]: Include selftest.h and
9445         selftest-arch.h.
9446         [GDB_SELF_TEST] (execute_cfa_program_test): New function.
9447         (_initialize_dwarf2_frame) [GDB_SELF_TEST]: Register
9448         execute_cfa_program_test.
9449
9450         * dwarf2-frame.h (dwarf2_frame_state_reg_info): Add ctor, dtor,
9451         copy ctor, assignment operator, move assignment.
9452         <alloc_regs>: New method.
9453         <swap>: New method.
9454         (struct dwarf2_frame_state): Delete dtor.
9455         (dwarf2_frame_state_alloc_regs): Remove declaration.
9456         * sparc-tdep.c (sparc_execute_dwarf_cfa_vendor_op): Don't call
9457         dwarf2_frame_state_alloc_regs, use .alloc_regs instead.
9458
9459 2017-08-11  Yao Qi  <yao.qi@linaro.org>
9460
9461         * dwarf2-frame.c (dwarf2_frame_state_free): Remove.
9462         (dwarf2_frame_state::dwarf2_frame_state): New.
9463         (dwarf2_frame_state::~dwarf2_frame_state): New.
9464         (dwarf2_fetch_cfa_info): Update.
9465         (dwarf2_frame_cache): Remove old_chain.  Change 'fs' to an object
9466         rather than a pointer.  Update code.
9467         * dwarf2-frame.h (struct dwarf2_frame_state): Declare ctor and
9468         dtor.
9469         <data_align, code_align, retaddr_column>: Change them to const.
9470         <armcc_cfa_offsets_sf, armcc_cfa_offsets_reversed>: Change them
9471         to bool.
9472
9473 2017-08-11  Yao Qi  <yao.qi@linaro.org>
9474
9475         * dwarf2-frame.h (struct dwarf2_frame_state_reg) <exp_len>: Remove.
9476         <loc.exp>: New field.
9477         * dwarf2-frame.c (execute_cfa_program): Update.
9478         (dwarf2_frame_prev_register): Update.
9479
9480 2017-08-10  Pedro Alves  <palves@redhat.com>
9481
9482         * common/gdb_unique_ptr.h (xfree_deleter<T[]>): Define.
9483
9484 2017-08-09  John Baldwin  <jhb@FreeBSD.org>
9485
9486         * fbsd-nat.c (struct fbsd_fork_info): Remove.
9487         (fbsd_pending_children): Use std::list.
9488         (fbsd_remember_child): Likewise.
9489         (fbsd_is_child_pending): Likewise.
9490         (fbsd_pending_vfork_done): Use std::forward_list.
9491         (fbsd_add_vfork_done): Likewise.
9492         (fbsd_is_vfork_done_pending): Likewise.
9493         (fbsd_next_vfork_done): Likewise.
9494
9495 2017-08-09  John Baldwin  <jhb@FreeBSD.org>
9496
9497         * fbsd-nat.c [HAVE_KINFO_GETVMMAP] (struct free_deleter): New.
9498         (fbsd_find_memory_regions): Use free_deleter with std::unique_ptr.
9499         [!HAVE_KINFO_GETVMMAP] (fbsd_find_memory_regions): Use std::string
9500         for `mapfilename'.
9501         (fbsd_xfer_partial): Use gdb::byte_vector.
9502         (fbsd_add_threads): Use gdb::unique_xmalloc_ptr.
9503
9504 2017-08-09  John Baldwin  <jhb@FreeBSD.org>
9505
9506         * fbsd-nat.c: [!HAVE_KINFO_GETVMMAP]: Include <sys/user.h> and
9507         "filestuff.h".
9508         (fbsd_find_memory_regions): Fix `mapfile' initialization.
9509
9510 2017-08-09  Tom Tromey  <tom@tromey.com>
9511
9512         * skip.c (skiplist_entry): New constructor.
9513         (skiplist_entry::enabled, skiplist_entry::function_is_regexp)
9514         (skiplist_entry::file_is_glob): Now bool.
9515         (skiplist_entry::file, skiplist_entry::function): Now
9516         std::string.
9517         (make_skip_entry): Return a unique_ptr.  Use new.
9518         (free_skiplist_entry, free_skiplist_entry_cleanup)
9519         (make_free_skiplist_entry_cleanup): Remove.
9520         (skip_command, skip_disable_command, add_skiplist_entry)
9521         (skip_form_bytes, compile_skip_regexp, skip_command, skip_info)
9522         (skip_file_p, skip_gfile_p, skip_function_p, skip_rfunction_p)
9523         (function_name_is_marked_for_skip): Update.
9524         (skip_delete_command): Update.  Use delete.
9525
9526 2017-08-09  Jiong Wang  <jiong.wang@arm.com>
9527
9528         * aarch64-linux-tdep.c: Include "auxv.h" and "elf/common.h".
9529         (aarch64_linux_core_read_description): New function.
9530         (aarch64_linux_init_abi): Register gdbarch_core_read_description.
9531
9532 2017-08-09  Pedro Alves  <palves@redhat.com>
9533
9534         * cp-name-parser.y (cp_comp_to_string): Return a
9535         gdb::unique_xmalloc_ptr<char>.
9536         * cp-support.c (replace_typedefs_qualified_name)
9537         (replace_typedefs): Adjust to use gdb::unique_xmalloc_ptr<char>.
9538         (cp_canonicalize_string_full): Use op= instead of explicit
9539         convertion.
9540         (cp_class_name_from_physname, method_name_from_physname)
9541         (cp_func_name, cp_remove_params): Adjust to use
9542         gdb::unique_xmalloc_ptr<char>.
9543         * cp-support.h (cp_comp_to_string): Return a
9544         gdb::unique_xmalloc_ptr<char>.
9545         * python/py-type.c (typy_lookup_type): Adjust to use
9546         gdb::unique_xmalloc_ptr<char>.
9547
9548 2017-08-09  H.J. Lu  <hongjiu.lu@intel.com>
9549
9550         * dwarf2read.c (dwarf2_string_attr): Fix a typo.
9551
9552 2017-08-09  Alex Lindsay  <alexlindsay239@gmail.com>
9553             Yao Qi  <yao.qi@linaro.org>
9554
9555         * cp-support.c (cp_canonicalize_string_full): Use
9556         gdb::unique_xmalloc_ptr<char>.
9557         (cp_canonicalize_string): Likewise.
9558
9559 2017-08-09  Yao Qi  <yao.qi@linaro.org>
9560
9561         * features/Makefile (WHICH): Remove i386/ non-linux stuff.
9562         * regformats/i386/amd64-avx-avx512.dat: Remove.
9563         * regformats/i386/amd64-avx-mpx-avx512-pku.dat: Remove.
9564         * regformats/i386/amd64-avx-mpx.dat:Remove.
9565         * regformats/i386/amd64-avx.dat: Remove.
9566         * regformats/i386/amd64-mpx.dat: Remove.
9567         * regformats/i386/i386-avx-avx512.dat: Remove.
9568         * regformats/i386/i386-avx-mpx-avx512-pku.dat: Remove.
9569         * regformats/i386/i386-avx-mpx.dat: Remove.
9570         * regformats/i386/i386-mmx.dat: Remove.
9571         * regformats/i386/i386-mpx.dat: Remove.
9572
9573 2017-08-09  Yao Qi  <yao.qi@linaro.org>
9574
9575         * amd64-tdep.h (tdesc_x32): Remove the declaration.
9576         * amd64-tdep.c: Don't include features/i386/x32*.c.
9577         (_initialize_amd64_tdep): Don't call initialize_tdesc_x32*
9578         functions.
9579         * features/Makefile (WHICH): Remove i386/x32, i386/x32-avx,
9580         and i386/x32-avx-avx512.
9581         (XMLTOC): Remove i386/x32-avx.xml, i386/x32-avx-avx512.xml,
9582         and i386/x32.xml.
9583         * features/i386/x32-avx-avx512.c: Removed.
9584         * features/i386/x32-avx-avx512.xml: Removed.
9585         * features/i386/x32-avx.c: Removed.
9586         * features/i386/x32-avx.xml: Removed.
9587         * features/i386/x32.c: Removed.
9588         * features/i386/x32.xml: Removed.
9589         * regformats/i386/x32-avx-avx512.dat: Removed.
9590         * regformats/i386/x32-avx.dat: Removed.
9591         * regformats/i386/x32.dat: Removed.
9592
9593 2017-08-07  Maciej W. Rozycki  <macro@imgtec.com>
9594
9595         PR breakpoints/21886
9596         * mem-break.c (default_memory_insert_breakpoint): Use
9597         `->placed_address' rather than `->reqstd_address' for the
9598         breakpoint location.
9599
9600 2017-08-07  Maciej W. Rozycki  <macro@imgtec.com>
9601
9602         * arch-utils.c (default_print_insn): Remove arch/mach/endian
9603         assertions.
9604
9605 2017-08-07  Maciej W. Rozycki  <macro@imgtec.com>
9606
9607         * gdbarch.sh (gdbarch_info): Replace the `tdep_info' member with
9608         a union of `tdep_info', `tdesc_data' and `id'.
9609         * aarch64-tdep.c (aarch64_gdbarch_init): Use `info.tdesc_data'
9610         rather than `info.tdep_info'.
9611         * amd64-linux-tdep.c (amd64_linux_init_abi): Likewise.
9612         * i386-linux-tdep.c (i386_linux_init_abi): Likewise.
9613         * i386-tdep.c (i386_gdbarch_init): Likewise.
9614         * mips-linux-tdep.c (mips_linux_init_abi): Likewise.
9615         * mips-tdep.c (mips_gdbarch_init): Likewise.
9616         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
9617         * rs6000-tdep.c (rs6000_gdbarch_init): Likewise.
9618         * ppc-linux-tdep.c (ppu2spu_sniffer): Use `info.id' rather than
9619         `info.tdep_info'.
9620         (ppc_linux_init_abi): Use `info.tdesc_data' rather than
9621         `info.tdep_info'.
9622         * sparc-tdep.c (sparc32_gdbarch_init): Likewise.
9623         * spu-multiarch.c (spu_gdbarch): Use `info.id' rather than
9624         `info.tdep_info'.
9625         * spu-tdep.c (spu_gdbarch_init): Likewise.
9626         * gdbarch.h: Regenerate.
9627
9628 2017-08-07  Leszek Swirski  <leszeks@google.com>
9629
9630         PR symtab/20899
9631         * dwarf2read.c (dwarf2_string_attr): Allow DW_FORM_GNU_strp_alt.
9632
9633 2017-08-07  Simon Marchi  <simon.marchi@ericsson.com>
9634
9635         * remote-sim.c (gdbsim_load): Remove char **argv local variable.
9636         (gdbsim_open): Rename gdb_argv args object to argv.
9637
9638 2017-08-05  Tom Tromey  <tom@tromey.com>
9639
9640         * compile/compile-object-load.c (compile_object_load): Use
9641         gdb::unique_xmalloc_ptr.
9642         * cli/cli-dump.c (scan_filename): Rename from
9643         scan_filename_with_cleanup.  Change return type.
9644         (scan_expression): Rename from scan_expression_with_cleanup.
9645         Change return type.
9646         (dump_memory_to_file, dump_value_to_file, restore_command):
9647         Use gdb::unique_xmalloc_ptr.  Update.
9648         * cli/cli-cmds.c (find_and_open_script): Use
9649         gdb::unique_xmalloc_ptr.
9650         * tracefile-tfile.c (tfile_open): Use gdb::unique_xmalloc_ptr.
9651         * symmisc.c (maintenance_print_symbols)
9652         (maintenance_print_msymbols): Use gdb::unique_xmalloc_ptr.
9653         * symfile.c (symfile_bfd_open, generic_load)
9654         (add_symbol_file_command, remove_symbol_file_command): Use
9655         gdb::unique_xmalloc_ptr.
9656         * source.c (openp): Use gdb::unique_xmalloc_ptr.
9657         * psymtab.c (maintenance_print_psymbols): Use
9658         gdb::unique_xmalloc_ptr.
9659         * corelow.c (core_open): Use gdb::unique_xmalloc_ptr.
9660         * breakpoint.c (save_breakpoints): Use gdb::unique_xmalloc_ptr.
9661         * solib.c (solib_map_sections): Use gdb::unique_xmalloc_ptr.
9662         (reload_shared_libraries_1): Likewise.
9663
9664 2017-08-05  Tom Tromey  <tom@tromey.com>
9665
9666         * rust-exp.y (rust_op_ptr, set_field): Remove typedefs.
9667         (rust_op_vector, rust_set_vector): New typedefs.
9668         (current_parser): New global.
9669         (work_obstack): Change to pointer type.  Update all users.
9670         (rust_ast, pstate): Remove globals.
9671         (struct rust_parser): New.
9672         (%union) <params, field_inits>: Change type.
9673         (start, tuple_expr, unit_expr, struct_expr_list, literal)
9674         (field_expr, expr_list, maybe_expr_list, type_list): Update.
9675         (ast_call_ish, ast_path, ast_function_type, ast_tuple_type)
9676         (convert_params_to_types, convert_params_to_expression): Change
9677         type of "params".
9678         (ast_string): Change type of "fields".
9679         (rust_parse): Make a rust_parser.  Remove cleanups.
9680         (rust_lex_tests): Make and install an auto_obstack.
9681
9682 2017-08-04  Yao Qi  <yao.qi@linaro.org>
9683
9684         * configure.srv (ipa_x32_linux_regobj): New.
9685         * linux-amd64-ipa.c (get_ipa_tdesc): Use X86_TDESC_AVX_AVX512
9686         instead of X86_TDESC_AVX512.
9687         (initialize_low_tracepoint): Call
9688         init_registers_x32_avx_avx512_linux.
9689
9690 2017-08-04  Yao Qi  <yao.qi@linaro.org>
9691
9692         * utils.h (gdb_argv): Add namespace std for nullptr_t.
9693
9694 2017-08-03  Ruslan Kabatsayev  <b7.10110111@gmail.com>
9695
9696         * MAINTAINERS (Write After Approval): Add Ruslan Kabatsayev.
9697
9698 2017-08-03  Tom Tromey  <tom@tromey.com>
9699
9700         * utils.c (make_cleanup_freeargv, do_freeargv, gdb_buildargv):
9701         Remove.
9702         * utils.h (make_cleanup_freeargv, gdb_buildargv): Remove.
9703
9704 2017-08-03  Tom Tromey  <tom@tromey.com>
9705
9706         * python/py-param.c (compute_enum_values): Use gdb_argv.
9707
9708 2017-08-03  Tom Tromey  <tom@tromey.com>
9709
9710         * utils.h (struct gdb_argv_deleter): New.
9711         (gdb_argv): New class.
9712         * utils.c (gdb_argv::reset): New method.
9713         * tracepoint.c (delete_trace_variable_command): Use gdb_argv.
9714         * tracefile.c (tsave_command): Use gdb_argv.
9715         * top.c (new_ui_command): Use gdb_argv.
9716         * symmisc.c (maintenance_print_symbols)
9717         (maintenance_print_msymbols, maintenance_expand_symtabs): Use gdb_argv.
9718         * symfile.c (symbol_file_command, generic_load)
9719         (remove_symbol_file_command): Use gdb_argv.
9720         * stack.c (backtrace_command): Use gdb_argv.
9721         * source.c (add_path, show_substitute_path_command)
9722         (unset_substitute_path_command, set_substitute_path_command):
9723         Use gdb_argv.
9724         * skip.c (skip_command): Use gdb_argv.  Use gdb_buildargv.
9725         * ser-mingw.c (pipe_windows_open): Use gdb_argv.
9726         * remote.c (extended_remote_run, remote_put_command)
9727         (remote_get_command, remote_delete_command): Use gdb_argv.
9728         * remote-sim.c (gdbsim_load, gdbsim_create_inferior)
9729         (gdbsim_open): Use gdb_argv.
9730         * python/py-cmd.c (gdbpy_string_to_argv): Use gdb_argv.
9731         * psymtab.c (maintenance_print_psymbols): Use gdb_argv.
9732         * procfs.c (procfs_info_proc): Use gdb_argv.
9733         * interps.c (interpreter_exec_cmd): Use gdb_argv.
9734         * infrun.c (handle_command): Use gdb_argv.
9735         * inferior.c (add_inferior_command, clone_inferior_command):
9736         Use gdb_argv.
9737         * guile/scm-string.c (gdbscm_string_to_argv): Use gdb_argv.
9738         * exec.c (exec_file_command): Use gdb_argv.
9739         * cli/cli-cmds.c (alias_command): Use gdb_argv.
9740         * compile/compile.c (build_argc_argv): Use gdb_argv.
9741
9742 2017-08-03  Tom Tromey  <tom@tromey.com>
9743
9744         * python/python.c (gdbpy_decode_line): Use unique_xmalloc_ptr.
9745
9746 2017-08-03  Tom Tromey  <tom@tromey.com>
9747
9748         * python/python.c (compute_python_string): Return std::string.
9749         (gdbpy_eval_from_control_command): Update.
9750         (do_start_initialization): Use std::string.
9751         * python/py-varobj.c (py_varobj_iter_next): Use string_printf, not
9752         xstrprintf.
9753         * python/py-breakpoint.c (local_setattro): Use string_printf, not
9754         xstrprintf.
9755
9756 2017-08-03  Tom Tromey  <tom@tromey.com>
9757
9758         * top.h (do_restore_instream_cleanup): Remove.
9759         * top.c (do_restore_instream_cleanup): Remove.
9760         (read_command_file): Use scoped_restore.
9761         * cli/cli-script.c (execute_user_command): Use scoped_restore.
9762
9763 2017-08-03  Tom Tromey  <tom@tromey.com>
9764
9765         * cli/cli-script.c (execute_user_command)
9766         (execute_control_command): Use scoped_restore.
9767
9768 2017-08-03  Tom Tromey  <tom@tromey.com>
9769
9770         * cli/cli-script.c (do_restore_user_call_depth): Remove.
9771         (execute_user_command): Remove user_call_depth; use
9772         user_args_stack's size instead.
9773
9774 2017-08-03  Tom Tromey  <tom@tromey.com>
9775
9776         * top.h (in_user_command): Remove.
9777         * top.c (in_user_command): Remove.
9778         * cli/cli-script.c (do_restore_user_call_depth)
9779         (execute_user_command): Update.
9780
9781 2017-08-03  Tom Tromey  <tom@tromey.com>
9782
9783         * valops.c (search_struct_method): Use gdb::byte_vector.
9784         * valarith.c (value_concat): Use std::vector.
9785         * target.c (memory_xfer_partial): Use gdb::byte_vector.
9786         (simple_search_memory): Likewise.
9787         * printcmd.c (find_string_backward): Use gdb::byte_vector.
9788         * mi/mi-main.c (mi_cmd_data_write_memory): Use gdb::byte_vector.
9789         * gcore.c (gcore_copy_callback): Use gdb::byte_vector.
9790         * elfread.c (elf_rel_plt_read): Use std::string.
9791         * cp-valprint.c (cp_print_value): Use gdb::byte_vector.
9792         * cli/cli-dump.c (restore_section_callback): Use
9793         gdb::byte_vector.
9794
9795 2017-08-03  Tom Tromey  <tom@tromey.com>
9796
9797         * jit.c (jit_reader_load_command): Use unique_xmalloc_ptr.
9798
9799 2017-08-03  Tom Tromey  <tom@tromey.com>
9800
9801         * tui/tui-regs.c (tui_restore_gdbout): Remove.
9802         (tui_register_format): Use scoped_restore.
9803
9804 2017-08-03  Tom Tromey  <tom@tromey.com>
9805
9806         * reverse.c (exec_direction_default): Remove.
9807         (exec_reverse_once): Use scoped_restore.
9808         * remote.c (restore_remote_timeout): Remove.
9809         (remote_flash_erase, remote_flash_write, remote_flash_done)
9810         (readchar, remote_serial_write): Use scoped_restore.
9811         * cli/cli-script.c (struct source_cleanup_lines_args)
9812         (source_cleanup_lines): Remove.
9813         (script_from_file): Use scoped_restore.
9814         * cli/cli-cmds.c (source_verbose_cleanup): Remove.
9815         (source_command): Use scoped_restore.
9816
9817 2017-08-03  Tom Tromey  <tom@tromey.com>
9818
9819         * utils.h (make_cleanup_free_so): Remove.
9820         * utils.c (do_free_so, make_cleanup_free_so): Remove.
9821         * solist.h (struct so_deleter): New.
9822         (so_list_up): New typedef.
9823         * solib-svr4.c (svr4_read_so_list): Use so_list_up.
9824
9825 2017-08-03  Tom Tromey  <tom@tromey.com>
9826
9827         * utils.h (make_cleanup_restore_current_language): Remove.
9828         * utils.c (do_restore_current_language)
9829         (make_cleanup_restore_current_language): Remove.
9830         * parse.c (parse_exp_in_context_1)
9831         (parse_expression_with_language): Use
9832         scoped_restore_current_language.
9833         * mi/mi-main.c (mi_cmd_execute): Use
9834         scoped_restore_current_language.
9835         * language.h (scoped_restore_current_language): New class.
9836
9837 2017-08-03  Tom Tromey  <tom@tromey.com>
9838
9839         * compile/compile.c (cleanup_unlink_file): Remove.
9840         (compile_to_object): Use gdb::unlinker.
9841         (eval_compile_command): Likewise.
9842
9843 2017-08-03  Tom Tromey  <tom@tromey.com>
9844
9845         * utils.h (make_cleanup_fclose): Remove.
9846         * utils.c (do_fclose_cleanup, make_cleanup_fclose): Remove.
9847
9848 2017-08-03  Tom Tromey  <tom@tromey.com>
9849
9850         * top.c (open_terminal_stream): Return gdb_file_up.
9851         (new_ui_command): Update.
9852
9853 2017-08-03  Tom Tromey  <tom@tromey.com>
9854
9855         * source.c (print_source_lines_base, forward_search_command)
9856         (reverse_search_command): Use gdb_file_up.
9857
9858 2017-08-03  Tom Tromey  <tom@tromey.com>
9859
9860         * fbsd-nat.c (fbsd_find_memory_regions): Update.
9861
9862 2017-08-03  Tom Tromey  <tom@tromey.com>
9863
9864         * cli/cli-cmds.c (find_and_open_script): Change return type.
9865         Remove "streamp" and "full_path" parameters.
9866         (source_script_with_search): Update.
9867         * auto-load.c (source_script_file): Update.
9868         * cli/cli-cmds.h (find_and_open_script): Change type.
9869         (open_script): New struct.
9870
9871 2017-08-03  Tom Tromey  <tom@tromey.com>
9872
9873         * xml-support.c (xml_fetch_content_from_file): Update.
9874         * ui-file.c (stdio_file::open): Update.
9875         * tracefile-tfile.c (tfile_start): Update.
9876         * remote.c (remote_file_put, remote_file_get): Update.
9877         * nat/linux-procfs.c (linux_proc_get_int)
9878         (linux_proc_pid_get_state, linux_proc_tid_get_name): Update.
9879         * nat/linux-osdata.c (linux_common_core_of_thread): Update.
9880         (command_from_pid, commandline_from_pid, linux_xfer_osdata_cpus)
9881         (print_sockets, linux_xfer_osdata_shm, linux_xfer_osdata_sem)
9882         (linux_xfer_osdata_msg, linux_xfer_osdata_modules): Update.
9883         * nat/linux-btrace.c (linux_determine_kernel_start): Update.
9884         * linux-nat.c (linux_proc_pending_signals): Update.
9885         * dwarf2read.c (write_psymtabs_to_index): Use gdb_file_up.
9886         (file_closer): Remove.
9887         * compile/compile.c (compile_to_object): Update.
9888         * common/filestuff.h (struct gdb_file_deleter): New.
9889         (gdb_file_up): New typedef.
9890         (gdb_fopen_cloexec): Change return type.
9891         * common/filestuff.c (gdb_fopen_cloexec): Return gdb_file_up.
9892         * cli/cli-dump.c (fopen_with_cleanup): Remove.
9893         (dump_binary_file, restore_binary_file): Update.
9894         * auto-load.c (auto_load_objfile_script_1): Update.
9895
9896 2017-08-03  Tom Tromey  <tom@tromey.com>
9897
9898         * tracepoint.c (tvariables_info_1): Use ui_out_emit_table.
9899         (info_static_tracepoint_markers_command): Likewise.
9900         * solib.c (info_sharedlibrary_command): Use ui_out_emit_table.
9901         * skip.c (skip_info): Use ui_out_emit_table.
9902         * progspace.c (print_program_space): Use ui_out_emit_table.
9903         * osdata.c (info_osdata): Use ui_out_emit_table.
9904         * mi/mi-cmd-info.c (mi_cmd_info_ada_exceptions): Use
9905         ui_out_emit_table.
9906         * linux-thread-db.c (info_auto_load_libthread_db): Use
9907         ui_out_emit_table.
9908         * inferior.c (print_inferior): Use ui_out_emit_table.
9909         * gdb_bfd.c (maintenance_info_bfds): Use ui_out_emit_table.
9910         * breakpoint.c (breakpoint_1): Use ui_out_emit_table.
9911         * auto-load.c (auto_load_info_scripts): Use ui_out_emit_table.
9912         * ada-tasks.c (print_ada_task_info): Use ui_out_emit_table.
9913         * ui-out.h (class ui_out_emit_table): New.
9914
9915 2017-08-02  Maciej W. Rozycki  <macro@imgtec.com>
9916
9917         * mips-tdep.c (mips_fpu_type_str): New function.
9918         (mips_dump_tdep): Call it.
9919
9920 2017-08-01  Maciej W. Rozycki  <macro@imgtec.com>
9921
9922         * mips-tdep.c (mips_gdbarch_init): Use MIPS_FPU_TYPE to access
9923         `->mips_fpu_type'.
9924
9925 2017-07-31  Xavier Roirand  <roirand@adacore.com>
9926
9927         * solib-darwin.c (DYLD_VERSION_MAX): Increase value.
9928
9929 2017-07-27  Xavier Roirand  <roirand@adacore.com>
9930
9931         * MAINTAINERS (Write After Approval): Add Xavier Roirand.
9932
9933 2017-07-26  Yao Qi  <yao.qi@linaro.org>
9934
9935         * cli/cli-cmds.c (maintenancechecklist): New variable.
9936         * gdbcmd.h (maintenancechecklist): Declare it.
9937         * i386-linux-tdep.c (_initialize_i386_linux_tdep) [GDB_SELF_TEST]:
9938         Call i386_linux_read_description with different masks.
9939         * maint.c (maintenance_check_command): New function.
9940         (_initialize_maint_cmds): Call add_prefix_cmd.
9941         * target-descriptions.c (tdesc_reg): override operator != and ==.
9942         (tdesc_type): Likewise.
9943         (tdesc_feature): Likewise.
9944         (target_desc): Likewise.
9945         [GDB_SELF_TEST] (selftests::record_xml_tdesc): New function.
9946         (maintenance_check_xml_descriptions): New function.
9947         (_initialize_target_descriptions) Add command "xml-descriptions".
9948         * target-descriptions.h (selftests::record_xml_tdesc): Declare.
9949
9950 2017-07-26  Yao Qi  <yao.qi@linaro.org>
9951
9952         * i386-linux-tdep.c: Don't include features/i386/i386-*linux.c.
9953         Include features/i386/32bit-*.c.
9954         (i386_linux_read_description): Generate target description if it
9955         doesn't exist.
9956         (_initialize_i386_linux_tdep): Don't call _initialize_tdesc_i386
9957         functions.
9958         * features/i386/32bit-linux.c: Re-generated.
9959         * features/i386/32bit-sse.c: Likewise.
9960         * target-descriptions.c (print_c_feature::visit): Print code to
9961         set register number if needed.
9962         (print_c_feature) <m_next_regnum>: New field.
9963
9964 2017-07-26  Yao Qi  <yao.qi@linaro.org>
9965
9966         * features/Makefile (CFILES): Rename with TDESC_CFILES.
9967         (FEATURE_XMLFILES): New.
9968         (FEATURE_CFILES): New.
9969         New rules.
9970         (clean-cfiles): Remove generated c files.
9971         * features/i386/32bit-avx.c: Generated.
9972         * features/i386/32bit-avx512.c: Generated.
9973         * features/i386/32bit-core.c: Generated.
9974         * features/i386/32bit-linux.c: Generated.
9975         * features/i386/32bit-mpx.c: Generated.
9976         * features/i386/32bit-pkeys.c: Generated.
9977         * features/i386/32bit-sse.c: Generated.
9978         * target-descriptions.c: Include algorithm.
9979         (tdesc_element_visitor): Add method visit_end.
9980         (print_c_tdesc): Implement visit_end.
9981         (print_c_tdesc:: m_filename_after_features): Move it to
9982         protected.
9983         (print_c_feature): New class.
9984         (maint_print_c_tdesc_cmd): Use print_c_feature if XML file
9985         name starts with "i386/32bit-".
9986
9987 2017-07-26  Yao Qi  <yao.qi@linaro.org>
9988
9989         * target-descriptions.c (tdesc_element_visitor): New class.
9990         (tdesc_element): New class.
9991         (tdesc_reg): Inherit from tdesc_element.
9992         (tdesc_reg::accept): New function.
9993         (tdesc_type): Inherit from tdesc_element.
9994         (tdesc_type::accept): New function.
9995         (tdesc_feature): Inherit from tdesc_element.
9996         (tdesc_feature::accept): New function.
9997         (target_desc): Inherit from tdesc_element.
9998         (target_desc::target_desc): New.
9999         (target_desc::~target_desc): New.
10000         (target_desc::accept): New.
10001         (allocate_target_description): Use new.
10002         (free_target_description): Use delete.
10003         (print_c_tdesc): New class.
10004         (maint_print_c_tdesc_cmd): Adjust.
10005
10006         * features/aarch64.c: Re-generated.
10007         * features/arc-arcompact.c: Re-generated.
10008         * features/arc-v2.c: Re-generated.
10009         * features/arm/arm-with-iwmmxt.c: Re-generated.
10010         * features/arm/arm-with-m.c: Re-generated.
10011         * features/arm/arm-with-m-fpa-layout.c: Re-generated.
10012         * features/arm/arm-with-m-vfp-d16.c: Re-generated.
10013         * features/arm/arm-with-neon.c: Re-generated.
10014         * features/arm/arm-with-vfpv2.c: Re-generated.
10015         * features/arm/arm-with-vfpv3.c: Re-generated.
10016         * features/i386/amd64-avx-avx512.c: Re-generated.
10017         * features/i386/amd64-avx-avx512-linux.c: Re-generated.
10018         * features/i386/amd64-avx.c: Re-generated.
10019         * features/i386/amd64-avx-linux.c: Re-generated.
10020         * features/i386/amd64-avx-mpx-avx512-pku.c: Re-generated.
10021         * features/i386/amd64-avx-mpx-avx512-pku-linux.c: Re-generated.
10022         * features/i386/amd64-avx-mpx.c: Re-generated.
10023         * features/i386/amd64-avx-mpx-linux.c: Re-generated.
10024         * features/i386/amd64.c: Re-generated.
10025         * features/i386/amd64-linux.c: Re-generated.
10026         * features/i386/amd64-mpx.c: Re-generated.
10027         * features/i386/amd64-mpx-linux.c: Re-generated.
10028         * features/i386/i386-avx-avx512.c: Re-generated.
10029         * features/i386/i386-avx-avx512-linux.c: Re-generated.
10030         * features/i386/i386-avx.c: Re-generated.
10031         * features/i386/i386-avx-linux.c: Re-generated.
10032         * features/i386/i386-avx-mpx-avx512-pku.c: Re-generated.
10033         * features/i386/i386-avx-mpx-avx512-pku-linux.c: Re-generated.
10034         * features/i386/i386-avx-mpx.c: Re-generated.
10035         * features/i386/i386-avx-mpx-linux.c: Re-generated.
10036         * features/i386/i386.c: Re-generated.
10037         * features/i386/i386-linux.c: Re-generated.
10038         * features/i386/i386-mmx.c: Re-generated.
10039         * features/i386/i386-mmx-linux.c: Re-generated.
10040         * features/i386/i386-mpx.c: Re-generated.
10041         * features/i386/i386-mpx-linux.c: Re-generated.
10042         * features/i386/x32-avx-avx512.c: Re-generated.
10043         * features/i386/x32-avx-avx512-linux.c: Re-generated.
10044         * features/i386/x32-avx.c: Re-generated.
10045         * features/i386/x32-avx-linux.c: Re-generated.
10046         * features/i386/x32.c: Re-generated.
10047         * features/i386/x32-linux.c: Re-generated.
10048         * features/microblaze.c: Re-generated.
10049         * features/microblaze-with-stack-protect.c: Re-generated.
10050         * features/mips64-dsp-linux.c: Re-generated.
10051         * features/mips64-linux.c: Re-generated.
10052         * features/mips-dsp-linux.c: Re-generated.
10053         * features/mips-linux.c: Re-generated.
10054         * features/nds32.c: Re-generated.
10055         * features/nios2.c: Re-generated.
10056         * features/nios2-linux.c: Re-generated.
10057         * features/rs6000/powerpc-32.c: Re-generated.
10058         * features/rs6000/powerpc-32l.c: Re-generated.
10059         * features/rs6000/powerpc-403.c: Re-generated.
10060         * features/rs6000/powerpc-403gc.c : Re-generated.
10061         * features/rs6000/powerpc-405.c: Re-generated.
10062         * features/rs6000/powerpc-505.c: Re-generated.
10063         * features/rs6000/powerpc-601.c: Re-generated.
10064         * features/rs6000/powerpc-602.c: Re-generated.
10065         * features/rs6000/powerpc-603.c: Re-generated.
10066         * features/rs6000/powerpc-604.c: Re-generated.
10067         * features/rs6000/powerpc-64.c: Re-generated.
10068         * features/rs6000/powerpc-64l.c: Re-generated.
10069         * features/rs6000/powerpc-7400.c: Re-generated.
10070         * features/rs6000/powerpc-750.c: Re-generated.
10071         * features/rs6000/powerpc-860.c: Re-generated.
10072         * features/rs6000/powerpc-altivec32.c: Re-generated.
10073         * features/rs6000/powerpc-altivec32l.c: Re-generated.
10074         * features/rs6000/powerpc-altivec64.c: Re-generated.
10075         * features/rs6000/powerpc-altivec64l.c: Re-generated.
10076         * features/rs6000/powerpc-cell32l.c: Re-generated.
10077         * features/rs6000/powerpc-cell64l.c: Re-generated.
10078         * features/rs6000/powerpc-e500.c: Re-generated.
10079         * features/rs6000/powerpc-e500l.c: Re-generated.
10080         * features/rs6000/powerpc-isa205-32l.c: Re-generated.
10081         * features/rs6000/powerpc-isa205-64l.c: Re-generated.
10082         * features/rs6000/powerpc-isa205-altivec32l.c: Re-generated.
10083         * features/rs6000/powerpc-isa205-altivec64l.c: Re-generated.
10084         * features/rs6000/powerpc-isa205-vsx32l.c: Re-generated.
10085         * features/rs6000/powerpc-isa205-vsx64l.c: Re-generated.
10086         * features/rs6000/powerpc-vsx32.c: Re-generated.
10087         * features/rs6000/powerpc-vsx32l.c: Re-generated.
10088         * features/rs6000/powerpc-vsx64.c: Re-generated.
10089         * features/rs6000/powerpc-vsx64l.c: Re-generated.
10090         * features/rs6000/rs6000.c: Re-generated.
10091         * features/s390-linux32.c: Re-generated.
10092         * features/s390-linux32v1.c: Re-generated.
10093         * features/s390-linux32v2.c: Re-generated.
10094         * features/s390-linux64.c: Re-generated.
10095         * features/s390-linux64v1.c: Re-generated.
10096         * features/s390-linux64v2.c: Re-generated.
10097         * features/s390-te-linux64.c: Re-generated.
10098         * features/s390-tevx-linux64.c: Re-generated.
10099         * features/s390-vx-linux64.c: Re-generated.
10100         * features/s390x-linux64.c: Re-generated.
10101         * features/s390x-linux64v1.c: Re-generated.
10102         * features/s390x-linux64v2.c: Re-generated.
10103         * features/s390x-te-linux64.c: Re-generated.
10104         * features/s390x-tevx-linux64.c: Re-generated.
10105         * features/s390x-vx-linux64.c: Re-generated.
10106         * features/sparc/sparc32-solaris.c: Re-generated.
10107         * features/sparc/sparc64-solaris.c: Re-generated.
10108         * features/tic6x-c62x.c: Re-generated.
10109         * features/tic6x-c62x-linux.c: Re-generated.
10110         * features/tic6x-c64x.c: Re-generated.
10111         * features/tic6x-c64x-linux.c: Re-generated.
10112         * features/tic6x-c64xp.c: Re-generated.
10113         * features/tic6x-c64xp-linux.c: Re-generated.
10114
10115 2017-07-26  Yao Qi  <yao.qi@linaro.org>
10116
10117         * i386-linux-tdep.c (i386_linux_read_description): New function.
10118         (i386_linux_core_read_description): Call
10119         i386_linux_read_description.
10120         * i386-linux-tdep.h (i386_linux_read_description): Declare.
10121         (tdesc_i386_linux, tdesc_i386_mmx_linux): Remove declarations.
10122         (tdesc_i386_avx_linux, tdesc_i386_mpx_linux): Likewise
10123         (tdesc_i386_avx_mpx_linux, tdesc_i386_avx_avx512_linux): Likewise.
10124         (tdesc_i386_avx_mpx_avx512_pku_linux): Likewise.
10125         * x86-linux-nat.c (x86_linux_read_description): Call
10126         i386_linux_read_description.
10127
10128 2017-07-26  Yao Qi  <yao.qi@linaro.org>
10129
10130         * NEWS: Mention it.
10131         * features/Makefile (%.c: %.xml): Pass the xml file name to
10132         command "maint print c-tdesc".
10133         * target-descriptions.c (maint_print_c_tdesc_cmd): Get file
10134         name from 'arg'.
10135
10136 2017-07-26  Yao Qi  <yao.qi@linaro.org>
10137
10138         * target-descriptions.c (target_desc): Add ctor and dtor.  Do
10139         in-class initialization.
10140         (tdesc_create_feature): Call new instead of XCNEW.
10141         (free_target_description): Ue delete.
10142
10143 2017-07-25  John Baldwin  <jhb@FreeBSD.org>
10144
10145         * configure.nat: Add "-lkvm" for NetBSD/sparc64 and fix typo.
10146
10147 2017-07-25  Yao Qi  <yao.qi@linaro.org>
10148
10149         * amd64-tdep.c (amd64_init_abi): Make argument default_tdesc
10150         constant.
10151         (amd64_x32_init_abi): Likewise.
10152         * amd64-tdep.h (amd64_init_abi): Update declaration.
10153         (amd64_x32_init_abi): Likewise.
10154
10155 2017-07-25  Yao Qi  <yao.qi@linaro.org>
10156
10157         PR tdep/21717
10158         * arm-linux-nat.c (arm_linux_fetch_inferior_registers): Update
10159         condition for FPSCR.
10160         (arm_linux_store_inferior_registers): Likewise.
10161
10162 2017-07-22  Tom Tromey  <tom@tromey.com>
10163
10164         * break-catch-syscall.c (struct catch_syscall_inferior_data)
10165         <syscalls_counts>: Now a std::vector.
10166         (get_catch_syscall_inferior_data): Use "new".
10167         (catch_syscall_inferior_data_cleanup): Use "delete".
10168         (insert_catch_syscall, remove_catch_syscall)
10169         (clear_syscall_counts): Update.
10170
10171 2017-07-22  Tom Tromey  <tom@tromey.com>
10172
10173         * break-catch-syscall.c (syscall_catchpoint)
10174         <syscalls_to_be_caught>: Now a std::vector<int>
10175         (~syscall_catchpoint): Remove.
10176         (insert_catch_syscall, remove_catch_syscall)
10177         (breakpoint_hit_catch_syscall, print_one_catch_syscall)
10178         (print_mention_catch_syscall, print_recreate_catch_syscall):
10179         Update.
10180         (create_syscall_event_catchpoint): Change type of "filter"
10181         parameter.
10182         (catch_syscall_split_args): Return a std::vector.
10183         (catch_syscall_command_1, catching_syscall_number_1): Update.
10184
10185 2017-07-22  Tom Tromey  <tom@tromey.com>
10186
10187         * break-catch-throw.c (struct exception_catchpoint)
10188         <exception_rx>: Now a std::string.
10189         (~exception_catchpoint): Remove.
10190         (print_one_detail_exception_catchpoint): Update.
10191         (handle_gnu_v3_exceptions): Change type of except_rx.
10192         (extract_exception_regexp): Return a std::string.
10193         (catch_exception_command_1): Update.
10194
10195 2017-07-22  Tom Tromey  <tom@tromey.com>
10196
10197         * break-catch-sig.c (gdb_signal_type): Remove typedef.
10198         (struct signal_catchpoint) <signals_to_be_caught>: Now a
10199         std::vector.
10200         <catch_all>: Now a bool.
10201         (~signal_catchpoint): Remove.
10202         (signal_catchpoint_insert_location)
10203         (signal_catchpoint_remove_location)
10204         (signal_catchpoint_breakpoint_hit, signal_catchpoint_print_one)
10205         (signal_catchpoint_print_mention)
10206         (signal_catchpoint_print_recreate)
10207         (signal_catchpoint_explains_signal): Update.
10208         (create_signal_catchpoint): Change type of "filter" and
10209         "catch_all".
10210         (catch_signal_split_args): Return a std::vector.  Change type of
10211         "catch_all".
10212         (catch_signal_command): Update.
10213
10214 2017-07-20  Pedro Alves  <palves@redhat.com>
10215
10216         * ada-lang.c (ada_language_defn): Make extern.
10217         (_initialize_ada_language): Remove add_language call.
10218         * c-lang.c (c_language_defn, cplus_language_defn)
10219         (asm_language_defn, minimal_language_defn): Make extern.
10220         (_initialize_c_language): Delete.
10221         * completer.c (compare_cstrings): Delete, moved to utils.h.
10222         * d-lang.c (d_language_defn): Make extern.
10223         (_initialize_d_language): Remove add_language calls.
10224         * defs.h (enum language): Add comment.
10225         * f-lang.c (f_language_defn): Make extern.
10226         (_initialize_f_language): Remove add_language call.
10227         * go-lang.c (go_language_defn): Make extern.
10228         (_initialize_go_language): Remove add_language call.
10229         * language.c: Include <algorithm>.
10230         (languages): Redefine as const array.
10231         (languages_size, languages_allocsize, DEFAULT_ALLOCSIZE): Delete.
10232         (set_language_command): Handle "local".  Use for-range loop.
10233         (set_language): Remove loop.
10234         (language_enum): Rewrite.
10235         (language_def, language_str): Remove loops.
10236         (add_language): Delete.
10237         (add_set_language_command): New, based on add_languages.
10238         (skip_language_trampoline): Adjust.
10239         (local_language_defn): Delete.
10240         (language_gdbarch_post_init): Adjust.
10241         (_initialize_language): Remove add_language calls.  Call
10242         add_set_language_command.
10243         * language.h (add_language): Delete.
10244         (auto_language_defn)
10245         (unknown_language_defn, minimal_language_defn, ada_language_defn)
10246         (asm_language_defn, c_language_defn, cplus_language_defn)
10247         (d_language_defn, f_language_defn, go_language_defn)
10248         (m2_language_defn, objc_language_defn, opencl_language_defn)
10249         (pascal_language_defn, rust_language_defn): Declare.
10250         * m2-lang.c (m2_language_defn): Make extern.
10251         (_initialize_m2_language): Remove add_language call.
10252         * objc-lang.c (objc_language_defn): Make extern.
10253         (_initialize_objc_language): Remove add_language call.
10254         * opencl-lang.c (opencl_language_defn): Make extern.
10255         (_initialize_opencl_language): Remove add_language call.
10256         * p-lang.c (pascal_language_defn): Make extern.
10257         (_initialize_pascal_language): Delete.
10258         * rust-lang.c (rust_language_defn): Make extern.
10259         (_initialize_rust_language): Delete.
10260         * utils.h (compare_cstrings): New static inline function.
10261
10262 2017-07-20  Pedro Alves  <palves@redhat.com>
10263
10264         * ada-lang.c (ada_to_fixed_type_1): Adjust.
10265         (get_var_value): Constify parameters.
10266         (get_int_var_value): Change prototype.
10267         (to_fixed_range_type): Adjust.
10268         * ada-lang.h (get_int_var_value): Change prototype.
10269
10270 2017-07-20  Pedro Alves  <palves@redhat.com>
10271
10272         * dwarf2read.c (dw2_lookup_symbol): Use
10273         SYMBOL_MATCHES_SEARCH_NAME.
10274         * psymtab.c (psym_lookup_symbol): Use SYMBOL_MATCHES_SEARCH_NAME.
10275
10276 2017-07-20  Pedro Alves  <palves@redhat.com>
10277
10278         * block.c (block_iter_name_step, block_iter_name_first)
10279         (block_iter_name_next): Delete.
10280         (block_lookup_symbol_primary): Adjust to use
10281         dict_iter_match_first/dict_iter_match_next.
10282         * block.h (block_iter_name_first, block_iter_name_next): Delete
10283         declarations.
10284         (ALL_BLOCK_SYMBOLS_WITH_NAME): Adjust to use
10285         dict_iter_match_first/dict_iter_match_next.
10286
10287 2017-07-20  Pedro Alves  <palves@redhat.com>
10288
10289         * cp-support.c (cp_find_first_component_aux): Add missing case for
10290         end of string.
10291
10292 2017-07-18  David Blaikie  <dblaikie@gmail.com>
10293
10294         * dwarf2read.c (create_cus_hash_table): Re-add lost initialization
10295         of dwo_cu's dwo_file.
10296
10297 2017-07-18  Yao Qi  <yao.qi@linaro.org>
10298
10299         * remote.c (store_registers_using_G): Remove one line comment.
10300
10301 2017-07-18  Yao Qi  <yao.qi@linaro.org>
10302
10303         * regcache.c (regcache_cpy): Simplify it.
10304         (regcache::cpy_no_passthrough): Remove it.
10305         * regcache.h (cpy_no_passthrough): Remove it.
10306         (regcache_dup, regcache_cpy): Update comments.
10307
10308 2017-07-18  Pedro Alves  <palves@redhat.com>
10309
10310         * remote-sim.c (sim_command_completer): Adjust to work with a
10311         completion_tracker instead of a VEC.
10312
10313 2017-07-17  Pedro Alves  <palves@redhat.com>
10314
10315         * completer.c (complete_source_filenames): New function.
10316         (complete_address_and_linespec_locations): New function.
10317         (location_completer): Use complete_address_and_linespec_locations.
10318         (completion_tracker::build_completion_result): Honor the tracker's
10319         request to suppress append.
10320         * completer.h (completion_tracker::suppress_append_ws)
10321         (completion_tracker::set_suppress_append_ws): New methods.
10322         (completion_tracker::m_suppress_append_ws): New field.
10323         (complete_source_filenames): New declaration.
10324         * linespec.c (linespec_complete_what): New.
10325         (struct ls_parser) <complete_what, completion_word,
10326         completion_quote_char, completion_quote_end, completion_tracker>:
10327         New fields.
10328         (string_find_incomplete_keyword_at_end): New.
10329         (linespec_lexer_lex_string): Record quote char.  If in completion
10330         mode, don't throw.
10331         (linespec_lexer_consume_token): Advance the completion word point.
10332         (linespec_lexer_peek_token): Save/restore completion info.
10333         (save_stream_and_consume_token): New.
10334         (set_completion_after_number): New.
10335         (linespec_parse_basic): Set what to complete next depending on
10336         token.  Handle function and label completions specially.
10337         (parse_linespec): Disable objc shortcut in completion mode.  Set
10338         what to complete next depending on token type.  Skip keyword if in
10339         completion mode.
10340         (complete_linespec_component, linespec_complete): New.
10341         * linespec.h (linespec_complete): Declare.
10342
10343 2017-07-17  Pedro Alves  <palves@redhat.com>
10344
10345         * linespec.c (linespec_lexer_lex_string, find_toplevel_char):
10346         Handle 'operator<' / 'operator<<'.
10347
10348 2017-07-17  Pedro Alves  <palves@redhat.com>
10349
10350         * completer.c (collect_explicit_location_matches): Handle
10351         MATCH_LABEL.
10352         (convert_explicit_location_to_linespec): New, factored out from
10353         ...
10354         (convert_explicit_location_to_sals): ... this.
10355         (complete_label): New.
10356         (linespec_complete_label, find_label_symbols_in_block): New.
10357         (find_label_symbols): Add completion_mode parameter and adjust to
10358         call find_label_symbols_in_block.
10359         * linespec.h (linespec_complete_label): Declare.
10360
10361 2017-07-17  Pedro Alves  <palves@redhat.com>
10362
10363         * ada-lang.c (ada_collect_symbol_completion_matches): Add
10364         complete_symbol_mode parameter.
10365         * cli/cli-cmds.c (complete_command): Get the completion result out
10366         of the handle_brkchars tracker if used a custom word point.
10367         * completer.c: Include "linespec.h".
10368         (enum explicit_location_match_type) <MATCH_LINE>: New enumerator.
10369         (advance_to_expression_complete_word_point): New.
10370         (completion_tracker::completes_to_completion_word): New.
10371         (complete_files_symbols): Pass down
10372         complete_symbol_mode::EXPRESSION.
10373         (explicit_options, probe_options): New.
10374         (collect_explicit_location_matches): Complete on the
10375         explictit_loc->foo instead of word.  Use
10376         linespec_complete_function.  Handle MATCH_LINE.  Handle offering
10377         keyword and options completions.
10378         (backup_text_ptr): Delete.
10379         (skip_keyword): New.
10380         (complete_explicit_location): Remove 'word' parameter.  Add
10381         language, quoted_arg_start and quoted_arg_end parameters.
10382         Rewrite, parsing left to right.
10383         (location_completer): Rewrite.
10384         (location_completer_handle_brkchars): New function.
10385         (symbol_completer): Pass down complete_symbol_mode::EXPRESSION.
10386         (enum complete_line_internal_reason): Adjust comments.
10387         (completion_tracker::discard_completions): New.
10388         (completer_handle_brkchars_func_for_completer): Handle
10389         location_completer.
10390         (gdb_custom_word_point_brkchars)
10391         (gdb_org_rl_basic_quote_characters): New.
10392         (gdb_completion_word_break_characters_throw)
10393         (completion_find_completion_word): Handle trackers that use a
10394         custom word point.
10395         (completion_tracker::advance_custom_word_point_by): New.
10396         (completion_tracker::build_completion_result): Don't rely on
10397         readline appending the quote char.
10398         (gdb_rl_attempted_completion_function_throw): Handle trackers that
10399         use a custom word point.
10400         (gdb_rl_attempted_completion_function): Restore
10401         rl_basic_quote_characters.
10402         * completer.h (class completion_tracker): Extend intro comment.
10403         (completion_tracker::set_quote_char)
10404         (completion_tracker::quote_char)
10405         (completion_tracker::set_use_custom_word_point)
10406         (completion_tracker::use_custom_word_point)
10407         (completion_tracker::custom_word_point)
10408         (completion_tracker::set_custom_word_point)
10409         (completion_tracker::advance_custom_word_point_by)
10410         (completion_tracker::completes_to_completion_word)
10411         (completion_tracker::discard_completions): New methods.
10412         (completion_tracker::m_quote_char)
10413         (completion_tracker::m_use_custom_word_point)
10414         (completion_tracker::m_custom_word_point): New fields.
10415         (advance_to_expression_complete_word_point): Declare.
10416         * f-lang.c (f_collect_symbol_completion_matches): Add
10417         complete_symbol_mode parameter.
10418         * language.h (struct language_defn)
10419         <la_collect_symbol_completion_matches>: Add complete_symbol_mode
10420         parameter.
10421         * linespec.c (linespec_keywords): Add NULL terminator.  Make extern.
10422         (linespec_complete_function): New function.
10423         (linespec_lexer_lex_keyword): Adjust.
10424         * linespec.h (linespec_keywords, linespec_complete_function): New
10425         declarations.
10426         * location.c (find_end_quote): New function.
10427         (explicit_location_lex_one): Add explicit_completion_info
10428         parameter.  Save quoting info.  Don't throw if being called for
10429         completion.  Don't handle Ada operators here.
10430         (is_cp_operator, skip_op_false_positives, first_of)
10431         (explicit_location_lex_one_function): New function.
10432         (string_to_explicit_location): Replace 'dont_throw' parameter with
10433         an explicit_completion_info pointer parameter.  Handle it.  Don't
10434         use explicit_location_lex_one to lex function names.  Use
10435         explicit_location_lex_one_function instead.
10436         * location.h (struct explicit_completion_info): New.
10437         (string_to_explicit_location): Replace 'dont_throw' parameter with
10438         an explicit_completion_info pointer parameter.
10439         * symtab.c (default_collect_symbol_completion_matches_break_on):
10440         Add complete_symbol_mode parameter.  Handle LINESPEC mode.
10441         (default_collect_symbol_completion_matches)
10442         (collect_symbol_completion_matches): Add complete_symbol_mode
10443         parameter.
10444         (collect_symbol_completion_matches_type): Pass down
10445         complete_symbol_mode::EXPRESSION.
10446         (collect_file_symbol_completion_matches): Add complete_symbol_mode
10447         parameter.  Handle LINESPEC mode.
10448         * symtab.h (complete_symbol_mode): New.
10449         (default_collect_symbol_completion_matches_break_on)
10450         (default_collect_symbol_completion_matches)
10451         (collect_symbol_completion_matches)
10452         (collect_file_symbol_completion_matches): Add complete_symbol_mode
10453         parameter.
10454
10455 2017-07-17  Pedro Alves  <palves@redhat.com>
10456
10457         * utils.c (enum class strncmp_iw_mode): New.
10458         (strcmp_iw): Rename to ...
10459         (strncmp_iw_with_mode): ... this.  Add string2_len and mode
10460         parameters.  Handle them.
10461         (strncmp_iw): New.
10462         (strcmp_iw): Reimplement as wrapper around strncmp_iw_with_mode.
10463         * utils.h (strncmp_iw): Declare.
10464         (strcmp_iw): Move describing comments here.
10465
10466 2017-07-17  Pedro Alves  <palves@redhat.com>
10467
10468         * c-exp.y (operator_stoken): Use CP_OPERATOR_LEN and
10469         CP_OPERATOR_STR.
10470         * c-typeprint.c (is_type_conversion_operator): Use
10471         CP_OPERATOR_STR.
10472         * cp-support.c (LENGTH_OF_OPERATOR): Delete.
10473         (cp_find_first_component_aux): Use CP_OPERATOR_STR and
10474         CP_OPERATOR_LEN.
10475         * cp-support.h (CP_OPERATOR_STR, CP_OPERATOR_LEN): New.
10476         * gnu-v2-abi.c (gnuv2_is_operator_name): Use CP_OPERATOR_STR.
10477         * gnu-v3-abi.c (gnuv3_is_operator_name): Use CP_OPERATOR_STR.
10478         * linespec.c (linespec_lexer_lex_string): Use CP_OPERATOR_LEN and
10479         CP_OPERATOR_STR.
10480         * location.c: Include "cp-support.h".
10481         (explicit_location_lex_one): Use CP_OPERATOR_LEN and
10482         CP_OPERATOR_STR.
10483         * symtab.c (operator_chars): Use CP_OPERATOR_STR and
10484         CP_OPERATOR_LEN.
10485
10486 2017-07-17  Pedro Alves  <palves@redhat.com>
10487
10488         * cli/cli-cmds.c (complete_command): Use a completion tracker
10489         along with completion_find_completion_word for handle_brkchars
10490         phase.
10491         * completer.c (RL_QF_SINGLE_QUOTE, RL_QF_DOUBLE_QUOTE)
10492         (RL_QF_BACKSLASH, RL_QF_OTHER_QUOTE): New.
10493         (struct gdb_rl_completion_word_info): New.
10494         (gdb_rl_find_completion_word): New.
10495         (completion_find_completion_word): New.
10496         * completer.h (completion_find_completion_word): Declare.
10497
10498 2017-07-17  Pedro Alves  <palves@redhat.com>
10499
10500         * ada-lang.c (symbol_completion_match): Adjust comments.
10501         (symbol_completion_add): Replace vector parameter with
10502         completion_tracker parameter.  Use it.
10503         (ada_make_symbol_completion_list): Rename to...
10504         (ada_collect_symbol_completion_matches): ... this.  Add
10505         completion_tracker parameter and use it.
10506         (ada_language_defn): Adjust.
10507         * break-catch-syscall.c (catch_syscall_completer): Adjust
10508         prototype and work with completion_tracker instead of VEC.
10509         * breakpoint.c (condition_completer): Adjust prototype and work
10510         with completion_tracker instead of VEC.
10511         * c-lang.c (c_language_defn, cplus_language_defn)
10512         (asm_language_defn, minimal_language_defn): Adjust to renames.
10513         * cli/cli-cmds.c (complete_command): Rework using
10514         completion_tracker.  Catch exceptions when completing.
10515         * cli/cli-decode.c (integer_unlimited_completer)
10516         (complete_on_cmdlist, complete_on_enum): Adjust prototype and work
10517         with completion_tracker instead of VEC.
10518         * command.h (struct completion_tracker): Forward declare.
10519         (completer_ftype, completer_handle_brkchars_ftype): Change
10520         types.
10521         (complete_on_cmdlist, complete_on_enum): Adjust.
10522         * completer.c: Include <algorithm>.
10523         (struct gdb_completer_state): New.
10524         (current_completion): New global.
10525         (readline_line_completion_function): Delete.
10526         (noop_completer, filename_completer)
10527         (filename_completer_handle_brkchars, complete_files_symbols)
10528         (linespec_location_completer): Adjust to work with a
10529         completion_tracker instead of a VEC.
10530         (string_or_empty): New.
10531         (collect_explicit_location_matches): Adjust to work with a
10532         completion_tracker instead of a VEC.
10533         (explicit_location_completer): Rename to ...
10534         (complete_explicit_location): ... this and adjust to work with a
10535         completion_tracker instead of a VEC.
10536         (location_completer): Adjust to work with a completion_tracker
10537         instead of a VEC.
10538         (add_struct_fields): Adjust to work with a completion_list instead
10539         of VEC.
10540         (expression_completer): Rename to ...
10541         (complete_expression): ... this and adjust to work with a
10542         completion_tracker instead of a VEC.  Use complete_files_symbols.
10543         (expression_completer): Reimplement on top of complete_expression.
10544         (symbol_completer): Adjust to work with a completion_tracker
10545         instead of a VEC.
10546         (enum complete_line_internal_reason): Add describing comments.
10547         (complete_line_internal_normal_command): Adjust to work with a
10548         completion_tracker instead of a VEC.
10549         (complete_line_internal): Rename to ...
10550         (complete_line_internal_1): ... this and adjust to work with a
10551         completion_tracker instead of a VEC.  Assert TEXT is NULL in the
10552         handle_brkchars phase.
10553         (new_completion_tracker): Delete.
10554         (complete_line_internal): Reimplement as TRY/CATCH wrapper around
10555         complete_line_internal_1.
10556         (free_completion_tracker): Delete.
10557         (INITIAL_COMPLETION_HTAB_SIZE): New.
10558         (completion_tracker::completion_tracker)
10559         (completion_tracker::~completion_tracker): New.
10560         (maybe_add_completion): Delete.
10561         (completion_tracker::maybe_add_completion)
10562         (completion_tracker::add_completion)
10563         (completion_tracker::add_completions): New.
10564         (throw_max_completions_reached_error): Delete.
10565         (complete_line): Adjust to work with a completion_tracker instead
10566         of a VEC.  Don't create a completion_tracker_t or check for max
10567         completions here.
10568         (command_completer, command_completer_handle_brkchars)
10569         (signal_completer, reg_or_group_completer_1)
10570         (reg_or_group_completer, default_completer_handle_brkchars):
10571         Adjust to work with a completion_tracker.
10572         (gdb_completion_word_break_characters_throw): New.
10573         (gdb_completion_word_break_characters): Reimplement.
10574         (line_completion_function): Delete.
10575         (completion_tracker::recompute_lowest_common_denominator)
10576         (expand_preserving_ws)
10577         (completion_tracker::build_completion_result)
10578         (completion_result::completion_result)
10579         (completion_result::completion_result)
10580         (completion_result::~completion_result)
10581         (completion_result::completion_result)
10582         (completion_result::release_match_list, compare_cstrings)
10583         (completion_result::sort_match_list)
10584         (completion_result::reset_match_list)
10585         (gdb_rl_attempted_completion_function_throw)
10586         (gdb_rl_attempted_completion_function): New.
10587         * completer.h (completion_list, struct completion_result)
10588         (class completion_tracker): New.
10589         (complete_line): Add completion_tracker parameter.
10590         (readline_line_completion_function): Delete.
10591         (gdb_rl_attempted_completion_function): New.
10592         (noop_completer, filename_completer, expression_completer)
10593         (location_completer, symbol_completer, command_completer)
10594         (signal_completer, reg_or_group_completer): Update prototypes.
10595         (completion_tracker_t, new_completion_tracker)
10596         (make_cleanup_free_completion_tracker): Delete.
10597         (enum maybe_add_completion_enum): Delete.
10598         (maybe_add_completion): Delete.
10599         (throw_max_completions_reached_error): Delete.
10600         * corefile.c (complete_set_gnutarget): Adjust to work with a
10601         completion_tracker instead of a VEC.
10602         * cp-abi.c (cp_abi_completer): Adjust to work with a
10603         completion_tracker instead of a VEC.
10604         * d-lang.c (d_language_defn): Adjust.
10605         * disasm.c (disassembler_options_completer): Adjust to work with a
10606         completion_tracker instead of a VEC.
10607         * f-lang.c (f_make_symbol_completion_list): Rename to ...
10608         (f_collect_symbol_completion_matches): ... this.  Adjust to work
10609         with a completion_tracker instead of a VEC.
10610         (f_language_defn): Adjust.
10611         * go-lang.c (go_language_defn): Adjust.
10612         * guile/scm-cmd.c (cmdscm_add_completion, cmdscm_completer):
10613         Adjust to work with a completion_tracker instead of a VEC.
10614         * infrun.c (handle_completer): Likewise.
10615         * interps.c (interpreter_completer): Likewise.
10616         * interps.h (interpreter_completer): Likewise.
10617         * language.c (unknown_language_defn, auto_language_defn)
10618         (local_language_defn): Adjust.
10619         * language.h (language_defn::la_make_symbol_completion_list):
10620         Rename to ...
10621         (language_defn::la_collect_symbol_completion_matches): ... this
10622         and adjust to work with a completion_tracker instead of a VEC.
10623         * m2-lang.c (m2_language_defn): Adjust.
10624         * objc-lang.c (objc_language_defn): Adjust.
10625         * opencl-lang.c (opencl_language_defn): Adjust.
10626         * p-lang.c (pascal_language_defn): Adjust.
10627         * python/py-cmd.c (cmdpy_completer_helper): Handle NULL word.
10628         (cmdpy_completer_handle_brkchars, cmdpy_completer): Adjust to work
10629         with a completion_tracker.
10630         * rust-lang.c (rust_language_defn): Adjust.
10631         * symtab.c (free_completion_list, do_free_completion_list)
10632         (return_val, completion_tracker): Delete.
10633         (completion_list_add_name, completion_list_add_symbol)
10634         (completion_list_add_msymbol, completion_list_objc_symbol)
10635         (completion_list_add_fields, add_symtab_completions): Add
10636         completion_tracker parameter and use it.
10637         (default_make_symbol_completion_list_break_on_1): Rename to...
10638         (default_collect_symbol_completion_matches_break_on): ... this.
10639         Add completion_tracker parameter and use it instead of allocating
10640         a completion tracker here.
10641         (default_make_symbol_completion_list_break_on): Delete old
10642         implementation.
10643         (default_make_symbol_completion_list): Delete.
10644         (default_collect_symbol_completion_matches): New.
10645         (make_symbol_completion_list): Delete.
10646         (collect_symbol_completion_matches): New.
10647         (make_symbol_completion_type): Rename to ...
10648         (collect_symbol_completion_matches_type): ... this.  Add
10649         completion_tracker parameter and use it instead of VEC.
10650         (make_file_symbol_completion_list_1): Rename to...
10651         (collect_file_symbol_completion_matches): ... this.  Add
10652         completion_tracker parameter and use it instead of VEC.
10653         (make_file_symbol_completion_list): Delete.
10654         (add_filename_to_list): Use completion_list instead of a VEC.
10655         (add_partial_filename_data::list): Now a completion_list.
10656         (make_source_files_completion_list): Work with a completion_list
10657         instead of a VEC.
10658         * symtab.h: Include "completer.h".
10659         (default_make_symbol_completion_list_break_on)
10660         (default_make_symbol_completion_list, make_symbol_completion_list)
10661         (make_symbol_completion_type, make_file_symbol_completion_list)
10662         (make_source_files_completion_list): Delete.
10663         (default_collect_symbol_completion_matches_break_on)
10664         (default_collect_symbol_completion_matches)
10665         (collect_symbol_completion_matches)
10666         (collect_symbol_completion_matches_type)
10667         (collect_file_symbol_completion_matches)
10668         (make_source_files_completion_list): New.
10669         * top.c (init_main): Don't install a rl_completion_entry_function
10670         hook.  Install a rl_attempted_completion_function hook instead.
10671         * tui/tui-layout.c (layout_completer): Adjust to work with a
10672         completion_tracker.
10673         * tui/tui-regs.c (tui_reggroup_completer):
10674         * tui/tui-win.c (window_name_completer, focus_completer)
10675         (winheight_completer): Adjust to work with a completion_tracker.
10676         * value.c: Include "completer.h".
10677         (complete_internalvar): Adjust to work with a completion_tracker.
10678         * value.h (complete_internalvar): Likewise.
10679
10680 2017-07-17  Pedro Alves  <palves@redhat.com>
10681
10682         * cli/cli-decode.c (set_cmd_completer_handle_brkchars): Adjust to
10683         renames.
10684         * cli/cli-decode.h (struct cmd_list_element) <completer>: Move
10685         comments to completer_ftype's declaration.
10686         <completer_handle_brkchars>: Change type to
10687         completer_handle_brkchars_ftype.
10688         * command.h (completer_ftype): Add describing comment and give
10689         names to parameters.
10690         (completer_ftype_void): Rename to ...
10691         (completer_handle_brkchars_ftype) ... this.  Add describing comment.
10692         (set_cmd_completer_handle_brkchars): Adjust.
10693         * completer.c (filename_completer_handle_brkchars): New function.
10694         (complete_line_internal_normal_command): New function, factored
10695         out from ...
10696         (complete_line_internal): ... here.
10697         (command_completer_handle_brkchars)
10698         (default_completer_handle_brkchars)
10699         (completer_handle_brkchars_func_for_completer): New functions.
10700         * completer.h (set_gdb_completion_word_break_characters): Delete
10701         declaration.
10702         (completer_handle_brkchars_func_for_completer): New declaration.
10703         * python/py-cmd.c (cmdpy_completer_handle_brkchars): Adjust to use
10704         completer_handle_brkchars_func_for_completer.
10705
10706 2017-07-17  Pedro Alves  <palves@redhat.com>
10707
10708         * completer.c (symbol_completer): New function, based on
10709         make_symbol_completion_list_fn.
10710         * completer.h (symbol_completer): New declaration.
10711         * guile/scm-cmd.c (cmdscm_completers): Adjust.
10712         * python/py-cmd.c (completers): Adjust.
10713         * symtab.c (make_symbol_completion_list_fn): Delete.
10714         * symtab.h (make_symbol_completion_list_fn): Delete.
10715         * cli/cli-decode.c (add_cmd): Adjust.
10716
10717 2017-07-17  Pedro Alves  <palves@redhat.com>
10718
10719         * Makefile.in (COMMON_OBS): Add filename-seen-cache.o.
10720         * dwarf2read.c: Include "filename-seen-cache.h".
10721         * dwarf2read.c (dwarf2_per_objfile) <filenames_cache>: New field.
10722         (dw2_map_symbol_filenames): Build and use a filenames_seen_cache.
10723         * filename-seen-cache.c: New file.
10724         * filename-seen-cache.h: New file.
10725         * symtab.c: Include "filename-seen-cache.h".
10726         (struct filename_seen_cache, INITIAL_FILENAME_SEEN_CACHE_SIZE)
10727         (create_filename_seen_cache, clear_filename_seen_cache)
10728         (delete_filename_seen_cache, filename_seen): Delete, parts moved
10729         to filename-seen-cache.h/filename-seen-cache.c.
10730         (output_source_filename, sources_info)
10731         (maybe_add_partial_symtab_filename)
10732         (make_source_files_completion_list): Adjust to use
10733         filename_seen_cache.
10734
10735 2017-07-17  Pedro Alves  <palves@redhat.com>
10736
10737         * dwarf2read.c (dwarf2_per_objfile): In-class initialize all
10738         fields.
10739         (dwarf2_per_objfile::dwarf2_per_objfile(objfile*, const
10740         dwarf2_debug_sections*)): New.
10741         (dwarf2_per_objfile::dwarf2_per_objfile(const
10742         dwarf2_per_objfile&)): Declare as deleted.
10743         (dwarf2_per_objfile::operator=): Declare as deleted.
10744         (dwarf2_per_objfile::dwarf2_per_objfile)
10745         (dwarf2_per_objfile::~dwarf2_per_objfile)
10746         (dwarf2_per_objfile::free_cached_comp_units): New.
10747         (dwarf2_has_info): dwarf2_per_objfile initialization code moved to
10748         ctor.  Call dwarf2_per_objfile's ctor manually.
10749         (dwarf2_locate_sections): Deleted/refactored as ...
10750         (dwarf2_per_objfile::locate_sections): ... this new method.
10751         (free_cached_comp_units): Defer to
10752         dwarf2_per_objfile::free_cached_comp_units.
10753         (dwarf2_free_objfile): Call dwarf2_per_objfile's dtor manually.
10754
10755 2017-07-14  Tom Tromey  <tom@tromey.com>
10756
10757         PR rust/21764:
10758         * rust-exp.y (convert_ast_to_expression): Add "want_type"
10759         parameter.
10760         <UNOP_SIZEOF>: Split into separate case.
10761         <UNOP_VAR_VALUE>: Handle want_type.  Add error case.
10762
10763 2017-07-14  Tom Tromey  <tom@tromey.com>
10764
10765         PR rust/21763:
10766         * symtab.c (symbol_matches_domain): Add language_rust to special
10767         case.
10768         * rust-exp.y (convert_ast_to_expression) <OP_VAR_VALUE>: Don't
10769         treat LOC_TYPEDEF symbols as variables.
10770
10771 2017-07-14  Pedro Alves  <palves@redhat.com>
10772
10773         * symtab.c (make_file_symbol_completion_list_1): Iterate over
10774         symtabs matching all symtabs with SRCFILE as file name instead of
10775         only considering the first hit, with lookup_symtab.
10776
10777 2017-07-14  Simon Marchi  <simon.marchi@ericsson.com>
10778
10779         * ax-gdb.c (gen_aggregate_elt_ref): Remove operand_name and
10780         operator_name parameters.
10781         (gen_expr): Update function call.
10782
10783 2017-07-14  Simon Marchi  <simon.marchi@ericsson.com>
10784
10785         * dwarf2loc.h (dwarf2_compile_expr_to_ax): Remove gdbarch
10786         parameter.
10787         * symtab.h (struct symbol_computed_ops::tracepoint_var_ref):
10788         Likewise.
10789         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Remove gdbarch
10790         parameter, use agent_expr::gdbarch instead, update function
10791         calls.
10792         (locexpr_tracepoint_var_ref): Likewise.
10793         (loclist_tracepoint_var_ref): Likewise.
10794         * ax-gdb.c (gen_trace_static_fields): Likewise.
10795         (gen_traced_pop): Likewise.
10796         (gen_frame_args_address): Likewise.
10797         (gen_frame_locals_address): Likewise.
10798         (gen_var_ref): Likewise.
10799         (gen_struct_ref_recursive): Likewise.
10800         (gen_static_field): Likewise.
10801         (gen_maybe_namespace_elt): Likewise.
10802         (gen_expr): Likewise.
10803         (gen_trace_for_var): Likewise.
10804         (gen_trace_for_expr): Likewise.
10805         (gen_trace_for_return_address): Likewise.
10806
10807 2017-07-14  Simon Marchi  <simon.marchi@ericsson.com>
10808
10809         * ax-gdb.c (gen_deref, gen_address_of): Remove unused ax
10810         parameter.
10811         (gen_struct_ref, gen_expr, gen_expr_binop_rest): Update call.
10812
10813 2017-07-14  Simon Marchi  <simon.marchi@ericsson.com>
10814
10815         * ax-gdb.c (gen_usual_unary): Remove exp parameter, get gdbarch
10816         from ax, update calls.
10817         (gen_usual_arithmetic): Likewise.
10818         (gen_integral_promotions): Likewise.
10819         (gen_bitfield_ref): Likewise.
10820         (gen_primitive_field): Likewise.
10821         (gen_struct_ref_recursive): Likewise.
10822         (gen_struct_ref): Likewise.
10823         (gen_maybe_namespace_elt): Likewise.
10824         (gen_struct_elt_for_reference): Likewise.
10825         (gen_namespace_elt): Likewise.
10826         (gen_aggregate_elt_ref): Likewise.
10827         (gen_expr): Get gdbarch from ax, update calls.
10828         (gen_expr_binop_rest): Likewise.
10829
10830 2017-07-13  Pedro Alves  <palves@redhat.com>
10831
10832         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Pass tdesc_amd64
10833         as default tdesc.
10834         * amd64-dicos-tdep.c (amd64_dicos_init_abi):
10835         * amd64-fbsd-tdep.c (amd64fbsd_init_abi):
10836         * amd64-linux-tdep.c (amd64_linux_init_abi): Pass
10837         tdesc_amd64_linux as default tdesc.  Get final tdesc from the
10838         tdep.
10839         (amd64_x32_linux_init_abi): Pass tdesc_x32_linux as default tdesc.
10840         Get final tdesc from the tdep.
10841         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Pass tdesc_amd64 as
10842         default tdesc.
10843         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
10844         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
10845         * amd64-tdep.c (amd64_init_abi): Add 'default_tdesc' parameter.
10846         Use it as default tdesc.
10847         (amd64_x32_init_abi): Add 'default_tdesc' parameter, and pass it
10848         down to amd_init_abi.  No longer handle fallback tdesc here.
10849         * amd64-tdep.h (tdesc_x32): Declare.
10850         (amd64_init_abi, amd64_x32_init_abi): Add 'default_tdesc'
10851         parameter.
10852         * amd64-windows-tdep.c (amd64_windows_init_abi): Pass tdesc_amd64
10853         as default tdesc.
10854
10855 2017-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
10856
10857         * s390-linux-tdep.c (s390_process_record): Add support for
10858         instructions new in arch12.
10859
10860 2017-07-11  John Baldwin  <jhb@FreeBSD.org>
10861
10862         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers): Use
10863         PT_GETFSBASE and PT_GETGSBASE.
10864         (amd64bsd_store_inferior_registers): Use PT_SETFSBASE and
10865         PT_SETGSBASE.
10866
10867 2017-07-11  John Baldwin  <jhb@FreeBSD.org>
10868
10869         * features/Makefile (amd64.dat, amd64-avx.dat, amd64-mpx.dat)
10870         (amd64-avx-mpx.dat, amd64-avx-avx512.dat)
10871         (amd64-avx-mpx-avx512-pku.dat): Add i386/64bit-segments.xml in
10872         those rules.
10873         * features/i386/amd64-avx-avx512.xml: Add 64bit-segments.xml.
10874         * features/i386/amd64-avx-mpx-avx512-pku.xml: Add 64bit-segments.xml.
10875         * features/i386/amd64-avx-mpx.xml: Add 64bit-segments.xml.
10876         * features/i386/amd64-avx.xml: Add 64bit-segments.xml.
10877         * features/i386/amd64-mpx.xml: Add 64bit-segments.xml.
10878         * features/i386/amd64.xml: Add 64bit-segments.xml.
10879         * features/i386/amd64-avx-avx512.c: Regenerated.
10880         * features/i386/amd64-avx-mpx-avx512-pku.c: Regenerated.
10881         * features/i386/amd64-avx-mpx.c: Regenerated.
10882         * features/i386/amd64-avx.c: Regenerated.
10883         * features/i386/amd64-mpx.c: Regenerated.
10884         * features/i386/amd64.c: Regenerated.
10885         * regformats/i386/amd64-avx-avx512.dat: Regenerated.
10886         * regformats/i386/amd64-avx-mpx-avx512-pku.dat: Regenerated.
10887         * regformats/i386/amd64-avx-mpx.dat: Regenerated.
10888         * regformats/i386/amd64-avx.dat: Regenerated.
10889         * regformats/i386/amd64-mpx.dat: Regenerated.
10890         * regformats/i386/amd64.dat: Regenerated.
10891
10892 2017-07-10  Yao Qi  <yao.qi@linaro.org>
10893
10894         * features/i386/amd64-avx-avx512-linux.c: Re-generated.
10895         * features/i386/amd64-avx-mpx-avx512-pku-linux.c: Re-generated.
10896
10897 2017-07-10  Anton Kolesov  <Anton.Kolesov@synopsys.com>
10898
10899         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add setenv and
10900         unsetenv.
10901         * gnulib/aclocal.m4: Regenerate.
10902         * gnulib/config.in: Regenerate.
10903         * gnulib/configure: Regenerate.
10904         * gnulib/import/Makefile.am: Regenerate.
10905         * gnulib/import/Makefile.in: Regenerate.
10906         * gnulib/import/m4/gnulib-cache.m4: Regenerate.
10907         * gnulib/import/m4/gnulib-comp.m4: Regenerate.
10908         * gnulib/import/m4/environ.m4: New file.
10909         * gnulib/import/m4/setenv.m4: New file.
10910         * gnulib/import/setenv.c: New file.
10911         * gnulib/import/unsetenv.c: New file.
10912
10913 2017-07-09  Simon Marchi  <simon.marchi@ericsson.com>
10914
10915         * compile/compile-loc2c.c (do_compile_dwarf_expr_to_c): Read
10916         address when op is DW_OP_addr.
10917
10918 2017-07-09  Tom Tromey  <tom@tromey.com>
10919
10920         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Reverse size
10921         check and apply to outer type.
10922
10923 2017-07-07  John Baldwin  <jhb@FreeBSD.org>
10924
10925         * fbsd-tdep.c (LWPINFO_OFFSET, LWPINFO_PL_FLAGS)
10926         (LWPINFO64_PL_SIGINFO, LWPINFO32_PL_SIGINFO, PL_FLAG_SI)
10927         (SIZE64_SIGINFO_T, SIZE32_SIGINFO_T, fbsd_core_xfer_siginfo): New.
10928         (fbsd_init_abi): Install gdbarch "core_xfer_siginfo" method.
10929
10930 2017-07-07  John Baldwin  <jhb@FreeBSD.org>
10931
10932         * fbsd-tdep.c (fbsd_core_thread_name): Use thread_section_name.
10933
10934 2017-07-07  John Baldwin  <jhb@FreeBSD.org>
10935
10936         * corelow.c (get_core_siginfo): Remove.
10937         (core_xfer_partial): Use the gdbarch "core_xfer_siginfo" method
10938         instead of get_core_siginfo.
10939         * gdbarch.sh (core_xfer_siginfo): New gdbarch callback.
10940         * gdbarch.h: Re-generate.
10941         * gdbarch.c: Re-generate.
10942         * linux-tdep.c (linux_core_xfer_siginfo): New.
10943         (linux_init_abi): Install gdbarch "core_xfer_siginfo" method.
10944
10945 2017-07-07  John Baldwin  <jhb@FreeBSD.org>
10946
10947         * corelow.c (thread_section_name): Move to ...
10948         * gdbcore.h (thread_section_name): ... here.
10949
10950 2017-07-07  John Baldwin  <jhb@FreeBSD.org>
10951
10952         * fbsd-nat.c [PT_LWPINFO && __LP64__] (union sigval32)
10953         (struct siginfo32): New.
10954         [PT_LWPINFO] (fbsd_siginfo_size, fbsd_convert_siginfo): New.
10955         (fbsd_xfer_partial) [PT_LWPINFO]: Handle TARGET_OBJECT_SIGNAL_INFO
10956         via ptrace(PT_LWPINFO).
10957
10958 2017-07-07  John Baldwin  <jhb@FreeBSD.org>
10959
10960         * fbsd-tdep.c (fbsd_gdbarch_data_handle, struct fbsd_gdbarch_data)
10961         (init_fbsd_gdbarch_data, get_fbsd_gdbarch_data)
10962         (fbsd_get_siginfo_type): New.
10963         (fbsd_init_abi): Install gdbarch "get_siginfo_type" method.
10964         (_initialize_fbsd_tdep): New.
10965
10966 2017-07-06  David Blaikie  <dblaikie@gmail.com>
10967
10968         * dwarf2read.c (struct dwo_file): Use a htab of dwo_unit* (rather than
10969         a singular dwo_unit*) to support multiple CUs in the same way that
10970         multiple TUs are supported.
10971         (create_cus_hash_table): Replace create_dwo_cu with a function for
10972         parsing multiple CUs from a DWO file.
10973         (open_and_init_dwo_file): Use create_cus_hash_table rather than
10974         create_dwo_cu.
10975         (lookup_dwo_cutu): Lookup CU in the hash table in the dwo_file with
10976         htab_find, rather than comparing the signature to a singleton CU in
10977         the dwo_file.
10978
10979 2017-07-06  Pedro Alves  <palves@redhat.com>
10980
10981         * python/py-unwind.c (pyuw_dealloc_cache): Fix for loop condition.
10982
10983 2017-07-04  Pedro Alves  <palves@redhat.com>
10984
10985         * gdbtypes.c (recursive_dump_type): Don't reference TYPE_STATIC.
10986         * gdbtypes.h (TYPE_STATIC): Delete.
10987         (struct fn_field) <is_public, is_abstract, is_static, is_final,
10988         is_synchronized, is_native>: Delete.
10989         <dummy>: Bump.
10990         (TYPE_FN_FIELD_PUBLIC, TYPE_FN_FIELD_STATIC, TYPE_FN_FIELD_FINAL)
10991         (TYPE_FN_FIELD_SYNCHRONIZED, TYPE_FN_FIELD_NATIVE)
10992         (TYPE_FN_FIELD_ABSTRACT): Delete.
10993
10994 2017-07-03  Simon Marchi  <simon.marchi@ericsson.com>
10995
10996         * buffer.h (buffer_finish): Fix spelling mistakes.
10997
10998 2017-07-01  Eli Zaretskii  <eliz@gnu.org>
10999
11000         * .dir-locals.el: Automatically switch to C-style comments in
11001         versions of Emacs that support the feature.
11002
11003 2017-06-30  Sergio Durigan Junior  <sergiodj@redhat.com>
11004             Pedro Alves  <palves@redhat.com>
11005
11006         PR cli/21688
11007         * cli/cli-script.c (command_name_equals_not_inline): Remove function.
11008         (process_next_line): New variable 'inline_cmd'.
11009         Adjust 'if' clauses for "python", "compile" and "guile" to use
11010         'command_name_equals' and check for '!inline_cmd'.
11011
11012 2017-06-30  Sergio Durigan Junior  <sergiodj@redhat.com>
11013
11014         PR cli/21688
11015         * cli/cli-script.c (command_name_equals_not_inline): New function.
11016         (process_next_line): Adjust 'if' clauses for "python", "compile"
11017         and "guile" to use command_name_equals_not_inline.
11018
11019 2017-06-29  Pedro Alves  <palves@redhat.com>
11020
11021         * completer.c (expression_completer): Call
11022         linespec_location_completer instead of location_completer.
11023
11024 2017-06-29  Pedro Alves  <palves@redhat.com>
11025
11026         * completer.c (expression_completer): Remove code that recomputes
11027         'text' from 'word'.
11028
11029 2017-06-29  Yao Qi  <yao.qi@linaro.org>
11030
11031         * regformats/regdat.sh: Generate code with
11032         "ifndef IN_PROCESS_AGENT".
11033
11034 2017-06-28  Pedro Alves  <palves@redhat.com>
11035
11036         * command.h: Include "common/scoped_restore.h".
11037
11038 2017-06-28  Yao Qi  <yao.qi@linaro.org>
11039
11040         * mi/mi-cmd-break.c (mi_argv_to_format): Use obstack_grow_str
11041         instead of obstack_grow.
11042
11043 2017-06-28  Doug Gilmore  <Doug.Gilmore@imgtec.com>
11044
11045         PR gdb/21337
11046         * symfile.c (reread_symbols): Call objfiles_changed just before
11047         read_symbols.
11048
11049 2017-06-27  Pedro Alves  <palves@redhat.com>
11050
11051         * symtab.c (COMPLETION_LIST_ADD_SYMBOL)
11052         (MCOMPLETION_LIST_ADD_SYMBOL): Delete macros, replace with ...
11053         (completion_list_add_symbol, completion_list_add_msymbol):
11054         ... these new functions.
11055         (add_symtab_completions)
11056         (default_make_symbol_completion_list_break_on_1): Adjust.
11057
11058 2017-06-27  Pedro Alves  <palves@redhat.com>
11059
11060         * objfiles.c (get_objfile_bfd_data): Call bfd_alloc instead of
11061         bfd_zalloc.  Call objfile_per_bfd_storage's ctor.
11062         (free_objfile_per_bfd_storage): Call objfile_per_bfd_storage's
11063         dtor.
11064         * objfiles.h (objfile_per_bfd_storage): Add ctor.  Make
11065         'storage_obstack' field an auto_obstack.  In-class initialize all
11066         non-bitfield fields.  Make minsyms_read bool.
11067         * symfile.c (read_symbols): Adjust.
11068
11069 2017-06-27  Alan Hayward  <alan.hayward@arm.com>
11070
11071         * remote-sim.c (gdbsim_fetch_register): Use byte_vector.
11072         (gdbsim_store_register): Likewise.
11073
11074 2017-06-27  Pedro Alves  <palves@redhat.com>
11075
11076         * c-exp.y (name_obstack): Now an auto_obstack.
11077         (yylex): Use auto_obstack::clear.
11078         (c_parse): Use auto_obstack::clear instead of reinitializing and
11079         freeing the obstack.
11080         * c-lang.c (evaluate_subexp_c): Use auto_obstack.
11081         * d-exp.y (name_obstack): Now an auto_obstack.
11082         (yylex): Use auto_obstack::clear.
11083         (d_parse): Use auto_obstack::clear instead of reinitializing and
11084         freeing the obstack.
11085         * dwarf2loc.c (fetch_const_value_from_synthetic_pointer): Use
11086         auto_obstack.
11087         * dwarf2read.c (create_addrmap_from_index)
11088         (dwarf2_build_psymtabs_hard)
11089         (update_enumeration_type_from_children): Likewise.
11090         * gdb_obstack.h (auto_obstack): New type.
11091         * go-exp.y (name_obstack): Now an auto_obstack.
11092         (build_packaged_name): Use auto_obstack::clear.
11093         (go_parse): Use auto_obstack::clear instead of reinitializing and
11094         freeing the obstack.
11095         * linux-tdep.c (linux_make_mappings_corefile_notes): Use
11096         auto_obstack.
11097         * printcmd.c (printf_wide_c_string, ui_printf): Use auto_obstack.
11098         * rust-exp.y (work_obstack): Now an auto_obstack.
11099         (rust_parse, rust_lex_tests): Use auto_obstack::clear instead of
11100         reinitializing and freeing the obstack.
11101         * utils.c (do_obstack_free, make_cleanup_obstack_free): Delete.
11102         (host_char_to_target): Use auto_obstack.
11103         * utils.h (make_cleanup_obstack_free): Delete declaration.
11104         * valprint.c (generic_emit_char, generic_printstr): Use
11105         auto_obstack.
11106
11107 2017-06-27  Simon Marchi  <simon.marchi@ericsson.com>
11108
11109         * darwin-nat.c (darwin_check_new_threads): Don't handle dummy
11110         thread.
11111         (darwin_init_thread_list): Don't update dummy thread.
11112         (darwin_create_inferior, darwin_attach): Don't add a dummy thread.
11113
11114 2017-06-26  Simon Marchi  <simon.marchi@ericsson.com>
11115
11116         * record-full.c (netorder16): Remove.
11117
11118 2017-06-26  Simon Marchi  <simon.marchi@ericsson.com>
11119
11120         * common/diagnostics.h: Define macros for GCC.
11121         (DIAGNOSTIC_IGNORE_UNUSED_FUNCTION): New macro.
11122         * common/vec.h: Include diagnostics.h.
11123         (DIAGNOSTIC_IGNORE_UNUSED_VEC_FUNCTION): New macro.
11124         (DEF_VEC_I, DEF_VEC_P, DEF_VEC_O): Ignore -Wunused-function
11125         warning.
11126
11127 2017-06-26  Simon Marchi  <simon.marchi@ericsson.com>
11128
11129         * common/diagnostics.h (DIAGNOSTIC_IGNORE_DEPRECATED_REGISTER):
11130         New macro.
11131         * ada-lex.l: Ignore deprecated register warnings.
11132
11133 2017-06-25  Simon Marchi  <simon.marchi@ericsson.com>
11134
11135         * main.c (get_init_files): Replace "SYSTEM_GDBINIT +
11136         datadir_len" with "&SYSTEM_GDBINIT[datadir_len]".
11137
11138 2017-06-25  Simon Marchi  <simon.marchi@ericsson.com>
11139
11140         * dtrace-probe.c (dtrace_process_dof_probe): Put semi-colon on
11141         its own line.
11142
11143 2017-06-25  Simon Marchi  <simon.marchi@ericsson.com>
11144
11145         * nat/x86-dregs.c (x86_show_dr): Print registers one per line.
11146
11147 2017-06-23  Alan Hayward  <alan.hayward@arm.com>
11148
11149         * xtensa-tdep.c (XTENSA_MAX_REGISTER_SIZE): Add.
11150         (xtensa_register_write_masked): Use XTENSA_MAX_REGISTER_SIZE.
11151         (xtensa_register_read_masked): Likewise.
11152
11153 2017-06-22  Sergio Durigan Junior  <sergiodj@redhat.com>
11154
11155         * common/environ.c (gdb_environ::unset): Update comment.
11156
11157 2017-06-22  Alan Hayward  <alan.hayward@arm.com>
11158
11159         * python/py-unwind.c (pyuw_sniffer): Allocate space for
11160         registers.
11161
11162 2017-06-22  Alan Hayward  <alan.hayward@arm.com>
11163
11164         * record-full.c (record_full_exec_insn): Use byte_vector.
11165
11166 2017-06-22  Yao Qi  <yao.qi@linaro.org>
11167
11168         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Regenerated.
11169         * regformats/i386/amd64-avx-mpx-avx512-pku.dat: Regenerated.
11170
11171 2017-06-22  Alan Hayward  <alan.hayward@arm.com>
11172
11173         * remote.c (cached_reg): Move from here...
11174         * regcache.h (cached_reg): ...to here.
11175         * python/py-unwind.c (struct reg_info): Remove.
11176         (cached_frame_info): Use cached_reg_t.
11177         (pyuw_prev_register): Likewise.
11178         (pyuw_sniffer): Use cached_reg_t and allocate registers.
11179         (pyuw_dealloc_cache): Free all registers.
11180
11181 2017-06-22  Pedro Alves  <palves@redhat.com>
11182             Simon Marchi  <simon.marchi@ericsson.com>
11183
11184         * unittests/environ-selftests.c (run_tests): Ignore -Wself-move
11185         warning.
11186         * common/diagnostics.h: New file.
11187
11188 2017-06-22  Pedro Alves  <palves@redhat.com>
11189
11190         * common/agent.h: Add include guards.
11191
11192 2017-06-21  Simon Marchi  <simon.marchi@ericsson.com>
11193
11194         * target.h (struct target_ops) <to_xfer_partial>: Update doc to
11195         talk about addressable units instead of bytes.
11196
11197 2017-06-20  Sergio Durigan Junior  <sergiodj@redhat.com>
11198
11199         * common/environ.c (gdb_environ::unset): Use '::iterator' instead
11200         of '::const_iterator'.
11201
11202 2017-06-20  Sergio Durigan Junior  <sergiodj@redhat.com>
11203
11204         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11205         'unittests/environ-selftests.c'.
11206         (SUBDIR_UNITTESTS_OBS): Add 'environ-selftests.o'.
11207         * charset.c (find_charset_names): Declare object 'iconv_env'.
11208         Update code to use 'iconv_env' object.  Remove call to
11209         'free_environ'.
11210         * common/environ.c: Include <utility>.
11211         (make_environ): Delete function.
11212         (free_environ): Delete function.
11213         (gdb_environ::clear): New function.
11214         (gdb_environ::operator=): New function.
11215         (gdb_environ::get): Likewise.
11216         (environ_vector): Delete function.
11217         (set_in_environ): Delete function.
11218         (gdb_environ::set): New function.
11219         (unset_in_environ): Delete function.
11220         (gdb_environ::unset): New function.
11221         (gdb_environ::envp): Likewise.
11222         * common/environ.h: Include <vector>.
11223         (struct gdb_environ): Delete; transform into...
11224         (class gdb_environ): ... this class.
11225         (free_environ): Delete prototype.
11226         (init_environ, get_in_environ, set_in_environ, unset_in_environ,
11227         environ_vector): Likewise.
11228         * infcmd.c (run_command_1): Update code to call
11229         'envp' from 'gdb_environ' class.
11230         (environment_info): Update code to call methods from 'gdb_environ'
11231         class.
11232         (unset_environment_command): Likewise.
11233         (path_info): Likewise.
11234         (path_command): Likewise.
11235         * inferior.c (inferior::~inferior): Delete call to 'free_environ'.
11236         (inferior::inferior): Initialize 'environment' using the host's
11237         information.
11238         * inferior.h: Remove forward declaration of 'struct gdb_environ'.
11239         Include "environ.h".
11240         (class inferior) <environment>: Change type from 'struct
11241         gdb_environ' to 'gdb_environ'.
11242         * mi/mi-cmd-env.c (mi_cmd_env_path): Update code to call
11243         methods from 'gdb_environ' class.
11244         * solib.c (solib_find_1): Likewise
11245         * unittests/environ-selftests.c: New file.
11246
11247 2017-06-20  Yao Qi  <yao.qi@linaro.org>
11248
11249         * features/i386/i386-linux.xml: Exchange the order of including
11250         32bit-linux.xml and 32bit-sse.xml.
11251         * features/i386/i386-linux.c: Regenerated.
11252
11253 2017-06-20  Yao Qi  <yao.qi@linaro.org>
11254
11255         * target-descriptions.c (tdesc_reg): Add ctor, dtor.
11256         Delete copy ctor and assignment operator.
11257         (tdesc_type): Likewise.
11258         (tdesc_feature): Likewise.
11259         (tdesc_free_reg): Remove.
11260         (tdesc_create_reg): Use new.
11261         (tdesc_free_type): Remove.
11262         (tdesc_create_vector): Use new.
11263         (tdesc_create_union): Likewise.
11264         (tdesc_create_flags): Likewise.
11265         (tdesc_create_enum): Likewise.
11266         (tdesc_free_feature): Delete.
11267         (free_target_description): Use delete.
11268
11269 2017-06-19  John Baldwin  <jhb@FreeBSD.org>
11270
11271         * mips-tdep.c (print_gp_register_row): Don't error for unavailable
11272         registers.
11273
11274 2017-06-19  Pedro Alves  <palves@redhat.com>
11275
11276         * dwarf2read.c (write_psymtabs_to_index): Construct file_closer
11277         after gdb::unlinker.
11278
11279 2017-06-19  Sergio Durigan Junior  <sergiodj@redhat.com>
11280
11281         * mi/mi-cm-env.c (_initialize_mi_cmd_env): Use getenv instead of
11282         gdb_environ to access an environment variable.
11283
11284 2017-06-18  Thomas Petazzoni  <thomas.petazzoni@free-electrons.com>
11285
11286         * nat/linux-ptrace.c (linux_fork_to_function): Add cast to
11287         gdb_byte*.
11288
11289 2017-06-17  Simon Marchi  <simon.marchi@ericsson.com>
11290
11291         * nat/fork-inferior.h (trace_start_error): Add ATTRIBUTE_PRINTF.
11292
11293 2017-06-17  Simon Marchi  <simon.marchi@ericsson.com>
11294
11295         * configure: Re-generate.
11296         * warning.m4 (build_warnings): Add -Wno-mismatched-tags.
11297
11298 2017-06-17  Simon Marchi  <simon.marchi@ericsson.com>
11299
11300         * configure: Re-generate.
11301         * warning.m4: Pass -Werror to compiler when checking for
11302         supported warning flags.
11303
11304 2017-06-17  Simon Marchi  <simon.marchi@ericsson.com>
11305
11306         * Makefile.in (COMPILE.pre): Add "-x c++".
11307
11308 2017-06-16  Alan Hayward  <alan.hayward@arm.com>
11309             Pedro Alves  <palves@redhat.com>
11310             Yao Qi  <yao.qi@linaro.org>
11311
11312         * defs.h (RequireLongest): New.
11313         (extract_integer): Declare function template.
11314         (extract_signed_integer): Remove the declaration, but define it
11315         static inline.
11316         (extract_unsigned_integer): Likewise.
11317         (store_integer): Declare function template.
11318         (store_signed_integer): Remove the declaration, but define it
11319         static inline.
11320         (store_unsigned_integer): Likewise.
11321         * findvar.c (extract_integer): New function template.
11322         (extract_signed_integer): Remove.
11323         (extract_unsigned_integer): Remove.
11324         (extract_integer<LONGEST>, extract_integer<ULONGEST>): Explicit
11325         instantiations.
11326         (store_integer): New function template.
11327         (store_signed_integer): Remove.
11328         (store_unsigned_integer): Remove.
11329         (store_integer): Explicit instantiations.
11330         * regcache.c (regcache_raw_read_signed): Update.
11331         (regcache::raw_read): New function.
11332         (regcache::raw_read_signed): Remove.
11333         (regcache::raw_read_unsigned): Remove.
11334         (regcache_raw_read_unsigned): Update.
11335         (regcache_raw_write_unsigned): Update.
11336         (regcache::raw_write_signed): Remove.
11337         (regcache::raw_write): New function.
11338         (regcache_cooked_read_signed): Update.
11339         (regcache::raw_write_unsigned): Remove.
11340         (regcache::cooked_read_signed): Remove.
11341         (regcache_cooked_read_unsigned): Update.
11342         (regcache::cooked_read_unsigned): Remove.
11343         (regcache_cooked_write_signed): Update.
11344         (regcache_cooked_write_unsigned): Update.
11345         * regcache.h (regcache) <raw_read_signed>: Remove.
11346         <raw_write_signed, raw_read_unsigned, raw_write_unsigned>: Remove.
11347         <raw_read, raw_write>: New.
11348         <cooked_read_signed, cooked_write_signed>: Remove.
11349         <cooked_write_unsigned, cooked_read_unsigned>: Remove.
11350         <cooked_read, cooked_write>: New.
11351         * sh64-tdep.c (sh64_pseudo_register_read): Update.
11352         (sh64_pseudo_register_write): Update.
11353
11354 2017-06-16  Anton Kolesov  <anton.kolesov@synopsys.com>
11355
11356         * arc-tdep.c (arc_disassembler_options): New variable.
11357         (arc_gdbarch_init): Set and use it. Use arc_delayed_print_insn instead
11358         of default_print_insn.
11359         (arc_delayed_print_insn): Set info->section when needed,
11360         use default_print_insn to retrieve a disassembler.
11361
11362 2017-06-14  Sergio Durigan Junior  <sergiodj@redhat.com>
11363
11364         PR gdb/21574
11365         * infcmd.c (_initialize_infcmd): Expand "help run" documentation
11366         to mention $SHELL and startup-with-shell.
11367
11368 2017-06-14  Max Filippov  <jcmvbkbc@gmail.com>
11369
11370         * MAINTAINERS: Move Maxim Grigoriev to the Past Maintainers.
11371
11372 2017-06-14  Yao Qi  <yao.qi@linaro.org>
11373
11374         * aarch64-tdep.c (aarch64_gdb_print_insn): Call
11375         default_print_insn instead of print_insn_aarch64.
11376         * arm-tdep.c (gdb_print_insn_arm): Call
11377         default_print_insn instead of print_insn_big_arm
11378         and print_insn_little_arm.
11379         * i386-tdep.c (i386_print_insn): Call default_print_insn
11380         instead of print_insn_i386.
11381         * ia64-tdep.c (ia64_print_insn): Call
11382         default_print_insn instead of print_insn_ia64.
11383         * mips-tdep.c (gdb_print_insn_mips): Call
11384         default_print_insn instead of print_insn_big_mips
11385         and print_insn_little_mips.
11386         * spu-tdep.c (gdb_print_insn_spu): Call default_print_insn
11387         instead of print_insn_spu.
11388
11389 2017-06-14  Pedro Alves  <palves@redhat.com>
11390
11391         * ada-lang.c: Include "common/byte-vector.h".
11392         (ada_value_primitive_packed_val): Use gdb::byte_vector.
11393         * charset.c (wchar_iterator::iterate): Resize the vector instead
11394         of reserving it.
11395         * common/byte-vector.h: Include "common/def-vector.h".
11396         (wchar_iterator::m_out): Now a gdb::def_vector<gdb_wchar_t>.
11397         * cli/cli-dump.c: Include "common/byte-vector.h".
11398         (dump_memory_to_file, restore_binary_file): Use gdb::byte_vector.
11399         * common/byte-vector.h: New file.
11400         * common/def-vector.h: New file.
11401         * common/default-init-alloc.h: New file.
11402         * dwarf2loc.c: Include "common/byte-vector.h".
11403         (rw_pieced_value): Use gdb::byte_vector, and resize the vector
11404         instead of reserving it.
11405         * dwarf2read.c: Include "common/byte-vector.h".
11406         (data_buf::m_vec): Now a gdb::byte_vector.
11407         * gdb_regex.c: Include "common/def-vector.h".
11408         (compiled_regex::compiled_regex): Use gdb::def_vector<char>.
11409         * mi/mi-main.c: Include "common/byte-vector.h".
11410         (mi_cmd_data_read_memory): Use gdb::byte_vector.
11411         * printcmd.c: Include "common/byte-vector.h".
11412         (print_scalar_formatted): Use gdb::byte_vector.
11413         * valprint.c: Include "common/byte-vector.h".
11414         (maybe_negate_by_bytes, print_decimal_chars): Use
11415         gdb::byte_vector.
11416
11417 2017-06-13  Simon Marchi  <simon.marchi@ericsson.com>
11418
11419         * darwin-nat.c: Include "nat/fork-inferior.h".
11420
11421 2017-06-13  Simon Marchi  <simon.marchi@ericsson.com>
11422
11423         * configure.nat: Factor out Darwin bits that are not
11424         architecture-specific.  Add fork-inferior.o.
11425
11426 2017-06-13  Simon Marchi  <simon.marchi@ericsson.com>
11427
11428         * configure.nat: Factor out AIX bits that are not
11429         architecture-specific.  Add fork-inferior.o.
11430
11431 2017-06-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11432
11433         * dwarf2loc.c (rw_pieced_value): New.  Merge logic from...
11434         (read_pieced_value, write_pieced_value): ...here.  Reduce to
11435         wrappers that just call rw_pieced_value.
11436
11437 2017-06-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11438
11439         * dwarf2loc.c (write_pieced_value): When writing the data for a
11440         memory piece, use write_memory_with_notification instead of
11441         write_memory.
11442
11443 2017-06-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11444
11445         * valops.c (read_value_memory): Change embedded_offset to
11446         represent a bit offset instead of a byte offset.
11447         * value.h (read_value_memory): Adjust comment.
11448
11449 2017-06-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11450
11451         * dwarf2loc.c (read_pieced_value): Remove unnecessary variables
11452         dest_offset_bits and source_offset_bits.
11453         (write_pieced_value): Likewise.
11454
11455 2017-06-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11456
11457         * dwarf2loc.c (read_pieced_value): Respect the piece offset, as
11458         given by DW_OP_bit_piece.
11459         (write_pieced_value): Likewise.
11460
11461 2017-06-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11462
11463         * dwarf2loc.c (read_pieced_value): Move the buffer allocation and
11464         some other preparations to the places where sufficient information
11465         is available.
11466         (write_pieced_value): Likewise.
11467
11468 2017-06-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11469
11470         * dwarf2loc.c (bits_to_bytes): New function.
11471         (read_pieced_value): Fix offset calculations for register pieces
11472         on big-endian targets.
11473         (write_pieced_value): Likewise.
11474
11475 2017-06-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11476
11477         * dwarf2loc.c (read_pieced_value): Remove buffer_size variable.
11478         (write_pieced_value): Likewise.
11479
11480 2017-06-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11481
11482         * dwarf2loc.c (write_pieced_value): When writing to a bit-field,
11483         transfer the source value's least significant bits, instead of its
11484         lowest-addressed ones.  Rename type_len to max_offset.
11485         (read_pieced_value): Mirror above changes to write_pieced_value as
11486         applicable.
11487
11488 2017-06-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11489
11490         * dwarf2loc.c (write_pieced_value): In DWARF_VALUE_MEMORY,
11491         truncate full bytes from dest_offset_bits before using it as an
11492         offset into the buffer.
11493
11494 2017-06-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11495
11496         * dwarf2loc.c (write_pieced_value): Include transfer size in
11497         byte-wise check.
11498
11499 2017-06-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11500
11501         * dwarf2loc.c (write_pieced_value): Fix copy/paste error in the
11502         calculation of this_size.
11503
11504 2017-06-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11505
11506         * dwarf2loc.c (read_pieced_value): Respect parent value's offset
11507         when targeting a bit-field.
11508         (write_pieced_value): Likewise.
11509
11510 2017-06-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11511
11512         * dwarf2loc.c (struct piece_closure) <addr_size>: Remove field.
11513         (allocate_piece_closure): Drop addr_size parameter.
11514         (dwarf2_evaluate_loc_desc_full): Adjust call to
11515         allocate_piece_closure.
11516
11517 2017-06-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11518
11519         PR gdb/21226
11520         * dwarf2loc.c (read_pieced_value): Anchor stack value pieces at
11521         the LSB end, independent of endianness.
11522
11523 2017-06-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11524
11525         * dwarf2loc.c (write_pieced_value): Fix order of calculations for
11526         size capping.
11527
11528 2017-06-13  Yao Qi  <yao.qi@linaro.org>
11529
11530         * mips-linux-nat.c: Move include features/mips*-linux.c to
11531         mips-linux-tdep.c.
11532         (_initialize_mips_linux_nat): Move initialize_tdesc_mips* calls
11533         to mips-linux-tdep.c.
11534         * mips-linux-tdep.c: Include features/mips*-linux.c
11535         (_initialize_mips_linux_tdep): Call initialize_tdesc_mips*
11536         functions.
11537         * mips-linux-tdep.h (tdesc_mips_linux): Declare.
11538         (tdesc_mips_dsp_linux, tdesc_mips64_linux): Declare.
11539         (tdesc_mips64_dsp_linux): Declare.
11540
11541 2017-06-12  Tom Tromey  <tom@tromey.com>
11542
11543         * valprint.h (val_print_type_code_int): Remove.
11544         * valprint.c (generic_val_print_int): Always call
11545         val_print_scalar_formatted.
11546         (val_print_type_code_int): Remove.
11547         * printcmd.c (print_scalar_formatted): Handle options->format==0.
11548         * f-valprint.c (f_val_print): Use val_print_scalar_formatted.
11549         * c-valprint.c (c_val_print_int): Use val_print_scalar_formatted.
11550         * ada-valprint.c (ada_val_print_num): Use
11551         val_print_scalar_formatted.
11552
11553 2017-06-12  Tom Tromey  <tom@tromey.com>
11554
11555         * printcmd.c (print_scalar_formatted): Unify the two switches.
11556         Don't convert scalars to LONGEST.
11557
11558 2017-06-12  Tom Tromey  <tom@tromey.com>
11559
11560         PR exp/16225:
11561         * valprint.h (print_decimal_chars): Update.
11562         * valprint.c (maybe_negate_by_bytes): New function.
11563         (print_decimal_chars): Add "is_signed" argument.
11564         * printcmd.c (print_scalar_formatted): Update.
11565
11566 2017-06-12  Tom Tromey  <tom@tromey.com>
11567
11568         PR exp/16225:
11569         * valprint.h (print_binary_chars, print_hex_chars): Update.
11570         * valprint.c (val_print_type_code_int): Update.
11571         (print_binary_chars): Add "zero_pad" argument.
11572         (emit_octal_digit): New function.
11573         (print_octal_chars): Don't zero-pad.
11574         (print_decimal_chars): Likewise.
11575         (print_hex_chars): Add "zero_pad" argument.
11576         * sh64-tdep.c (sh64_do_fp_register): Update.
11577         * regcache.c (regcache::dump): Update.
11578         * printcmd.c (print_scalar_formatted): Update.
11579         * infcmd.c (default_print_one_register_info): Update.
11580
11581 2017-06-12  Pedro Alves  <palves@redhat.com>
11582             Alan Hayward  <alan.hayward@arm.com>
11583
11584         * mips-tdep.c (MAX_MIPS_ABI_REGSIZE): New.
11585         (mips_eabi_push_dummy_call): Rename local 'regsize' to
11586         'abi_regsize'.  Rename local array 'valbuf' to 'ref_valbuf', and
11587         use MAX_MIPS_ABI_REGSIZE instead of MAX_REGISTER_SIZE to size it.
11588         Assert that abi_regsize bytes fit in 'ref_valbuf'.
11589
11590 2017-06-12  Pedro Alves  <palves@redhat.com>
11591
11592         * dwarf2read.c (mapped_symtab::data): Now a vector of
11593         symtab_index_entry instead of vector of
11594         std::unique_ptr<symtab_index_entry>.  All users adjusted to check
11595         whether an element's name is NULL instead of checking whether the
11596         element itself is NULL.
11597         (find_slot): Change return type.  Adjust.
11598         (hash_expand, , add_index_entry, uniquify_cu_indices)
11599         (write_hash_table): Adjust.
11600
11601 2017-06-12  Pedro Alves  <palves@redhat.com>
11602
11603         * dwarf2read.c (recursively_count_psymbols): New function.
11604         (write_psymtabs_to_index): Call it to compute number of psyms and
11605         pass estimate size of psyms_seen to unordered_set's ctor.
11606
11607 2017-06-12  Pedro Alves  <palves@redhat.com>
11608
11609         * dwarf2read.c (write_hash_table): Check if key already exists
11610         before emplacing.
11611
11612 2017-06-12  Pedro Alves  <palves@redhat.com>
11613
11614         * dwarf2read.c (data_buf::append_space): Rename to...
11615         (data_buf::grow): ... this, and make private.  Adjust all callers.
11616         (data_buf::append_uint): New method.
11617         (add_address_entry, write_one_signatured_type)
11618         (write_psymtabs_to_index): Use it.
11619
11620 2017-06-12  Pedro Alves  <palves@redhat.com>
11621
11622         * dwarf2read.c (file_write(FILE *, const void *, size_t)): Delete.
11623         (file_write (FILE *, const std::vector<Elem>&)): Delete.
11624         (data_buf::file_write): Call ::fwrite directly.
11625
11626 2017-06-12  Pedro Alves  <palves@redhat.com>
11627
11628         * dwarf2read.c (uniquify_cu_indices): Use std::unique and
11629         std::vector::erase.
11630
11631 2017-06-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11632
11633         Code cleanup: C++ify .gdb_index producer.
11634         * dwarf2read.c: Include <unordered_set> and <unordered_map>.
11635         (MAYBE_SWAP) [WORDS_BIGENDIAN]: Cast to offset_type.
11636         (struct strtab_entry, hash_strtab_entry, eq_strtab_entry)
11637         (create_strtab, add_string): Remove.
11638         (file_write, data_buf): New.
11639         (struct symtab_index_entry): Use std::vector for cu_indices.
11640         (struct mapped_symtab): Use std::vector for data.
11641         (hash_symtab_entry, eq_symtab_entry, delete_symtab_entry)
11642         (create_symbol_hash_table, create_mapped_symtab, cleanup_mapped_symtab):
11643         Remove.
11644         (find_slot): Change return type.  Update it to the new data structures.
11645         (hash_expand, add_index_entry): Update it to the new data structures.
11646         (offset_type_compare): Remove.
11647         (uniquify_cu_indices): Update it to the new data structures.
11648         (c_str_view, c_str_view_hasher, vector_hasher): New.
11649         (add_indices_to_cpool): Remove.
11650         (write_hash_table): Update it to the new data structures.
11651         (struct psymtab_cu_index_map, hash_psymtab_cu_index)
11652         (eq_psymtab_cu_index): Remove.
11653         (psym_index_map): New typedef.
11654         (struct addrmap_index_data): Change addr_obstack pointer to data_buf
11655         reference and std::unordered_map for cu_index_htab.
11656         (add_address_entry, add_address_entry_worker, write_address_map)
11657         (write_psymbols): Update it to the new data structures.
11658         (write_obstack): Remove.
11659         (struct signatured_type_index_data): Change types_list to a data_buf
11660         reference and psyms_seen to a std::unordered_set reference.
11661         (write_one_signatured_type, recursively_write_psymbols)
11662         (write_psymtabs_to_index): Update it to the new data structures.
11663
11664 2017-06-11  Simon Marchi  <simon.marchi@ericsson.com>
11665
11666         * NEWS (Changes since GDB 8.0): Announce {set,show} debug
11667         separate-debug-file commands.
11668         * symfile.h (separate_debug_file_debug): New global.
11669         * symfile.c (separate_debug_file_debug): New global.
11670         (separate_debug_file_exists, find_separate_debug_file): Add
11671         debug output.
11672         (_initialize_symfile): Add "set debug separate-debug-file"
11673         command.
11674         * build-id.c (build_id_to_debug_bfd,
11675         find_separate_debug_file_by_buildid): Add debug output.
11676
11677 2017-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
11678
11679         * gdbarch.sh (displaced_step_free_closure): Remove.
11680         * gdbarch.h, gdbarch.c: Re-generate.
11681         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Don't set
11682         displaced_step_free_closure.
11683         * amd64-linux-tdep.c (amd64_linux_init_abi_common): Likewise.
11684         * arm-linux-tdep.c (arm_linux_init_abi): Likewise.
11685         * i386-linux-tdep.c (i386_linux_init_abi): Likewise.
11686         * rs6000-aix-tdep.c (rs6000_aix_init_osabi): Likewise.
11687         * rs6000-tdep.c (rs6000_gdbarch_init): Likewise.
11688         * s390-linux-tdep.c (s390_gdbarch_init): Likewise.
11689         * arch-utils.h (simple_displaced_step_free_closure): Remove.
11690         * arch-utils.c (simple_displaced_step_free_closure): Remove.
11691         * infrun.c (displaced_step_clear): Call xfree instead of
11692         gdbarch_displaced_step_free_closure.
11693
11694 2017-06-08  Sergio Durigan Junior  <sergiodj@redhat.com>
11695
11696         * common/common-utils.c (stringify_argv): Check for "arg[0] !=
11697         NULL".
11698
11699 2017-06-08 Alan Hayward  <alan.hayward@arm.com>
11700
11701         * mn10300-tdep.c (MN10300_MAX_REGISTER_SIZE): Add.
11702         (mn10300_extract_return_value): Use MN10300_MAX_REGISTER_SIZE.
11703         (mn10300_push_dummy_call): Likewise.
11704
11705 2017-06-08  Alan Hayward  <alan.hayward@arm.com>
11706
11707         * mi/mi-main.c (register_changed_p): Use value_contents_eq.
11708
11709 2017-06-08  Alan Hayward  <alan.hayward@arm.com>
11710
11711         * mi/mi-main.c (register_changed_p): Use cooked_read_value.
11712
11713 2017-06-07  Sergio Durigan Junior  <sergiodj@redhat.com>
11714
11715         * NEWS (Changes since GDB 8.0): Announce that GDBserver is now
11716         able to start inferiors using a shell.
11717         (New remote packets): Announce new packet "QStartupWithShell".
11718         * remote.c: Add PACKET_QStartupWithShell.
11719         (extended_remote_create_inferior): Handle new
11720         PACKET_QStartupWithShell.
11721         (remote_protocol_features) <QStartupWithShell>: New entry for
11722         PACKET_QStartupWithShell.
11723         (_initialize_remote): Call "add_packet_config_cmd" for
11724         QStartupShell.
11725
11726 2017-06-07  Sergio Durigan Junior  <sergiodj@redhat.com>
11727             Pedro Alves  <palves@redhat.com>
11728
11729         * Makefile.in (HFILES_NO_SRCDIR): Add "common/common-inferior.h"
11730         and "nat/fork-inferior.h".
11731         * common/common-inferior.h: New file, with contents from
11732         "gdb/inferior.h".
11733         * commom/common-utils.c: Include "common-utils.h".
11734         (stringify_argv): New function.
11735         * common/common-utils.h (stringify_argv): New prototype.
11736         * configure.nat: Add "fork-inferior.o" as a dependency for
11737         "*linux*", "fbsd*" and "nbsd*" hosts.
11738         * corefile.c (get_exec_file): Update comment.
11739         * darwin-nat.c (darwin_ptrace_him): Call "gdb_startup_inferior"
11740         instead of "startup_inferior".
11741         (darwin_create_inferior): Call "add_thread_silent" after
11742         "fork_inferior".
11743         * fork-child.c: Cleanup unnecessary includes.
11744         (SHELL_FILE): Move to "common/common-fork-child.c".
11745         (environ): Likewise.
11746         (exec_wrapper): Initialize.
11747         (get_exec_wrapper): New function.
11748         (breakup_args): Move to "common/common-fork-child.c"; rename to
11749         "breakup_args_for_exec".
11750         (escape_bang_in_quoted_argument): Move to
11751         "common/common-fork-child.c".
11752         (saved_ui): New variable.
11753         (prefork_hook): New function.
11754         (postfork_hook): Likewise.
11755         (postfork_child_hook): Likewise.
11756         (gdb_startup_inferior): Likewise.
11757         (fork_inferior): Move to "common/common-fork-child.c".  Update
11758         function to support gdbserver.
11759         (startup_inferior): Likewise.
11760         * gdbcore.h (get_exec_file): Remove declaration.
11761         * gnu-nat.c (gnu_create_inferior): Call "gdb_startup_inferior"
11762         instead of "startup_inferior".  Call "add_thread_silent" after
11763         "fork_inferior".
11764         * inf-ptrace.c: Include "nat/fork-inferior.h" and "utils.h".
11765         (inf_ptrace_create_inferior): Call "gdb_startup_inferior"
11766         instead of "startup_inferior".  Call "add_thread_silent" after
11767         "fork_inferior".
11768         * inferior.h: Include "common-inferior.h".
11769         (trace_start_error): Move to "common/common-utils.h".
11770         (trace_start_error_with_name): Likewise.
11771         (fork_inferior): Move prototype to "nat/fork-inferior.h".
11772         (startup_inferior): Likewise.
11773         (gdb_startup_inferior): New prototype.
11774         * nat/fork-inferior.c: New file, with contents from "fork-child.c".
11775         * nat/fork-inferior.h: New file.
11776         * procfs.c (procfs_init_inferior): Call "gdb_startup_inferior"
11777         instead of "startup_inferior".  Call "add_thread_silent" after
11778         "fork_inferior".
11779         * target.h (target_terminal_init): Move prototype to
11780         "target/target.h".
11781         (target_terminal_inferior): Likewise.
11782         (target_terminal_ours): Likewise.
11783         * target/target.h (target_terminal_init): New prototype, moved
11784         from "target.h".
11785         (target_terminal_inferior): Likewise.
11786         (target_terminal_ours): Likewise.
11787         * utils.c (gdb_flush_out_err): New function.
11788
11789 2017-06-07  Sergio Durigan Junior  <sergiodj@redhat.com>
11790
11791         * Makefile.in (HFILES_NO_SRCDIR): Add "common/common-gdbthread.h".
11792         * common/common-gdbthread.h: New file, with parts from
11793         "gdb/gdbthread.h".
11794         * gdbthread.h: Include "common-gdbthread.h".
11795         (switch_to_thread): Moved to "common/common-gdbthread.h".
11796
11797 2017-06-07  Sergio Durigan Junior  <sergiodj@redhat.com>
11798
11799         * Makefile.in (SFILES): Add "common/job-control.c".
11800         (HFILES_NO_SRCDIR): Add "common/job-control.h".
11801         (COMMON_OBS): Add "job-control.o".
11802         * common/job-control.c: New file, with contents from
11803         "gdb/inflow.c".
11804         * common/job-control.h: New file, with contents from "terminal.h".
11805         * fork-child.c: Include "job-control.h".
11806         * inflow.c: Include "job-control.h".
11807         (gdb_setpgid): Move to "common/common-inflow.c".
11808         (_initialize_inflow): Move setting of "job_control" to
11809         "handle_job_control".
11810         * terminal.h (job_control): Moved to "common/common-terminal.h".
11811         (gdb_setpgid): Likewise.
11812         * top.c: Include "job_control.h".
11813         * utils.c: Likewise.
11814         (job_control): Moved to "job-control.c".
11815
11816 2017-06-07  Pedro Alves  <palves@redhat.com>
11817
11818         * Makefile.in (SFILES): Add gdb_regex.c.
11819         (COMMON_OBS): Add gdb_regex.o.
11820         * ada-lang.c (ada_add_standard_exceptions)
11821         (ada_add_exceptions_from_frame, name_matches_regex)
11822         (ada_add_global_exceptions, ada_exceptions_list_1): Change regex
11823         parameter type to compiled_regex.  Adjust.
11824         (ada_exceptions_list): Use compiled_regex.
11825         * break-catch-throw.c (exception_catchpoint::pattern): Now a
11826         std::unique_ptr<compiled_regex>.
11827         (exception_catchpoint::~exception_catchpoint): Remove regfree
11828         call.
11829         (check_status_exception_catchpoint): Adjust to use compiled_regex.
11830         (handle_gnu_v3_exceptions): Adjust to use compiled_regex.
11831         * breakpoint.c (solib_catchpoint::compiled): Now a
11832         std::unique_ptr<compiled_regex>.
11833         (solib_catchpoint::~solib_catchpoint): Remove regfree call.
11834         (check_status_catch_solib): Adjust to use compiled_regex.
11835         (add_solib_catchpoint): Adjust to use compiled_regex.
11836         * cli/cli-cmds.c (apropos_command): Use compiled_regex.
11837         * cli/cli-decode.c (apropos_cmd): Change regex parameter to
11838         compiled_regex reference.  Adjust to use it.
11839         * cli/cli-decode.h: Remove struct re_pattern_buffer forward
11840         declaration.  Include "gdb_regex.h".
11841         (apropos_cmd): Change regex parameter to compiled_regex reference.
11842         * gdb_regex.c: New file.
11843         * gdb_regex.h (make_regfree_cleanup, get_regcomp_error): Delete
11844         declarations.
11845         (class compiled_regex): New.
11846         * linux-tdep.c: Include "common/gdb_optional.h".
11847         (struct mapping_regexes): New, factored out from
11848         mapping_is_anonymous_p, and adjusted to use compiled_regex.
11849         (mapping_is_anonymous_p): Use mapping_regexes wrapped in a
11850         gdb::optional and remove cleanups.  Adjust to compiled_regex.
11851         * probe.c: Include "common/gdb_optional.h".
11852         (collect_probes): Use compiled_regex and gdb::optional and remove
11853         cleanups.
11854         * skip.c: Include "common/gdb_optional.h".
11855         (skiplist_entry::compiled_function_regexp): Now a
11856         gdb::optional<compiled_regex>.
11857         (skiplist_entry::compiled_function_regexp_is_valid): Delete field.
11858         (free_skiplist_entry): Remove regfree call.
11859         (compile_skip_regexp, skip_rfunction_p): Adjust to use
11860         compiled_regex and gdb::optional.
11861         * symtab.c: Include "common/gdb_optional.h".
11862         (search_symbols): Use compiled_regex and gdb::optional.
11863         * utils.c (do_regfree_cleanup, make_regfree_cleanup)
11864         (get_regcomp_error, compile_rx_or_error): Delete.  Some bits moved
11865         to gdb_regex.c.
11866
11867 2017-06-07  Alan Hayward  <alan.hayward@arm.com>
11868
11869         * regcache.c (regcache::save): Avoid buffer use.
11870         (regcache::dump): Likewise.
11871
11872 2017-06-07  Alan Hayward  <alan.hayward@arm.com>
11873
11874         * sh-tdep.c (sh_pseudo_register_read): Remove
11875         MAX_REGISTER_SIZE.
11876         (sh_pseudo_register_write): Likewise.
11877         * sh64-tdep.c (sh64_pseudo_register_read): Likewise.
11878         (sh64_pseudo_register_write): Likewise
11879
11880 2017-06-07  Alan Hayward  <alan.hayward@arm.com>
11881
11882         * aarch64-tdep.c (aarch64_store_return_value): Use
11883         V_REGISTER_SIZE.
11884         (aarch64_pseudo_read_value): Likewise.
11885         (aarch64_pseudo_write): Likewise.
11886
11887 2017-06-06  Yao Qi  <yao.qi@linaro.org>
11888
11889         * regformats/regdef.h (set_register_cache): Remove the
11890         declaration.
11891
11892 2017-06-06 Alan Hayward  <alan.hayward@arm.com>
11893
11894         * frame.c (frame_unwind_register_signed): Use
11895         frame_unwind_register_value.
11896
11897 2017-06-06  Pedro Alves  <palves@redhat.com>
11898
11899         PR breakpoints/21553
11900         * breakpoint.c (create_breakpoints_sal_default)
11901         (init_breakpoint_sal, create_breakpoint_sal): Use
11902         gdb::unique_xmalloc_ptr for string parameters.
11903         (create_breakpoint): Constify 'extra_string' and 'cond_string'
11904         parameters.  Replace cleanups with gdb::unique_xmalloc_ptr.
11905         (base_breakpoint_create_breakpoints_sal)
11906         (bkpt_create_breakpoints_sal, tracepoint_create_breakpoints_sal)
11907         (strace_marker_create_breakpoints_sal)
11908         (create_breakpoints_sal_default): Use gdb::unique_xmalloc_ptr for
11909         string parameters.
11910         * breakpoint.h (breakpoint_ops::create_breakpoints_sal): Use
11911         gdb::unique_xmalloc_ptr for string parameters.
11912         (create_breakpoint): Constify 'extra_string' and 'cond_string'
11913         parameters.
11914
11915 2017-06-06  Alan Hayward  <alan.hayward@arm.com>
11916
11917         * alpha-tdep.c (alpha_register_to_value): Use
11918         get_frame_register_value.
11919         (alpha_value_to_register): Use ALPHA_REGISTER_SIZE.
11920
11921 2017-06-06  Alan Hayward  <alan.hayward@arm.com>
11922
11923         * ia64-tdep.c (IA64_MAX_FP_REGISTER_SIZE) Add.
11924         (ia64_register_to_value): Use IA64_MAX_FP_REGISTER_SIZE.
11925         (ia64_value_to_register): Likewise.
11926         (ia64_extract_return_value): Likewise.
11927         (ia64_store_return_value): Likewise.
11928         (ia64_push_dummy_call): Likewise.
11929
11930 2017-06-04  Joel Brobecker  <brobecker@adacore.com>
11931
11932         GDB 8.0 released.
11933
11934 2017-06-03  Simon Marchi  <simon.marchi@ericsson.com>
11935
11936         * x86-linux-nat.c (struct arch_lwp_info): Remove.
11937
11938 2017-06-03  Simon Marchi  <simon.marchi@polymtl.ca>
11939
11940         * linux-nat.c (linux_nat_post_attach_wait): Remove FIRST
11941         parameter.
11942         (linux_nat_attach): Adjust call to linux_nat_post_attach_wait.
11943
11944 2017-06-02  Simon Marchi  <simon.marchi@ericsson.com>
11945
11946         * event-loop.c (poll_timers): Unallocate timer using delete
11947         instead of xfree.
11948
11949 2017-06-02  Simon Marchi  <simon.marchi@polymtl.ca>
11950
11951         * breakpoint.h (struct breakpoint_ops) <dtor>: Remove.
11952         (struct breakpoint) <~breakpoint>: New.
11953         (struct watchpoint): Inherit from breakpoint.
11954         <~watchpoint>: New.
11955         <base>: Remove.
11956         (struct tracepoint): Inherit from breakpoint.
11957         <base>: Remove.
11958         * breakpoint.c (longjmp_breakpoint_ops): Remove.
11959         (struct longjmp_breakpoint): Inherit from breakpoint.
11960         <~longjmp_breakpoint>: New.
11961         <base>: Remove.
11962         (new_breakpoint_from_type): Remove casts.
11963         (watchpoint_in_thread_scope): Remove reference to base field.
11964         (watchpoint_del_at_next_stop): Likewise.
11965         (update_watchpoint): Likewise.
11966         (watchpoint_check): Likewise.
11967         (bpstat_check_watchpoint): Likewise.
11968         (set_longjmp_breakpoint): Likewise.
11969         (struct fork_catchpoint): Inherit from breakpoint.
11970         <base>: Remove.
11971         (struct solib_catchpoint): Inherit from breakpoint.
11972         <~solib_catchpoint>: New.
11973         <base>: Remove.
11974         (dtor_catch_solib): Change to ...
11975         (solib_catchpoint::~solib_catchpoint): ... this.
11976         (breakpoint_hit_catch_solib): Remove reference to base field.
11977         (add_solib_catchpoint): Likewise.
11978         (create_fork_vfork_event_catchpoint): Likewise.
11979         (struct exec_catchpoint): Inherit from breakpoint.
11980         <~exec_catchpoint>: New.
11981         <base>: Remove.
11982         (dtor_catch_exec): Change to ...
11983         (exec_catchpoint::~exec_catchpoint): ... this.
11984         (dtor_watchpoint): Change to ...
11985         (watchpoint::~watchpoint): ... this.
11986         (watch_command_1): Remove reference to base field.
11987         (catch_exec_command_1): Likewise.
11988         (base_breakpoint_dtor): Change to ...
11989         (breakpoint::~breakpoint): ... this.
11990         (base_breakpoint_ops): Remove dtor field value.
11991         (longjmp_bkpt_dtor): Change to ...
11992         (longjmp_breakpoint::~longjmp_breakpoint): ... this.
11993         (strace_marker_create_breakpoints_sal): Remove reference to base
11994         field.
11995         (delete_breakpoint): Don't manually call breakpoint destructor.
11996         (create_tracepoint_from_upload): Remove reference to base field.
11997         (trace_pass_set_count): Likewise.
11998         (initialize_breakpoint_ops): Don't initialize
11999         momentary_breakpoint_ops, don't set dtors.
12000         * ada-lang.c (struct ada_catchpoint): Inherit from breakpoint.
12001         <~ada_catchpoint>: New.
12002         <base>: Remove.
12003         (create_excep_cond_exprs): Remove reference to base field.
12004         (dtor_exception): Change to ...
12005         (ada_catchpoint::~ada_catchpoint): ... this.
12006         (dtor_catch_exception): Remove.
12007         (dtor_catch_exception_unhandled): Remove.
12008         (dtor_catch_assert): Remove.
12009         (create_ada_exception_catchpoint): Remove reference to base
12010         field.
12011         (initialize_ada_catchpoint_ops): Don't set dtors.
12012         * break-catch-sig.c (struct signal_catchpoint): Inherit from
12013         breakpoint.
12014         <~signal_catchpoint>: New.
12015         <base>: Remove.
12016         (signal_catchpoint_dtor): Change to ...
12017         (signal_catchpoint::~signal_catchpoint): ... this.
12018         (create_signal_catchpoint): Remove reference to base field.
12019         (initialize_signal_catchpoint_ops): Don't set dtor.
12020         * break-catch-syscall.c (struct syscall_catchpoint): Inherit
12021         from breakpoint.
12022         <~syscall_catchpoint>: New.
12023         <base>: Remove.
12024         (dtor_catch_syscall): Change to ...
12025         (syscall_catchpoint::~syscall_catchpoint): ... this.
12026         (create_syscall_event_catchpoint): Remove reference to base
12027         field.
12028         (initialize_syscall_catchpoint_ops): Don't set dtor.
12029         * break-catch-throw.c (struct exception_catchpoint): Inherit
12030         from breakpoint.
12031         <~exception_catchpoint>: New.
12032         <base>: Remove.
12033         (dtor_exception_catchpoint): Change to ...
12034         (exception_catchpoint::~exception_catchpoint): ... this.
12035         (handle_gnu_v3_exceptions): Remove reference to base field.
12036         (initialize_throw_catchpoint_ops): Don't set dtor.
12037         * ctf.c (ctf_get_traceframe_address): Remove reference to base
12038         field.
12039         * remote.c (remote_get_tracepoint_status): Likewise.
12040         * tracefile-tfile.c (tfile_get_traceframe_address): Likewise.
12041         * tracefile.c (tracefile_fetch_registers): Likewise.
12042         * tracepoint.c (actions_command): Likewise.
12043         (validate_actionline): Likewise.
12044         (tfind_1): Likewise.
12045         (get_traceframe_location): Likewise.
12046         (find_matching_tracepoint_location): Likewise.
12047         (parse_tracepoint_status): Likewise.
12048         * mi/mi-cmd-break.c (mi_cmd_break_passcount): Likewise.
12049
12050 2017-06-02  Simon Marchi  <simon.marchi@polymtl.ca>
12051
12052         * breakpoint.c (struct longjmp_breakpoint): New struct.
12053         (is_tracepoint_type): Change return type to bool.
12054         (is_longjmp_type): New function.
12055         (new_breakpoint_from_type): Handle longjmp kinds of breakpoints.
12056         (set_raw_breakpoint_without_location): Use
12057         new_breakpoint_from_type.
12058         (set_raw_breakpoint): Likewise.
12059
12060 2017-06-02  Simon Marchi  <simon.marchi@polymtl.ca>
12061
12062         * breakpoint.c (new_breakpoint_from_type): New function.
12063         (create_breakpoint_sal): Use new_breakpoint_from_type and
12064         unique_ptr.
12065         (create_breakpoint): Likewise.
12066
12067 2017-05-31  Simon Marchi  <simon.marchi@ericsson.com>
12068
12069         * memattr.c (mem_info_command): Rename to ...
12070         (info_mem_command): ... this.
12071         (mem_enable_command): Rename to ...
12072         (enable_mem_command): ... this.
12073         (mem_disable_command): Rename to ...
12074         (disable_mem_command): ... this.
12075         (mem_delete_command): Rename to ...
12076         (delete_mem_command): ... this.
12077         (_initialize_mem): Adjust function names.
12078
12079 2017-05-31  Markus Metzger  <markus.t.metzger@intel.com>
12080
12081         * btrace.c (handle_pt_insn_events): New.
12082         (ftrace_add_pt): Call handle_pt_insn_events.  Rename ERRCODE into
12083         STATUS.  Split into this and ...
12084         (handle_pt_insn_event_flags): ... this.
12085
12086 2017-05-31  Markus Metzger  <markus.t.metzger@intel.com>
12087
12088         * configure.ac: Check for pt_insn_event, struct pt_insn.enabled,
12089         and struct pt_insn.resynced.
12090         * configure: Regenerated.
12091         * config.in: Regenerated.
12092
12093 2017-05-30  Tim Wiederhake  <tim.wiederhake@intel.com>
12094
12095         * btrace.c (ftrace_find_call_by_number): New function.
12096         (ftrace_new_function): Store objects, not pointers.
12097         (ftrace_find_call_by_number, ftrace_new_return, ftrace_new_switch,
12098         ftrace_new_gap, ftrace_update_function,
12099         ftrace_compute_global_level_offset, btrace_stich_bts, btrace_clear,
12100         btrace_insn_get, btrace_insn_get_error, btrace_insn_end,
12101         btrace_insn_next, btrace_insn_prev, ptrace_find_insn_by_number,
12102         btrace_ends_with_single_insn, btrace_call_get): Account for
12103         btrace_thread_info::functions now storing objects.
12104         * btrace.h (struct btrace_thread_info): Add constructor.
12105         (struct btrace_thread_info) <functions>: Make std::vector.
12106         (struct btrace_thread_info) <prev, next, up, insn, errcode, flags):
12107         Initialize with default values.
12108         * record-btrace.c (record_btrace_frame_sniffer): Account for
12109         btrace_thread_info::functions now storing objects.
12110
12111 2017-05-30  Tim Wiederhake  <tim.wiederhake@intel.com>
12112
12113         * btrace.c: Remove typedef bfun_s.
12114         (ftrace_new_gap): Directly add gaps to the list of gaps.
12115         (btrace_bridge_gaps, btrace_compute_ftrace_bts, pt_btrace_insn_flags,
12116         ftrace_add_pt, btrace_compute_ftrace_pt, btrace_compute_ftrace_1,
12117         btrace_finalize_ftrace, btrace_compute_ftrace): Use std::vector
12118         instead of gdb VEC.
12119
12120 2017-05-30  Tim Wiederhake  <tim.wiederhake@intel.com>
12121
12122         * btrace.c (ftrace_fixup_caller, ftrace_new_return, ftrace_connect_bfun,
12123         ftrace_bridge_gap): Replace references to btrace_thread_info::segment
12124         with btrace_thread_info::next_segment and
12125         btrace_thread_info::prev_segment.
12126         * btrace.h: Remove struct btrace_func_link.
12127         (struct btrace_function): Replace pair of function segment pointers
12128         with pair of indices.
12129         * python/py-record-btrace.c (btpy_call_prev_sibling,
12130         btpy_call_next_sibling): Replace references to
12131         btrace_thread_info::segment with btrace_thread_info::next_segment and
12132         btrace_thread_info::prev_segment.
12133         * record-btrace.c (record_btrace_frame_this_id): Use
12134         btrace_find_call_by_number.
12135
12136 2017-05-30  Tim Wiederhake  <tim.wiederhake@intel.com>
12137
12138         * btrace.c (ftrace_new_function, ftrace_fixup_level,
12139         ftrace_connect_bfun, ftrace_bridge_gap, btrace_bridge_gaps,
12140         btrace_insn_next, btrace_insn_prev): Remove references to
12141         btrace_thread_info::flow.
12142         * btrace.h (struct btrace_function): Remove FLOW.
12143
12144 2017-05-30  Tim Wiederhake  <tim.wiederhake@intel.com>
12145
12146         * btrace.c (ftrace_find_call_by_number): New function.
12147         (ftrace_update_caller, ftrace_new_call, ftrace_new_tailcall,
12148         ftrace_get_caller, ftrace_find_call, ftrace_new_return,
12149         ftrace_match_backtrace, ftrace_connect_bfun, ftrace_connect_backtrace,
12150         ftrace_bridge_gap, btrace_bridge_gaps): Use btrace_function::up as an
12151         index.
12152         * btrace.h (struct btrace_function): Turn UP into an index.
12153         * python/py-record-btrace.c (btpy_call_up): Use btrace_function::up
12154         as an index.
12155         * record-btrace.c (record_btrace_frame_unwind_stop_reason,
12156         record_btrace_frame_prev_register, record_btrace_frame_sniffer,
12157         record_btrace_tailcall_frame_sniffe): Use btrace_find_call_by_number.
12158
12159 2017-05-30  Tim Wiederhake  <tim.wiederhake@intel.com>
12160
12161         * btrace.c (ftrace_new_function, ftrace_new_call, ftrace_new_tailcall,
12162         ftrace_new_return, ftrace_new_switch, ftrace_new_gap,
12163         ftrace_update_function, ftrace_compute_global_level_offset,
12164         btrace_compute_ftrace_bts, ftrace_add_pt, btrace_compute_ftrace_pt,
12165         btrace_stitch_bts, btrace_fetch, btrace_clear, btrace_insn_number,
12166         btrace_insn_end, btrace_is_empty): Remove references to
12167         btrace_thread_info::begin and btrace_thread_info::end.
12168         * btrace.h (struct btrace_thread_info): Remove BEGIN and END.
12169         (struct btrace_thread_info) <functions>: Adjust comment.
12170         * record-btrace.c (record_btrace_start_replaying): Remove reference to
12171         btrace_thread_info::begin.
12172
12173 2017-05-30  Tim Wiederhake  <tim.wiederhake@intel.com>
12174
12175         * btrace.c (ftrace_new_function, ftrace_new_call, ftrace_new_tailcall,
12176         ftrace_new_return, ftrace_new_switch, ftrace_new_gap,
12177         ftrace_update_function): Remove arguments that implicitly were always
12178         BTINFO->END.
12179         (btrace_compute_ftrace_bts, ftrace_add_pt, btrace_compute_ftrace_pt):
12180         Don't pass BTINFO->END.
12181
12182 2017-05-30  Tim Wiederhake  <tim.wiederhake@intel.com>
12183
12184         * btrace.c: (btrace_insn_get, btrace_insn_get_error, btrace_insn_number,
12185         btrace_insn_begin, btrace_insn_end, btrace_insn_next, btrace_insn_prev,
12186         btrace_find_insn_by_number): Replace function segment pointer with
12187         index.
12188         (btrace_insn_cmp): Simplify.
12189         * btrace.h: (struct btrace_insn_iterator) Rename index to
12190         insn_index.  Replace function segment pointer with index into function
12191         segment vector.
12192         * record-btrace.c (record_btrace_call_history): Replace function
12193         segment pointer use with index.
12194         (record_btrace_frame_sniffer): Retrieve function call segment through
12195         vector.
12196         (record_btrace_set_replay): Remove defunc't safety check.
12197
12198 2017-05-30  Tim Wiederhake  <tim.wiederhake@intel.com>
12199
12200         * btrace.c (btrace_ends_with_single_insn): New function.
12201         (btrace_call_get, btrace_call_number, btrace_call_begin,
12202         btrace_call_end, btrace_call_next, btrace_call_prev,
12203         btrace_find_call_by_number): Use index into call segment vector
12204         instead of pointer.
12205         (btrace_call_cmp): Simplify.
12206         * btrace.h (struct btrace_call_iterator): Replace function call segment
12207         pointer with index into vector.
12208         * record-btrace.c (record_btrace_call_history): Use index instead of
12209         pointer.
12210
12211 2017-05-30  Tim Wiederhake  <tim.wiederhake@intel.com>
12212
12213         * btrace.c (btrace_insn_begin, btrace_insn_end,
12214         btrace_find_insn_by_number): Add btinfo to iterator.
12215         * btrace.h (struct btrace_insn_iterator): Add btinfo.
12216
12217 2017-05-30  Tim Wiederhake  <tim.wiederhake@intel.com>
12218
12219         * btrace.c (ftrace_new_function): Add btrace_thread_info to arguments
12220         and save pointers directly.
12221         (ftrace_new_call, ftrace_new_tailcall, ftrace_new_return,
12222         ftrace_new_switch, ftrace_new_gap, ftrace_update_function,
12223         ftrace_add_pt): Add btrace_thread_info to arguments.  Adjust for
12224         changed signature of functions.
12225         (btrace_compute_ftrace_pt): Adjust for changed signature of functions.
12226         (btrace_fetch): Remove code that adds btrace_function pointers to
12227         vector of btrace_functions.
12228         (btrace_clear): Simplify freeing vector of btrace_functions.
12229
12230 2017-05-30  Tim Wiederhake  <tim.wiederhake@intel.com>
12231
12232         * btrace.c (btrace_fetch, btrace_clear, btrace_find_insn_by_number):
12233         Replace VEC_* with std::vector functions.
12234         * btrace.h: Add include: vector. Remove typedef for DEF_VEC_P.
12235         (struct btrace_thread_info)<functions>: Change type to std::vector.
12236
12237 2017-05-30  Simon Marchi  <simon.marchi@ericsson.com>
12238
12239         * NEWS (Changes in GDB 8.0): Remove extra empty line.  Move
12240         "Removed targets and native configurations" up.  Merge duplicate
12241         "New commands" sub-sections.  Add "New options" sub-sections.
12242
12243 2017-05-26  Alan Hayward  <alan.hayward@arm.com>
12244
12245         * defs.h (copy_integer_to_size): New declaration.
12246         * findvar.c (copy_integer_to_size): New function.
12247         (do_cint_test): New selftest function.
12248         (copy_integer_to_size_test): Likewise.
12249         (_initialize_findvar): Likewise.
12250         * mips-fbsd-tdep.c (mips_fbsd_supply_reg): Use raw_supply_integer.
12251         (mips_fbsd_collect_reg): Use raw_collect_integer.
12252         * mips-linux-tdep.c (supply_32bit_reg): Use raw_supply_integer.
12253         (mips64_fill_gregset): Use raw_collect_integer
12254         (mips64_fill_fpregset): Use raw_supply_integer.
12255         * regcache.c (regcache::raw_supply_integer): New function.
12256         (regcache::raw_collect_integer): Likewise.
12257         * regcache.h: (regcache::raw_supply_integer): New declaration.
12258         (regcache::raw_collect_integer): Likewise.
12259
12260 2017-05-24  Yao Qi  <yao.qi@linaro.org>
12261
12262         * Makefile.in (SFILES): Add gdbarch-selftests.c.
12263         (COMMON_OBS): Add gdbarch-selftests.o.
12264         * frame.c [GDB_SELF_TESTS] (create_new_frame): New function.
12265         * frame.h [GDB_SELF_TESTS] (create_new_frame): Declare.
12266         * gdbarch-selftests.c: New file.
12267         * regcache.h (regcache) <~regcache>: Mark it virtual if
12268         GDB_SELF_TEST.
12269         <raw_write>: Likewise.
12270
12271 2017-05-24  Yao Qi  <yao.qi@linaro.org>
12272
12273         * regcache.c (current_regcache): Change it to
12274         regcache::current_regcache.
12275         (regcache_observer_target_changed): Update.
12276         (regcache_thread_ptid_changed): Make it a regcache static
12277         method.
12278         (regcache_thread_ptid_changed): Update.
12279         (class regcache_access): New.
12280         (current_regcache_test): Update.
12281         (_initialize_regcache): Update.
12282         * regcache.h: Include forward_list.
12283         (regcache): Declare regcache_thread_ptid_changed and declare
12284         registers_changed_ptid as friend.
12285
12286 2017-05-24  Yao Qi  <yao.qi@linaro.org>
12287
12288         * i387-tdep.c (i387_register_to_value): Use register_size
12289         instead of TYPE_LENGTH.
12290         * m68k-tdep.c (m68k_register_to_value): Likewise.
12291
12292 2017-05-24  Yao Qi  <yao.qi@linaro.org>
12293
12294         * i387-tdep.c (i387_convert_register_p): Return false if type
12295         code isn't TYPE_CODE_FLT.
12296
12297 2017-05-24  Yao Qi  <yao.qi@linaro.org>
12298
12299         * alpha-tdep.c (alpha_convert_register_p): Return true if type
12300         length is 4.
12301         (alpha_register_to_value): Remove type length check.
12302         (alpha_value_to_register): Likewise.
12303
12304 2017-05-24  Yao Qi  <yao.qi@linaro.org>
12305
12306         * ia64-tdep.c (ia64_convert_register_p): Check type's code is
12307         TYPE_CODE_FLT.
12308
12309 2017-05-24  Yao Qi  <yao.qi@linaro.org>
12310
12311         * m68k-tdep.c (m68k_convert_register_p): Check type's code is
12312         TYPE_CODE_FLT or not.
12313
12314 2017-05-24  Yao Qi  <yao.qi@linaro.org>
12315
12316         * alpha-tdep.c (alpha_gdbarch_init): Use XCNEW instead of XNEW.
12317         * avr-tdep.c (avr_gdbarch_init): Likewise.
12318         * bfin-tdep.c (bfin_gdbarch_init): Likewise.
12319         * cris-tdep.c (cris_gdbarch_init): Likewise.
12320         * ft32-tdep.c (ft32_gdbarch_init): Likewise.
12321         * lm32-tdep.c (lm32_gdbarch_init): Likewise.
12322         * m32r-tdep.c (m32r_gdbarch_init): Likewise.
12323         * m68hc11-tdep.c (m68hc11_gdbarch_init): Likewise.
12324         * mep-tdep.c (mep_gdbarch_init): Likewise.
12325         * microblaze-tdep.c (microblaze_gdbarch_init): Likewise.
12326         * mips-tdep.c (mips_gdbarch_init): Likewise.
12327         * mn10300-tdep.c (mn10300_gdbarch_init): Likewise.
12328         * moxie-tdep.c (moxie_gdbarch_init): Likewise.
12329         * msp430-tdep.c (msp430_gdbarch_init): Likewise.
12330         * sh64-tdep.c (sh64_gdbarch_init): Likewise.
12331         * v850-tdep.c (v850_gdbarch_init): Likewise.
12332
12333 2017-05-24  Yao Qi  <yao.qi@linaro.org>
12334
12335         * selftest-arch.c (tests_with_arch): Call registers_changed
12336         and reinit_frame_cache.
12337         * selftest.c (run_self_tests): Likewise.
12338
12339 2017-05-24  Yao Qi  <yao.qi@linaro.org>
12340
12341         * rs6000-tdep.c (gdb_print_insn_powerpc): Remove.
12342         (rs6000_gdbarch_init): Don't call set_gdbarch_print_insn.
12343
12344 2017-05-24  Yao Qi  <yao.qi@linaro.org>
12345
12346         * rl78-tdep.c (rl78_gdbarch_init): Don't call
12347         set_gdbarch_print_insn.
12348
12349 2017-05-24  Yao Qi  <yao.qi@linaro.org>
12350
12351         * h8300-tdep.c (h8300_gdbarch_init): Don't call
12352         set_gdbarch_print_insn.
12353
12354 2017-05-24  Yao Qi  <yao.qi@linaro.org>
12355
12356         * alpha-tdep.c (alpha_gdbarch_init): Don't call
12357         set_gdbarch_print_insn.
12358         * arc-tdep.c (arc_gdbarch_init): Likewise.
12359         * arch-utils.c: include dis-asm.h.
12360         (default_print_insn): New function.
12361         * arch-utils.h (default_print_insn): Declare.
12362         * avr-tdep.c (avr_gdbarch_init): Don't call set_gdbarch_print_insn.
12363         * bfin-tdep.c (bfin_gdbarch_init): Likewise.
12364         * cris-tdep.c (cris_delayed_get_disassembler): Remove.
12365         (cris_gdbarch_init): Don't call set_gdbarch_print_insn.
12366         * frv-tdep.c (frv_gdbarch_init): Likewise.
12367         * ft32-tdep.c (ft32_gdbarch_init): Likewise.
12368         * gdbarch.sh (print_insn): Use default_print_insn.
12369         * gdbarch.c: Regenerated.
12370         * hppa-tdep.c (hppa_gdbarch_init): Likewise.
12371         * iq2000-tdep.c (iq2000_gdbarch_init): Likewise.
12372         * lm32-tdep.c (lm32_gdbarch_init): Likewise.
12373         * m32c-tdep.c (m32c_gdbarch_init): Likewise.
12374         * m32r-tdep.c (m32r_gdbarch_init): Likewise.
12375         * m68hc11-tdep.c (gdb_print_insn_m68hc11): Remove.
12376         (m68hc11_gdbarch_init): Don't call set_gdbarch_print_insn.
12377         * m68k-tdep.c (m68k_gdbarch_init): Likewise.
12378         * m88k-tdep.c (m88k_gdbarch_init): Likewise.
12379         * microblaze-tdep.c (microblaze_gdbarch_init): Likewise.
12380         * mn10300-tdep.c (mn10300_gdbarch_init): Likewise.
12381         * moxie-tdep.c (moxie_gdbarch_init): Likewise.
12382         * msp430-tdep.c (msp430_gdbarch_init): Likewise.
12383         * mt-tdep.c (mt_gdbarch_init): Likewise.
12384         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
12385         * nios2-tdep.c (nios2_print_insn): Remove.
12386         (nios2_gdbarch_init): Don't call set_gdbarch_print_insn.
12387         * rx-tdep.c (rx_gdbarch_init): Likewise.
12388         * s390-linux-tdep.c (s390_gdbarch_init): Likewise.
12389         * score-tdep.c (score_print_insn): Remove.
12390         (score_gdbarch_init): Don't call set_gdbarch_print_insn.
12391         * sh-tdep.c (sh_gdbarch_init): Likewise.
12392         * sh64-tdep.c (sh64_gdbarch_init): Likewise.
12393         * sparc-tdep.c (sparc32_gdbarch_init): Likewise.
12394         * tic6x-tdep.c (tic6x_print_insn): Remove.
12395         (tic6x_gdbarch_init): Don't call set_gdbarch_print_insn.
12396         * tilegx-tdep.c (tilegx_gdbarch_init): Likewise.
12397         * v850-tdep.c (v850_gdbarch_init): Likewise.
12398         * vax-tdep.c (vax_gdbarch_init): Likewise.
12399         * xstormy16-tdep.c (xstormy16_gdbarch_init): Likewise.
12400         * xtensa-tdep.c (xtensa_gdbarch_init): Likewise.
12401
12402 2017-05-23  John Baldwin  <jhb@FreeBSD.org>
12403
12404         * mips-fbsd-tdep.c (MIPS_PC_REGNUM): Remove.
12405         (MIPS_FP0_REGNUM): Remove.
12406         (MIPS_FSR_REGNUM): Remove.
12407         (mips_fbsd_supply_fpregs): Use mips_regnum.
12408         (mips_fbsd_supply_gregs): Likewise.
12409         (mips_fbsd_collect_fpregs): Likewise.
12410         (mips_fbsd_collect_gregs): Likewise.
12411
12412 2017-05-23  John Baldwin  <jhb@FreeBSD.org>
12413
12414         * mips-fbsd-nat.c (getregs_supplies): Fix upper bound comparison.
12415         (getpfpregs_supplies): New function.
12416         (mips_fbsd_fetch_inferior_registers): Remove early exit and use
12417         getfpregs_supplies.
12418         (mips_fbsd_store_inferior_registers): Likewise.
12419
12420 2017-05-22  Pedro Alves <palves@redhat.com>
12421
12422         * MAINTAINERS (Host/Native): Add John Baldwin as FreeBSD
12423         maintainer.
12424
12425 2017-05-22  Alan Hayward  <alan.hayward@arm.com>
12426
12427         * ppc-linux-nat.c (fetch_register): Use PPC_MAX_REGISTER_SIZE.
12428         (store_register): Likewise.
12429         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
12430         (get_decimal_float_return_value): Likewise.
12431         (do_ppc_sysv_return_value): Likewise.
12432         (ppc64_sysv_abi_push_integer): Likewise.
12433         (ppc64_sysv_abi_push_freg): Likewise.
12434         (ppc64_sysv_abi_return_value_base): Likewise.
12435         (ppc64_sysv_abi_return_value): Likewise.
12436         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
12437         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
12438         * rs6000-nat.c: Likewise.
12439         * rs6000-tdep.c (rs6000_register_to_value): Likewise.
12440         (rs6000_value_to_register): Likewise.
12441         * ppc-tdep.h (PPC_MAX_REGISTER_SIZE): Add.
12442
12443 2017-05-21  Tom Tromey  <tom@tromey.com>
12444
12445         PR rust/21466:
12446         * rust-lang.c (rust_print_type) <TYPE_CODE_ARRAY>: Print unsized
12447         arrays as "[T]", not "[T; ]".
12448
12449 2017-05-19  Tom Tromey  <tom@tromey.com>
12450
12451         PR rust/21484:
12452         * rust-lang.c (exp_descriptor_rust): New function.
12453         (rust_language_defn): Use it.
12454         * p-lang.c (pascal_language_defn): Update.
12455         * opencl-lang.c (opencl_language_defn): Update.
12456         * objc-lang.c (objc_language_defn): Update.
12457         * m2-lang.c (m2_language_defn): Update.
12458         * language.h (struct language_defn)
12459         <la_watch_location_expression>: New member.
12460         * language.c (unknown_language_defn, auto_language_defn)
12461         (local_language_defn): Update.
12462         * go-lang.c (go_language_defn): Update.
12463         * f-lang.c (f_language_defn): Update.
12464         * d-lang.c (d_language_defn): Update.
12465         * c-lang.h (c_watch_location_expression): Declare.
12466         * c-lang.c (c_watch_location_expression): New function.
12467         (c_language_defn, cplus_language_defn, asm_language_defn)
12468         (minimal_language_defn): Use it.
12469         * breakpoint.c (watch_command_1): Call
12470         la_watch_location_expression.
12471         * ada-lang.c (ada_language_defn): Update.
12472
12473 2017-05-19  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
12474
12475         PR tui/21482
12476         * gdb_curses.h (NOMACROS): Define.
12477         (NCURSES_NOMACROS): Define.
12478
12479 2017-05-19  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
12480
12481         PR tui/21482
12482         * tui/tui-windata.c (tui_erase_data_content): Cast last mvwaddstr
12483         arg to char *.
12484         * tui/tui-wingeneral.c (box_win): Likewise.
12485         * tui/tui-winsource.c (tui_erase_source_content): Likewise.
12486         (tui_show_source_line): Likewise.
12487         (tui_show_exec_info_content): Likewise.
12488
12489 2017-05-19  Vladimir Mezentsev  <vladimir.mezentsev@oracle.com>
12490
12491         * sparc-tdep.c (sparc_structure_return_p)
12492         (sparc_arg_on_registers_p): New functions.
12493         (sparc32_store_arguments): Use them.
12494         * sparc64-tdep.c (sparc64_16_byte_align_p)
12495         (sparc64_store_floating_fields, sparc64_extract_floating_fields):
12496         Handle TYPE_CODE_ARRAY.
12497
12498 2017-05-17  Yao Qi  <yao.qi@linaro.org>
12499
12500         * cli/cli-decode.c (add_alias_cmd): New function.
12501         * command.h (add_alias_cmd): Declare.
12502         * infcmd.c (_initialize_infcmd): Don't call add_com_alias,
12503         instead call add_alias_cmd.
12504
12505 2017-05-17  Pedro Alves  <palves@redhat.com>
12506
12507         * Makefile.in (nat_extra_makefile_frag): Rename to ...
12508         (nat_makefile_frag): ... this.  All references updated.
12509         * configure.ac: Likewise.
12510         * configure.nat: Likewise.  Enhance comments.
12511         * configure: Regenerate.
12512
12513 2017-05-15  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
12514
12515         * procfs.c (procfs_create_inferior): Change prototype to match
12516         definition.
12517
12518 2017-05-13  Eli Zaretskii  <eliz@gnu.org>
12519
12520         * tui/tui.c (tui_enable): Cast "unknown" to 'char *' to avoid a
12521         C++ compiler warning.
12522
12523 2017-05-12  Tom Tromey  <tom@tromey.com>
12524
12525         PR rust/21483:
12526         * rust-lang.c (rust_evaluate_subexp) <STRUCTOP_STRUCT>: Don't
12527         recurse, just call value_struct_elt directly.
12528
12529 2017-05-12  Tom Tromey  <tom@tromey.com>
12530
12531         * rust-lang.c (rust_dump_subexp_body) <STRUCTOP_ANONYMOUS,
12532         OP_RUST_ARRAY>: Fix.
12533
12534 2017-05-12  Tom Tromey  <tom@tromey.com>
12535
12536         * rust-lang.c (rust_print_subexp): Replace "return" with "break".
12537
12538 2017-05-09  Yao Qi  <yao.qi@linaro.org>
12539
12540         * regcache.c: Include <forward_list>.
12541         (struct regcache_list): Remove.
12542         (current_regcache): Update.
12543         (get_thread_arch_aspace_regcache): Update for std::forward_list.
12544         (regcache_thread_ptid_changed): Likewise.
12545         (registers_changed_ptid): Likewise.
12546         (current_regcache_size): Likewise.
12547
12548 2017-05-09  Yao Qi  <yao.qi@linaro.org>
12549
12550         * regcache.c [GDB_SELF_TEST]: Include selftest.h.
12551         (current_regcache_size): New function.
12552         (current_regcache_test): New function.
12553         (_initialize_regcache) [GDB_SELF_TEST]: Register the unit test.
12554
12555 2017-05-08  Alan Hayward  <alan.hayward@arm.com>
12556
12557         * mips-tdep.c (mips_o32_return_value): Remove unused buffer.
12558         (print_gp_register_row): Use get_frame_register_value.
12559
12560 2017-05-08  Alan Hayward  <alan.hayward@arm.com>
12561
12562         * mips-linux-tdep.c (mips_supply_gregset): Use raw_supply_zeroed.
12563         (mips_supply_fpregset): Likewise.
12564         (mips64_supply_gregset): Likewise.
12565
12566 2017-05-08  Alan Hayward  <alan.hayward@arm.com>
12567
12568         * mn10300-linux-tdep.c (am33_supply_gregset_method): Use 
12569         regcache->raw_supply_zeroed.
12570
12571 2017-05-06  Sergio Durigan Junior  <sergiodj@redhat.com>
12572
12573         * configure.nat: Rearrange 'case' statements to match
12574         host before cpu.
12575
12576 2017-05-06  Sergio Durigan Junior  <sergiodj@redhat.com>
12577
12578         * Makefile.in: Remove "@host_makefile_frag@".  Add variables
12579         NAT_FILE, NATDEPFILES, NAT_CDEPS, LOADLIBES, MH_CFLAGS, XM_CLIBS,
12580         NAT_GENERATED_FILES, HAVE_NATIVE_GCORE_HOST.  Add
12581         "@nat_extra_makefile_frag@".
12582         (Makefile): Remove dependency on "@frags@".
12583         ($(GNULIB_BUILDDIR)/Makefile): Likewise.
12584         (data-directory/Makefile): Likewise.
12585         * config/aarch64/linux.mh: Deleted; moved contents to
12586         "gdb/configure.nat".
12587         * config/alpha/alpha-linux.mh: Likewise.
12588         * config/alpha/nbsd.mh: Likewise.
12589         * config/arm/linux.mh: Likewise.
12590         * config/arm/nbsdelf.mh: Likewise.
12591         * config/i386/cygwin.mh: Likewise.
12592         * config/i386/cygwin64.mh: Likewise.
12593         * config/i386/darwin.mh: Likewise.
12594         * config/i386/fbsd.mh: Likewise.
12595         * config/i386/fbsd64.mh: Likewise.
12596         * config/i386/go32.mh: Likewise.
12597         * config/i386/i386gnu.mh: Likewise.
12598         * config/i386/i386sol2.mh: Likewise.
12599         * config/i386/linux.mh: Likewise.
12600         * config/i386/linux64.mh: Likewise.
12601         * config/i386/mingw.mh: Likewise.
12602         * config/i386/mingw64.mh: Likewise.
12603         * config/i386/nbsd64.mh: Likewise.
12604         * config/i386/nbsdelf.mh: Likewise.
12605         * config/i386/nto.mh: Likewise.
12606         * config/i386/obsd.mh: Likewise.
12607         * config/i386/obsd64.mh: Likewise.
12608         * config/i386/sol2-64.mh: Likewise.
12609         * config/ia64/linux.mh: Likewise.
12610         * config/m32r/linux.mh: Likewise.
12611         * config/m68k/linux.mh: Likewise.
12612         * config/m68k/nbsdelf.mh: Likewise.
12613         * config/m68k/obsd.mh: Likewise.
12614         * config/m88k/obsd.mh: Likewise.
12615         * config/mips/fbsd.mh: Likewise.
12616         * config/mips/linux.mh: Likewise.
12617         * config/mips/nbsd.mh: Likewise.
12618         * config/mips/obsd64.mh: Likewise.
12619         * config/pa/linux.mh: Likewise.
12620         * config/pa/nbsd.mh: Likewise.
12621         * config/pa/obsd.mh: Likewise.
12622         * config/powerpc/aix.mh: Likewise.
12623         * config/powerpc/fbsd.mh: Likewise.
12624         * config/powerpc/linux.mh: Likewise.
12625         * config/powerpc/nbsd.mh: Likewise.
12626         * config/powerpc/obsd.mh: Likewise.
12627         * config/powerpc/ppc64-linux.mh: Likewise.
12628         * config/powerpc/spu-linux.mh: Likewise.
12629         * config/s390/linux.mh: Likewise.
12630         * config/sh/nbsd.mh: Likewise.
12631         * config/sparc/fbsd.mh: Likewise.
12632         * config/sparc/linux.mh: Likewise.
12633         * config/sparc/linux64.mh: Likewise.
12634         * config/sparc/nbsd64.mh: Likewise.
12635         * config/sparc/nbsdelf.mh: Likewise.
12636         * config/sparc/obsd64.mh: Likewise.
12637         * config/sparc/sol2.mh: Likewise.
12638         * config/tilegx/linux.mh: Likewise.
12639         * config/vax/nbsdelf.mh: Likewise.
12640         * config/vax/obsd.mh: Likewise.
12641         * config/xtensa/linux.mh: Likewise.
12642         * config/i386/i386gnu.mn: New file, with excerpts from
12643         "config/i386/i386gnu.mh".
12644         * configure: Regenerate.
12645         * configure.ac: Rewrite code to use "gdb/configure.nat" instead of
12646         *.mh files under "gdb/config".
12647         * configure.nat: New file, with contents from the
12648         "gdb/config/*/*.mh" files.
12649
12650 2017-05-05  Tim Wiederhake  <tim.wiederhake@intel.com>
12651
12652         * btrace.c (btrace_clear): Free insn vector.
12653
12654 2017-05-05  Pedro Alves  <palves@redhat.com>
12655
12656         * warning.m4 (build_warnings): Add -Wno-error=maybe-uninitialized.
12657         * configure: Regenerate.
12658
12659 2017-05-04  Pedro Alves  <palves@redhat.com>
12660
12661         * Makefile.in (SFILES): Add progspace-and-thread.c.
12662         (HFILES_NO_SRCDIR): Add progspace-and-thread.h.
12663         (COMMON_OBS): Add progspace-and-thread.o.
12664         * breakpoint.c: Include "progspace-and-thread.h".
12665         (update_inserted_breakpoint_locations)
12666         (insert_breakpoint_locations, create_longjmp_master_breakpoint):
12667         Use scoped_restore_current_pspace_and_thread.
12668         (create_std_terminate_master_breakpoint): Use
12669         scoped_restore_current_program_space.
12670         (remove_breakpoint): Use scoped_restore_current_pspace_and_thread.
12671         (print_breakpoint_location): Use
12672         scoped_restore_current_program_space.
12673         (bp_loc_is_permanent): Use
12674         scoped_restore_current_pspace_and_thread.
12675         (resolve_sal_pc): Use scoped_restore_current_pspace_and_thread.
12676         (download_tracepoint_locations): Use
12677         scoped_restore_current_pspace_and_thread.
12678         (breakpoint_re_set): Use scoped_restore_current_pspace_and_thread.
12679         * exec.c (exec_close_1): Use scoped_restore_current_program_space.
12680         (enum step_over_calls_kind): Moved from inferior.h.
12681         (class scoped_restore_current_thread): New class.
12682         * gdbthread.h (make_cleanup_restore_current_thread): Delete
12683         declaration.
12684         (scoped_restore_current_thread): New class.
12685         * infcmd.c: Include "common/gdb_optional.h".
12686         (continue_1, proceed_after_attach): Use
12687         scoped_restore_current_thread.
12688         (notice_new_inferior): Use scoped_restore_current_thread.
12689         * inferior.c: Include "progspace-and-thread.h".
12690         (restore_inferior, save_current_inferior): Delete.
12691         (add_inferior_command, clone_inferior_command): Use
12692         scoped_restore_current_pspace_and_thread.
12693         * inferior.h (scoped_restore_current_inferior): New class.
12694         * infrun.c: Include "progspace-and-thread.h" and
12695         "common/gdb_optional.h".
12696         (follow_fork_inferior): Use
12697         scoped_restore_current_pspace_and_thread.
12698         (scoped_restore_exited_inferior): New class.
12699         (handle_vfork_child_exec_or_exit): Use
12700         scoped_restore_exited_inferior,
12701         scoped_restore_current_pspace_and_thread,
12702         scoped_restore_current_thread and scoped_restore.
12703         (fetch_inferior_event): Use scoped_restore_current_thread.
12704         * linespec.c (decode_line_full, decode_line_1): Use
12705         scoped_restore_current_program_space.
12706         * mi/mi-main.c: Include "progspace-and-thread.h".
12707         (exec_continue): Use scoped_restore_current_thread.
12708         (mi_cmd_exec_run): Use scoped_restore_current_pspace_and_thread.
12709         (mi_cmd_trace_frame_collected): Use scoped_restore_current_thread.
12710         * proc-service.c (ps_pglobal_lookup): Use
12711         scoped_restore_current_program_space.
12712         * progspace-and-thread.c: New file.
12713         * progspace-and-thread.h: New file.
12714         * progspace.c (release_program_space, clone_program_space): Use
12715         scoped_restore_current_program_space.
12716         (restore_program_space, save_current_program_space)
12717         (save_current_space_and_thread): Delete.
12718         (switch_to_program_space_and_thread): Moved to
12719         progspace-and-thread.c.
12720         * progspace.h (save_current_program_space)
12721         (save_current_space_and_thread): Delete declarations.
12722         (scoped_restore_current_program_space): New class.
12723         * remote.c (remote_btrace_maybe_reopen): Use
12724         scoped_restore_current_thread.
12725         * symtab.c: Include "progspace-and-thread.h".
12726         (skip_prologue_sal): Use scoped_restore_current_pspace_and_thread.
12727         * thread.c (print_thread_info_1): Use
12728         scoped_restore_current_thread.
12729         (struct current_thread_cleanup): Delete.
12730         (do_restore_current_thread_cleanup)
12731         (restore_current_thread_cleanup_dtor): Rename/convert both to ...
12732         (scoped_restore_current_thread::~scoped_restore_current_thread):
12733         ... this new dtor.
12734         (make_cleanup_restore_current_thread): Rename/convert to ...
12735         (scoped_restore_current_thread::scoped_restore_current_thread):
12736         ... this new ctor.
12737         (thread_apply_all_command): Use scoped_restore_current_thread.
12738         (thread_apply_command): Use scoped_restore_current_thread.
12739         * tracepoint.c (tdump_command): Use scoped_restore_current_thread.
12740         * varobj.c (value_of_root_1): Use scoped_restore_current_thread.
12741
12742 2017-05-04  Pedro Alves  <palves@redhat.com>
12743
12744         * thread.c (make_cleanup_restore_current_thread): Move
12745         find_thread_ptid call before the is_stopped call.  Assert that the
12746         thread is found.  Replace is_stopped call by checking the thread's
12747         state directly.  Remove unnecessary NULL-thread check.
12748
12749 2017-05-04  Pedro Alves  <palves@redhat.com>
12750
12751         * corelow.c (thread_section_name): New class.
12752         (get_core_register_section, get_core_siginfo): Use it.
12753
12754 2017-05-04  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12755
12756         * corelow.c (sniff_core_bfd): Remove extra semicolon.
12757         (get_core_register_section): Remove xfree of NULL pointer.
12758
12759 2017-05-03  Alan Hayward  <alan.hayward@arm.com>
12760
12761         * frv-linux-tdep.c (frv_linux_supply_gregset): Use raw_supply_zeroed.
12762         * regcache.c (regcache::raw_supply_zeroed): New function.
12763         * regcache.h (regcache::raw_supply_zeroed): New declaration.
12764
12765 2017-05-03  Simon Marchi  <simon.marchi@ericsson.com>
12766
12767         * gdbarch.sh: Remove commented out definition of
12768         TARGET_CHAR_BIT.
12769         * gdbarch.h: Re-generate.
12770
12771 2017-05-03  Sergio Durigan Junior  <sergiodj@redhat.com>
12772
12773         * configure: Regenerate.
12774
12775 2017-05-02  Simon Marchi  <simon.marchi@ericsson.com>
12776
12777         * solib-target.c (solib_target_relocate_section_addresses):
12778         Remove num_section_bases, num_bases, segment_bases variables.
12779
12780 2017-05-02  Simon Marchi  <simon.marchi@polymtl.ca>
12781
12782         * common/gdb_vecs.h (DEF_VEC_I (CORE_ADDR)): Remove.
12783
12784 2017-05-02  Simon Marchi  <simon.marchi@polymtl.ca>
12785
12786         * solib-target.c: Include <vector>
12787         (struct lm_info_target) <~lm_info_target>: Remove.
12788         <segment_bases, section_bases>: Change type to
12789         std::vector<CORE_ADDR>.
12790         (library_list_start_segment, library_list_start_section,
12791         library_list_end_library,
12792         solib_target_relocate_section_addresses): Adjust.
12793
12794 2017-05-02  Simon Marchi  <simon.marchi@polymtl.ca>
12795
12796         * gdbarch.sh (software_single_step): Change return type to
12797         std::vector<CORE_ADDR>.
12798         * gdbarch.c, gdbarch.h: Re-generate.
12799         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw):
12800         Adjust.
12801         (arm_deal_with_atomic_sequence_raw): Adjust.
12802         (thumb_get_next_pcs_raw): Adjust.
12803         (arm_get_next_pcs_raw): Adjust.
12804         (arm_get_next_pcs): Adjust.
12805         * arch/arm-get-next-pcs.h (arm_get_next_pcs): Adjust.
12806         * aarch64-tdep.c (aarch64_software_single_step): Adjust.
12807         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Adjust.
12808         (alpha_software_single_step): Adjust.
12809         * alpha-tdep.h (alpha_software_single_step): Adjust.
12810         * arm-linux-tdep.c (arm_linux_software_single_step): Adjust.
12811         * arm-tdep.c (arm_software_single_step): Adjust.
12812         (arm_breakpoint_kind_from_current_state): Adjust.
12813         * arm-tdep.h (arm_software_single_step): Adjust.
12814         * breakpoint.c (insert_single_step_breakpoint): Adjust.
12815         * cris-tdep.c (cris_software_single_step): Adjust.
12816         * mips-tdep.c (mips_deal_with_atomic_sequence): Adjust.
12817         (micromips_deal_with_atomic_sequence): Adjust.
12818         (deal_with_atomic_sequence): Adjust.
12819         (mips_software_single_step): Adjust.
12820         * mips-tdep.h (mips_software_single_step): Adjust.
12821         * moxie-tdep.c (moxie_software_single_step): Adjust.
12822         * nios2-tdep.c (nios2_software_single_step): Adjust.
12823         * ppc-tdep.h (ppc_deal_with_atomic_sequence): Adjust.
12824         * rs6000-aix-tdep.c (rs6000_software_single_step): Adjust.
12825         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Adjust.
12826         * s390-linux-tdep.c (s390_software_single_step): Adjust.
12827         * sparc-tdep.c (sparc_software_single_step): Adjust.
12828         * spu-tdep.c (spu_software_single_step): Adjust.
12829         * tic6x-tdep.c (tic6x_software_single_step): Adjust.
12830
12831 2017-05-02  Simon Marchi  <simon.marchi@polymtl.ca>
12832
12833         * gdbarch.sh: Use semi-colon as field separator instead of colon.
12834         * gdbarch.h: Re-generate.
12835
12836 2017-05-01  Tim Wiederhake  <tim.wiederhake@intel.com>
12837
12838         * Makefile.in (SUBDIR_PYTHON_OBS): Add py-instruction.o.
12839         (SUBDIR_PYTHON_SRCS): Add py-instruction.c.
12840         * python/py-instruction.c, python/py-instruction.h: New file.
12841         * python/py-record.c: Add py-instruction.h include.
12842         (gdbpy_initialize_record): Make gdb.Instruction a super class of
12843         gdb.RecordInstruction.
12844         * python/python-internal.h: Add gdbpy_initialize_instruction
12845         declaration.
12846         * python/python.c (do_start_initialization): Add
12847         gdbpy_initialize_instruction.
12848
12849 2017-05-01  Tim Wiederhake  <tim.wiederhake@intel.com>
12850
12851         * python/py-record-btrace.c (BTPY_REQUIRE_VALID_CALL, btpy_call_type):
12852         Remove.
12853         (btrace_func_from_recpy_func): New function.
12854         (btpy_call_new, btpy_number, btpy_hash, btpy_richcompare): Remove.
12855         (btpy_call_level, btpy_call_symbol, btpy_call_instructions,
12856         btpy_call_up, btpy_call_prev_sibling, btpy_call_next_sibling): Rename to ...
12857         (recpy_bt_func_level, recpy_bt_func_symbol, recpy_bt_func_instructions,
12858         recpy_bt_func_up, recpy_bt_func_prev, recpy_bt_func_next): This.
12859         Also, use new helper functions.
12860         (btpy_list_item): Use new helper functions.
12861         (recpy_bt_function_call_history): Use new type name.
12862         (btpy_call_getset): Remove.
12863         (gdbpy_initialize_btrace): Remove code to initialize
12864         gdb.BtraceFunctionCall.
12865         * python/py-record-btrace.h (recpy_bt_func_number, recpy_btb_func_level,
12866         recpy_btb_func_symbol, recpy_bt_func_instructions, recpy_bt_func_up,
12867         recpy_bt_func_prev, recpy_bt_func_next): New export.
12868         * python/py-record.c (recpy_func_type): New static object.
12869         (recpy_func_new, recpy_func_level, recpy_func_symbol,
12870         recpy_func_instructions, recpy_func_up, recpy_func_prev,
12871         recpy_func_next): New function.
12872         (recpy_element_hash, recpy_element_richcompare): Updated comment.
12873         (recpy_func_getset): New static object.
12874         (gdbpy_initialize_record): Add code to initialize gdb.RecordInstruction.
12875         * python/py-record.h (recpy_func_type, recpy_func_new): New export.
12876
12877 2017-05-01  Tim Wiederhake  <tim.wiederhake@intel.com>
12878
12879         * python/py-record-btrace.c (BTPY_REQUIRE_VALID_INSN): Remove.
12880         (btpy_object, btpy_insn_type, btpy_new): Remove.
12881         (btpy_list_object): Use gdb.RecordInstruction type instead of
12882         gdb.BtraceInstruction type.
12883         (btrace_insn_from_recpy_insn): New function.
12884         (btpy_insn_or_gap_new): Adjust comment. Use recpy_insn_new instead of
12885         btpy_new.
12886         (btpy_call_new, btpy_list_item): Do not use btpy_new anymore.
12887         (btpy_number, btpy_hash, btpy_call_level, btpy_call_symbol,
12888         btpy_call_instructions, btpy_call_up, btpy_call_prev_sibling,
12889         btpy_call_next_sibling, btpy_richcompare): Use recpy_element_object
12890         instead of btpy_object.
12891         (btpy_insn_sal, btpy_insn_pc, btpy_insn_size, btpy_insn_is_speculative,
12892         btpy_insn_data, btpy_insn_decode): Rename to ...
12893         (recpy_bt_insn_sal, recpy_bt_insn_pc, recpy_bt_insn_size,
12894         recpy_bt_insn_is_speculative, recpy_bt_insn_data,
12895         recpy_bt_insn_decode): This.  Also, use new helper functions.
12896         (btpy_list_position, recpy_bt_goto): Use recpy_element_object and
12897         recpy_insn_type.
12898         (btpy_insn_getset): Remove.
12899         (gdbpy_initialize_btrace): Remove code to initialize
12900         gdb.BtraceInstruction.  Use recpy_element_object.
12901         * python/py-record-btrace.h (recpy_bt_insn_number, recpy_bt_insn_sal,
12902         recpy_bt_insn_pc, recpy_bt_insn_data, recpy_bt_insn_decoded,
12903         recpy_bt_insn_size, recpy_bt_insn_is_speculative): New export.
12904         * python/py-record.c (recpy_insn_type): New static object.
12905         (recpy_insn_new, recpy_insn_sal, recpy_insn_pc, recpy_insn_data,
12906         recpy_insn_decoded, recpy_insn_size, recpy_insn_is_speculative,
12907         recpy_element_number, recpy_element_hash, recpy_element_richcompare):
12908         New function.
12909         (recpy_insn_getset): New static object.
12910         (gdbpy_initialize_record): Initialize gdb.RecordInstruction.
12911         * python/py-record.h (recpy_element_object): New typedef.
12912         (recpy_insn_type, recpy_insn_new): New export.
12913
12914 2017-05-01  Tim Wiederhake  <tim.wiederhake@intel.com>
12915
12916         * py-record-btrace.c (btpy_insn_new): Removed.
12917         (btpy_insn_or_gap_new): New function.
12918         (btpy_insn_error): Removed.
12919         (btpy_insn_sal, btpy_insn_pc, btpy_insn_size, btpy_insn_is_speculative,
12920         btpy_insn_data, btpy_insn_decode): Remove code path for gaps.
12921         (recpy_bt_replay_position, recpy_bt_begin, recpy_bt_end): Call
12922         btpy_insn_or_gap_new instead of btpy_insn_new.
12923         (btpy_insn_getset): Remove btpy_insn_error.
12924         * py-record.c (recpy_gap_type): New static object.
12925         (recpy_gap_object): New typedef.
12926         (recpy_gap_new, recpy_gap_number, recpy_gap_reason_code,
12927         recpy_gap_reason_string): New function.
12928         (recpy_gap_getset): New static object.
12929         (gdbpy_initialize_record): Initialize gdb.RecordGap type.
12930         * py-record.h (recpy_gap_new): New export.
12931
12932 2017-05-01  Tim Wiederhake  <tim.wiederhake@intel.com>
12933
12934         * python/py-record.c (recpy_ptid): Remove.
12935         (recpy_record_getset): Remove recpy_ptid.
12936
12937 2017-05-01  Tim Wiederhake  <tim.wiederhake@intel.com>
12938
12939         * btrace.c (btrace_fetch): Set inferior_ptid.
12940         * python/py-record-btrace.c: Add "py-record.h" include.
12941         (recpy_bt_format, recpy_bt_replay_position, recpy_bt_begin,
12942         recpy_bt_end, recpy_bt_instruction_history,
12943         recpy_bt_function_call_history, recpy_bt_goto): Use ptid stored
12944         in gdb.Record object instead of current ptid.
12945         * python/py-record.c: Include new "py-record.h" file.
12946         (recpy_record_object): Moved to py-record.h.
12947         * python/py-record.h: New file.
12948
12949 2017-05-01  Tim Wiederhake  <tim.wiederhake@intel.com>
12950
12951         * python/py-record-btrace.c (BTPY_REQUIRE_VALID_INSN,
12952         BTPY_REQUIRE_VALID_CALL, recpy_bt_function_call_history): Fix
12953         indentation.
12954
12955 2017-05-01  Joel Brobecker  <brobecker@adacore.com>
12956
12957         * MAINTAINERS: Move Daniel Jacobowitz and Mark Kettenis to
12958         the past maintainers section.
12959
12960 2017-04-28  Yao Qi  <yao.qi@linaro.org>
12961
12962         * infcmd.c (get_return_value): Use regcache ctor, and remove
12963         cleanup.
12964
12965 2017-04-28  Yao Qi  <yao.qi@linaro.org>
12966             Pedro Alves  <palves@redhat.com>
12967
12968         * regcache.c (regcache::regcache): New tag dispatch ctor.
12969         (do_cooked_read): Moved above.
12970         (regcache_dup): Use the tag dispatch ctor..
12971         * regcache.h (regcache): Declare ctor, delete copy ctor and
12972         assignment operator, remove friend regcache_dup.
12973
12974 2017-04-28  Yao Qi  <yao.qi@linaro.org>
12975
12976         * regcache.c (regcache_dup): Assert !src->m_readonly_p and
12977         call method save instead of regcache_cpy.
12978         * regcache.h (struct regcache): Make regcache_dup a friend.
12979
12980 2017-04-28  Yao Qi  <yao.qi@linaro.org>
12981
12982         * regcache.c (struct regcache): Move to regcache.h
12983         (regcache::arch): New method.
12984         (regcache_get_ptid): Update.
12985         (get_regcache_arch): Call arch method.
12986         (get_regcache_aspace): Call method aspace.
12987         (register_buffer): Change it to method.
12988         (regcache_save): Change it to regcache::save.
12989         (regcache_restore): Likewise.
12990         (regcache_cpy_no_passthrough): Remove the declaration.
12991         (regcache_cpy): Call methods restore and cpy_no_passthrough.
12992         (regcache_cpy_no_passthrough): Change it to method
12993         cpy_no_passthrough.
12994         (regcache_register_status): Change it to method
12995         get_register_status.
12996         (regcache_invalidate): Change it to method invalidate.
12997         (regcache_thread_ptid_changed): Use methods ptid and set_ptid.
12998         (regcache_raw_update): Change it to method raw_update.
12999         (regcache_raw_read): Likewise.
13000         (regcache_raw_read_signed): Likewise.
13001         (regcache_raw_read_unsigned): Likewise.
13002         (regcache_raw_write_signed): Likewise.
13003         (regcache_raw_write_unsigned): Likewise.
13004         (regcache_cooked_read): Likewise.
13005         (regcache_cooked_read_value): Likewise.
13006         (regcache_cooked_read_signed): Likewise.
13007         (regcache_cooked_read_unsigned): Likewise.
13008         (regcache_cooked_write_signed): Likewise.
13009         (regcache_cooked_write_unsigned): Likewise.
13010         (regcache_raw_set_cached_value): Likewise.
13011         (regcache_raw_write): Likewise.
13012         (regcache_cooked_write): Likewise.
13013         (regcache_xfer_part): Likewise.
13014         (regcache_raw_read_part): Likewise.
13015         (regcache_raw_write_part): Likewise.
13016         (regcache_cooked_read_part): Likewise.
13017         (regcache_cooked_write_part): Likewise.
13018         (regcache_raw_supply): Likewise.
13019         (regcache_raw_collect): Likewise.
13020         (regcache_transfer_regset): Likewise.
13021         (regcache_supply_regset): Likewise.
13022         (regcache_collect_regset): Likewise.
13023         (regcache_debug_print_register): Likewise.
13024         (enum regcache_dump_what): Move it to regcache.h.
13025         (regcache_dump): Change it to method dump.
13026         * regcache.h (enum regcache_dump_what): New.
13027         (class regcache): New.
13028         * target.c (target_fetch_registers): Call method
13029         debug_print_register.
13030         (target_store_registers): Likewise.
13031
13032 2017-04-28  Simon Marchi  <simon.marchi@ericsson.com>
13033
13034         * windows-nat.c (struct lm_info_windows): Initialize field.
13035         (windows_make_so): Allocate lm_info_windows with new.
13036         (windows_free_so): Free lm_info_windows with delete.
13037
13038 2017-04-28  Simon Marchi  <simon.marchi@ericsson.com>
13039
13040         * solib-darwin.c (struct lm_info_darwin): Initialize field.
13041         (darwin_current_sos): Allocate lm_info_darwin with new, remove
13042         cleanup.
13043         (darwin_free_so): Free lm_info_darwin with delete.
13044
13045 2017-04-28  Simon Marchi  <simon.marchi@ericsson.com>
13046
13047         * solib-svr4.h (struct lm_info_svr4): Initialize fields.
13048         <l_addr_p>: Change type to bool.
13049         * solib-svr4.c (lm_info_read): Allocate lm_info_svr4 with new.
13050         (svr4_free_so): Free lm_info_svr4 with delete.
13051         (svr4_copy_library_list): Replace memcpy with call to copy
13052         constructor.
13053         (library_list_start_library, svr4_default_sos): Allocate
13054         lm_info_svr4 with new.
13055
13056 2017-04-28  Simon Marchi  <simon.marchi@ericsson.com>
13057
13058         * solib-target.c (struct lm_info_target): Add destructor,
13059         initialize fields.
13060         <name>: Change type to std::string.
13061         (library_list_start_library): Allocate lm_info_target with new.
13062         (solib_target_free_library_list): Free lm_info_target with
13063         delete.
13064         (solib_target_current_sos): Adapt to std::string.
13065         (solib_target_free_so): Free lm_info_target with delete.
13066
13067 2017-04-28  Simon Marchi  <simon.marchi@ericsson.com>
13068
13069         * solib-frv.c (struct lm_info_frv): Add destructor, initialize
13070         fields.
13071         (frv_current_sos): Allocate lm_info_frv with new.
13072         (frv_relocate_main_executable): Free lm_info_frv with delete,
13073         allocate with new.
13074         (frv_clear_solib, frv_free_so): Free lm_info_frv with delete.
13075
13076 2017-04-28  Simon Marchi  <simon.marchi@ericsson.com>
13077
13078         * solib-frv.c (struct lm_info_frv): Fix indentation.
13079
13080 2017-04-28  Simon Marchi  <simon.marchi@ericsson.com>
13081
13082         * solib-dsbt.c (struct lm_info_dsbt): Add destructor, initialize
13083         map field.
13084         (dsbt_current_sos): Allocate lm_info_dsbt with new.
13085         (dsbt_relocate_main_executable): Free lm_info_dsbt with delete
13086         and allocate with new.
13087         (dsbt_clear_solib, dsbt_free_so): Free lm_info_dsbt with delete.
13088
13089 2017-04-28  Simon Marchi  <simon.marchi@ericsson.com>
13090
13091         * solib-aix.c (struct lm_info_aix): Initialize fields in-class.
13092         <filename, member_name>: Change type to std::string.
13093         (solib_aix_new_lm_info, solib_aix_xfree_lm_info): Remove.
13094         (library_list_start_library): Allocate lm_info_aix with new.
13095         (solib_aix_free_library_list, solib_aix_free_so): Free with delete.
13096         (solib_aix_current_sos): Adapt to std::string, copy lm_info_aix
13097         with copy constructor.
13098
13099 2017-04-28  Simon Marchi  <simon.marchi@ericsson.com>
13100
13101         * solist.h (struct lm_info): Remove.
13102         (struct lm_info_base): New class.
13103         (struct so_list) <lm_info>: Change type to lm_info_base *.
13104         * nto-tdep.c (struct lm_info): Remove.
13105         (lm_addr): Adjust.
13106         * solib-aix.c (struct lm_info): Rename to ...
13107         (struct lm_info_aix): ... this.  Extend lm_info_base.
13108         (lm_info_p): Rename to ...
13109         (lm_info_aix_p): ... this, and adjust.
13110         (solib_aix_new_lm_info, solib_aix_xfree_lm_info,
13111         solib_aix_parse_libraries, library_list_start_library,
13112         solib_aix_free_library_list, solib_aix_parse_libraries,
13113         solib_aix_get_library_list,
13114         solib_aix_relocate_section_addresses, solib_aix_free_so,
13115         solib_aix_get_section_offsets,
13116         solib_aix_solib_create_inferior_hook, solib_aix_current_sos):
13117         Adjust.
13118         (struct solib_aix_inferior_data) <library_list>: Adjust.
13119         * solib-darwin.c (struct lm_info): Rename to ...
13120         (struct lm_info_darwin): ... this.  Extend lm_info_base.
13121         (darwin_current_sos, darwin_relocate_section_addresses): Adjust.
13122         * solib-dsbt.c (struct lm_info): Rename to ...
13123         (struct lm_info_dsbt): ... this.  Extend lm_info_base.
13124         (struct dsbt_info) <main_executable_lm_info): Adjust.
13125         (dsbt_current_sos, dsbt_relocate_main_executable, dsbt_free_so,
13126         dsbt_relocate_section_addresses): Adjust.
13127         * solib-frv.c (struct lm_info): Rename to ...
13128         (struct lm_info_frv): ... this.  Extend lm_info_base.
13129         (main_executable_lm_info): Adjust.
13130         (frv_current_sos, frv_relocate_main_executable, frv_free_so,
13131         frv_relocate_section_addresses, frv_fdpic_find_global_pointer,
13132         find_canonical_descriptor_in_load_object,
13133         frv_fdpic_find_canonical_descriptor): Adjust.
13134         * solib-svr4.c (struct lm_info): Move to solib-svr4.h, renamed
13135         to lm_info_svr4.
13136         (lm_info_read, lm_addr_check, svr4_keep_data_in_core,
13137         svr4_clear_so, svr4_copy_library_list,
13138         library_list_start_library, svr4_default_sos, svr4_read_so_list,
13139         svr4_current_sos, svr4_fetch_objfile_link_map,
13140         solist_update_incremental): Adjust.
13141         * solib-svr4.h (struct lm_info_svr4): Move here from
13142         solib-svr4.c.
13143         * solib-target.c (struct lm_info): Rename to ...
13144         (struct lm_info_target): ... this.  Extend lm_info_base.
13145         (lm_info_p): Rename to ...
13146         (lm_info_target_p): ... this.
13147         (solib_target_parse_libraries, library_list_start_segment,
13148         library_list_start_section, library_list_start_library,
13149         library_list_end_library, solib_target_free_library_list,
13150         solib_target_current_sos, solib_target_free_so,
13151         solib_target_relocate_section_addresses): Adjust.
13152         * windows-nat.c (struct lm_info): Rename to ...
13153         (struct lm_info_windows): ... this.  Extend lm_info_base.
13154         (windows_make_so, handle_load_dll, handle_unload_dll,
13155         windows_xfer_shared_libraries): Adjust.
13156
13157 2017-04-28  Simon Marchi  <simon.marchi@ericsson.com>
13158
13159         * solib-darwin.c (struct darwin_so_list): Remove.
13160         (darwin_current_sos): Allocate an so_list object instead of a
13161         darwin_so_list, separately allocate an lm_info object.
13162         (darwin_free_so): Free lm_info.
13163
13164 2017-04-28  John Baldwin  <jhb@FreeBSD.org>
13165
13166         * mips-tdep.c (print_gp_register_row): Replace printf_filtered
13167         with fprintf_filtered.
13168
13169 2017-04-28  Yao Qi  <yao.qi@linaro.org>
13170
13171         * regcache.c (regcache::regcache): New function.
13172         (regcache::~regcache): New function.
13173         (regcache_xmalloc_1): Remove.
13174         (regcache_xmalloc): Call new regcache.
13175         (regcache_xfree): Call delete regcache.
13176         (get_thread_arch_aspace_regcache): Call new regcache.
13177
13178 2017-04-28  Yao Qi  <yao.qi@linaro.org>
13179
13180         * mips-linux-nat.c (mips_linux_new_thread): Use ptid method
13181         lwp instead of ptid_get_lwp.
13182
13183 2017-04-28  Yao Qi  <yao.qi@linaro.org>
13184
13185         * mips-linux-nat.c (mips_linux_new_thread): Get lwpid from
13186         lwp_info instead of getting from inferior_ptid.
13187
13188 2017-04-27  Keith Seitz  <keiths@redhat.com>
13189
13190         * gdbtypes.c (LVALUE_REFERENCE_TO_RVALUE_BINDING_BADNESS)
13191         DIFFERENT_REFERENCE_TYPE_BADNESS): Remove.
13192         (CV_CONVERSION_BADNESS): Define.
13193         (rank_one_type): Remove overly restrictive rvalue reference
13194         rank checks.
13195         Add cv-qualifier checks and subranks for type equality.
13196         * gdbtypes.h (REFERENCE_CONVERSION_RVALUE,
13197         REFERENCE_CONVERSION_CONST_LVALUE, CV_CONVERSION_BADNESS,
13198         CV_CONVERSION_CONST, CV_CONVERSION_VOLATILE): Declare.
13199
13200 2017-04-27  Simon Marchi  <simon.marchi@ericsson.com>
13201
13202         * python/py-inferior.c (inferior_to_inferior_object): Increment reference
13203         count when creating the object.
13204
13205 2017-04-27  Sangamesh Mallayya  <sangamesh.swamy@in.ibm.com>
13206             Ulrich Weigand  <uweigand@de.ibm.com>
13207
13208         * xcoffread.c (read_xcoff_symtab): Read correct function auxiliary
13209         entry if xlc -qfuncsect or gcc -ffunction-sections compiler option
13210         is used in AIX.
13211         (read_xcoff_symtab): Handle C_WEAKEXT storage class.
13212         (process_xcoff_symbol): Likewise.
13213         (scan_xcoff_symtab): Likewise.
13214
13215 2017-04-26  Alan Hayward  <alan.hayward@arm.com>
13216
13217         * ia64-tdep.c (examine_prologue): Use get_frame_register_unsigned.
13218         (ia64_sigtramp_frame_prev_register): Use read_memory_unsigned_integer.
13219         (ia64_access_reg): Use get_frame_register_unsigned.
13220         (ia64_access_rse_reg): Likewise.
13221         (ia64_libunwind_frame_prev_register): Likewise.
13222
13223 2017-04-26  Jiong Wang  <jiong.wang@arm.com>
13224
13225         * gdbarch.sh: New gdbarch method execute_dwarf_cfa_vendor_op.
13226         * gdbarch.c: Regenerated.
13227         * gdbarch.h: Regenerated.
13228         * dwarf2-frame.c (dwarf2_frame_state_alloc_regs): Made the
13229         visibility external.
13230         (execute_cfa_program): Call execute_dwarf_cfa_vendor_op for CFI
13231         between DW_CFA_lo_user and DW_CFA_high_user inclusive.
13232         (enum cfa_how_kind): Move to ...
13233         (struct dwarf2_frame_state_reg_info): Likewise.
13234         (struct dwarf2_frame_state): Likewise.
13235         * dwarf2-frame.h: ... here.
13236         (dwarf2_frame_state_alloc_regs): New declaration.
13237         * sparc-tdep.c (sparc_execute_dwarf_cfa_vendor_op): New function.
13238         (sparc32_gdbarch_init): Register execute_dwarf_cfa_vendor_op hook.
13239
13240 2017-04-26  Alan Hayward  <alan.hayward@arm.com>
13241
13242         * xtensa-tdep.c (xtensa_pseudo_register_read): Use
13243         regcache_raw_read_unsigned.
13244         (xtensa_pseudo_register_write): Likewise.
13245
13246 2017-04-26  Alan Hayward  <alan.hayward@arm.com>
13247
13248         * nds32-tdep.c (nds32_pseudo_register_read): Abort on errors.
13249         (nds32_pseudo_register_write): Likewise.
13250
13251 2017-04-25  Yao Qi  <yao.qi@linaro.org>
13252
13253         * regcache.c (struct regcache) <readonly_p>: Change its type
13254         to bool.
13255         (regcache_xmalloc_1): Update parameter type and callers update.
13256
13257 2017-04-25  Yao Qi  <yao.qi@linaro.org>
13258
13259         * aarch64-tdep.c (aarch64_gdbarch_init): Don't call
13260         set_gdbarch_wchar_bit.
13261         * arm-tdep.c (arm_gdbarch_init): Likewise.
13262
13263 2017-04-25  Pedro Alves  <palves@redhat.com>
13264
13265         * common/poison.h [!HAVE_IS_TRIVIALLY_COPYABLE] (IsRelocatable)
13266         (BothAreRelocatable, memcopy, memmove): Don't define.
13267         * common/traits.h (__has_feature, HAVE_IS_TRIVIALLY_COPYABLE): New
13268         macros.
13269
13270 2017-04-25  Pedro Alves  <palves@redhat.com>
13271
13272         * common/common-defs.h: Include "common/poison.h".
13273         * common/function-view.h: (Not, Or, Requires): Move to traits.h
13274         and adjust.
13275         * common/poison.h: New file.
13276         * common/traits.h: Include <type_traits>.
13277         (Not, Or, Requires): New, moved from common/function-view.h.
13278
13279 2017-04-25  Pedro Alves  <palves@redhat.com>
13280
13281         * breakpoint.h (struct breakpoint): In-class initialize all
13282         fields.  Make boolean fields "bool".
13283         * breakpoint.c (init_raw_breakpoint_without_location): Remove
13284         memset call and initializations no longer necessary.
13285
13286 2017-04-25  Pedro Alves  <palves@redhat.com>
13287
13288         * btrace.c (pt_btrace_insn_flags): Change parameter type to
13289         reference.
13290         (pt_btrace_insn): New function.
13291         (ftrace_add_pt): Remove memset call and use pt_btrace_insn.
13292
13293 2017-04-25  Pedro Alves  <palves@redhat.com>
13294
13295         * ada-lang.c (ada_catchpoint_location): Now a "class".  Remove
13296         "base" field and inherit from "bp_location" instead.  Add
13297         non-default ctor.
13298         (allocate_location_exception): Use new non-default ctor.
13299         * breakpoint.c (get_first_locp_gte_addr): Remove memset call.
13300         (init_bp_location): Convert to ...
13301         (bp_location::bp_location): ... this new ctor, and remove memset
13302         call.
13303         (base_breakpoint_allocate_location): Use the new non-default ctor.
13304         * breakpoint.h (bp_location): Now a class.  Declare default and
13305         non-default ctors.  In-class initialize all members.
13306         (init_bp_location): Remove declaration.
13307
13308 2017-04-25  Pedro Alves  <palves@redhat.com>
13309
13310         * common/enum-flags.h (enum_flags): Don't implement copy ctor and
13311         assignment operator.
13312
13313 2017-04-24  Yao Qi  <yao.qi@linaro.org>
13314
13315         * doublest.c (convert_doublest_to_floatformat): Call
13316         floatformat_totalsize_bytes.
13317
13318 2017-04-22  Tom Tromey  <tom@tromey.com>
13319
13320         * mi/mi-cmd-file.c (mi_cmd_file_list_shared_libraries): Use
13321         ui_out_emit_list.
13322         * stack.c (print_frame): Use ui_out_emit_list.
13323         * mi/mi-symbol-cmds.c (mi_cmd_symbol_list_lines): Use
13324         ui_out_emit_list.
13325         * mi/mi-main.c (print_one_inferior)
13326         (mi_cmd_data_list_register_names)
13327         (mi_cmd_data_list_register_values, mi_cmd_list_features)
13328         (mi_cmd_list_target_features, mi_cmd_trace_frame_collected): Use
13329         ui_out_emit_list.
13330         * mi/mi-interp.c (mi_on_normal_stop_1): Use ui_out_emit_list.
13331         (mi_output_solib_attribs): Use ui_out_emit_list,
13332         ui_out_emit_tuple.
13333         * mi/mi-cmd-var.c (varobj_update_one): Use ui_out_emit_list.
13334         * mi/mi-cmd-stack.c (mi_cmd_stack_list_frames)
13335         (mi_cmd_stack_list_args, list_args_or_locals): Use
13336         ui_out_emit_list.
13337         * disasm.c (do_assembly_only): Use ui_out_emit_list.
13338         * breakpoint.c (print_solib_event, output_thread_groups): Use
13339         ui_out_emit_list.
13340
13341 2017-04-22  Tom Tromey  <tom@tromey.com>
13342
13343         * mi/mi-main.c (print_variable_or_computed): Use ui_out_emit_tuple.
13344         * mi/mi-cmd-var.c (varobj_update_one): Use ui_out_emit_tuple.
13345         * mi/mi-cmd-stack.c (list_arg_or_local): Use ui_out_emit_tuple.
13346
13347 2017-04-22  Tom Tromey  <tom@tromey.com>
13348
13349         * tracepoint.c (tvariables_info_1)
13350         (print_one_static_tracepoint_marker): Use ui_out_emit_tuple.
13351
13352 2017-04-22  Tom Tromey  <tom@tromey.com>
13353
13354         * stack.c (print_frame_arg): Use ui_out_emit_tuple,
13355         annotate_arg_emitter.
13356         * breakpoint.c (print_mention_watchpoint)
13357         (print_mention_masked_watchpoint): Use ui_out_emit_tuple.
13358         * annotate.h (struct annotate_arg_emitter): New.
13359
13360 2017-04-22  Tom Tromey  <tom@tromey.com>
13361
13362         * record-btrace.c (record_btrace_insn_history)
13363         (record_btrace_insn_history_range, record_btrace_call_history)
13364         (record_btrace_call_history_range): Use ui_out_emit_tuple.
13365         * thread.c (do_captured_list_thread_ids, print_thread_info_1): Use
13366         ui_out_emit_tuple.
13367         * stack.c (print_frame_info): Use ui_out_emit_tuple.
13368         * solib.c (info_sharedlibrary_command): Use ui_out_emit_tuple.
13369         * skip.c (skip_info): Use ui_out_emit_tuple.
13370         * remote.c (show_remote_cmd): Use ui_out_emit_tuple.
13371         * progspace.c (print_program_space): Use ui_out_emit_tuple.
13372         * probe.c (info_probes_for_ops): Use ui_out_emit_tuple.
13373         * osdata.c (info_osdata): Use ui_out_emit_tuple.
13374         * mi/mi-symbol-cmds.c (mi_cmd_symbol_list_lines): Use
13375         ui_out_emit_tuple.
13376         * mi/mi-main.c (print_one_inferior, list_available_thread_groups)
13377         (output_register, mi_cmd_data_read_memory)
13378         (mi_cmd_data_read_memory_bytes, mi_load_progress)
13379         (mi_cmd_trace_frame_collected): Use ui_out_emit_tuple.
13380         * mi/mi-cmd-var.c (mi_cmd_var_list_children, varobj_update_one):
13381         Use ui_out_emit_tuple.
13382         * mi/mi-cmd-stack.c (mi_cmd_stack_list_args): Use
13383         ui_out_emit_tuple.
13384         * mi/mi-cmd-info.c (mi_cmd_info_ada_exceptions)
13385         (mi_cmd_info_gdb_mi_command): Use ui_out_emit_tuple.
13386         * linux-thread-db.c (info_auto_load_libthread_db): Use
13387         ui_out_emit_tuple.
13388         * inferior.c (print_inferior): Use ui_out_emit_tuple.
13389         * gdb_bfd.c (print_one_bfd): Use ui_out_emit_tuple.
13390         * disasm.c (do_mixed_source_and_assembly_deprecated)
13391         (do_mixed_source_and_assembly): Use ui_out_emit_tuple.
13392         * cp-abi.c (list_cp_abis): Use ui_out_emit_tuple.
13393         * cli/cli-setshow.c (cmd_show_list): Use ui_out_emit_tuple.
13394         * breakpoint.c (print_one_breakpoint_location)
13395         (print_one_breakpoint): Use ui_out_emit_tuple.
13396         * auto-load.c (print_script, info_auto_load_cmd): Use
13397         ui_out_emit_tuple.
13398         * ada-tasks.c (print_ada_task_info): Use ui_out_emit_tuple.
13399
13400 2017-04-21  Simon Marchi  <simon.marchi@ericsson.com>
13401
13402         * thread.c (print_thread_info_1): Remove dead code.
13403
13404 2017-04-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
13405
13406         * aarch64-tdep.c (selftests::aarch64_process_record_test): Make it #if
13407         GDB_SELF_TEST.
13408         * arm-tdep.c (selftests::arm_record_test): Likewise.
13409
13410 2017-04-21  Yao Qi  <yao.qi@linaro.org>
13411
13412         * regcache.c (regcache_restore): Remove argument 2.  Replace
13413         argument 3 with regcache.  Get register status from
13414         src->register_status and get register contents from
13415         register_buffer (src, regnum).
13416         (regcache_cpy): Update.
13417
13418 2017-04-19  Pedro Alves  <palves@redhat.com>
13419
13420         * gdbthread.h (thread): Add missing closing parenthesis in
13421         comment.
13422
13423 2017-04-19  Pedro Alves  <palves@redhat.com>
13424
13425         * common/refcounted-object.h: New file.
13426         * gdbthread.h: Include "common/refcounted-object.h".
13427         (thread_info): Inherit from refcounted_object and add comments.
13428         (thread_info::incref, thread_info::decref)
13429         (thread_info::m_refcount): Delete.
13430         (thread_info::deletable): Use the refcounted_object::refcount()
13431         method.
13432         * inferior.c (current_inferior_): Add comment.
13433         (set_current_inferior): Increment/decrement refcounts.
13434         (prune_inferiors, remove_inferior_command): Skip inferiors marked
13435         not-deletable instead of comparing with the current inferior.
13436         (initialize_inferiors): Increment the initial inferior's refcount.
13437         * inferior.h (struct inferior): Forward declare.
13438         Include "common/refcounted-object.h".
13439         (current_inferior, set_current_inferior): Move declaration to
13440         before struct inferior's definition, and fix comment.
13441         (inferior): Inherit from refcounted_object.  Add comments.
13442         * thread.c (switch_to_thread_no_regs): Reference the thread's
13443         inferior pointer directly instead of doing a ptid lookup.
13444         (switch_to_no_thread): New function.
13445         (switch_to_thread(thread_info *)): New function, factored out
13446         from ...
13447         (switch_to_thread(ptid_t)): ... this.
13448         (restore_current_thread): Delete.
13449         (current_thread_cleanup): Remove 'inf_id' and 'was_removable'
13450         fields, and add 'inf' field.
13451         (do_restore_current_thread_cleanup): Check whether old->inf is
13452         alive instead of looking up an inferior by ptid.  Use
13453         switch_to_thread and switch_to_no_thread.
13454         (restore_current_thread_cleanup_dtor): Use old->inf directly
13455         instead of lookup up an inferior by id.  Decref the inferior.
13456         Don't restore 'removable'.
13457         (make_cleanup_restore_current_thread): Same the inferior pointer
13458         in old, instead of the inferior number.  Incref the inferior.
13459         Don't save/clear 'removable'.
13460
13461 2017-04-19  Pedro Alves  <palves@redhat.com>
13462
13463         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13464         unittests/scoped_restore-selftests.c.
13465         (SUBDIR_UNITTESTS_OBS): Add scoped_restore-selftests.o.
13466         * common/scoped_restore.h (scoped_restore_base): Make "class".
13467         (scoped_restore_base::release): New public method.
13468         (scoped_restore_base::scoped_restore_base): New protected ctor.
13469         (scoped_restore_base::m_saved_var): New protected field.
13470         (scoped_restore_tmpl::scoped_restore_tmpl(T*)): Initialize the
13471         scoped_restore_base base class instead of m_saved_var directly.
13472         (scoped_restore_tmpl::scoped_restore_tmpl(T*, T2)): Likewise.
13473         (scoped_restore_tmpl::scoped_restore_tmpl(const
13474         scoped_restore_tmpl<T>&)): Likewise.
13475         (scoped_restore_tmpl::~scoped_restore_tmpl): Use the saved_var
13476         method.
13477         (scoped_restore_tmpl::saved_var): New method.
13478         (scoped_restore_tmpl::m_saved_var): Delete.
13479         * inferior.h (inferior::detaching): Now a bool.
13480         * infrun.c (prepare_for_detach): Use a scoped_restore instead of a
13481         cleanup.
13482         * unittests/scoped_restore-selftests.c: New file.
13483
13484 2017-04-19  Pedro Alves  <palves@redhat.com>
13485
13486         * Makefile.in (SUBDIR_UNITTESTS_SRCS, SUBDIR_UNITTESTS_OBS):
13487         Re-sort in alphabetic order.
13488
13489 2017-04-18  Pedro Alves  <palves@redhat.com>
13490
13491         * xml-support.c (obstack_xml_printf): Delete.
13492         * xml-support.h (obstack_xml_printf): Delete.
13493
13494 2017-04-18  Pedro Alves  <palves@redhat.com>
13495
13496         * xml-support.c (gdb_xml_parser) <use_dtd, dtd_name, parse,
13497         vdebug, verror, body_text, start_element, end_element, name,
13498         user_data, set_is_xinclude, set_error, expat_parser>: New methods.
13499         <name, user_data, expat_parser, scopes, error, last_line, dtd_name,
13500         is_xinclude>: Make private and add m_ prefix.
13501         (gdb_xml_parser::body_text): New method, based on ...
13502         (gdb_xml_body_text): ... this.  Adjust.
13503         (gdb_xml_parser::vdebug): New method, based on ...
13504         (gdb_xml_debug): ... this.  Adjust.
13505         (gdb_xml_parser::verror): New method, based on ...
13506         (gdb_xml_error): ... this.  Adjust.
13507         (gdb_xml_parser::start_element): New method, based on ...
13508         (gdb_xml_start_element): ... this.  Adjust.
13509         (gdb_xml_start_element_wrapper): Defer to
13510         gdb_xml_parser::start_element and gdb_xml_parser::set_error.
13511         (gdb_xml_parser::end_element): New method, based on ...
13512         (gdb_xml_end_element_wrapper): ... this.  Adjust.
13513         (gdb_xml_parser::~gdb_xml_parser): Adjust.
13514         (gdb_xml_parser::gdb_xml_parser): Adjust to field renames.
13515         (gdb_xml_parser::use_dtd): New method, based on ...
13516         (gdb_xml_use_dtd): ... this.  Adjust.
13517         (gdb_xml_parser::parse): New method, based on ...
13518         (gdb_xml_parse): ... this.  Adjust.
13519         (gdb_xml_parse_quick): Adjust to call the parser's parse method.
13520         (xinclude_start_include): Adjust to call the parser's name method.
13521         (xml_xinclude_default, xml_xinclude_start_doctype)
13522         (xml_xinclude_end_doctype): Adjust to call the parser's user_data
13523         method.
13524         (xml_process_xincludes): Adjust to call parser methods.
13525         * xml-support.h (gdb_xml_use_dtd, gdb_xml_parse): Delete
13526         declarations.
13527
13528 2017-04-18  Pedro Alves  <palves@redhat.com>
13529
13530         * tracefile-tfile.c (tfile_write_tdesc): Adjust to use
13531         gdb::optional<std::string>.
13532         * xml-support.c: Include <string>.
13533         (scope_level::scope_level(scope_level &&))
13534         (scope_level::~scope_level): Delete.
13535         (scope_level::body): Now a std::string.
13536         (gdb_xml_body_text, gdb_xml_end_element): Adjust.
13537         (xinclude_parsing_data::xinclude_parsing_data): Add 'output'
13538         parameter.
13539         (xinclude_parsing_data::~xinclude_parsing_data): Delete.
13540         (xinclude_parsing_data::output): Now a std::string reference.
13541         (xinclude_start_include): Adjust.
13542         (xml_xinclude_default): Adjust.
13543         (xml_process_xincludes): Add 'output' parameter, and return bool.
13544         * xml-support.h (xml_process_xincludes): Add 'output' parameter,
13545         and return bool.
13546         * xml-tdesc.c: Include <unordered_map> and <string>.
13547         (tdesc_xml_cache): Delete.
13548         (tdesc_xml_cache_s): Delete.
13549         (xml_cache): Now an std::unordered_map.
13550         (tdesc_parse_xml): Adjust to use std::string and unordered_map.
13551         (target_fetch_description_xml): Change return type to
13552         gdb::optional<std::string>, and adjust.
13553         * xml-tdesc.h: Include "common/gdb_optional.h" and <string>.
13554         (target_fetch_description_xml): Change return type to
13555         gdb::optional<std::string>.
13556
13557 2017-04-18  Pedro Alves  <palves@redhat.com>
13558
13559         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13560         unittests/optional-selftests.c.
13561         (SUBDIR_UNITTESTS_OBS): Add optional-selftests.o.
13562         * unittests/optional-selftests.c: New file.
13563         * unittests/optional/assignment/1.cc: New file.
13564         * unittests/optional/assignment/2.cc: New file.
13565         * unittests/optional/assignment/3.cc: New file.
13566         * unittests/optional/assignment/4.cc: New file.
13567         * unittests/optional/assignment/5.cc: New file.
13568         * unittests/optional/assignment/6.cc: New file.
13569         * unittests/optional/assignment/7.cc: New file.
13570         * unittests/optional/cons/copy.cc: New file.
13571         * unittests/optional/cons/default.cc: New file.
13572         * unittests/optional/cons/move.cc: New file.
13573         * unittests/optional/cons/value.cc: New file.
13574         * unittests/optional/in_place.cc: New file.
13575         * unittests/optional/observers/1.cc: New file.
13576         * unittests/optional/observers/2.cc: New file.
13577
13578 2017-04-18  Pedro Alves  <palves@redhat.com>
13579
13580         * common/gdb_optional.h: Include common/traits.h.
13581         (in_place_t): New type.
13582         (in_place): New constexpr variable.
13583         (optional::optional): Remove member initialization of
13584         m_instantiated.
13585         (optional::optional(in_place_t...)): New constructor.
13586         (optional::~optional): Use reset.
13587         (optional::optional(const optional&)): New.
13588         (optional::optional(const optional&&)): New.
13589         (optional::optional(T &)): New.
13590         (optional::optional(T &&)): New.
13591         (operator::operator=(const optional &)): New.
13592         (operator::operator=(optional &&)): New.
13593         (operator::operator= (const T &))
13594         (operator::operator= (T &&))
13595         (operator::emplace (Args &&... args)): Return a T&.  Use reset.
13596         (operator::reset): New.
13597         (operator::m_instantiated):: Add in-class initializer.
13598         * common/traits.h: Include <type_traits>.
13599         (struct And): New types.
13600
13601 2017-04-18  Pedro Alves  <palves@redhat.com>
13602
13603         * xml-support.c: Include <vector>.
13604         (scope_level::scope_level(const gdb_xml_element *))
13605         (scope_level::scope_level(scope_level&&)): New.
13606         (scope_level::~scope_level): New.
13607         (scope_level_s): Delete.
13608         (gdb_xml_parser::scopes): Now a std::vector.
13609         (gdb_xml_body_text, gdb_xml_start_element, gdb_xml_end_element):
13610         Use std::vector.
13611         (gdb_xml_parser::~gdb_xml_parser): Remove now unnecessary
13612         scope cleanup code.
13613         (gdb_xml_parser::gdb_xml_parser): Remove explicit initialization
13614         of the scopes member.  Use std::vector::emplace_back.
13615
13616 2017-04-18  Pedro Alves  <palves@redhat.com>
13617
13618         * xml-support.c (gdb_xml_parser): Add ctor/dtor.  Make is_xinclude
13619         a bool.
13620         (gdb_xml_end_element): Change type of first parameter.
13621         (gdb_xml_cleanup): Rename to ...
13622         (gdb_xml_parser::~gdb_xml_parser): ... this.
13623         (gdb_xml_create_parser_and_cleanup): Delete with ...
13624         (gdb_xml_parser::gdb_xml_parser): ... creation parts factored out
13625         to this new ctor.
13626         (gdb_xml_parse_quick): Create a local gdb_xml_parser instead of
13627         using gdb_xml_create_parser_and_cleanup.
13628         (xinclude_parsing_data): Add ctor/dtor.
13629         (xml_xinclude_cleanup): Delete.
13630         (xml_process_xincludes): Create a local xinclude_parsing_data
13631         instead of heap-allocating one.  Create a local gdb_xml_parser
13632         instead of heap-allocating one with
13633         gdb_xml_create_parser_and_cleanup.
13634
13635 2017-04-18  John Baldwin  <jhb@FreeBSD.org>
13636
13637         PR threads/20743
13638         * fbsd-nat.c (resume_one_thread_cb): Remove.
13639         (resume_all_threads_cb): Remove.
13640         (fbsd_resume): Use ALL_NON_EXITED_THREADS instead of
13641         iterate_over_threads.
13642
13643 2017-04-17  Joel Brobecker  <brobecker@adacore.com>
13644
13645         * NEWS: Create a new section for the next release branch.
13646         Rename the section of the current branch, now that it has
13647         been cut.
13648
13649 2017-04-17  Joel Brobecker  <brobecker@adacore.com>
13650
13651         GDB 8.0 branch created (725bf5cf125783c2a7ca4ab63d3768e220bab2db):
13652         * version.in: Bump version to 8.0.50.DATE-git.
13653
13654 2017-04-13  Sergio Durigan Junior  <sergiodj@redhat.com>
13655
13656         PR gdb/21385
13657         * windows-nat.c (windows_create_inferior): Declare 'allargs'
13658         independently of the host, and fix build breakage on Cygwin.
13659
13660 2017-04-13  Pedro Alves  <palves@redhat.com>
13661
13662         * inferior.c (free_inferior): Convert to ...
13663         (inferior::~inferior): ... this dtor.
13664         (inferior::inferior): New ctor, factored out from ...
13665         (add_inferior_silent): ... here.  Allocate the inferior with a new
13666         expression.
13667         (delete_inferior): Call delete instead of free_inferior.
13668         * inferior.h (gdb_environ, continuation): Forward declare.
13669         (inferior): Now a class.  Add in-class initialization to all
13670         members.  Make boolean fields bool, except 'detaching'.
13671         (inferior::inferior): New explicit ctor.
13672         (inferior::~inferior): New.
13673
13674 2017-04-13  Pedro Alves  <palves@redhat.com>
13675
13676         * inferior.c (init_inferior_list): Delete.
13677         * inferior.h (init_inferior_list): Delete.
13678
13679 2017-04-13  Pedro Alves  <palves@redhat.com>
13680
13681         PR threads/13217
13682         * gdb.threads/threadapply.exp (thr_apply_detach): New procedure.
13683         (top level): Call it twice, with different thread sets.
13684
13685 2017-04-13  Pedro Alves  <palves@redhat.com>
13686
13687         * thread.c: Include <algorithm>.
13688         (thread_array_cleanup): Delete.
13689         (scoped_inc_dec_ref): New class.
13690         (live_threads_count): New function.
13691         (set_thread_refcount): Delete.
13692         (tp_array_compar_ascending): Now a bool.
13693         (tp_array_compar): Convert to a std::sort comparison function.
13694         (thread_apply_all_command): Use std::vector and scoped_inc_dec_ref
13695         and live_threads_count.
13696
13697 2017-04-13  Pedro Alves  <palves@redhat.com>
13698
13699         * infrun.c (follow_fork_inferior): Also switch the current
13700         inferior.
13701
13702 2017-04-13  Pedro Alves  <palves@redhat.com>
13703
13704         * breakpoint.c (watch_command_1): Save watchpoint-frame info
13705         before calling create_internal_breakpoint.
13706
13707 2017-04-13  Pedro Alves  <palves@redhat.com>
13708
13709         * fork-child.c (execv_argv): New class.
13710         (breakup_args): Refactored as ...
13711         (execv_argv::init_for_no_shell): .. this method of execv_argv.
13712         Copy arguments to storage and replace separators with NULL
13713         terminators in place.
13714         (escape_bang_in_quoted_argument): Adjust to return bool.
13715         (execv_argv::execv_argv): New ctor.
13716         (execv_argv::init_for_shell): New method, factored out from
13717         fork_inferior.  Don't strdup strings into the vector.
13718         (fork_inferior): Eliminate "shell" local and use execv_argv.  Use
13719         Remove free_vector_argv call.
13720
13721 2017-04-13  Yao Qi  <yao.qi@linaro.org>
13722
13723         * rx-tdep.c (rx_fpsw_type): Check tdep->rx_fpsw_type instead of
13724         tdep->rx_psw_type.
13725
13726 2017-04-13  Yao Qi  <yao.qi@linaro.org>
13727
13728         * rl78-tdep.c (rl78_gdbarch_init): Use XCNEW instead of XNEW.
13729         * rx-tdep.c (rx_gdbarch_init): Likewise.
13730
13731 2017-04-13  Pedro Alves  <palves@redhat.com>
13732
13733         * breakpoint.h (struct breakpoint): Reindent.
13734
13735 2017-04-13  Pedro Alves  <palves@redhat.com>
13736
13737         * breakpoint.c (bp_location): Rename to ...
13738         (bp_locations): ... this.  All references updated.
13739         (bp_location_count): Rename to ...
13740         (bp_locations_count): ... this.  All references updated.
13741         (bp_location_placed_address_before_address_max): Rename to ...
13742         (bp_locations_placed_address_before_address_max): ... this.  All
13743         references updated.
13744         (bp_location_shadow_len_after_address_max): Rename to ...
13745         (bp_locations_shadow_len_after_address_max): ... this.  All
13746         references updated.
13747         (bp_location_compare_addrs): Rename to ...
13748         (bp_locations_compare_addrs): ... this.  All references updated.
13749         (bp_location_compare):Rename to ...
13750         (bp_locations_compare): ... this.  All references updated.
13751         (bp_location_target_extensions_update): Rename to ...
13752         (bp_locations_target_extensions_update): ... this.  All references
13753         updated.
13754
13755 2017-04-12  Sergio Durigan Junior  <sergiodj@redhat.com>
13756
13757         * Makefile.in (HFILES_NO_SRCDIR): Add "common/gdb_termios.h".
13758         * common/common.m4: Check headers 'termios.h', 'termio.h' and
13759         'sgtty.h'.
13760         * common/gdb_termios.h: New file, with parts of "terminal.h".
13761         * inflow.c: Include "gdb_termios.h".
13762         * ser-unix.c: Include "gdb_termios.h".
13763         * terminal.h: Move terminal-related defines to
13764         "common/gdb_termios.h".
13765
13766 2017-04-12  Tom Tromey  <tom@tromey.com>
13767
13768         * probe.c (parse_probes): Update.
13769         * location.h (delete_event_location): Don't declare.
13770         (event_location_deleter::operator()): Update.
13771         * location.c (event_location_deleter::operator()): Rename from
13772         delete_event_location.
13773         * linespec.h (linespec_result) <location>: Change type to
13774         event_location_up.
13775         * linespec.c (canonicalize_linespec, event_location_to_sals)
13776         (decode_objc): Update.
13777         (linespec_result): Don't call delete_event_location.
13778         * breakpoint.c (create_breakpoints_sal)
13779         (bkpt_probe_create_sals_from_location)
13780         (strace_marker_create_sals_from_location): Update.
13781
13782 2017-04-12  Tom Tromey  <tom@tromey.com>
13783
13784         * linespec.h (struct linespec_result): Add constructor and
13785         destructor.
13786         (init_linespec_result, destroy_linespec_result)
13787         (make_cleanup_destroy_linespec_result): Don't declare.
13788         * linespec.c (init_linespec_result): Remove.
13789         (linespec_result::~linespec_result): Rename from
13790         destroy_linespec_result.  Update.
13791         (cleanup_linespec_result, make_cleanup_destroy_linespec_result):
13792         Remove.
13793         * breakpoint.c (create_breakpoint, break_range_command)
13794         (decode_location_default): Update.
13795         * ax-gdb.c (agent_command_1): Update.
13796
13797 2017-04-12  Tom Tromey  <tom@tromey.com>
13798
13799         * remote.c (remote_download_tracepoint): Update.
13800         * python/py-breakpoint.c (bppy_get_location): Update.
13801         * guile/scm-breakpoint.c (bpscm_print_breakpoint_smob)
13802         (gdbscm_breakpoint_location): Update.
13803         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Update.
13804         * breakpoint.h (struct breakpoint) <location, location_range_end>:
13805         Change type to event_location_up.
13806         * breakpoint.c (create_overlay_event_breakpoint)
13807         (create_longjmp_master_breakpoint)
13808         (create_std_terminate_master_breakpoint)
13809         (create_exception_master_breakpoint)
13810         (breakpoint_event_location_empty_p, print_breakpoint_location)
13811         (print_one_breakpoint_location, create_thread_event_breakpoint)
13812         (init_breakpoint_sal, create_breakpoint)
13813         (print_recreate_ranged_breakpoint, break_range_command)
13814         (init_ada_exception_breakpoint, say_where): Update.
13815         (base_breakpoint_dtor): Don't call delete_event_location.
13816         (bkpt_print_recreate, tracepoint_print_recreate)
13817         (dprintf_print_recreate, update_static_tracepoint)
13818         (breakpoint_re_set_default): Update.
13819
13820 2017-04-12  Tom Tromey  <tom@tromey.com>
13821
13822         * compile/compile-loc2c.c (compute_stack_depth_worker): Change
13823         type of "to_do".  Update.
13824         (compute_stack_depth): Use std::vector.
13825
13826 2017-04-12  Tom Tromey  <tom@tromey.com>
13827
13828         * printcmd.c (find_instruction_backward): Use std::vector.
13829
13830 2017-04-12  Tom Tromey  <tom@tromey.com>
13831
13832         * symfile.c (objfilep): Remove typedef.
13833         (reread_symbols): Use a std::vector.
13834
13835 2017-04-12  Tom Tromey  <tom@tromey.com>
13836
13837         * mi/mi-main.c (exec_direction_forward): Remove.
13838         (exec_reverse_continue, mi_execute_command): Use scoped_restore.
13839         * guile/scm-ports.c (ioscm_with_output_to_port_worker): Use
13840         scoped_restore.
13841         * guile/guile.c (guile_repl_command, guile_command)
13842         (gdbscm_execute_gdb_command): Use scoped_restore.
13843         * go-exp.y (go_parse): Use scoped_restore.
13844         * d-exp.y (d_parse): Use scoped_restore.
13845         * cli/cli-decode.c (cmd_func): Use scoped_restore.
13846         * c-exp.y (c_parse): Use scoped_restore.
13847
13848 2017-04-12  Tom Tromey  <tom@tromey.com>
13849
13850         * mi/mi-parse.h (struct mi_parse): Add constructor, destructor.
13851         (mi_parse): Update return type.
13852         (mi_parse_free): Remove.
13853         * mi/mi-parse.c (mi_parse::mi_parse): New constructor.
13854         (mi_parse::~mi_parse): Rename from mi_parse_free.
13855         (mi_parse_cleanup): Remove.
13856         (mi_parse): Return a unique_ptr.  Use new.
13857         * mi/mi-main.c (mi_execute_command): Update.
13858
13859 2017-04-12  Tom Tromey  <tom@tromey.com>
13860
13861         * location.c (explicit_location_lex_one): Return a
13862         unique_xmalloc_ptr.
13863         (string_to_explicit_location): Update.  Remove cleanups.
13864
13865 2017-04-12  Tom Tromey  <tom@tromey.com>
13866
13867         * gnu-v3-abi.c (value_and_voffset_p): Remove typedef.
13868         (compare_value_and_voffset): Change type.  Update.
13869         (compute_vtable_size): Change type of "offset_vec".
13870         (gnuv3_print_vtable): Use std::vector.  Remove cleanups.
13871         (gnuv3_get_typeid): Remove extraneous declaration.
13872
13873 2017-04-12  Tom Tromey  <tom@tromey.com>
13874
13875         * charset.h (wchar_iterator): Fix comment.
13876
13877 2017-04-12  Tom Tromey  <tom@tromey.com>
13878
13879         * charset.c (iconv_wrapper): New class.
13880         (cleanup_iconv): Remove.
13881         (convert_between_encodings): Use it.
13882
13883 2017-04-12  Tom Tromey  <tom@tromey.com>
13884
13885         * symfile.h (increment_reading_symtab): Update type.
13886         * symfile.c (decrement_reading_symtab): Remove.
13887         (increment_reading_symtab): Return a scoped_restore_tmpl<int>.
13888         * psymtab.c (psymtab_to_symtab): Update.
13889         * dwarf2read.c (dw2_instantiate_symtab): Update.
13890
13891 2017-04-12  Tom Tromey  <tom@tromey.com>
13892
13893         * jit.c (struct jit_reader): Declare separately.  Add constructor
13894         and destructor.  Change type of "handle".
13895         (loaded_jit_reader): Define separately.
13896         (jit_reader_load): Update.  New "new".
13897         (jit_reader_unload_command): Use "delete".
13898         * gdb-dlfcn.h (struct dlclose_deleter): New.
13899         (gdb_dlhandle_up): New typedef.
13900         (gdb_dlopen, gdb_dlsym): Update types.
13901         (gdb_dlclose): Remove.
13902         * gdb-dlfcn.c (gdb_dlopen): Return a gdb_dlhandle_up.
13903         (gdb_dlsym): Change type of "handle".
13904         (make_cleanup_dlclose): Remove.
13905         (dlclose_deleter::operator()): Rename from gdb_dlclose.
13906         * compile/compile-c-support.c (load_libcc): Update.
13907
13908 2017-04-12  Tom Tromey  <tom@tromey.com>
13909
13910         * symtab.h (find_pcs_for_symtab_line): Change return type.
13911         * symtab.c (find_pcs_for_symtab_line): Change return type.
13912         * python/py-linetable.c (build_line_table_tuple_from_pcs): Change
13913         type of "vec".  Update.
13914         (ltpy_get_pcs_for_line): Update.
13915         * linespec.c (decode_digits_ordinary): Update.
13916
13917 2017-04-12  Tom Tromey  <tom@tromey.com>
13918
13919         * tracepoint.c (actions_command): Update.
13920         * python/python.c (python_command, python_interactive_command):
13921         Update.
13922         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
13923         * guile/guile.c (guile_command): Update.
13924         * defs.h (read_command_lines, read_command_lines_1): Return
13925         command_line_up.
13926         (command_lines_deleter): New struct.
13927         (command_line_up): New typedef.
13928         * compile/compile.c (compile_code_command)
13929         (compile_print_command): Update.
13930         * cli/cli-script.h (get_command_line, copy_command_lines): Return
13931         command_line_up.
13932         (make_cleanup_free_command_lines): Remove.
13933         * cli/cli-script.c (get_command_line, read_command_lines_1)
13934         (copy_command_lines): Return command_line_up.
13935         (while_command, if_command, read_command_lines, define_command)
13936         (document_command): Update.
13937         (do_free_command_lines_cleanup, make_cleanup_free_command_lines):
13938         Remove.
13939         * breakpoint.h (breakpoint_set_commands): Change type of
13940         "commands".
13941         * breakpoint.c (breakpoint_set_commands): Change type of
13942         "commands".  Update.
13943         (do_map_commands_command, update_dprintf_command_list)
13944         (create_tracepoint_from_upload): Update.
13945
13946 2017-04-12  Tom Tromey  <tom@tromey.com>
13947
13948         * tracepoint.c (scope_info): Update.
13949         * spu-tdep.c (spu_catch_start): Update.
13950         * python/python.c (gdbpy_decode_line): Update.
13951         * python/py-finishbreakpoint.c (bpfinishpy_init): Update.
13952         * python/py-breakpoint.c (bppy_init): Update.
13953         * probe.c (parse_probes): Update.
13954         * mi/mi-cmd-break.c (mi_cmd_break_insert_1): Update.
13955         * location.h (event_location_deleter): New struct.
13956         (event_location_up): New typedef.
13957         (new_linespec_location, new_address_location, new_probe_location)
13958         (new_explicit_location, copy_event_location)
13959         (string_to_event_location, string_to_event_location_basic)
13960         (string_to_explicit_location): Update return type.
13961         (make_cleanup_delete_event_location): Remove.
13962         * location.c (new_linespec_location, new_address_location)
13963         (new_probe_location, new_explicit_location, copy_event_location):
13964         Return event_location_up.
13965         (delete_event_location_cleanup)
13966         (make_cleanup_delete_event_location): Remove.
13967         (string_to_explicit_location, string_to_event_location_basic)
13968         (string_to_event_location): Return event_location_up.
13969         * linespec.c (canonicalize_linespec, event_location_to_sals)
13970         (decode_line_with_current_source)
13971         (decode_line_with_last_displayed, decode_objc): Update.
13972         * guile/scm-breakpoint.c (gdbscm_register_breakpoint_x): Update.
13973         * completer.c (location_completer): Update.
13974         * cli/cli-cmds.c (edit_command, list_command): Update.
13975         * breakpoint.c (create_overlay_event_breakpoint)
13976         (create_longjmp_master_breakpoint)
13977         (create_std_terminate_master_breakpoint)
13978         (create_exception_master_breakpoint)
13979         (create_thread_event_breakpoint): Update.
13980         (init_breakpoint_sal): Update.  Remove some dead code.
13981         (create_breakpoint_sal): Change type of "location".  Update.
13982         (create_breakpoints_sal, create_breakpoint, break_command_1)
13983         (dprintf_command, break_range_command, until_break_command)
13984         (init_ada_exception_breakpoint)
13985         (strace_marker_create_sals_from_location)
13986         (update_static_tracepoint, trace_command, ftrace_command)
13987         (strace_command, create_tracepoint_from_upload): Update.
13988         * break-catch-throw.c (re_set_exception_catchpoint): Update.
13989         * ax-gdb.c (agent_command_1): Update.
13990
13991 2017-04-12  Pedro Alves  <palves@redhat.com>
13992
13993         * Makefile.in (ALL_TARGET_OBS): Add i386-go32-tdep.o.
13994         * configure.tgt: Handle i[34567]86-*-go32* and
13995         i[34567]86-*-msdosdjgpp*.
13996         * i386-tdep.c (i386_svr4_reg_to_regnum):
13997         Make extern.
13998         (i386_go32_init_abi, i386_coff_osabi_sniffer): Moved to
13999         i386-go32-tdep.c.
14000         (_initialize_i386_tdep): DJGPP bits moved to i386-go32-tdep.c.
14001         * i386-go32-tdep.c: New file.
14002         * i386-tdep.h (tdesc_i386_mmx, i386_svr4_reg_to_regnum): New
14003         declarations.
14004
14005 2017-04-12  Simon Marchi  <simon.marchi@ericsson.com>
14006
14007         * aix-thread.c (pd_status2str): Change return type to const char *.
14008
14009 2017-04-12  Pedro Alves  <palves@redhat.com>
14010
14011         * i386-tdep.c (i386_elf_init_abi, i386_go32_init_abi): Remove
14012         calls to set_gdbarch_gnu_triplet_regexp.
14013
14014 2017-04-12  Pedro Alves  <palves@redhat.com>
14015
14016         PR gdb/21323
14017         * c-lang.c (cplus_primitive_types) <cplus_primitive_type_wchar_t>:
14018         New enum value.
14019         (cplus_language_arch_info): Register cplus_primitive_type_wchar_t.
14020         * gdbtypes.h (struct builtin_type) <builtin_wchar>: New field.
14021         * gdbtypes.c (gdbtypes_post_init): Create the "wchar_t" type.
14022         * gdbarch.sh (wchar_bit, wchar_signed): New per-arch values.
14023         * gdbarch.h, gdbarch.c: Regenerate.
14024         * aarch64-tdep.c (aarch64_gdbarch_init): Override
14025         gdbarch_wchar_bit and gdbarch_wchar_signed.
14026         * alpha-tdep.c (alpha_gdbarch_init): Likewise.
14027         * arm-tdep.c (arm_gdbarch_init): Likewise.
14028         * avr-tdep.c (avr_gdbarch_init): Likewise.
14029         * h8300-tdep.c (h8300_gdbarch_init): Likewise.
14030         * i386-nto-tdep.c (i386nto_init_abi): Likewise.
14031         * i386-tdep.c (i386_go32_init_abi): Likewise.
14032         * m32r-tdep.c (m32r_gdbarch_init): Likewise.
14033         * moxie-tdep.c (moxie_gdbarch_init): Likewise.
14034         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
14035         * rs6000-aix-tdep.c (rs6000_aix_init_osabi): Likewise.
14036         * sh-tdep.c (sh_gdbarch_init): Likewise.
14037         * sparc-tdep.c (sparc32_gdbarch_init): Likewise.
14038         * sparc64-tdep.c (sparc64_init_abi): Likewise.
14039         * windows-tdep.c (windows_init_abi): Likewise.
14040         * xstormy16-tdep.c (xstormy16_gdbarch_init): Likewise.
14041
14042 2017-04-12  Pedro Alves  <palves@redhat.com>
14043
14044         PR c++/21323
14045         * c-lang.c (cplus_primitive_types) <cplus_primitive_type_char16_t,
14046         cplus_primitive_type_char32_t>: New enum values.
14047         (cplus_language_arch_info): Register cplus_primitive_type_char16_t
14048         and cplus_primitive_type_char32_t.
14049         * dwarf2read.c (read_base_type) <DW_ATE_UTF>: If bit size is 16 or
14050         32, use the archtecture's built-in type for char16_t and char32_t,
14051         respectively.  Otherwise, fallback to init_integer_type as before,
14052         but make the type unsigned, and issue a complaint.
14053         * gdbtypes.c (gdbtypes_post_init): Make char16_t and char32_t unsigned.
14054
14055 2017-04-12  Alan Hayward  <alan.hayward@arm.com>
14056
14057         * m32r-tdep.c (M32R_ARG_REGISTER_SIZE): Added.
14058         (m32r_push_dummy_call): Use M32R_ARG_REGISTER_SIZE.
14059
14060 2017-04-12  Sergio Durigan Junior  <sergiodj@redhat.com>
14061
14062         * windows-nat.c (windows_create_inferior): Declare 'toexec' as
14063         'const char *'.
14064
14065 2017-04-12  Sergio Durigan Junior  <sergiodj@redhat.com>
14066
14067         * common/common-utils.c (free_vector_argv): New function.
14068         * common/common-utils.h: Include <vector>.
14069         (free_vector_argv): New prototype.
14070         * darwin-nat.c (darwin_create_inferior): Rewrite function
14071         prototype in order to constify "exec_file" and accept a
14072         "std::string" for "allargs".
14073         * fork-child.c: Include <vector>.
14074         (breakup_args): Rewrite function, using C++.
14075         (fork_inferior): Rewrite function header, constify "exec_file_arg"
14076         and accept "std::string" for "allargs".  Update the code to
14077         calculate "argv" based on "allargs".  Update calls to "exec_fun"
14078         and "execvp".
14079         * gnu-nat.c (gnu_create_inferior): Rewrite function prototype in
14080         order to constify "exec_file" and accept a "std::string" for
14081         "allargs".
14082         * go32-nat.c (go32_create_inferior): Likewise.
14083         * inf-ptrace.c (inf_ptrace_create_inferior): Likewise.
14084         * infcmd.c (run_command_1): Constify "exec_file".  Use
14085         "std::string" for inferior arguments.
14086         * inferior.h (fork_inferior): Update prototype.
14087         * linux-nat.c (linux_nat_create_inferior): Rewrite function
14088         prototype in order to constify "exec_file" and accept a
14089         "std::string" for "allargs".
14090         * nto-procfs.c (procfs_create_inferior): Likewise.
14091         * procfs.c (procfs_create_inferior): Likewise.
14092         * remote-sim.c (gdbsim_create_inferior): Likewise.
14093         * remote.c (extended_remote_run): Update code to accept
14094         "std::string" as argument.
14095         (extended_remote_create_inferior): Rewrite function prototype in
14096         order to constify "exec_file" and accept a "std::string" for
14097         "allargs".
14098         * rs6000-nat.c (super_create_inferior): Likewise.
14099         (rs6000_create_inferior): Likewise.
14100         * target.h (struct target_ops) <to_create_inferior>: Likewise.
14101         * windows-nat.c (windows_create_inferior): Likewise.
14102
14103 2017-04-11  Pedro Alves  <palves@redhat.com>
14104
14105         * thread.c: Fix whitespace throughout.
14106
14107 2017-04-11  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14108
14109         * linux-nat.c (linux_nat_detach): Remove delete_lwp call.
14110
14111 2017-04-11  Alan Hayward  <alan.hayward@arm.com>
14112
14113         * arm-tdep.c (arm_store_return_value): Use FP_REGISTER_SIZE
14114
14115 2017-04-10  Sergio Durigan Junior  <sergiodj@redhat.com>
14116
14117         PR gdb/21364
14118         * osdata.c (info_osdata): Check if 'type' is an empty string
14119         instead of NULL.
14120
14121 2017-04-10  Pedro Alves  <palves@redhat.com>
14122
14123         * thread.c (add_thread_silent, delete_thread_1, find_thread_ptid)
14124         (ptid_to_global_thread_id, in_thread_list)
14125         (do_captured_list_thread_ids, set_resumed, set_running)
14126         (set_executing, set_stop_requested, finish_thread_state)
14127         (validate_registers_access, can_access_registers_ptid)
14128         (print_thread_info_1, switch_to_thread)
14129         (do_restore_current_thread_cleanup)
14130         (make_cleanup_restore_current_thread, thread_command)
14131         (thread_name_command): Use operator== instead of ptid_equal.
14132
14133 2017-04-10  Pedro Alves  <palves@redhat.com>
14134
14135         * thread.c (struct current_thread_cleanup) <next>: Delete field.
14136         (current_thread_cleanup_chain): Delete.
14137         (restore_current_thread_cleanup_dtor)
14138         (make_cleanup_restore_current_thread): Remove references to
14139         current_thread_cleanup_chain.
14140
14141 2017-04-10  Alan Hayward  <alan.hayward@arm.com>
14142
14143         * msp430-tdep.c (msp430_pseudo_register_read): Never return
14144         REG_UNKNOWN.
14145
14146 2017-04-10  Yao Qi  <yao.qi@linaro.org>
14147
14148         PR gdb/19942
14149         * gdbthread.h (thread_info::deletable): New method.
14150         (thread_info::incref): New method.
14151         (thread_info::decref): New method.
14152         (thread_info::refcount): Move it to private.
14153         * infrun.c (save_stop_context): Call inc_refcount.
14154         (release_stop_context_cleanup): Likewise.
14155         * thread.c (set_thread_exited): New function.
14156         (init_thread_list): Delete "tp" only it is deletable, otherwise
14157         call set_thread_exited.
14158         (delete_thread_1): Call set_thread_exited.
14159         (current_thread_cleanup) <inferior_pid>: Remove.
14160         <thread>: New field.
14161         (restore_current_thread_ptid_changed): Removed.
14162         (do_restore_current_thread_cleanup): Adjust.
14163         (restore_current_thread_cleanup_dtor): Don't call
14164         find_thread_ptid.
14165         (set_thread_refcount): Use dec_refcount.
14166         (make_cleanup_restore_current_thread): Adjust.
14167         (thread_apply_all_command): Call inc_refcount.
14168         (_initialize_thread): Don't call
14169         observer_attach_thread_ptid_changed.
14170
14171 2017-04-10  Yao Qi  <yao.qi@linaro.org>
14172
14173         * thread.c (delete_thread_1): Hoist code on marking thread as
14174         exited.
14175
14176 2017-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
14177
14178         * windows-nat.c (windows_detach): Initialize ptid with
14179         minus_one_ptid.
14180
14181 2017-04-07  Simon Marchi  <simon.marchi@ericsson.com>
14182
14183         * unittests/ptid-selftests.c: Fix erroneous assert messages.
14184
14185 2017-04-07  Alan Hayward  <alan.hayward@arm.com>
14186
14187         * bfin-tdep.c (BFIN_MAX_REGISTER_SIZE): Add.
14188         (bfin_pseudo_register_read): Use BFIN_MAX_REGISTER_SIZE.
14189         (bfin_pseudo_register_write): Likewise
14190
14191 2017-04-06  Simon Marchi  <simon.marchi@ericsson.com>
14192
14193         * common/ptid.h (struct ptid): Change to...
14194         (class ptid_t): ... this.
14195         <ptid_t>: New constructors.
14196         <pid, lwp_p, lwp, tid_p, tid, is_pid, operator==, operator!=,
14197         matches>: New methods.
14198         <make_null, make_minus_one>: New static methods.
14199         <pid>: Rename to...
14200         <m_pid>: ...this.
14201         <lwp>: Rename to...
14202         <m_lwp>: ...this.
14203         <tid>: Rename to...
14204         <m_tid>: ...this.
14205         (ptid_build, ptid_get_pid, ptid_get_lwp, ptid_get_tid, ptid_equal,
14206         ptid_is_pid, ptid_lwp_p, ptid_tid_p, ptid_match): Take ptid arguments
14207         as references, move comment to class ptid_t.
14208         * common/ptid.c (null_ptid, minus_one_ptid): Initialize with
14209         ptid_t static methods.
14210         (ptid_build, pid_to_ptid, ptid_get_pid, ptid_get_tid,
14211         ptid_equal, ptid_is_pid, ptid_lwp_p, ptid_tid_p, ptid_match):
14212         Take ptid arguments as references, implement using ptid_t methods.
14213         * unittests/ptid-selftests.c: New file.
14214         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14215         unittests/ptid-selftests.c.
14216         (SUBDIR_UNITTESTS_OBS): Add unittests/ptid-selftests.o.
14217
14218 2017-04-06  Thomas Preud'homme  <thomas.preudhomme@arm.com>
14219
14220         * python/python.c (python_run_simple_file): Cast mode literal to
14221         non-const char pointer as expected by PyFile_FromString.
14222
14223 2017-04-05  Simon Marchi  <simon.marchi@ericsson.com>
14224
14225         * common/ptid.c (ptid_lwp_p, ptid_tid_p): Remove comparison with
14226         minus_one_ptid and null_ptid.
14227
14228 2017-04-05  Pedro Alves  <palves@redhat.com>
14229
14230         * warning.m4 (build_warnings): Remove -Wno-write-strings.
14231         * configure: Regenerate.
14232
14233 2017-04-05  Pedro Alves  <palves@redhat.com>
14234
14235         * ada-exp.y (yyerror): Constify.
14236         * ada-lang.c (bound_name, get_selections)
14237         (ada_variant_discrim_type)
14238         (ada_variant_discrim_name, ada_value_struct_elt)
14239         (ada_lookup_struct_elt_type, is_unchecked_variant)
14240         (ada_which_variant_applies, standard_exc, ada_get_next_arg)
14241         (catch_ada_exception_command_split)
14242         (catch_ada_assert_command_split, catch_assert_command)
14243         (ada_op_name): Constify.
14244         * ada-lang.h (ada_yyerror, get_selections)
14245         (ada_variant_discrim_name, ada_value_struct_elt): Constify.
14246         * arc-tdep.c (arc_print_frame_cache): Constify.
14247         * arm-tdep.c (arm_skip_stub): Constify.
14248         * ax-gdb.c (gen_binop, gen_struct_ref_recursive, gen_struct_ref)
14249         (gen_aggregate_elt_ref): Constify.
14250         * bcache.c (print_bcache_statistics): Constify.
14251         * bcache.h (print_bcache_statistics): Constify.
14252         * break-catch-throw.c (catch_exception_command_1):
14253         * breakpoint.c (struct ep_type_description::description):
14254         Constify.
14255         (add_solib_catchpoint): Constify.
14256         (catch_fork_command_1): Add cast.
14257         (add_catch_command): Constify.
14258         * breakpoint.h (add_catch_command, add_solib_catchpoint):
14259         Constify.
14260         * bsd-uthread.c (bsd_uthread_state): Constify.
14261         * buildsym.c (patch_subfile_names): Constify.
14262         * buildsym.h (next_symbol_text_func, patch_subfile_names):
14263         Constify.
14264         * c-exp.y (yyerror): Constify.
14265         (token::oper): Constify.
14266         * c-lang.h (c_yyerror, cp_print_class_member): Constify.
14267         * c-varobj.c (cplus_describe_child): Constify.
14268         * charset.c (find_charset_names): Add cast.
14269         (find_charset_names): Constify array and add const_cast.
14270         * cli/cli-cmds.c (complete_command, cd_command): Constify.
14271         (edit_command): Constify.
14272         * cli/cli-decode.c (lookup_cmd): Constify.
14273         * cli/cli-dump.c (dump_memory_command, dump_value_command):
14274         Constify.
14275         (struct dump_context): Constify.
14276         (add_dump_command, restore_command): Constify.
14277         * cli/cli-script.c (get_command_line): Constify.
14278         * cli/cli-script.h (get_command_line): Constify.
14279         * cli/cli-utils.c (check_for_argument): Constify.
14280         * cli/cli-utils.h (check_for_argument): Constify.
14281         * coff-pe-read.c (struct read_pe_section_data): Constify.
14282         * command.h (lookup_cmd): Constify.
14283         * common/print-utils.c (decimal2str): Constify.
14284         * completer.c (gdb_print_filename): Constify.
14285         * corefile.c (set_gnutarget): Constify.
14286         * cp-name-parser.y (yyerror): Constify.
14287         * cp-valprint.c (cp_print_class_member): Constify.
14288         * cris-tdep.c (cris_register_name, crisv32_register_name):
14289         Constify.
14290         * d-exp.y (yyerror): Constify.
14291         (struct token::oper): Constify.
14292         * d-lang.h (d_yyerror): Constify.
14293         * dbxread.c (struct header_file_location::name): Constify.
14294         (add_old_header_file, add_new_header_file, last_function_name)
14295         (dbx_next_symbol_text, add_bincl_to_list)
14296         (find_corresponding_bincl_psymtab, set_namestring)
14297         (find_stab_function_addr, read_dbx_symtab, start_psymtab)
14298         (dbx_end_psymtab, read_ofile_symtab, process_one_symbol):
14299         * defs.h (command_line_input, print_address_symbolic)
14300         (deprecated_readline_begin_hook): Constify.
14301         * dwarf2read.c (anonymous_struct_prefix, dwarf_bool_name):
14302         Constify.
14303         * event-top.c (handle_line_of_input): Constify and add cast.
14304         * exceptions.c (catch_errors): Constify.
14305         * exceptions.h (catch_errors): Constify.
14306         * expprint.c (print_subexp_standard, op_string, op_name)
14307         (op_name_standard, dump_raw_expression, dump_raw_expression):
14308         * expression.h (op_name, op_string, dump_raw_expression):
14309         Constify.
14310         * f-exp.y (yyerror): Constify.
14311         (struct token::oper): Constify.
14312         (struct f77_boolean_val::name): Constify.
14313         * f-lang.c (f_word_break_characters): Constify.
14314         * f-lang.h (f_yyerror): Constify.
14315         * fork-child.c (fork_inferior): Add cast.
14316         * frv-tdep.c (struct gdbarch_tdep::register_names): Constify.
14317         (new_variant): Constify.
14318         * gdbarch.sh (pstring_ptr, pstring_list): Constify.
14319         * gdbarch.c: Regenerate.
14320         * gdbcore.h (set_gnutarget): Constify.
14321         * go-exp.y (yyerror): Constify.
14322         (token::oper): Constify.
14323         * go-lang.h (go_yyerror): Constify.
14324         * go32-nat.c (go32_sysinfo): Constify.
14325         * guile/scm-breakpoint.c (gdbscm_breakpoint_expression): Constify.
14326         * guile/scm-cmd.c (cmdscm_function): Constify.
14327         * guile/scm-param.c (pascm_param_value): Constify.
14328         * h8300-tdep.c (h8300_register_name, h8300s_register_name)
14329         (h8300sx_register_name): Constify.
14330         * hppa-tdep.c (hppa32_register_name, hppa64_register_name):
14331         Constify.
14332         * ia64-tdep.c (ia64_register_names): Constify.
14333         * infcmd.c (construct_inferior_arguments): Constify.
14334         (path_command, attach_post_wait): Constify.
14335         * language.c (show_range_command, show_case_command)
14336         (unk_lang_error): Constify.
14337         * language.h (language_defn::la_error)
14338         (language_defn::la_name_of_this): Constify.
14339         * linespec.c (decode_line_2): Constify.
14340         * linux-thread-db.c (thread_db_err_str): Constify.
14341         * lm32-tdep.c (lm32_register_name): Constify.
14342         * m2-exp.y (yyerror): Constify.
14343         * m2-lang.h (m2_yyerror): Constify.
14344         * m32r-tdep.c (m32r_register_names): Constify and make static.
14345         * m68hc11-tdep.c (m68hc11_register_names): Constify.
14346         * m88k-tdep.c (m88k_register_name): Constify.
14347         * macroexp.c (appendmem): Constify.
14348         * mdebugread.c (fdr_name, add_data_symbol, parse_type)
14349         (upgrade_type, parse_external, parse_partial_symbols)
14350         (mdebug_next_symbol_text, cross_ref, mylookup_symbol, new_psymtab)
14351         (new_symbol): Constify.
14352         * memattr.c (mem_info_command): Constify.
14353         * mep-tdep.c (register_name_from_keyword): Constify.
14354         * mi/mi-cmd-env.c (mi_cmd_env_path, _initialize_mi_cmd_env):
14355         Constify.
14356         * mi/mi-cmd-stack.c (list_args_or_locals): Constify.
14357         * mi/mi-cmd-var.c (mi_cmd_var_show_attributes): Constify.
14358         * mi/mi-main.c (captured_mi_execute_command): Constify and add
14359         cast.
14360         (mi_execute_async_cli_command): Constify.
14361         * mips-tdep.c (mips_register_name): Constify.
14362         * mn10300-tdep.c (register_name, mn10300_generic_register_name)
14363         (am33_register_name, am33_2_register_name)
14364         * moxie-tdep.c (moxie_register_names): Constify.
14365         * nat/linux-osdata.c (osdata_type): Constify fields.
14366         * nto-tdep.c (nto_parse_redirection): Constify.
14367         * objc-lang.c (lookup_struct_typedef, lookup_objc_class)
14368         (lookup_child_selector): Constify.
14369         (objc_methcall::name): Constify.
14370         * objc-lang.h (lookup_objc_class, lookup_child_selector)
14371         (lookup_struct_typedef): Constify.
14372         * objfiles.c (pc_in_section): Constify.
14373         * objfiles.h (pc_in_section): Constify.
14374         * p-exp.y (struct token::oper): Constify.
14375         (yyerror): Constify.
14376         * p-lang.h (pascal_yyerror): Constify.
14377         * parser-defs.h (op_name_standard): Constify.
14378         (op_print::string): Constify.
14379         (exp_descriptor::op_name): Constify.
14380         * printcmd.c (print_address_symbolic): Constify.
14381         * psymtab.c (print_partial_symbols): Constify.
14382         * python/py-breakpoint.c (stop_func): Constify.
14383         (bppy_get_expression): Constify.
14384         * python/py-cmd.c (cmdpy_completer::name): Constify.
14385         (cmdpy_function): Constify.
14386         * python/py-event.c (evpy_add_attribute)
14387         (gdbpy_initialize_event_generic): Constify.
14388         * python/py-event.h (evpy_add_attribute)
14389         (gdbpy_initialize_event_generic): Constify.
14390         * python/py-evts.c (add_new_registry): Constify.
14391         * python/py-finishbreakpoint.c (outofscope_func): Constify.
14392         * python/py-framefilter.c (get_py_iter_from_func): Constify.
14393         * python/py-inferior.c (get_buffer): Add cast.
14394         * python/py-param.c (parm_constant::name): Constify.
14395         * python/py-unwind.c (fprint_frame_id): Constify.
14396         * python/python.c (gdbpy_parameter_value): Constify.
14397         * remote-fileio.c (remote_fio_func_map): Make 'name' const.
14398         * remote.c (memory_packet_config::name): Constify.
14399         (show_packet_config_cmd, remote_write_bytes)
14400         (remote_buffer_add_string):
14401         * reverse.c (exec_reverse_once): Constify.
14402         * rs6000-tdep.c (variant::name, variant::description): Constify.
14403         * rust-exp.y (rustyyerror): Constify.
14404         * rust-lang.c (rust_op_name): Constify.
14405         * rust-lang.h (rustyyerror): Constify.
14406         * serial.h (serial_ops::name): Constify.
14407         * sh-tdep.c (sh_sh_register_name, sh_sh3_register_name)
14408         (sh_sh3e_register_name, sh_sh2e_register_name)
14409         (sh_sh2a_register_name, sh_sh2a_nofpu_register_name)
14410         (sh_sh_dsp_register_name, sh_sh3_dsp_register_name)
14411         (sh_sh4_register_name, sh_sh4_nofpu_register_name)
14412         (sh_sh4al_dsp_register_name): Constify.
14413         * sh64-tdep.c (sh64_register_name): Constify.
14414         * solib-darwin.c (lookup_symbol_from_bfd): Constify.
14415         * spu-tdep.c (spu_register_name, info_spu_dma_cmdlist): Constify.
14416         * stabsread.c (patch_block_stabs, read_type_number)
14417         (ref_map::stabs, ref_add, process_reference)
14418         (symbol_reference_defined, define_symbol, define_symbol)
14419         (error_type, read_type, read_member_functions, read_cpp_abbrev)
14420         (read_one_struct_field, read_struct_fields, read_baseclasses)
14421         (read_tilde_fields, read_struct_type, read_array_type)
14422         (read_enum_type, read_sun_builtin_type, read_sun_floating_type)
14423         (read_huge_number, read_range_type, read_args, common_block_start)
14424         (find_name_end): Constify.
14425         * stabsread.h (common_block_start, define_symbol)
14426         (process_one_symbol, symbol_reference_defined, ref_add):
14427         * symfile.c (get_section_index, add_symbol_file_command):
14428         * symfile.h (get_section_index): Constify.
14429         * target-descriptions.c (tdesc_type::name): Constify.
14430         (tdesc_free_type): Add cast.
14431         * target.c (find_default_run_target):
14432         (add_deprecated_target_alias, find_default_run_target)
14433         (target_announce_detach): Constify.
14434         (do_option): Constify.
14435         * target.h (add_deprecated_target_alias): Constify.
14436         * thread.c (print_thread_info_1): Constify.
14437         * top.c (deprecated_readline_begin_hook, command_line_input):
14438         Constify.
14439         (init_main): Add casts.
14440         * top.h (handle_line_of_input): Constify.
14441         * tracefile-tfile.c (tfile_write_uploaded_tsv): Constify.
14442         * tracepoint.c (tvariables_info_1, trace_status_mi): Constify.
14443         (tfind_command): Rename to ...
14444         (tfind_command_1): ... this and constify.
14445         (tfind_command): New function.
14446         (tfind_end_command, tfind_start_command): Adjust.
14447         (encode_source_string): Constify.
14448         * tracepoint.h (encode_source_string): Constify.
14449         * tui/tui-data.c (tui_partial_win_by_name): Constify.
14450         * tui/tui-data.h (tui_partial_win_by_name): Constify.
14451         * tui/tui-source.c (tui_set_source_content_nil): Constify.
14452         * tui/tui-source.h (tui_set_source_content_nil): Constify.
14453         * tui/tui-win.c (parse_scrolling_args): Constify.
14454         * tui/tui-windata.c (tui_erase_data_content): Constify.
14455         * tui/tui-windata.h (tui_erase_data_content): Constify.
14456         * tui/tui-winsource.c (tui_erase_source_content): Constify.
14457         * tui/tui.c (tui_enable): Add cast.
14458         * utils.c (defaulted_query): Constify.
14459         (init_page_info): Add cast.
14460         (puts_debug, subset_compare): Constify.
14461         * utils.h (subset_compare): Constify.
14462         * varobj.c (varobj_format_string): Constify.
14463         * varobj.h (varobj_format_string): Constify.
14464         * vax-tdep.c (vax_register_name): Constify.
14465         * windows-nat.c (windows_detach): Constify.
14466         * xcoffread.c (process_linenos, xcoff_next_symbol_text): Constify.
14467         * xml-support.c (gdb_xml_end_element): Constify.
14468         * xml-tdesc.c (tdesc_start_reg): Constify.
14469         * xstormy16-tdep.c (xstormy16_register_name): Constify.
14470         * xtensa-tdep.c (xtensa_find_register_by_name): Constify.
14471         * xtensa-tdep.h (xtensa_register_t::name): Constify.
14472
14473 2017-04-05  Pedro Alves  <palves@redhat.com>
14474
14475         * proc-api.c (struct trans): Constify.
14476         (procfs_note): Constify.
14477         * proc-events.c (struct trans, syscall_table):
14478         * proc-flags.c (struct trans): Constify.
14479         * proc-utils.h (procfs_note): Constify.
14480         * proc-why.c (struct trans): Constify.
14481         * procfs.c (dead_procinfo, find_syscall, proc_warn, proc_error)
14482         (procfs_detach): Constify.
14483         * sol-thread.c (struct string_map): Constify.
14484         (td_err_string, td_state_string): Constify.
14485
14486 2017-04-05  Pedro Alves  <palves@redhat.com>
14487
14488         * proc-api.c (procfs_filename): Don't initialize
14489         procfs_filename.
14490         (prepare_to_trace): Assume procfs_filename is non-NULL.
14491         (_initialize_proc_api): Give procfs_filename a default value here.
14492
14493 2017-04-05  Pedro Alves  <palves@redhat.com>
14494
14495         * break-catch-throw.c (handle_gnu_v3_exceptions): Constify
14496         'cond_string' parameter.
14497         (extract_exception_regexp): Constify 'string' parameter.
14498         (catch_exception_command_1): Constify.
14499         * breakpoint.c (init_catchpoint)
14500         (create_fork_vfork_event_catchpoint): Constify 'cond_string'
14501         parameter.
14502         (ep_parse_optional_if_clause, catch_fork_command_1)
14503         (catch_exec_command_1): Constify.
14504         * breakpoint.h (init_catchpoint): Constify 'cond_string'
14505         parameter.
14506         (ep_parse_optional_if_clause): Constify.
14507         * cli/cli-utils.c (remove_trailing_whitespace)
14508         (check_for_argument): Constify.
14509         * cli/cli-utils.h (remove_trailing_whitespace): Constify and add
14510         non-const overload.
14511         (check_for_argument): Likewise.
14512
14513 2017-04-05  Pedro Alves  <palves@redhat.com>
14514
14515         * event-top.c (command_line_handler): Add cast to execute_command
14516         call.
14517         * record-btrace.c (cmd_record_btrace_bts_start)
14518         (cmd_record_btrace_pt_start, cmd_record_btrace_start)
14519         (cmd_record_btrace_start): Add cast to execute_command call.
14520         * record-full.c (record_full_goto_insn):
14521         * record.c (record_start, record_stop): Add cast to
14522         execute_command_to_string calls.
14523         (cmd_record_start): Add cast to execute_command calls.
14524
14525 2017-04-05  Pedro Alves  <palves@redhat.com>
14526
14527         * python/python-internal.h (gdb_PyArg_ParseTupleAndKeywords): New
14528         static inline function.
14529         * python/py-arch.c (archpy_disassemble): Constify 'keywords'
14530         array and use gdb_PyArg_ParseTupleAndKeywords.
14531         * python/py-cmd.c (cmdpy_init): Likewise.
14532         * python/py-finishbreakpoint.c (bpfinishpy_init): Likewise.
14533         * python/py-inferior.c (infpy_read_memory, infpy_write_memory)
14534         (infpy_search_memory): Likewise.
14535         * python/py-objfile.c (objfpy_add_separate_debug_file)
14536         (gdbpy_lookup_objfile): Likewise.
14537         * python/py-symbol.c (gdbpy_lookup_symbol)
14538         (gdbpy_lookup_global_symbol): Likewise.
14539         * python/py-type.c (gdbpy_lookup_type): Likewise.
14540         * python/py-value.c (valpy_lazy_string, valpy_string): Likewise.
14541         * python/python.c (execute_gdb_command, gdbpy_write, gdbpy_flush):
14542         Likewise.
14543
14544 2017-04-05  Pedro Alves  <palves@redhat.com>
14545
14546         * python/python-internal.h (gdb_PyGetSetDef): New type.
14547         * python/py-block.c (block_object_getset)
14548         (breakpoint_object_getset): Now a gdb_PyGetSetDef array.
14549         * python/py-event.c (event_object_getset)
14550         (finish_breakpoint_object_getset): Likewise.
14551         * python/py-inferior.c (inferior_object_getset): Likewise.
14552         * python/py-infthread.c (thread_object_getset): Likewise.
14553         * python/py-lazy-string.c (lazy_string_object_getset): Likewise.
14554         * python/py-linetable.c (linetable_entry_object_getset): Likewise.
14555         * python/py-objfile.c (objfile_getset): Likewise.
14556         * python/py-progspace.c (pspace_getset): Likewise.
14557         * python/py-record-btrace.c (btpy_insn_getset, btpy_call_getset):
14558         Likewise.
14559         * python/py-record.c (recpy_record_getset): Likewise.
14560         * python/py-symbol.c (symbol_object_getset): Likewise.
14561         * python/py-symtab.c (symtab_object_getset, sal_object_getset):
14562         Likewise.
14563         * python/py-type.c (type_object_getset, field_object_getset):
14564         Likewise.
14565         * python/py-value.c (value_object_getset): Likewise.
14566
14567 2017-04-05  Pedro Alves  <palves@redhat.com>
14568
14569         * python/python-internal.h (gdb_PyObject_CallMethod)
14570         (gdb_PyErr_NewException, gdb_PySys_GetObject, gdb_PySys_SetPath):
14571         New functions.
14572         (GDB_PYSYS_SETPATH_CHAR, PyObject_CallMethod, PyErr_NewException)
14573         (PySys_GetObject, PySys_SetPath): New macros.
14574
14575 2017-04-05  Pedro Alves  <palves@redhat.com>
14576
14577         * mi/mi-cmd-info.c (mi_cmd_info_os): Call info_osdata instead of
14578         info_osdata_command.
14579         * osdata.c (info_osdata_command): Rename to ...
14580         (info_osdata): ... this.  Constify 'type' parameter, and remove
14581         the 'from_tty' parameter.  Accept NULL TYPE.
14582         (info_osdata_command): New function.
14583         * osdata.h (info_osdata_command): Remove declaration.
14584         (info_osdata): New declaration.
14585
14586 2017-04-05  Pedro Alves  <palves@redhat.com>
14587
14588         * mi/mi-cmd-break.c (mi_cmd_break_insert_1, mi_cmd_break_insert)
14589         (mi_cmd_dprintf_insert, mi_cmd_break_passcount)
14590         (mi_cmd_break_watch, mi_cmd_break_commands): Constify 'command'
14591         parameter.
14592         * mi/mi-cmd-catch.c (mi_cmd_catch_assert, mi_cmd_catch_exception)
14593         (mi_cmd_catch_load, mi_cmd_catch_unload): Constify cmd' parameter.
14594         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Constify 'command'
14595         parameter.
14596         * mi/mi-cmd-env.c (mi_cmd_env_pwd, mi_cmd_env_cd, mi_cmd_env_path)
14597         (mi_cmd_env_dir, mi_cmd_inferior_tty_set, _cmd_inferior_tty_show)
14598         * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_file)
14599         (mi_cmd_file_list_exec_source_files)
14600         (mi_cmd_file_list_shared_libraries): Constify 'command' parameter.
14601         * mi/mi-cmd-info.c (mi_cmd_info_ada_exceptions)
14602         (mi_cmd_info_gdb_mi_command, mi_cmd_info_os): Constify 'command'
14603         parameter.
14604         * mi/mi-cmd-stack.c (mi_cmd_enable_frame_filters)
14605         (mi_cmd_stack_list_frames, mi_cmd_stack_info_depth)
14606         (mi_cmd_stack_list_locals, mi_cmd_stack_list_args)
14607         (mi_cmd_stack_list_variables, mi_cmd_stack_select_frame)
14608         (mi_cmd_stack_info_frame): Constify 'command' parameter.
14609         * mi/mi-cmd-target.c (mi_cmd_target_file_get)
14610         (mi_cmd_target_file_put, mi_cmd_target_file_delete): Constify
14611         'command' parameter.
14612         * mi/mi-cmd-var.c (mi_cmd_var_create, mi_cmd_var_delete)
14613         (mi_cmd_var_set_format, mi_cmd_var_set_visualizer)
14614         (mi_cmd_var_set_frozen, mi_cmd_var_show_format)
14615         (mi_cmd_var_info_num_children, mi_cmd_var_list_children)
14616         (mi_cmd_var_info_type, mi_cmd_var_info_path_expression)
14617         (mi_cmd_var_info_expression, mi_cmd_var_show_attributes)
14618         (mi_cmd_var_evaluate_expression, mi_cmd_var_assign)
14619         (mi_cmd_var_update, mi_cmd_enable_pretty_printing)
14620         (mi_cmd_var_set_update_range): Constify 'command' parameter.
14621         * mi/mi-cmds.h (mi_cmd_argv_ftype): Constify 'command' parameter.
14622         * mi/mi-interp.c (mi_cmd_interpreter_exec): Constify 'command'
14623         parameter.
14624         * mi/mi-main.c (mi_cmd_gdb_exit, mi_cmd_exec_next)
14625         (mi_cmd_exec_next_instruction, mi_cmd_exec_step)
14626         (mi_cmd_exec_step_instruction, mi_cmd_exec_finish)
14627         (mi_cmd_exec_return ,mi_cmd_exec_jump, mi_cmd_exec_continue)
14628         (mi_cmd_exec_interrupt, mi_cmd_exec_run, mi_cmd_target_detach)
14629         (mi_cmd_target_flash_erase, mi_cmd_thread_select)
14630         (mi_cmd_thread_list_ids, mi_cmd_thread_info)
14631         (mi_cmd_list_thread_groups, mi_cmd_data_list_register_names)
14632         (mi_cmd_data_list_changed_registers)
14633         (mi_cmd_data_write_register_values)
14634         (mi_cmd_data_evaluate_expression, mi_cmd_data_read_memory)
14635         (mi_cmd_data_read_memory_bytes, mi_cmd_data_write_memory)
14636         (mi_cmd_data_write_memory_bytes, mi_cmd_enable_timings)
14637         (mi_cmd_list_features, mi_cmd_list_target_features)
14638         (mi_cmd_add_inferior, mi_cmd_remove_inferior)
14639         (mi_cmd_trace_define_variable, mi_cmd_trace_list_variables)
14640         (mi_cmd_trace_find, mi_cmd_trace_save, mi_cmd_trace_start)
14641         (mi_cmd_trace_status, mi_cmd_trace_stop, mi_cmd_ada_task_info)
14642         (mi_cmd_trace_frame_collected): Constify 'command'
14643         parameter.
14644         * mi/mi-symbol-cmds.c (mi_cmd_symbol_list_lines): Constify
14645         'command' parameter.
14646
14647 2017-04-05  Pedro Alves  <palves@redhat.com>
14648
14649         * ada-lang.c (ada_completer_word_break_characters): Now a const
14650         array.
14651         (ada_get_gdb_completer_word_break_characters): Constify.
14652         * completer.c (gdb_completer_command_word_break_characters)
14653         (gdb_completer_file_name_break_characters)
14654         (gdb_completer_quote_characters): Now const arrays.
14655         (get_gdb_completer_quote_characters): Constify.
14656         (set_rl_completer_word_break_characters): New function.
14657         (set_gdb_completion_word_break_characters)
14658         (complete_line_internal): Use it.
14659         * completer.h (get_gdb_completer_quote_characters): Constify.
14660         (set_rl_completer_word_break_characters): Declare.
14661         * f-lang.c (f_word_break_characters): Constify.
14662         * language.c (default_word_break_characters): Constify.
14663         * language.h (language_defn::la_word_break_characters): Constify.
14664         (default_word_break_characters): Constify.
14665         * top.c (init_main): Use set_rl_completer_word_break_characters.
14666
14667 2017-04-05  Pedro Alves  <palves@redhat.com>
14668
14669         * aix-thread.c (aix_thread_pid_to_str)
14670         (aix_thread_extra_thread_info): Constify.
14671         * bsd-kvm.c (bsd_kvm_pid_to_str): Constify.
14672         * bsd-uthread.c (bsd_uthread_extra_thread_info)
14673         (bsd_uthread_pid_to_str): Constify.
14674         * corelow.c (core_pid_to_str): Constify.
14675         * darwin-nat.c (darwin_pid_to_str): Constify.
14676         * fbsd-nat.c (fbsd_pid_to_str): Constify.
14677         * fbsd-tdep.c (fbsd_core_pid_to_str, gdbarch_core_pid_to_str):
14678         Constify.
14679         * gnu-nat.c (gnu_pid_to_str): Constify.
14680         * go32-nat.c (go32_pid_to_str): Constify.
14681         * i386-cygwin-tdep.c (i386_windows_core_pid_to_str): Constify.
14682         * inf-ptrace.c (inf_ptrace_pid_to_str): Constify.
14683         * inferior.c (inferior_pid_to_str): Constify.
14684         * linux-nat.c (linux_nat_pid_to_str): Constify.
14685         * linux-tdep.c (linux_core_pid_to_str): Constify.
14686         * linux-thread-db.c (thread_db_pid_to_str)
14687         (thread_db_extra_thread_info): Constify.
14688         * nto-tdep.c (nto_extra_thread_info): Constify.
14689         * nto-tdep.h (nto_extra_thread_info): Constify.
14690         * obsd-nat.c (obsd_pid_to_str): Constify.
14691         * procfs.c (procfs_pid_to_str): Constify.
14692         * ravenscar-thread.c (ravenscar_extra_thread_info)
14693         (ravenscar_pid_to_str): Constify.
14694         * remote-sim.c (gdbsim_pid_to_str): Constify.
14695         * remote.c (remote_threads_extra_info, remote_pid_to_str):
14696         Constify.
14697         * sol-thread.c (solaris_pid_to_str): Constify.
14698         * sol2-tdep.c (sol2_core_pid_to_str): Constify.
14699         * sol2-tdep.h (sol2_core_pid_to_str): Constify.
14700         * target.c (default_pid_to_str, target_pid_to_str)
14701         (normal_pid_to_str, default_pid_to_str): Constify.
14702         * target.h (target_ops::to_pid_to_str)
14703         (target_ops::to_extra_thread_info): Constify.
14704         (target_pid_to_str, normal_pid_to_str): Constify.
14705         * windows-nat.c (windows_pid_to_str): Constify.
14706         * gdbarch.sh (core_pid_to_str): Constify.
14707         * target-delegates.c: Regenerate.
14708         * gdbarch.h, gdbarch.c: Regenerate.
14709
14710 2017-04-05  Pedro Alves  <palves@redhat.com>
14711
14712         * main.c (captured_main_1): Use gdb::unique_xmalloc_ptr to manage
14713         the memory of the temporary warning_pre_print override.
14714         * utils.c (warning_pre_print): Constify.
14715         * utils.h (warning_pre_print): Constify.
14716
14717 2017-04-05  Pedro Alves  <palves@redhat.com>
14718
14719         * cli/cli-cmds.c (shell_escape): Constify 'arg' parameter.
14720         (shell_command): New function.
14721         (make_command): Use std::string.
14722         (init_cli_cmds): Register shell_command instead of shell_escape.
14723
14724 2017-04-05  Pedro Alves  <palves@redhat.com>
14725
14726         * breakpoint.c (dprintf_function, dprintf_channel): Don't initialize.
14727         * tracepoint.c (default_collect): Don't initialize.
14728
14729 2017-04-05  Pedro Alves  <palves@redhat.com>
14730
14731         * macroexp.c (macro_buffer::shared): Now a bool.
14732         (init_buffer): Update.
14733         (init_shared_buffer): Constify 'addr' parameter.
14734         (substitute_args, expand, macro_expand, macro_expand_next): Remove
14735         casts.
14736
14737 2017-04-05  Pedro Alves  <palves@redhat.com>
14738
14739         * arm-tdep.c (show_disassembly_style_sfunc): Constify local.
14740         * disasm.c (set_disassembler_options): Constify local.
14741         * i386-tdep.c (i386_print_insn): Remove cast and FIXME comment.
14742
14743 2017-04-05  Sergio Durigan Junior  <sergiodj@redhat.com>
14744
14745         PR gdb/21352
14746         * tracefile.c (tsave_command): Fix argument parsing for '-r'
14747         option.
14748
14749 2017-04-05  Yao Qi  <yao.qi@linaro.org>
14750
14751         * frame.c (frame_unwind_register_unsigned): Call
14752         frame_unwind_register_value.
14753
14754 2017-04-05  Yao Qi  <yao.qi@linaro.org>
14755
14756         * gdb.threads/thread-specific-bp.exp (check_thread_specific_breakpoint):
14757         Use gdb_test_multiple, and don't match anchor.
14758
14759 2017-04-05  Pedro Alves  <palves@redhat.com>
14760
14761         * MAINTAINERS (Global Maintainers): Add Simon Marchi.
14762         (Write After Approval): Remove Simon Marchi.
14763
14764 2017-04-05  Pedro Alves  <palves@redhat.com>
14765
14766         * common/gdb_optional.h (optional::optional): Make constexpr and
14767         initialize m_dummy.
14768
14769 2017-04-04  John Baldwin  <jhb@FreeBSD.org>
14770
14771         * amd64-fbsd-tdep.c: Remove "bsd-uthread.h" include.
14772         (amd64fbsd_jmp_buf_reg_offset): Remove.
14773         (amd64fbsd_supply_uthread): Remove function.
14774         (amd64fbsd_collect_uthread): Remove function.
14775         (amd64fbsd_init_abi): Don't set bsd-uthread callbacks.
14776         * configure.tgt (i[34567]86-*-freebsd*): Remove bsd-uthread.o.
14777         (x86_64-*-freebsd*): Remove bsd-uthread.o.
14778         (fbsd-nat.c): Update comment.
14779         * i386-fbsd-tdep.c: Remove "bsd-uthread.h" include.
14780         (i386fbsd_jmp_buf_reg_offset): Remove.
14781         (i386fbsd_supply_uthread): Remove function.
14782         (i386fbsd_collect_uthread): Remove function.
14783         (i386fbsd_init_abi): Don't set bsd-uthread callbacks.
14784
14785 2017-04-04  John Baldwin  <jhb@FreeBSD.org>
14786
14787         * Makefile.in (ALL_64_TARGET_OBS): Remove alpha-fbsd-tdep.o.
14788         (ALLDEPFILES): Remove alpha-fbsd-tdep.c
14789         * NEWS: Mention that support for FreeBSD/alpha was removed.
14790         * alpha-fbsd-tdep.c: Delete file.
14791         * config/alpha/fbsd.mh: Delete file.
14792         * configure.host: Delete alpha*-*-freebsd* and
14793         alpha*-*-kfreebsd*-gnu.
14794         * configure.tgt: Delete alpha*-*-freebsd* and
14795         alpha*-*-kfreebsd*-gnu.
14796
14797 2017-04-04  John Baldwin  <jhb@FreeBSD.org>
14798
14799         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers,
14800         amd64bsd_store_inferior_registers): Use ptid from regcache.
14801
14802 2017-04-04  Pedro Alves  <palves@redhat.com>
14803
14804         * dwarf2read.c (lnp_state_machine): Now a class.  Initialize all
14805         data fields, make them private and add "m_" prefixes.
14806         (lnp_state_machine::lnp_state_machine): New ctor.
14807         (record_line, check_line_address, handle_set_discriminator)
14808         (handle_set_address, handle_advance_pc, handle_special_opcode)
14809         (handle_advance_line, handle_set_file, handle_negate_stmt)
14810         (handle_const_add_pc, handle_fixed_advance_pc, handle_copy)
14811         (end_sequence, advance_line): New methods.
14812         (m_gdbarch, m_record_lines_p): New fields.
14813         (lnp_reader_state): Delete.
14814         (dwarf_record_line): Rename to ...
14815         (lnp_state_machine::record_line): ... adjust.
14816         (init_lnp_state_machine): Delete.
14817         (lnp_state_machine::lnp_state_machine): New.
14818         (check_line_address): Rename to ...
14819         (lnp_state_machine::check_line_address): This.
14820         (dwarf_decode_lines_1): Remove reference to "reader_state".
14821         Adjust lnp_state_machine having a non-default ctor.  Use bool.
14822         State machine internal state manipulation moved to
14823         lnp_state_machine methods.
14824
14825 2017-04-04  Pedro Alves  <palves@redhat.com>
14826
14827         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14828         unittests/offset-type-selftests.c.
14829         (SUBDIR_UNITTESTS_OBS): Add offset-type-selftests.o.
14830         * common/offset-type.h: New file.
14831         * common/preprocessor.h: New file.
14832         * common/traits.h: New file.
14833         * common/valid-expr.h: New file.
14834         * dwarf2expr.c: Include "common/underlying.h".  Adjust to use
14835         sect_offset and cu_offset strong typedefs throughout.
14836         * dwarf2expr.h: Adjust to use sect_offset and cu_offset strong
14837         typedefs throughout.
14838         * dwarf2loc.c: Include "common/underlying.h".  Adjust to use
14839         sect_offset and cu_offset strong typedefs throughout.
14840         * dwarf2read.c: Adjust to use sect_offset and cu_offset strong
14841         typedefs throughout.
14842         * gdbtypes.h: Include "common/offset-type.h".
14843         (cu_offset): Now an offset type (strong typedef) instead of a
14844         struct.
14845         (sect_offset): Likewise.
14846         (union call_site_parameter_u): Rename "param_offset" field to
14847         "param_cu_off".
14848         * unittests/offset-type-selftests.c: New file.
14849
14850 2017-04-04  Pedro Alves  <palves@redhat.com>
14851
14852         * common/underlying.h: New file.
14853         * dwarf2read.c: Include "common/gdb_optional.h" and
14854         "common/underlying.h".
14855         (dir_index, file_name_index): New types.
14856         (file_entry): Use them.
14857         (file_entry::include): Use to_underlying.
14858         (line_header::add_file_name): Use dir_index.
14859         (read_formatted_entries): Use gdb::optional.  Read form before
14860         writting to file_entry.
14861         (dwarf_decode_line_header): Use dir_index.
14862         (lnp_state_machine::current_file): Use to_underlying.
14863         (lnp_state_machine::file): Change type to file_name_index.
14864         (dwarf_record_line): Use to_underlying.
14865         (init_lnp_state_machine): Use file_name_index.
14866         (dwarf_decode_lines_1): Use dir_index and file_name_index.
14867
14868 2017-04-04  Pedro Alves  <palves@redhat.com>
14869
14870         * common/gdb_optional.h (gdb::optiona): Add operator->, operator*,
14871         operator bool, has_value and get methods.
14872
14873 2017-04-04  Pedro Alves  <palves@redhat.com>
14874
14875         * dwarf2read.c (struct file_entry): Add ctors, and initialize all
14876         fields.
14877         (line_header): Initialize all data fields.  Change type of
14878         standard_opcode_lengths to std::unique_ptr<unsigned char[]>.
14879         Change type of include_dirs to std::vector<const char *>.  Remove
14880         num_include_dirs, include_dirs_size.  Change type of file_names to
14881         std::vector<file_entry>.  Remove num_file_names, file_names_size.
14882         (line_header::line_header): New.
14883         (line_header::add_include_dir, line_header::add_file_name): New
14884         methods.
14885         (line_header::include_dir_at): Remove NULL check.
14886         (line_header::file_name_at): Add const overload.
14887         (line_header_up): New unique_ptr typedef.
14888         (dw2_get_file_names_reader): Use line_header_up.  Adjust to use
14889         std::vector.  Remove free_line_header call.
14890         (dwarf2_build_include_psymtabs): Use line_header_up.  Remove
14891         free_line_header call.
14892         (free_cu_line_header): Delete.
14893         (handle_DW_AT_stmt_list, handle_DW_AT_stmt_list)
14894         (setup_type_unit_groups): Use line_header_up instead of cleanups.
14895         Adjust to use std::vector.
14896         (free_line_header): Delete.
14897         (free_line_header_voidp): Use delete.
14898         (add_include_dir): Replace with ...
14899         (line_header::add_include_dir): ... this method.  Use std::vector.
14900         (add_file_name): Replace with ...
14901         (line_header::add_file_name): ... this method.  Use std::vector.
14902         (add_include_dir_stub): Delete.
14903         (read_formatted_entries): Remove memset.
14904         (dwarf_decode_line_header): Return a line_header_up instead of a
14905         raw pointer.  Remove cleanup handling.  Pass lambdas to
14906         read_formatted_entries.  Adjust to use line_header methods.
14907         (dwarf_decode_lines_1): Adjust to use line_header methods.
14908         (dwarf_decode_lines, file_file_name, file_full_name): Adjust to
14909         use std::vector.
14910
14911 2017-04-04  Simon Marchi  <simon.marchi@polymtl.ca>
14912
14913         * remote.c (set_general_thread, set_continue_thread): Use ptid_t
14914         instead of struct ptid.
14915
14916 2017-05-04  Alan Hayward  <alan.hayward@arm.com>
14917
14918         * frame.c (get_frame_register_bytes): Unwind using value.
14919         (put_frame_register_bytes): Likewise.
14920
14921 2017-03-30  Iain Buclaw  <ibuclaw@gdcproject.org>
14922
14923         * d-exp.y (type_aggregate_p): Treat TYPE_CODE_MODULE as being
14924         aggregate-like.
14925
14926 2017-03-29  Jan Kratochvil  <jan.kratochvil@redhat.com>
14927
14928         * auto-load.c (auto_load_section_scripts): Check SEC_HAS_CONTENTS.
14929
14930 2017-03-29  Yao Qi  <yao.qi@linaro.org>
14931
14932         * gdbthread.h (struct thread_info): Declare constructor and
14933         destructor.  Add some in-class member initializers.
14934         * thread.c (free_thread): Remove.
14935         (init_thread_list): Call delete instead of free_thread.
14936         (new_thread): Call thread_info constructor.
14937         (thread_info::thread_info): New function.
14938         (thread_info::~thread_info): New function.
14939         (delete_thread_1): Call delete instead of free_thread.
14940         (make_cleanup_restore_current_thread): Move tp and frame to
14941         inner block.
14942
14943 2017-03-28  Anton Kolesov  <anton.kolesov@synopsys.com>
14944
14945         * arc-tdep.c (arc_frame_cache): Add support for prologue analysis.
14946         (arc_skip_prologue): Likewise.
14947         (arc_make_frame_cache): Likewise.
14948         (arc_pv_get_operand): New function.
14949         (arc_is_in_prologue): Likewise.
14950         (arc_analyze_prologue): Likewise.
14951         (arc_print_frame_cache): Likewise.
14952         (MAX_PROLOGUE_LENGTH): New constant.
14953
14954 2017-03-28  Anton Kolesov  <anton.kolesov@synopsys.com>
14955
14956         * configure.tgt: Add arc-insn.o.
14957         * arc-tdep.c (arc_delayed_print_insn): Make non-static.
14958         (dump_arc_instruction_command): New function.
14959         (arc_fprintf_disasm): Likewise.
14960         (arc_disassemble_info): Likewise.
14961         (arc_insn_get_operand_value): Likewise.
14962         (arc_insn_get_operand_value_signed): Likewise.
14963         (arc_insn_get_memory_base_reg): Likewise.
14964         (arc_insn_get_memory_offset): Likewise.
14965         (arc_insn_get_branch_target): Likewise.
14966         (arc_insn_dump): Likewise.
14967         (arc_insn_get_linear_next_pc): Likewise.
14968         * arc-tdep.h (arc_delayed_print_insn): Add function declaration.
14969         (arc_disassemble_info): Likewise.
14970         (arc_insn_get_branch_target): Likewise.
14971         (arc_insn_get_linear_next_pc): Likewise.
14972         * NEWS: Mention new "maint print arc arc-instruction".
14973
14974 2017-03-28  Anton Kolesov  <anton.kolesov@synopsys.com>
14975
14976         * arc-tdep (maintenance_print_arc_list): New variable.
14977         (maintenance_print_arc_command): New function.
14978
14979 2017-03-28  Anton Kolesov  <anton.kolesov@synopsys.com>
14980
14981         * arc-tdep.c (core_v2_register_names, core_arcompact_register_names)
14982         Add "limm" and "reserved".
14983         (arc_cannot_fetch_register, arc_cannot_store_register): Add
14984         ARC_RESERVED_REGNUM and ARC_LIMM_REGNUM.
14985         * arc-tdep.h (arc_regnum): Likewise.
14986
14987 2017-03-27  Max Filippov  <jcmvbkbc@gmail.com>
14988
14989         * xtensa-linux-nat.c (fill_gregset): Call regcache_raw_collect
14990         for THREADPTR register.
14991         (supply_gregset_reg): Call regcache_raw_supply for THREADPTR
14992         register.
14993         * xtensa-tdep.c (XTENSA_DBREGN_UREG): New definition.
14994         (xtensa_derive_tdep): Initialize tdep->threadptr_regnum.
14995         * xtensa-tdep.h (gdbarch_tdep::threadptr_regnum): New field.
14996
14997 2017-03-27  Max Filippov  <jcmvbkbc@gmail.com>
14998
14999         * xtensa-tdep.c (xtensa_pseudo_register_read): Treat all
15000         registers above gdbarch_num_regs (gdbarch) as privileged in
15001         call0 ABI.
15002
15003 2017-03-27  Max Filippov  <jcmvbkbc@gmail.com>
15004
15005         * xtensa-linux-nat.c (fill_gregset): Call regcache_raw_collect
15006         for a single specified register or for all registers in
15007         a0_base..a0_base + C0_NREGS range.
15008         (supply_gregset_reg): Call regcache_raw_supply for a single
15009         specified register or for all registers in a0_base..a0_base +
15010         C0_NREGS range.
15011
15012 2017-03-27  Max Filippov  <jcmvbkbc@gmail.com>
15013
15014         * arch/xtensa.h (C0_NREGS): Add definition.
15015         * xtensa-tdep.c (C0_NREGS): Remove definition.
15016
15017 2017-03-27  Max Filippov  <jcmvbkbc@gmail.com>
15018
15019         * xtensa-tdep.c (xtensa_scan_prologue, call0_analyze_prologue):
15020         Drop xtensa_default_isa initialization.
15021         (xtensa_gdbarch_init): Initialize xtensa_default_isa.
15022
15023 2017-03-27  Pedro Alves  <palves@redhat.com>
15024
15025         * dwarf2read.c (file_entry) <dir_index>: Add comment.
15026         (file_entry::include_dir): New method.
15027         (line_header::include_dir_at, line_header::file_name_at): New
15028         methods.
15029         (setup_type_unit_groups, setup_type_unit_groups)
15030         (psymtab_include_file_name): Simplify using the new methods.
15031         (lnp_state_machine) <the_line_header>: New field.
15032         <file>: Add comment.
15033         (lnp_state_machine::current_file): New method.
15034         (dwarf_record_line): Simplify using the new methods.
15035         (init_lnp_state_machine): Initialize the "the_line_header" field.
15036         (dwarf_decode_lines_1, dwarf_decode_lines, file_file_name):
15037         Simplify using the new methods.
15038
15039 2017-03-27  Pedro Alves  <palves@redhat.com>
15040
15041         * cp-name-parser.y (make_empty): Delete.
15042         (demangler_special, nested_name, ptr_operator, array_indicator)
15043         (direct_declarator, declarator_1): Use fill_comp instead of
15044         make_empty.
15045
15046 2017-03-27  Pedro Alves  <palves@redhat.com>
15047
15048         * xml-support.h (gdb_xml_debug): Pass a "first-to-check" argument
15049         to ATTRIBUTE_PRINTF.
15050         * solib-target.c (library_list_start_list): Print "string" not
15051         "version".
15052         * xml-tdesc.c (tdesc_start_field): Pass "field_name" to
15053         gdb_xml_error call.
15054
15055 2017-03-27  Pedro Alves  <palves@redhat.com>
15056
15057         * dwarf2read.c (struct file_and_directory): New.
15058         (dwarf2_get_dwz_file): Adjust to use std::string.
15059         (dw2_get_file_names_reader): Adjust to use file_and_directory.
15060         (find_file_and_directory): Adjust to return a file_and_directory
15061         object.
15062         (read_file_scope): Adjust to use file_and_directory.  Remove
15063         make_cleanup/do_cleanups calls.
15064         (open_and_init_dwp_file): Adjust to use std::string.  Remove
15065         make_cleanup/do_cleanups calls.
15066         * python/python.c (do_start_initialization): Adjust to ldirname
15067         returning a std::string.
15068         * utils.c (ldirname): Now returns a std::string.
15069         * utils.h (ldirname): Change return type to std::string.
15070         * xml-syscall.c (xml_init_syscalls_info): Adjust to ldirname
15071         returning a std::string.
15072         * xml-tdesc.c (file_read_description_xml): Likewise.
15073
15074 2017-03-24  Alan Hayward  <alan.hayward@arm.com>
15075
15076         * regcache.c (regcache_debug_print_register): New function.
15077         * regcache.h (regcache_debug_print_register): New declaration.
15078         * target.c (debug_print_register): Remove.
15079         (target_fetch_registers): Call regcache_debug_print_register.
15080         (target_store_registers): Likewise.
15081
15082 2017-03-24  Pádraig Brady  <pbrady@fb.com>
15083
15084         * dwarf2read.c (setup_type_unit_groups): Ensure dir_index doesn't
15085         reference beyond the 'lh->include_dirs' array before accessing to
15086         it.
15087         (psymtab_include_file_name): Likewise.
15088         (dwarf_decode_lines_1): Likewise.
15089         (dwarf_decode_lines): Likewise.
15090         (file_file_name): Likewise.
15091
15092 2017-03-23  Simon Marchi  <simon.marchi@ericsson.com>
15093
15094         * fbsd-tdep.c (fbsd_corefile_thread): Don't set/restore
15095         inferior_ptid.
15096         * proc-service.c (ps_lgetregs, ps_lsetregs, ps_lgetfpregs,
15097         ps_lsetfpregs): Likewise.
15098         * regcache.c (regcache_raw_update, regcache_raw_write): Likewise.
15099         * sol-thread.c (ps_lgetregs, ps_lsetregs, ps_lgetfpregs,
15100         ps_lsetfpregs): Likewise.
15101         * target.c (target_fetch_registers, target_store_registers):
15102         Remove asserts.
15103
15104 2017-03-23  Alan Hayward  <alan.hayward@arm.com>
15105
15106         * sol-thread.c (sol_thread_store_registers): Remove regcache calls.
15107
15108 2017-03-23  Yao Qi  <yao.qi@linaro.org>
15109
15110         * aarch64-tdep.c (aarch64_process_record_test): Declare.
15111         (_initialize_aarch64_tdep): Register it.
15112         (aarch64_record_load_store): Handle PRFM instruction.
15113         (aarch64_process_record_test): New function.
15114
15115 2017-03-23  Yao Qi  <yao.qi@linaro.org>
15116
15117         * aarch64-tdep.c (aarch64_record_load_store): Fix code
15118         indentation.
15119
15120 2017-03-23  Yao Qi  <yao.qi@linaro.org>
15121
15122         * aarch64-tdep.c: Remove AARCH64_RECORD_FAILURE.
15123
15124 2017-03-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15125
15126         python/python.c (do_start_initialization): Fix memory leak.
15127
15128 2017-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
15129
15130         * inf-ptrace.c (inf_ptrace_xfer_partial): Get pid from ptid
15131         using get_ptrace_pid.
15132         * linux-nat.c (linux_nat_xfer_partial): Don't set/restore
15133         inferior_ptid.
15134         (linux_proc_xfer_partial, linux_proc_xfer_spu): Use lwp of
15135         inferior_ptid instead of pid.
15136
15137 2017-03-22  Yao Qi  <yao.qi@linaro.org>
15138
15139         * aarch64-tdep.c: Wrap locally used classes in anonymous
15140         namespace.
15141         * arm-tdep.c: Likewise.
15142         * linespec.c: Likewise.
15143         * ui-out.c: Likewise.
15144
15145 2017-03-22  Jonah Graham  <jonah@kichwacoders.com>
15146
15147         PR gdb/19637
15148         * python/lib/gdb/printer/bound_registers.py: Import sys.
15149
15150 2017-03-21  Simon Marchi  <simon.marchi@ericsson.com>
15151
15152         * windows-nat.c (do_windows_fetch_inferior_registers): Add
15153         windows_thread_info parameter and use it instead of
15154         current_thread.
15155         (windows_fetch_inferior_registers): Don't set current_thread,
15156         pass the thread to do_windows_fetch_inferior_registers.  Use
15157         ptid from regcache instead of inferior_ptid.
15158         (do_windows_store_inferior_registers): Add windows_thread_info
15159         parameter and use it instead of current_thread.
15160         (windows_store_inferior_registers): Don't set current_thread,
15161         pass the thread to do_windows_store_inferior_registers.  Use
15162         ptid from regcache instead of inferior_ptid.
15163
15164 2017-03-21  Simon Marchi  <simon.marchi@ericsson.com>
15165
15166         * ser-mingw.c (ser_windows_raw): Remove reference to
15167         struct serial::current_timeout.
15168
15169 2017-03-21  Ivo Raisr  <ivo.raisr@oracle.com>
15170
15171         PR tdep/20928
15172         * gdb/sparc-tdep.h (gdbarch_tdep) <sparc64_ccr_type>: New field.
15173         * gdb/sparc64-tdep.c (sparc64_ccr_type): New function.
15174         (sparc64_fsr_type): Fix %fsr decoding.
15175
15176 2017-03-21  Tim Wiederhake  <tim.wiederhake@intel.com>
15177
15178         * python/py-record-btrace.c (btpy_insn_data): Change return type
15179         for Python 2.
15180
15181 2017-03-20  Simon Marchi  <simon.marchi@polymtl.ca>
15182
15183         * spu-linux-nat.c (spu_fetch_inferior_registers,
15184         spu_store_inferior_registers): Use ptid from regcache, set and
15185         restore inferior_ptid.
15186         * spu-multiarch.c (spu_fetch_registers, spu_store_registers):
15187         Likewise.
15188
15189 2017-03-20  Simon Marchi  <simon.marchi@polymtl.ca>
15190
15191         * i386-linux-nat.c (fetch_register, store_register,
15192         i386_linux_fetch_inferior_registers,
15193         i386_linux_store_inferior_registers): Use ptid from regcache.
15194         * ia64-linux-nat.c (ia64_linux_fetch_register,
15195         ia64_linux_store_register): Likewise.
15196         * inf-ptrace.c (inf_ptrace_fetch_register,
15197         inf_ptrace_store_register): Likewise.
15198         * m32r-linux-nat.c (m32r_linux_fetch_inferior_registers,
15199         m32r_linux_store_inferior_registers): Likewise.
15200         * m68k-bsd-nat.c (m68kbsd_fetch_inferior_registers,
15201         m68kbsd_store_inferior_registers): Likewise.
15202         * m68k-linux-nat.c (fetch_register, store_register,
15203         m68k_linux_fetch_inferior_registers,
15204         m68k_linux_store_inferior_registers): Likewise.
15205         * m88k-bsd-nat.c (m88kbsd_fetch_inferior_registers,
15206         m88kbsd_store_inferior_registers): Likewise.
15207         * mips-fbsd-nat.c (mips_fbsd_fetch_inferior_registers,
15208         mips_fbsd_store_inferior_registers): Likewise.
15209         * mips-linux-nat.c (mips64_linux_regsets_fetch_registers,
15210         mips64_linux_regsets_store_registers): Likewise.
15211         * mips-nbsd-nat.c (mipsnbsd_fetch_inferior_registers,
15212         mipsnbsd_store_inferior_registers): Likewise.
15213         * mips-obsd-nat.c (mips64obsd_fetch_inferior_registers,
15214         mips64obsd_store_inferior_registers): Likewise.
15215         * nto-procfs.c (procfs_fetch_registers, procfs_store_registers):
15216         Likewise.
15217         * ppc-fbsd-nat.c (ppcfbsd_fetch_inferior_registers,
15218         ppcfbsd_store_inferior_registers): Likewise.
15219         * ppc-linux-nat.c (ppc_linux_fetch_inferior_registers,
15220         ppc_linux_store_inferior_registers): Likewise.
15221         * ppc-nbsd-nat.c (ppcnbsd_fetch_inferior_registers,
15222         ppcnbsd_store_inferior_registers): Likewise.
15223         * ppc-obsd-nat.c (ppcobsd_fetch_registers,
15224         ppcobsd_store_registers): Likewise.
15225         * procfs.c (procfs_fetch_registers, procfs_store_registers):
15226         Likewise.
15227         * ravenscar-thread.c (ravenscar_fetch_registers,
15228         ravenscar_store_registers, ravenscar_prepare_to_store):
15229         Likewise.
15230         * record-btrace.c (record_btrace_fetch_registers,
15231         record_btrace_store_registers, record_btrace_prepare_to_store):
15232         Likewise.
15233         * remote-sim.c (gdbsim_fetch_register, gdbsim_store_register):
15234         Lookup inferior using ptid from regcache, instead of
15235         current_inferior.
15236         * remote.c (remote_fetch_registers, remote_store_registers): Use
15237         ptid from regcache.
15238         * rs6000-nat.c (fetch_register, store_register): Likewise.
15239         * s390-linux-nat.c (s390_linux_fetch_inferior_registers,
15240         s390_linux_store_inferior_registers): Likewise.
15241         * sh-nbsd-nat.c (shnbsd_fetch_inferior_registers,
15242         shnbsd_store_inferior_registers): Likewise.
15243         * sol-thread.c (sol_thread_fetch_registers,
15244         sol_thread_store_registers): Likewise.
15245         * sparc-nat.c (sparc_fetch_inferior_registers,
15246         sparc_store_inferior_registers): Likewise.
15247         * tilegx-linux-nat.c (fetch_inferior_registers,
15248         store_inferior_registers): Likewise.
15249         * vax-bsd-nat.c (vaxbsd_fetch_inferior_registers,
15250         vaxbsd_store_inferior_registers): Likewise.
15251         * xtensa-linux-nat.c (fetch_gregs, store_gregs, fetch_xtregs,
15252         store_xtregs): Likewise.
15253
15254 2017-03-20  Artemiy Volkov  <artemiyv@acm.org>
15255
15256         PR gdb/14441
15257         * NEWS: Mention support for rvalue references in GDB and python.
15258         * doc/gdb.texinfo (C Plus Plus Expressions): Mention that GDB
15259         supports both lvalue and rvalue references.
15260
15261 2017-03-20  Artemiy Volkov  <artemiyv@acm.org>
15262
15263         PR gdb/14441
15264         * gdbtypes.c (rank_one_type): Implement overloading
15265         resolution rules regarding rvalue references.
15266
15267 2017-03-20  Artemiy Volkov  <artemiyv@acm.org>
15268
15269         PR gdb/14441
15270         * aarch64-tdep.c (aarch64_type_align)
15271         (aarch64_extract_return_value, aarch64_store_return_value): Change
15272         lvalue reference type checks to general reference type checks.
15273         * amd64-tdep.c (amd64_classify): Likewise.
15274         * amd64-windows-tdep.c (amd64_windows_passed_by_integer_register):
15275         Likewise.
15276         * arm-tdep.c (arm_type_align, arm_extract_return_value)
15277         (arm_store_return_value): Likewise.
15278         * ax-gdb.c (gen_fetch, gen_cast): Likewise.
15279         * c-typeprint.c (c_print_type): Likewise.
15280         * c-varobj.c (adjust_value_for_child_access, c_value_of_variable)
15281         (cplus_number_of_children, cplus_describe_child): Likewise.
15282         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
15283         * completer.c (expression_completer): Likewise.
15284         * cp-support.c (make_symbol_overload_list_adl_namespace):
15285         Likewise.
15286         * darwin-nat-info.c (info_mach_region_command): Likewise.
15287         * dwarf2loc.c (entry_data_value_coerce_ref)
15288         (value_of_dwarf_reg_entry): Likewise.
15289         * eval.c (ptrmath_type_p, evaluate_subexp_standard)
15290         (evaluate_subexp_for_address, evaluate_subexp_for_sizeof):
15291         Likewise.
15292         * findvar.c (extract_typed_address, store_typed_address):
15293         Likewise.
15294         * gdbtypes.c (rank_one_type): Likewise.
15295         * hppa-tdep.c (hppa64_integral_or_pointer_p): Likewise.
15296         * infcall.c (value_arg_coerce): Likewise.
15297         * language.c (pointer_type): Likewise.
15298         * m32c-tdep.c (m32c_reg_arg_type, m32c_m16c_address_to_pointer):
15299         Likewise.
15300         * m88k-tdep.c (m88k_integral_or_pointer_p): Likewise.
15301         * mn10300-tdep.c (mn10300_type_align): Likewise.
15302         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
15303         * ppc-sysv-tdep.c (do_ppc_sysv_return_value)
15304         (ppc64_sysv_abi_push_param, ppc64_sysv_abi_return_value):
15305         Likewise.
15306         * printcmd.c (print_formatted, x_command): Likewise.
15307         * python/py-type.c (typy_get_composite, typy_template_argument):
15308         Likewise.
15309         * python/py-value.c (valpy_referenced_value)
15310         (valpy_get_dynamic_type, value_has_field): Likewise.
15311         * s390-linux-tdep.c (s390_function_arg_integer): Likewise.
15312         * sparc-tdep.c (sparc_integral_or_pointer_p): Likewise.
15313         * sparc64-tdep.c (sparc64_integral_or_pointer_p): Likewise.
15314         * spu-tdep.c (spu_scalar_value_p): Likewise.
15315         * symtab.c (lookup_symbol_aux): Likewise.
15316         * typeprint.c (whatis_exp, print_type_scalar): Likewise.
15317         * valarith.c (binop_types_user_defined_p, unop_user_defined_p):
15318         Likewise.
15319         * valops.c (value_cast_pointers, value_cast)
15320         (value_reinterpret_cast, value_dynamic_cast, value_addr, typecmp)
15321         (value_struct_elt, value_struct_elt_bitpos)
15322         (value_find_oload_method_list, find_overload_match)
15323         (value_rtti_indirect_type): Likewise.
15324         * valprint.c (val_print_scalar_type_p, generic_val_print):
15325         Likewise.
15326         * value.c (value_actual_type, value_as_address, unpack_long)
15327         (pack_long, pack_unsigned_long, coerce_ref_if_computed)
15328         (coerce_ref): Likewise.
15329         * varobj.c (varobj_get_value_type): Likewise.
15330
15331 2017-03-20  Artemiy Volkov  <artemiyv@acm.org>
15332
15333         PR gdb/14441
15334         * doc/python.texi (Types in Python): Add TYPE_CODE_RVALUE_REF to
15335         table of constants.
15336         * python/lib/gdb/command/explore.py: Support exploring values
15337         of rvalue reference types.
15338         * python/lib/gdb/types.py: Implement get_basic_type() for
15339         rvalue reference types.
15340         * python/py-type.c (pyty_codes) <TYPE_CODE_RVALUE_REF>: New
15341         constant.
15342         * python/py-value.c (valpy_getitem): Add an rvalue reference
15343         check.
15344         (valpy_reference_value): Add new parameter "refcode".
15345         (valpy_lvalue_reference_value, valpy_rvalue_reference_value):
15346         New wrappers for valpy_reference_value().
15347         * python/py-xmethods.c (gdbpy_get_xmethod_result_type)
15348         (gdbpy_invoke_xmethod): Likewise.
15349
15350 2017-03-20  Artemiy Volkov  <artemiyv@acm.org>
15351
15352         PR gdb/14441
15353         * dwarf2read.c (process_die, read_type_die_1): Handle the
15354         DW_TAG_rvalue_reference_type DIE.
15355         (read_tag_reference_type): Add new parameter "refcode".
15356
15357 2017-03-20  Artemiy Volkov  <artemiyv@acm.org>
15358
15359         PR gdb/14441
15360         * c-typeprint.c (c_print_type, c_type_print_varspec_prefix)
15361         (c_type_print_modifier, c_type_print_varspec_suffix)
15362         (c_type_print_base): Support printing rvalue reference types.
15363         * c-valprint.c (c_val_print, c_value_print): Support printing
15364         rvalue reference values.
15365
15366 2017-03-20  Artemiy Volkov  <artemiyv@acm.org>
15367
15368         PR gdb/14441
15369         * cp-name-parser.y (ptr_operator): Handle the '&&' token in
15370         typename.
15371         * cp-support.c (replace_typedefs): Handle
15372         DEMANGLE_COMPONENT_RVALUE_REFERENCE.
15373         * python/py-type.c (typy_lookup_type): Likewise.
15374
15375 2017-03-20  Artemiy Volkov  <artemiyv@acm.org>
15376
15377         PR gdb/14441
15378         * c-exp.y (ptr_operator): Handle the '&&' token in the typename.
15379         * parse.c (insert_type): Change assert statement.
15380         (follow_types): Handle rvalue reference types.
15381         * parser-defs.h (enum type_pieces) <tp_rvalue_reference>: New
15382         constant.
15383
15384 2017-03-20  Artemiy Volkov  <artemiyv@acm.org>
15385
15386         PR gdb/14441
15387         * ada-lang.c (ada_evaluate_subexp): Adhere to the new
15388         value_ref() interface.
15389         * c-valprint.c (c_value_print): Likewise.
15390         * infcall.c (value_arg_coerce): Likewise.
15391         * python/py-value.c (valpy_reference_value): Likewise.
15392         * valops.c (value_cast, value_reinterpret_cast)
15393         (value_dynamic_cast, typecmp): Likewise.
15394         (value_ref): Parameterize by kind of return value reference type.
15395         * value.h (value_ref): Add new parameter "refcode".
15396
15397 2017-03-20  Artemiy Volkov  <artemiyv@acm.org>
15398
15399         PR gdb/14441
15400         * dwarf2read.c (read_tag_reference_type): Use
15401         lookup_lvalue_reference_type() instead of lookup_reference_type().
15402         * eval.c (evaluate_subexp_standard): Likewise.
15403         * f-exp.y: Likewise.
15404         * gdbtypes.c (make_reference_type, lookup_reference_type):
15405         Generalize with rvalue reference types.
15406         (lookup_lvalue_reference_type, lookup_rvalue_reference_type): New
15407         convenience wrappers for lookup_reference_type().
15408         * gdbtypes.h (make_reference_type, lookup_reference_type): Add a
15409         reference kind parameter.
15410         (lookup_lvalue_reference_type, lookup_rvalue_reference_type): Add
15411         wrappers for lookup_reference_type().
15412         * guile/scm-type.c (gdbscm_type_reference): Use
15413         lookup_lvalue_reference_type() instead of lookup_reference_type().
15414         * guile/scm-value.c (gdbscm_value_dynamic_type): Likewise.
15415         * parse.c (follow_types): Likewise.
15416         * python/py-type.c (typy_reference, typy_lookup_type): Likewise.
15417         * python/py-value.c (valpy_get_dynamic_type, valpy_getitem):
15418         Likewise.
15419         * python/py-xmethods.c (gdbpy_get_xmethod_result_type)
15420         (gdbpy_invoke_xmethod): Likewise.
15421         * stabsread.c: Provide extra argument to make_reference_type()
15422         call.
15423         * valops.c (value_ref, value_rtti_indirect_type): Use
15424         lookup_lvalue_reference_type() instead of lookup_reference_type().
15425
15426 2017-03-20  Artemiy Volkov  <artemiyv@acm.org>
15427
15428         PR gdb/14441
15429         * gdbtypes.h (enum type_code) <TYPE_CODE_RVALUE_REF>: New constant.
15430         (TYPE_IS_REFERENCE): New macro.
15431         (struct type): Add rvalue_reference_type field.
15432         (TYPE_RVALUE_REFERENCE_TYPE): New macro.
15433
15434 2017-03-20  Marc-Andre Laperle  <marc-andre.laperle@ericsson.com>
15435
15436         * NEWS: Add an entry about new '-file-list-shared-libraries' command.
15437         * mi/mi-cmd-file.c (mi_cmd_file_list_shared_libraries):
15438         New function definition.
15439         * mi/mi-cmds.c (mi_cmds): Add -file-list-shared-libraries command.
15440         * mi/mi-cmds.h (mi_cmd_file_list_shared_libraries):
15441         New function declaration.
15442         * mi/mi-interp.c (mi_output_solib_attribs): New Function.
15443         * mi/mi-interp.h: New file.
15444         * solib.c (info_sharedlibrary_command): Replace for loop with
15445         ALL_SO_LIBS macro
15446         * solib.h (update_solib_list): New function declaration.
15447         (so_list_head): Move macro.
15448         * solist.h (ALL_SO_LIBS): New macro.
15449
15450 2017-03-20  Marc-Andre Laperle  <marc-andre.laperle@ericsson.com>
15451
15452         * infcmd.c (post_create_inferior): Remove unused argument in
15453         call to solib_add.
15454         * remote.c (remote_start_remote): Likewise.
15455         * solib-frv.c (frv_fetch_objfile_link_map): Likewise.
15456         * solib-svr4.c: (svr4_fetch_objfile_link_map): Likewise.
15457         (enable_break): Likewise.
15458         * solib.c (update_solib_list): Remove unused target argument
15459         and its documentation.
15460         (solib_add): Remove unused target argument.  Remove unused
15461         argument in call to update_solib_list.
15462         (info_sharedlibrary_command): Remove unused argument in call
15463         to update_solib_list.
15464         (sharedlibrary_command): Remove unused argument in call to
15465         solib_add.
15466         (handle_solib_event): Likewise.
15467         (reload_shared_libraries): Likewise.
15468         * solib.h (solib_add): Remove unused target argument.
15469
15470 2017-03-20  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15471
15472         * s390-linux-tdep.c (is_rsi, is_rie): Remove functions.
15473         (s390_displaced_step_fixup): Cover relative branches with the
15474         default fixup handling.  This fixes lack of support for some
15475         relative branch instructions.
15476
15477 2017-03-17  Simon Marchi  <simon.marchi@polymtl.ca>
15478
15479         * i386-gnu-nat.c (gnu_fetch_registers, gnu_store_registers): Use
15480         ptid from regcache.
15481
15482 2017-03-17  Simon Marchi  <simon.marchi@polymtl.ca>
15483
15484         * i386-darwin-nat.c (i386_darwin_fetch_inferior_registers,
15485         i386_darwin_store_inferior_registers): Use ptid from regcache.
15486
15487 2017-03-17  Simon Marchi  <simon.marchi@polymtl.ca>
15488
15489         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers,
15490         i386bsd_store_inferior_registers): Use ptid from regcache.
15491
15492 2017-03-17  Simon Marchi  <simon.marchi@polymtl.ca>
15493
15494         * hppa-obsd-nat.c (hppaobsd_fetch_registers,
15495         hppaobsd_store_registers): Use ptid from regcache.
15496
15497 2017-03-17  Simon Marchi  <simon.marchi@polymtl.ca>
15498
15499         * hppa-nbsd-nat.c (hppanbsd_fetch_registers,
15500         hppanbsd_store_registers): Use ptid from regcache.
15501
15502 2017-03-17  Simon Marchi  <simon.marchi@polymtl.ca>
15503
15504         * hppa-linux-nat.c (fetch_register, store_register): Use ptid
15505         from regcache.  Use get_ptrace_pid.
15506
15507 2017-03-17  Simon Marchi  <simon.marchi@polymtl.ca>
15508
15509         * corelow.c (get_core_register_section): Use ptid from regcache,
15510         update doc.
15511
15512 2017-03-17  Simon Marchi  <simon.marchi@polymtl.ca>
15513
15514         * bsd-uthread.c (bsd_uthread_fetch_registers,
15515         bsd_uthread_store_registers): Use ptid from regcache, set and
15516         restore inferior_ptid.
15517
15518 2017-03-17  Simon Marchi  <simon.marchi@polymtl.ca>
15519
15520         * arm-nbsd-nat.c (fetch_register, fetch_regs, fetch_fp_register,
15521         fetch_fp_regs, store_register, store_regs, store_fp_register,
15522         store_fp_regs): Use ptid from regcache.
15523
15524 2017-03-17  Simon Marchi  <simon.marchi@polymtl.ca>
15525
15526         * arm-linux-nat.c (fetch_fpregs, store_fpregs, fetch_regs,
15527         store_regs, fetch_wmmx_regs, store_wmmx_regs, fetch_vfp_regs,
15528         store_vfp_regs): Use ptid from regcache.
15529
15530 2017-03-17  Pedro Alves  <palves@redhat.com>
15531
15532         PR remote/21188
15533         * ser-base.c (ser_base_wait_for): Add comment.
15534         (do_ser_base_readchar): Improve comment based on the ser-unix.c's
15535         version.
15536         * ser-unix.c (hardwire_raw): Remove reference to
15537         scb->current_timeout.
15538         (wait_for, do_hardwire_readchar, hardwire_readchar): Delete.
15539         (hardwire_ops): Install ser_base_readchar instead of
15540         hardwire_readchar.
15541         * serial.h (struct serial) <current_timeout, timeout_remaining>:
15542         Remove fields.
15543
15544 2017-03-17  Jonah Graham  <jonah@kichwacoders.com>
15545
15546         PR gdb/19637
15547         * python/lib/gdb/printer/bound_registers.py: Add support for
15548         Python 3.
15549
15550 2017-03-16  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15551
15552         * dwarf2loc.c (indirect_synthetic_pointer): Get data type of
15553         pointed-to DIE and pass it to dwarf2_evaluate_loc_desc_full.
15554         (dwarf2_evaluate_loc_desc_full): New parameter subobj_type; rename
15555         byte_offset to subobj_byte_offset.  Fix the handling of
15556         DWARF_VALUE_STACK on big-endian targets when coming via an
15557         implicit pointer.
15558         (dwarf2_evaluate_loc_desc): Adjust call to
15559         dwarf2_evaluate_loc_desc_full.
15560         * dwarf2loc.h (dwarf2_fetch_die_type_sect_off): New declaration.
15561         * dwarf2read.c (dwarf2_fetch_die_type_sect_off): New function.
15562
15563 2017-03-16  Yao Qi  <yao.qi@linaro.org>
15564
15565         * arm-tdep.c (thumb_record_misc): Decode CBNZ, CBZ, REV16,
15566         and REVSH instructions.
15567
15568 2017-03-16  Yao Qi  <yao.qi@linaro.org>
15569
15570         * arm-tdep.c [GDB_SELF_TEST]: include "selftests.h".
15571         (arm_record_test): Declare.
15572         (_initialize_arm_tdep) [GDB_SELF_TEST]: call register_self_test.
15573         (thumb_record_ld_st_reg_offset): Rewrite the opcode matching to
15574         align with the manual.
15575         (thumb_record_misc): Adjust the code order to align with the
15576         manual.
15577         (thumb2_record_decode_insn_handler): Fix instruction matching.
15578         (instruction_reader_thumb): New class.
15579         (arm_record_test): New function.
15580
15581 2017-03-16  Yao Qi  <yao.qi@linaro.org>
15582
15583         * arm-tdep.c (abstract_memory_reader): New class.
15584         (instruction_reader): New class.
15585         (extract_arm_insn): Add argument 'reader'.  Callers updated.
15586         (decode_insn): Likewise.
15587
15588 2017-03-16  Doug Evans  <dje@google.com>
15589
15590         * guile/scm-lazy-string.c (lazy_string_smob): Clarify use of LENGTH
15591         member.  Change type of TYPE member to SCM.  All uses updated.
15592         (lsscm_make_lazy_string_smob): Add assert.
15593         (lsscm_make_lazy_string): Flag bad length values.
15594         (lsscm_elt_type): New function.
15595         (gdbscm_lazy_string_to_value): Rewrite to use
15596         lsscm_safe_lazy_string_to_value.
15597         (lsscm_safe_lazy_string_to_value): Fix handling of TYPE_CODE_PTR.
15598         * guile/scm-value.c (gdbscm_value_to_lazy_string): Flag bad length
15599         values.  Fix TYPE_CODE_PTR.  Handle TYPE_CODE_ARRAY.  Handle typedefs
15600         in incoming type.
15601         * guile/guile-internal.h (tyscm_scm_to_type): Declare.
15602         * guile/scm-type.c (tyscm_scm_to_type): New function.
15603
15604 2017-03-15  Doug Evans  <dje@google.com>
15605
15606         PR python/17728, python/18439, python/18779
15607         * python/py-lazy-string.c (lazy_string_object): Clarify use of LENGTH
15608         member.  Change type of TYPE member to PyObject *.  All uses updated.
15609         (stpy_convert_to_value): Fix handling of TYPE_CODE_PTR.
15610         (gdbpy_create_lazy_string_object): Flag bad length values.
15611         Handle TYPE_CODE_ARRAY with possibly different user-provided length.
15612         Handle typedefs in incoming type.
15613         (stpy_lazy_string_elt_type): New function.
15614         (gdbpy_extract_lazy_string): Call it.
15615         * python/py-value.c (valpy_lazy_string): Flag bad length values.
15616         Fix handling of TYPE_CODE_PTR.  Handle TYPE_CODE_ARRAY.  Handle
15617         typedefs in incoming type.
15618
15619 2017-03-16  Doug Evans  <dje@google.com>
15620
15621         * guile/guile-internal.h (tyscm_scm_to_type): Declare.
15622         * guile/scm-type.c (tyscm_scm_to_type): New function.
15623
15624 2017-03-16  Jiong Wang  <jiong.wang@arm.com>
15625
15626         * inf-ptrace.c (inf_ptrace_peek_poke): Change the type to
15627         "ULONGEST" for "skip".
15628
15629 2017-03-14  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15630
15631         PR gdb/21220
15632         * inf-ptrace.c (inf_ptrace_xfer_partial): In "case
15633         TARGET_OBJECT_MEMORY", extract the logic for ptrace peek/poke...
15634         (inf_ptrace_peek_poke): ...here.  New function.  Now also loop
15635         over ptrace peek/poke until end of buffer or error.
15636
15637 2017-03-14  Simon Marchi  <simon.marchi@ericsson.com>
15638
15639         * parse.c (length_of_subexp): Make static.
15640         * parser-defs.h (length_of_subexp): Remove.
15641
15642 2017-03-14  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15643
15644         * linux-nat.c (linux_proc_xfer_partial): Handle write operations
15645         as well.
15646
15647 2017-03-14  Pedro Alves  <palves@redhat.com>
15648
15649         * cp-name-parser.y (cp_demangled_name_to_comp): Update comment.
15650         (main): Use std::unique_ptr.  Remove calls to
15651         cp_demangled_name_parse_free.
15652
15653 2017-03-13  Simon Marchi  <simon.marchi@polymtl.ca>
15654
15655         * alpha-bsd-nat.c (alphabsd_fetch_inferior_registers,
15656         alphabsd_store_inferior_registers): Use regcache->ptid instead
15657         of inferior_ptid.
15658
15659 2017-03-13  Simon Marchi  <simon.marchi@polymtl.ca>
15660
15661         * aix-thread.c (aix_thread_fetch_registers,
15662         aix_thread_store_registers): Use regcache->ptid instead of
15663         inferior_ptid.
15664
15665 2017-03-13  Simon Marchi  <simon.marchi@polymtl.ca>
15666
15667         * aarch64-linux-nat.c (fetch_gregs_from_thread,
15668         store_gregs_to_thread, fetch_fpregs_from_thread,
15669         store_fpregs_to_thread): Use regcache->ptid instead of
15670         inferior_ptid.
15671
15672 2017-03-13  Simon Marchi  <simon.marchi@polymtl.ca>
15673
15674         * amd64-linux-nat.c (amd64_linux_fetch_inferior_registers,
15675         amd64_linux_fetch_inferior_registers): Use regcache->ptid
15676         instead of inferior_ptid.
15677
15678 2017-03-13  Simon Marchi  <simon.marchi@polymtl.ca>
15679
15680         * target.c (target_fetch_registers, target_store_registers): Add
15681         assert.
15682
15683 2017-03-13  Simon Marchi  <simon.marchi@polymtl.ca>
15684
15685         * regcache.h (regcache_get_ptid): New function.
15686         * regcache.c (regcache_get_ptid): New function.
15687
15688 2017-03-13  Mark Wielaard  <mark@klomp.org>
15689
15690         * cp-name-parser.y (make_empty): Initialize d_printing to zero.
15691
15692 2017-03-10  Keith Seitz  <keiths@redhat.com>
15693
15694         PR c++/8218
15695         * c-typeprint.c (cp_type_print_method_args): Skip artificial arguments.
15696
15697 2017-03-08  Pedro Alves  <palves@redhat.com>
15698
15699         PR gdb/18360
15700         * infrun.c (start_step_over, do_target_resume, resume)
15701         (restart_threads): Assert we're not resuming a thread that is
15702         meant to be stopped.
15703         (infrun_thread_stop_requested_callback): Delete.
15704         (infrun_thread_stop_requested): If the thread is internally
15705         stopped, queue a pending stop event and clear the thread's
15706         inline-frame state.
15707         (handle_stop_requested): New function.
15708         (handle_syscall_event, handle_inferior_event_1): Use
15709         handle_stop_requested.
15710         (handle_stop_requested): New function.
15711         (handle_signal_stop): Set the thread's stop_signal here instead of
15712         at caller.
15713         (finish_step_over): Clear step over info unconditionally.
15714         (handle_signal_stop): If the user had interrupted the event
15715         thread, consider the stop a random signal.
15716         (handle_signal_stop) <signal arrived while stepping over
15717         breakpoint>: Don't restart threads here.
15718         (stop_waiting): Don't clear step-over info here.
15719
15720 2017-03-08  Pedro Alves  <palves@redhat.com>
15721
15722         PR 21206
15723         * common/gdb_unlinker.h (unlinker::unlinker): Attribute nonnull
15724         goes to argument 2, not 1.
15725
15726 2017-03-08  Pedro Alves  <palves@redhat.com>
15727
15728         PR cli/21218
15729         * top.c (gdb_readline_wrapper): Avoid passing NULL to
15730         display_gdb_prompt.
15731         (command_line_input): Add comment.
15732
15733 2017-03-08  Pedro Alves  <palves@redhat.com>
15734
15735         PR tui/21216
15736         * tui/tui-file.c (tui_file::write): New.
15737         * tui/tui-file.h (tui_file): Override "write".
15738         * tui/tui-io.c (do_tui_putc, update_start_line): New functions,
15739         factored out from ...
15740         (tui_puts): ... here.
15741         (tui_putc): Use them.
15742         (tui_write): New function.
15743         * tui/tui-io.h (tui_write): Declare.
15744
15745 2017-03-07  Sergio Durigan Junior  <sergiodj@redhat.com>
15746
15747         * Makefile.in (SFILES): Replace "environ.c" with
15748         "common/environ.c".
15749         (HFILES_NO_SRCDIR): Likewise, for "environ.h".
15750         * environ.c: Include "common-defs.h" instead of "defs.h.  Moved
15751         to...
15752         * common/environ.c: ... here.
15753         * environ.h: Moved to...
15754         * common/environ.h: ... here.
15755
15756 2017-03-07  Peter Bergner  <bergner@vnet.ibm.com>
15757
15758         * gdbarch.sh (pstring_ptr): New static function.
15759         (gdbarch_disassembler_options): Use it.
15760         (gdbarch_verify_disassembler_options): Print valid_disassembler_options,
15761         not valid_disassembler_option->name.
15762         * gdbarch.c: Regenerate.
15763
15764 2017-03-07  Peter Bergner  <bergner@vnet.ibm.com>
15765
15766         * config/powerpc/ppc64-linux.mh (MH_CFLAGS): Delete.
15767
15768 2017-03-07  Pedro Alves  <palves@redhat.com>
15769
15770         * tui/tui-regs.c (tui_restore_gdbout): Don't delete gdb_stdout.
15771
15772 2017-03-07  Walfred Tedeschi  <walfred.tedeschi@intel.com>
15773
15774         * i387-tdep.h (i387_reset_bnd_regs): Add function definition.
15775         * i387-tdep.c (i387_reset_bnd_regs): Add function implementation.
15776         * i386-tdep.c (i386_push_dummy_call): Call i387_reset_bnd_regs.
15777         * amd64-tdep.c (amd64_push_dummy_call): Call i387_reset_bnd_regs.
15778
15779 2017-03-06  Simon Marchi  <simon.marchi@ericsson.com>
15780
15781         * xtensa-linux-nat.c (fetch_gregs): Remove const.
15782
15783 2017-03-03  Simon Marchi  <simon.marchi@ericsson.com>
15784
15785         * remote.c (remote_add_target_side_commands): Use range-based
15786         for loop.
15787
15788 2017-03-03  Yao Qi  <yao.qi@linaro.org>
15789
15790         PR gdb/21165
15791         * ada-valprint.c (ada_val_print_ref): Call value_fetch_lazy if
15792         value is lazy.
15793         * valprint.c (common_val_print): Likewise.
15794
15795 2017-02-28  Peter Bergner  <bergner@vnet.ibm.com>
15796
15797         * NEWS: Mention new set/show disassembler-options commands.
15798         * doc/gdb.texinfo: Document new set/show disassembler-options commands.
15799         * disasm.c: Include "arch-utils.h", "gdbcmd.h" and "safe-ctype.h".
15800         (prospective_options): New static variable.
15801         (gdb_disassembler::gdb_disassembler): Initialize
15802         m_di.disassembler_options.
15803         (gdb_buffered_insn_length_init_dis): Initilize di->disassembler_options.
15804         (get_disassembler_options): New function.
15805         (set_disassembler_options): Likewise.
15806         (set_disassembler_options_sfunc): Likewise.
15807         (show_disassembler_options_sfunc): Likewise.
15808         (disassembler_options_completer): Likewise.
15809         (_initialize_disasm): Likewise.
15810         * disasm.h (get_disassembler_options): New prototype.
15811         (set_disassembler_options): Likewise.
15812         * gdbarch.sh (gdbarch_disassembler_options): New variable.
15813         (gdbarch_verify_disassembler_options): Likewise.
15814         * gdbarch.c: Regenerate.
15815         * gdbarch.h: Likewise.
15816         * arm-tdep.c (num_disassembly_options): Delete.
15817         (set_disassembly_style): Likewise.
15818         (arm_disassembler_options): New static variable.
15819         (set_disassembly_style_sfunc): Convert short style name into long
15820         option name.  Call set_disassembler_options.
15821         (show_disassembly_style_sfunc): New function.
15822         (arm_gdbarch_init): Call set_gdbarch_disassembler_options and
15823         set_gdbarch_verify_disassembler_options.
15824         (_initialize_arm_tdep): Delete regnames variable and update callers.
15825         (arm_disassembler_options): Initialize.
15826         (disasm_options): New variable.
15827         (num_disassembly_options): Rename from this...
15828         (num_disassembly_styles): ...to this.  Compute by scanning through
15829         disasm_options.
15830         (valid_disassembly_styles): Initialize using disasm_options.
15831         Remove calls to parse_arm_disassembler_option, get_arm_regnames and
15832         set_arm_regname_option.
15833         Pass show_disassembly_style_sfunc to the "disassembler" setshow command.
15834         * rs6000-tdep.c (powerpc_disassembler_options): New static variable.
15835         (rs6000_gdbarch_init): Call set_gdbarch_disassembler_options and
15836         set_gdbarch_verify_disassembler_options.
15837         * s390-tdep.c (s390_disassembler_options): New static variable.
15838         (s390_gdbarch_init):all set_gdbarch_disassembler_options and
15839         set_gdbarch_verify_disassembler_options.
15840
15841 2017-02-27  Simon Marchi  <simon.marchi@ericsson.com>
15842
15843         * remote.c (remote_add_target_side_condition): Remove "struct"
15844         keyword from range-based for loop.
15845
15846 2017-02-27  Simon Marchi  <simon.marchi@ericsson.com>
15847
15848         * remote.c (remote_add_target_side_condition): Use range-based
15849         for loop.  Update comment.
15850
15851 2017-02-27  Yao Qi  <yao.qi@linaro.org>
15852
15853         * f-typeprint.c (f_print_type): Check "varstring" is empty first.
15854
15855 2017-02-26  Alan Hayward  <alan.hayward@arm.com>
15856
15857         * regcache.c (regcache_raw_update): New function.
15858         (regcache_raw_read): Move code to regcache_raw_update.
15859         * regcache.h (regcache_raw_update): New declaration.
15860         * remote.c (remote_prepare_to_store): Call regcache_raw_update.
15861
15862 2017-02-26  Jan Kratochvil  <jan.kratochvil@redhat.com>
15863
15864         * dwarf2read.c (create_debug_type_hash_table): Initialize
15865         header.signature and header.type_offset_in_tu.
15866
15867 2017-02-24  Pedro Alves  <palves@redhat.com>
15868
15869         * symtab.c (make_file_symbol_completion_list_1): Use
15870         add_symtab_completions.
15871
15872 2017-02-24  Alan Hayward  <alan.hayward@arm.com>
15873
15874         * stack.c (frame_info): Use frame_unwind_register_value to avoid buf.
15875
15876 2017-02-24  Alan Hayward  <alan.hayward@arm.com>
15877
15878         * i386-tdep.c (i386_pseudo_register_read_into_value): Use
15879         I386_MAX_REGISTER_SIZE.
15880         (i386_pseudo_register_write): Likewise.
15881         (i386_process_record): Likewise.
15882         * i387-tdep.c (i387_supply_xsave): Likewise.
15883         * m68k-linux-nat.c (fetch_register): Use M68K_MAX_REGISTER_SIZE.
15884         (store_register): Likewise.
15885
15886 2017-02-23  Pedro Alves  <palves@redhat.com>
15887
15888         * ada-lang.c: Include "common/function-view.h".
15889         (ada_iterate_over_symbols): Adjust to use function_view as
15890         callback type.
15891         (struct add_partial_datum, ada_complete_symbol_matcher): Delete.
15892         (ada_make_symbol_completion_list): Use a lambda.
15893         (ada_exc_search_name_matches): Delete.
15894         (name_matches_regex): New.
15895         (ada_add_global_exceptions): Use a lambda and name_matches_regex.
15896         * compile/compile-c-support.c: Include "common/function-view.h".
15897         (print_one_macro): Change prototype to accept a ui_file pointer.
15898         (write_macro_definitions): Use a lambda.
15899         * dwarf2read.c: Include "common/function-view.h".
15900         (dw2_map_expand_apply, dw2_map_symtabs_matching_filename)
15901         (dw2_expand_symtabs_matching): Adjust to use function_view as
15902         callback type.
15903         * language.h: Include "common/function-view.h".
15904         (struct language_defn) <la_iterate_over_symbols>: Adjust to use
15905         function_view as callback type.
15906         (LA_ITERATE_OVER_SYMBOLS): Remove DATA parameter.
15907         * linespec.c: Include "common/function-view.h".
15908         (collect_info::add_symbol): New method.
15909         (struct symbol_and_data_callback, iterate_inline_only, struct
15910         symbol_matcher_data, iterate_name_matcher): Delete.
15911         (iterate_over_all_matching_symtabs): Adjust to use function_view
15912         as callback type and lambdas.
15913         (iterate_over_file_blocks): Adjust to use function_view as
15914         callback type.
15915         (decode_compound_collector): Now a class with private fields.
15916         (decode_compound_collector::release_symbols): New method.
15917         (collect_one_symbol): Rename to...
15918         (decode_compound_collector::operator()): ... this and adjust.
15919         (lookup_prefix_sym): decode_compound_collector construction bits
15920         move to decode_compound_collector ctor.  Pass the
15921         decode_compound_collector object directly as callback.  Remove
15922         cleanups and use decode_compound_collector::release_symbols
15923         instead.
15924         (symtab_collector): Now a class with private fields.
15925         (symtab_collector::release_symtabs): New method.
15926         (add_symtabs_to_list): Rename to...
15927         (symtab_collector::operator()): ... this and adjust.
15928         (collect_symtabs_from_filename): symtab_collector construction
15929         bits move to symtab_collector ctor.  Pass the symtab_collector
15930         object directly as callback.  Remove cleanups and use
15931         symtab_collector::release_symtabs instead.
15932         (collect_symbols): Delete.
15933         (add_matching_symbols_to_info): Use lambdas.
15934         * macrocmd.c (print_macro_callback): Delete.
15935         (info_macro_command): Use a lambda.
15936         (info_macros_command): Pass print_macro_definition as callable
15937         directly.
15938         (print_one_macro): Remove 'ignore' parameter.
15939         (macro_list_command): Adjust.
15940         * macrotab.c (macro_for_each_data::fn): Now a function_view.
15941         (macro_for_each_data::user_data): Delete field.
15942         (foreach_macro): Adjust to call the function_view.
15943         (macro_for_each): Adjust to use function_view as callback type.
15944         (foreach_macro_in_scope): Adjust to call the function_view.
15945         (macro_for_each_in_scope): Adjust to use function_view as callback
15946         type.
15947         * macrotab.h: Include "common/function-view.h".
15948         (macro_callback_fn): Declare a prototype instead of a pointer.
15949         Remove "user_data" parameter.
15950         (macro_for_each, macro_for_each_in_scope): Adjust to use
15951         function_view as callback type.
15952         * psymtab.c (partial_map_expand_apply)
15953         (psym_map_symtabs_matching_filename, recursively_search_psymtabs):
15954         Adjust to use function_view as callback type and to return bool.
15955         (psym_expand_symtabs_matching): Adjust to use function_view as
15956         callback types.
15957         * symfile-debug.c (debug_qf_map_symtabs_matching_filename): Adjust
15958         to use function_view as callback type and to return bool.
15959         (debug_qf_expand_symtabs_matching): Adjust to use function_view as
15960         callback types.
15961         * symfile.c (expand_symtabs_matching): Adjust to use function_view
15962         as callback types.
15963         * symfile.h: Include "common/function-view.h".
15964         (expand_symtabs_file_matcher_ftype)
15965         (expand_symtabs_symbol_matcher_ftype)
15966         (expand_symtabs_exp_notify_ftype): Remove "data" parameter and
15967         return bool.
15968         (quick_symbol_functions::map_symtabs_matching_filename)
15969         (quick_symbol_functions::expand_symtabs_matching): Adjust to use
15970         function_view as callback type and return bool.
15971         (expand_symtabs_matching): Adjust to use function_view as callback
15972         type.
15973         (maintenance_expand_name_matcher)
15974         (maintenance_expand_file_matcher): Delete.
15975         (maintenance_expand_symtabs): Use lambdas.
15976         * symtab.c (iterate_over_some_symtabs): Adjust to use
15977         function_view as callback types and return bool.
15978         (iterate_over_symtabs): Likewise.  Use unique_xmalloc_ptr instead
15979         of a cleanup.
15980         (lookup_symtab_callback): Delete.
15981         (lookup_symtab): Use a lambda.
15982         (iterate_over_symbols): Adjust to use function_view as callback
15983         type.
15984         (struct search_symbols_data, search_symbols_file_matches)
15985         (search_symbols_name_matches): Delete.
15986         (search_symbols): Use a pair of lambdas.
15987         (struct add_name_data, add_macro_name, symbol_completion_matcher)
15988         (symtab_expansion_callback): Delete.
15989         (default_make_symbol_completion_list_break_on_1): Use lambdas.
15990         * symtab.h: Include "common/function-view.h".
15991         (iterate_over_some_symtabs): Adjust to use function_view as
15992         callback type and return bool.
15993         (iterate_over_symtabs): Adjust to use function_view as callback
15994         type.
15995         (symbol_found_callback_ftype): Remove 'data' parameter and return
15996         bool.
15997         (iterate_over_symbols): Adjust to use function_view as callback
15998         type.
15999
16000 2017-02-23  Pedro Alves  <palves@redhat.com>
16001
16002         * Makefile.in (SUBDIR_UNITTESTS_SRCS, SUBDIR_UNITTESTS_OBS): New.
16003         (%.o) <unittests/%.c>: New pattern.
16004         * configure.ac ($development): Add $(SUBDIR_UNITTESTS_OBS) to
16005         CONFIG_OBS, and $(SUBDIR_UNITTESTS_SRCS) to CONFIG_SRCS.
16006         * common/function-view.h: New file.
16007         * unittests/function-view-selftests.c: New file.
16008         * configure: Regenerate.
16009
16010 2017-02-23  Simon Marchi  <simon.marchi@ericsson.com>
16011
16012         * bsd-uthread.c (bsd_uthread_thread_alive): Use ptid instead of
16013         inferior_ptid.
16014         * go32-nat.c (go32_thread_alive): Likewise.
16015
16016 2017-02-23  Yao Qi  <yao.qi@linaro.org>
16017
16018         * varobj-iter.h (varobj_iter_delete): Call xfree instead of
16019         delete.
16020
16021 2017-02-23  Yao Qi  <yao.qi@linaro.org>
16022
16023         * varobj.c (varobj_clear_saved_item): Use delete instead of
16024         xfree.
16025         (update_dynamic_varobj_children): Likewise.
16026
16027 2017-02-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
16028
16029         * dwarf2read.c (dwarf2_record_block_ranges): Add forgotten BASEADDR.
16030
16031 2017-02-21  Simon Marchi  <simon.marchi@ericsson.com>
16032
16033         * common/enum-flags.h (enum_flags::enum_flags): Initialize
16034         m_enum_value to 0 in default constructor.
16035
16036 2017-02-21  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
16037
16038         * rs6000-tdep.c (LOAD_AND_RESERVE_MASK): Rename from LWARX_MASK.
16039         (STORE_CONDITIONAL_MASK): Rename from STWCX_MASK.
16040         (LBARX_INSTRUCTION, LHARX_INSTRUCTION, LQARX_INSTRUCTION,
16041         STBCX_INSTRUCTION, STHCX_INSTRUCTION, STQCX_INSTRUCTION): New defines.
16042         (IS_LOAD_AND_RESERVE_INSN, IS_STORE_CONDITIONAL_INSN): New macros.
16043         (ppc_displaced_step_copy_insn): Use IS_LOAD_AND_RESERVE_INSN.
16044         (ppc_deal_with_atomic_sequence): Use IS_LOAD_AND_RESERVE_INSN and
16045         IS_STORE_CONDITIONAL_INSN.
16046
16047 2017-02-21  Jan Kratochvil  <jan.kratochvil@redhat.com>
16048
16049         * dwarf2_rnglists_process: Initialize range_beginning and range_end.
16050
16051 2017-02-20  Jan Kratochvil  <jan.kratochvil@redhat.com>
16052
16053         * NEWS (Changes since GDB 7.12): Add DWARF-5.
16054
16055 2017-02-20  Jan Kratochvil  <jan.kratochvil@redhat.com>
16056
16057         * dwarf2read.c (skip_one_die, read_attribute_value)
16058         (dwarf2_const_value_attr, dump_die_shallow)
16059         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
16060         (skip_form_bytes, attr_form_is_constant): Handle DW_FORM_data16.
16061
16062 2017-02-20  Jan Kratochvil  <jan.kratochvil@redhat.com>
16063
16064         * dwarf2read.c (read_file_scope): Rename DW_MACRO_GNU_*.
16065         (dwarf_parse_macro_header): Accept DWARF version 5.
16066         (dwarf_decode_macro_bytes, dwarf_decode_macros): Rename DW_MACRO_GNU_*.
16067
16068 2017-02-20  Jan Kratochvil  <jan.kratochvil@redhat.com>
16069
16070         * block.c (call_site_for_pc): Rename DW_OP_GNU_*, DW_TAG_GNU_* and
16071         DW_AT_GNU_*.
16072         * common/common-exceptions.h (enum errors): Likewise.
16073         * dwarf2-frame.c (class dwarf_expr_executor): Likewise.
16074         * dwarf2expr.c (dwarf_block_to_dwarf_reg)
16075         (dwarf_expr_context::execute_stack_op): Likewise.
16076         * dwarf2expr.h (struct dwarf_expr_context, struct dwarf_expr_piece):
16077         Likewise.
16078         * dwarf2loc.c (dwarf_evaluate_loc_desc::get_base_type)
16079         (dwarf_evaluate_loc_desc::push_dwarf_reg_entry_value)
16080         (show_entry_values_debug, call_site_to_target_addr)
16081         (func_addr_to_tail_call_list, func_verify_no_selftailcall)
16082         (dwarf_expr_reg_to_entry_parameter, dwarf_entry_parameter_to_value)
16083         (entry_data_value_free_closure, value_of_dwarf_reg_entry)
16084         (value_of_dwarf_block_entry, indirect_pieced_value)
16085         (symbol_needs_eval_context::push_dwarf_reg_entry_value):
16086         (disassemble_dwarf_expression): Likewise.
16087         * dwarf2read.c (process_die, inherit_abstract_dies)
16088         (read_call_site_scope): Likewise.
16089         * gdbtypes.h (struct func_type, struct call_site_parameter)
16090         (struct call_site): Likewise.
16091         * stack.c (read_frame_arg): Likewise.
16092         * std-operator.def (OP_VAR_ENTRY_VALUE): Likewise.
16093
16094 2017-02-20  Jan Kratochvil  <jan.kratochvil@redhat.com>
16095
16096         * defs.h (read_unsigned_leb128): New declaration.
16097         * dwarf2loc.c (decode_debug_loclists_addresses): New function.
16098         (decode_debug_loc_dwo_addresses): Update DEBUG_LOC_* to DW_LLE_*.
16099         (dwarf2_find_location_expression): Call also
16100         decode_debug_loclists_addresses.  Handle DWARF-5 ULEB128 length.
16101         * dwarf2loc.h (dwarf2_version): New declaration.
16102         * dwarf2read.c (struct dwarf2_per_objfile): Add loclists, line_str,
16103         rnglists.
16104         (dwarf2_elf_names): Add .debug_loclists, .debug_line_str,
16105         .debug_rnglists.
16106         (struct dwop_section_names): Add loclists_dwo.
16107         (dwop_section_names): Add .debug_loclists.dwo.
16108         (struct comp_unit_head): Add unit_type, signature, type_offset_in_tu.
16109         (struct dwarf2_per_cu_data): Add dwarf_version.
16110         (struct dwo_sections): Add loclists.
16111         (struct attr_abbrev): Add implicit_const.
16112         (read_indirect_line_string): New declaration.
16113         (read_unsigned_leb128): Delete declaration.
16114         (rcuh_kind): New definition.
16115         (read_and_check_comp_unit_head): Change parameter
16116         is_debug_types_section to section_kind.
16117         (dwarf2_locate_sections): Handle loclists, line_str and rnglists.
16118         (read_comp_unit_head): Change parameter abfd to section, add parameter
16119         section_kind.  Handle DWARF-5.
16120         (error_check_comp_unit_head): Accept also DWARF version 5.
16121         (read_and_check_comp_unit_head): Change parameter
16122         is_debug_types_section to section_kind.
16123         (read_and_check_type_unit_head): Delete function.
16124         (read_abbrev_offset): Handle DWARF-5.
16125         (create_debug_type_hash_table): Add parameter section_kind.  Process
16126         only DW_UT_type.  Use signature and type_offset_in_tu from struct
16127         comp_unit_head.
16128         (create_debug_types_hash_table): Update create_debug_type_hash_table
16129         caller.
16130         (create_all_type_units): Call create_debug_type_hash_table.
16131         (read_cutu_die_from_dwo, init_cutu_and_read_dies): Change
16132         read_and_check_type_unit_head caller to read_and_check_comp_unit_head
16133         caller.
16134         (skip_one_die): Handle DW_FORM_implicit_const.
16135         (dwarf2_rnglists_process): New function.
16136         (dwarf2_ranges_process): Call dwarf2_rnglists_process for DWARF-5.
16137         (abbrev_table_read_table): Handle DW_FORM_implicit_const.
16138         (read_attribute_value): Handle DW_FORM_implicit_const,
16139         DW_FORM_line_strp.
16140         (read_attribute): Handle DW_FORM_implicit_const.
16141         (read_indirect_string_at_offset_from): New function from
16142         read_indirect_string_at_offset.
16143         (read_indirect_string_at_offset): Call
16144         read_indirect_string_at_offset_from.
16145         (read_indirect_line_string_at_offset): New function.
16146         (read_indirect_string): New function comment.
16147         (read_indirect_line_string): New function.
16148         (read_unsigned_leb128): Make it global.
16149         (dwarf2_string_attr): Handle DWARF-5.
16150         (add_include_dir_stub, read_formatted_entries): New functions.
16151         (dwarf_decode_line_header, dump_die_shallow, cu_debug_loc_section):
16152         Handle DWARF-5.
16153         (per_cu_header_read_in): Update read_comp_unit_head caller.
16154         (dwarf2_version): New function.
16155         * symfile.h (struct dwarf2_debug_sections): Add loclists, line_str and
16156         rnglists.
16157         * xcoffread.c (dwarf2_xcoff_names): Update struct dwarf2_debug_sections
16158         fields.
16159
16160 2017-02-20  Jan Kratochvil  <jan.kratochvil@redhat.com>
16161
16162         * dwarf2read.c (abbrev_table_read_table): Read the data only once.
16163
16164 2017-02-20  Jan Kratochvil  <jan.kratochvil@redhat.com>
16165
16166         * dwarf2read.c (dwarf2_ranges_process): New function from
16167         dwarf2_ranges_read.
16168         (dwarf2_ranges_read, dwarf2_record_block_ranges): Use
16169         dwarf2_ranges_process.
16170
16171 2017-02-20  Jan Kratochvil  <jan.kratochvil@redhat.com>
16172
16173         * dwarf2read.c (create_debug_type_hash_table): New function from
16174         create_debug_types_hash_table.
16175         (create_debug_types_hash_table): Call create_debug_type_hash_table.
16176         (create_all_type_units, open_and_init_dwo_file): Update
16177         create_debug_types_hash_table callers.
16178
16179 2017-02-20  Sergio Durigan Junior  <sergiodj@redhat.com>
16180
16181         PR gdb/16188
16182         * fork-child.c (trace_start_error): Fix thinko.  va_end should
16183         refer to 'ap', not 'args'.
16184
16185 2017-02-20  Sergio Durigan Junior  <sergiodj@redhat.com>
16186             Pedro Alves  <palves@redhat.com>
16187
16188         PR gdb/16188
16189         * darwin-nat.c (darwin_ptrace_me): Check if calls to system
16190         calls succeeded.
16191         * fork-child.c (trace_start_error): New function.
16192         (trace_start_error_with_name): Likewise.
16193         * gnu-nat.c (gnu_ptrace_me): Check if call to PTRACE succeeded.
16194         * inf-ptrace.c (inf_ptrace_me): Likewise.
16195         * inferior.h (trace_start_error): New prototype.
16196         (trace_start_error_with_name): Likewise.
16197
16198 2017-02-15  Sergio Durigan Junior  <sergiodj@redhat.com>
16199
16200         PR gdb/21164
16201         * psymtab.c (maintenance_print_psymbols): Verify if 'argv' is not
16202         NULL before using it.
16203         * symmisc.c (maintenance_print_symbols): Likewise.
16204         (maintenance_print_msymbols): Likewise.
16205
16206 2017-02-14  Tim Wiederhake  <tim.wiederhake@intel.com>
16207
16208         * NEWS: Add record Python bindings entry.
16209
16210 2017-02-14  Tim Wiederhake  <tim.wiederhake@intel.com>
16211
16212         * Makefile.in (SUBDIR_PYTHON_OBS): Add py-record-btrace.o,
16213         py-record-full.o.
16214         (SUBDIR_PYTHON_SRCS): Add py-record-btrace.c, py-record-full.c.
16215         * python/py-record-btrace.c, python/py-record-btrace.h,
16216         python/py-record-full.c, python/py-record-full.h: New file.
16217         * python/py-record.c: Add include for py-record-btrace.h and
16218         py-record-full.h.
16219         (recpy_method, recpy_format, recpy_goto, recpy_replay_position,
16220         recpy_instruction_history, recpy_function_call_history, recpy_begin,
16221         recpy_end): Use functions from py-record-btrace.c and py-record-full.c.
16222         * python/python-internal.h (PyInt_FromSsize_t, PyInt_AsSsize_t):
16223         New definition.
16224         (gdbpy_initialize_btrace): New export.
16225         * python/python.c (_initialize_python): Add gdbpy_initialize_btrace.
16226
16227 2017-02-14  Tim Wiederhake  <tim.wiederhake@intel.com>
16228
16229         * Makefile.in (SUBDIR_PYTHON_OBS): Add python/py-record.o.
16230         (SUBDIR_PYTHON_SRCS): Add python/py-record.c.
16231         * python/py-record.c: New file.
16232         * python/python-internal.h (gdbpy_start_recording,
16233         gdbpy_current_recording, gdpy_stop_recording,
16234         gdbpy_initialize_record): New export.
16235         * python/python.c (_initialize_python): Add gdbpy_initialize_record.
16236         (python_GdbMethods): Add gdbpy_start_recording,
16237         gdbpy_current_recording and gdbpy_stop_recording.
16238
16239 2017-02-14  Tim Wiederhake  <tim.wiederhake@intel.com>
16240
16241         * record-btrace.c (record_btrace_record_method): New function.
16242         (init_record_btrace_ops): Initialize to_record_method.
16243         * record-full.c (record_full_record_method): New function.
16244         (init_record_full_ops, init_record_full_core_ops): Add
16245         record_full_record_method.
16246         * record.h (enum record_method): New enum.
16247         * target-debug.h (target_debug_print_enum_record_method: New define.
16248         * target-delegates.c: Regenerate.
16249         * target.c (target_record_method): New function.
16250         * target.h: Include record.h.
16251         (struct target_ops) <to_record_method>: New field.
16252         (target_record_method): New export.
16253
16254 2017-02-14  Tim Wiederhake  <tim.wiederhake@intel.com>
16255
16256         * record.h (record_start, record_stop): New export.
16257         * record.c (record_start, record_stop): New function.
16258
16259 2017-02-14  Tim Wiederhake  <tim.wiederhake@intel.com>
16260
16261         * btrace.c (btrace_fetch): Copy function call segments pointer
16262         into a vector.
16263         (btrace_clear): Clear the vector.
16264         (btrace_find_insn_by_number): Use binary search to find the correct
16265         function call segment.
16266         * btrace.h (brace_fun_p): New typedef.
16267         (struct btrace_thread_info) <functions>: New field.
16268
16269 2017-02-14  Tim Wiederhake  <tim.wiederhake@intel.com>
16270
16271         * record-btrace.c (btrace_ui_out_decode_error): Move most of it ...
16272         * btrace.c (btrace_decode_error): ... here.  New function.
16273         * btrace.h (btrace_decode_error): New export.
16274
16275 2017-02-14  Tim Wiederhake  <tim.wiederhake@intel.com>
16276
16277         * btrace.c (ftrace_call_num_insn, btrace_insn_get_error): New function.
16278         (ftrace_new_function, btrace_insn_number, btrace_insn_cmp,
16279         btrace_find_insn_by_number): Remove special case for gaps.
16280         * btrace.h (btrace_insn_get_error): New export.
16281         (btrace_insn_number, btrace_find_insn_by_number): Adjust comment.
16282         * record-btrace.c (btrace_insn_history): Print number for gaps.
16283         (record_btrace_info, record_btrace_goto): Handle gaps.
16284
16285 2017-02-14  Tom Tromey  <tom@tromey.com>
16286
16287         PR python/13598:
16288         * python/python.c (gdbpy_before_prompt_hook): Emit before_prompt
16289         event.
16290         * python/py-evts.c (gdbpy_initialize_py_events): Add
16291         before_prompt registry.
16292         * python/py-events.h (events_object) <before_prompt>: New field.
16293
16294 2017-02-14  Markus Metzger  <markus.t.metzger@intel.com>
16295
16296         * btrace.c (ftrace_new_switch): Preserve up link and flags.
16297
16298 2017-02-13  Luis Machado  <lgustavo@codesourcery.com>
16299
16300         * symfile (_initialize_symfile): Add usage text to the load command's
16301         help text.
16302
16303 2017-02-10  Simon Marchi  <simon.marchi@ericsson.com>
16304
16305         * utils.c (defaulted_query): Don't query on secondary UIs.
16306
16307 2017-02-10  Tom Tromey  <tom@tromey.com>
16308
16309         * rust-lang.c (rust_get_disr_info): Remove unused variable.
16310
16311 2017-02-10  Tom Tromey  <tom@tromey.com>
16312
16313         * python/py-value.c (valpy_richcompare_throw): Remove unnecessary
16314         "cleanup" local.
16315         * python/py-type.c (typy_legacy_template_argument): Remove
16316         unnecessary "cleanup" local.
16317
16318 2017-02-10  Tom Tromey  <tom@tromey.com>
16319
16320         * python/python.c (do_start_initialization): New function, from
16321         _initialize_python.
16322         (_initialize_python): Call do_start_initialization.
16323         * python/py-linetable.c (ltpy_iternext): Use explicit returns, not
16324         goto.
16325
16326 2017-02-10  Tom Tromey  <tom@tromey.com>
16327
16328         * python/py-prettyprint.c (pretty_print_one_value): Use
16329         gdbpy_ref.
16330
16331 2017-02-10  Tom Tromey  <tom@tromey.com>
16332
16333         * python/py-cmd.c (cmdpy_destroyer): Use gdbpy_ref.
16334         * python/py-breakpoint.c (gdbpy_breakpoint_deleted): Use
16335         gdbpy_ref.
16336         * python/py-type.c (field_new): Use gdbpy_ref.
16337         * python/py-symtab.c (symtab_and_line_to_sal_object): Use
16338         gdbpy_ref.
16339         * python/py-progspace.c (pspy_new): Use gdbpy_ref.
16340         (py_free_pspace): Likewise.
16341         (pspace_to_pspace_object): Likewise.
16342         * python/py-objfile.c (objfpy_new): Use gdbpy_ref.
16343         (py_free_objfile): Likewise.
16344         (objfile_to_objfile_object): Likewise.
16345         * python/py-inferior.c (delete_thread_object): Use
16346         gdbpy_ref.
16347         (infpy_read_memory): Likewise.
16348         (py_free_inferior): Likewise.
16349         * python/py-evtregistry.c (create_eventregistry_object): Use
16350         gdbpy_ref.
16351         * python/py-event.c (create_event_object): Use gdbpy_ref.
16352
16353 2017-02-10  Tom Tromey  <tom@tromey.com>
16354
16355         * python/py-ref.h (gdbpy_ref_policy): Now a template.
16356         (gdbpy_ref): Now a template; allow subclasses of PyObject to be
16357         used.
16358         * python/py-arch.c, python/py-bpevent.c, python/py-breakpoint.c,
16359         python/py-cmd.c, python/py-continueevent.c, python/py-event.c,
16360         python/py-exitedevent.c, python/py-finishbreakpoint.c,
16361         python/py-framefilter.c, python/py-function.c,
16362         python/py-inferior.c, python/py-infevents.c,
16363         python/py-linetable.c, python/py-newobjfileevent.c,
16364         python/py-param.c, python/py-prettyprint.c, python/py-ref.h,
16365         python/py-signalevent.c, python/py-stopevent.c,
16366         python/py-symbol.c, python/py-threadevent.c, python/py-type.c,
16367         python/py-unwind.c, python/py-utils.c, python/py-value.c,
16368         python/py-varobj.c, python/py-xmethods.c, python/python.c,
16369         varobj.c: Change gdbpy_ref to gdbpy_ref<>.
16370
16371 2017-02-10  Tom Tromey  <tom@tromey.com>
16372
16373         * ui-out.h (ui_out_emit_type): New class.
16374         (ui_out_emit_tuple, ui_out_emit_list): New typedefs.
16375         * python/py-framefilter.c (py_print_single_arg): Use gdb::optional
16376         and ui_out_emit_tuple.
16377         (enumerate_locals): Likewise.
16378         (py_mi_print_variables, py_print_locals, py_print_args): Use
16379         ui_out_emit_list.
16380         (py_print_frame): Use gdb::optional, ui_out_emit_tuple,
16381         ui_out_emit_list.
16382         * common/gdb_optional.h: New file.
16383
16384 2017-02-10  Martin Galvan  <martingalvan@sourceware.org>
16385
16386         * MAINTAINERS (Write After Approval): Update my e-mail address.
16387
16388 2017-02-10  Martin Galvan  <martingalvan@sourceware.org>
16389
16390         PR gdb/21122
16391         * breakpoint.c (_initialize_breakpoint): Update the help description
16392         of the 'commands' command to indicate that it takes a list argument.
16393
16394 2017-02-09  Simon Marchi  <simon.marchi@ericsson.com>
16395
16396         * interps.c (current_interp_set_logging): Remove "return".
16397
16398 2017-02-09  Gary Benson  <gbenson@redhat.com>
16399
16400         * symtab.c (add_symtab_completions): Prevent NULL pointer
16401         dereference.
16402
16403 2017-02-08  Pedro Alves  <palves@redhat.com>
16404
16405         * interps.c (interp::interp): Remove reference to quiet_p.
16406         (interp_set): Make static.  Remove dead "Switching to" output
16407         code.
16408         (interp_quiet_p, interp_set_quiet): Delete.
16409         (interpreter_exec_cmd): Don't set the interpreter quiet.
16410         * interps.h (interp_quiet_p): Make static.
16411         (class interp) <quiet_p>: Remove field
16412
16413 2017-02-08  Jerome Guitton  <guitton@adacore.com>
16414
16415         * cli/cli-decode.c (find_command_name_length): Make it extern.
16416         * cli/cli-decode.h (find_command_name_length): Declare.
16417         * cli/cli-script.c (command_name_equals, line_first_arg):
16418         New functions.
16419         (process_next_line): Use cli-decode to parse command names.
16420         (build_command_line): Make args a constant pointer.
16421
16422 2017-02-08  Jerome Guitton  <guitton@adacore.com>
16423
16424         * cli-decode.c (lookup_cmd_1, lookup_cmd_composition):
16425         Remove case-insensitive search.
16426
16427 2017-02-07  Jose E. Marchesi  <jose.marchesi@oracle.com>
16428
16429         * sparc-tdep.c (sparc32_gdbarch_init): Do not place a + operator
16430         at the end of the line.  Avoids an ARI warning.
16431
16432 2017-02-06  Luis Machado  <lgustavo@codesourcery.com>
16433
16434         * NEWS: Mention support for record/replay of Intel 64 rdrand and
16435         rdseed instructions.
16436         i386-tdep.c (i386_process_record): Handle Intel 64 rdrand and rseed.
16437
16438 2017-02-06  Ivo Raisr  <ivo.raisr@oracle.com>
16439
16440         PR tdep/20936
16441         Provide and use sparc32 and sparc64 target description XML files.
16442         * features/sparc/sparc32-cp0.xml, features/sparc/sparc32-cpu.xml,
16443         features/sparc/sparc32-fpu.xml: New files for sparc 32-bit.
16444         * features/sparc/sparc64-cp0.xml, features/sparc/sparc64-cpu.xml,
16445         features/sparc/sparc64-fpu.xml: New files for sparc 64-bit.
16446         * features/sparc/sparc32-solaris.xml: New file.
16447         * features/sparc/sparc64-solaris.xml: New file.
16448         * features/sparc/sparc32-solaris.c: Generated.
16449         * features/sparc/sparc64-solaris.c: Generated.
16450         * sparc-tdep.h: Account for differences in target descriptions.
16451         * sparc-tdep.c (sparc32_register_name): Use target provided registers.
16452         (sparc32_register_type): Use target provided registers.
16453         (validate_tdesc_registers): New function.
16454         (sparc32_gdbarch_init): Use tdesc_has_registers.
16455         Set pseudoregister functions.
16456         * sparc64-tdep.c (sparc64_register_name): Use target provided registers.
16457         (sparc64_register_type): Use target provided registers.
16458         (sparc64_init_abi): Set pseudoregister functions.
16459
16460 2017-02-03  Tom Tromey  <tom@tromey.com>
16461
16462         PR rust/21097:
16463         * rust-lang.c (rust_print_type) <TYPE_CODE_UNION>: Handle enums
16464         with a single member.
16465
16466 2017-02-03  Pedro Alves  <palves@redhat.com>
16467
16468         * cli/cli-interp.c (cli_interp_base::cli_interp_base)
16469         (cli_interp_base::~cli_interp_base): New.
16470         (cli_interp): New struct.
16471         (as_cli_interp): Cast the interp itself to cli_interp.
16472         (cli_interpreter_pre_command_loop): Rename to ...
16473         (cli_interp_base::pre_command_loop): ... this.  Remove 'self'
16474         parameter.
16475         (cli_interpreter_init): Rename to ...
16476         (cli_interp::init): ... this.  Remove 'self' parameter.  Use
16477         boolean.  Make extern.
16478         (cli_interpreter_resume): Rename to ...
16479         (cli_interp::resume): ... this.  Remove 'data' parameter.  Make
16480         extern.
16481         (cli_interpreter_suspend): Rename to ...
16482         (cli_interp::suspend): ... this.  Remove 'data' parameter.  Make
16483         extern.
16484         (cli_interpreter_exec): Rename to ...
16485         (cli_interp::exec): ... this.  Remove 'data' parameter.  Make
16486         extern.
16487         (cli_interpreter_supports_command_editing): Rename to ...
16488         (cli_interp_base::supports_command_editing): ... this.  Remove
16489         'interp' parameter.  Make extern.
16490         (cli_ui_out): Rename to ...
16491         (cli_interp::interp_ui_out): ... this.  Remove 'interp' parameter.
16492         Make extern.
16493         (cli_set_logging): Rename to ...
16494         (cli_interp_base::set_logging): ... this.  Remove 'interp'
16495         parameter.  Make extern.
16496         (cli_interp_procs): Delete.
16497         (cli_interp_factory): Adjust to use "new".
16498         * cli/cli-interp.h: Include "interps.h".
16499         (struct cli_interp_base): New struct.
16500         * interps.c (struct interp): Delete.  Fields moved to interps.h.
16501         (interp_new): Delete.
16502         (interp::interp, interp::~interp): New.
16503         (interp_set): Use bool, and return void.  Assume the interpreter
16504         has suspend, init and resume methods, and that the all return
16505         void.
16506         (set_top_level_interpreter): interp_set returns void.
16507         (interp_ui_out): Adapt.
16508         (current_interp_set_logging): Adapt.
16509         (interp_data): Delete.
16510         (interp_pre_command_loop, interp_supports_command_editing): Adapt.
16511         (interp_exec): Adapt.
16512         (top_level_interpreter_data): Delete.
16513         * interps.h (interp_init_ftype, interp_resume_ftype)
16514         (interp_suspend_ftype, interp_exec_ftype)
16515         (interp_pre_command_loop_ftype, interp_ui_out_ftype): Delete.
16516         (class interp): New.
16517         (interp_new): Delete.
16518         (interp_set): Now returns void.  Use bool.
16519         (interp_data, top_level_interpreter_data): Delete.
16520         * mi/mi-common.h: Include interps.h.
16521         (class mi_interp): Inherit from interp.  Define a ctor.  Declare
16522         init, resume, suspect, exec, interp_ui_out, set_logging and
16523         pre_command_loop methods.
16524         * mi/mi-interp.c (as_mi_interp): Cast the interp itself.
16525         (mi_interpreter_init): Rename to ...
16526         (mi_interp::init): ... this.  Remove the 'interp' parameter, use
16527         bool, return void and make extern.  Adjust.
16528         (mi_interpreter_resume): ... Rename to ...
16529         (mi_interp::resume): ... this.  Remove the 'data' parameter,
16530         return void and make extern.  Adjust.
16531         (mi_interpreter_suspend): ... Rename to ...
16532         (mi_interp::suspend): ... this.  Remove the 'data' parameter,
16533         return void and make extern.  Adjust.
16534         (mi_interpreter_exec): ... Rename to ...
16535         (mi_interp::exec): ... this.  Remove the 'data' parameter and make
16536         extern.  Adjust.
16537         (mi_interpreter_pre_command_loop): ... Rename to ...
16538         (mi_interp::pre_command_loop): ... this.  Remove the 'self'
16539         parameter and make extern.
16540         (mi_on_normal_stop_1): Adjust.
16541         (mi_ui_out): Rename to ...
16542         (mi_interp::interp_ui_out): ... this.  Remove the 'interp'
16543         parameter and make extern.  Adjust.
16544         (mi_set_logging): Rename to ...
16545         (mi_interp::set_logging): ... this.  Remove the 'interp'
16546         parameter and make extern.  Adjust.
16547         (mi_interp_procs): Delete.
16548         (mi_interp_factory): Adjust to use 'new'.
16549         * mi/mi-main.c (mi_cmd_gdb_exit, captured_mi_execute_command)
16550         (mi_print_exception, mi_execute_command, mi_load_progress):
16551         Adjust.
16552         * tui/tui-interp.c (tui_interp): New class.
16553         (as_tui_interp): Return a tui_interp pointer.
16554         (tui_on_normal_stop, tui_on_signal_received)
16555         (tui_on_end_stepping_range, tui_on_signal_exited, tui_on_exited)
16556         (tui_on_no_history, tui_on_user_selected_context_changed): Adjust
16557         to use interp::interp_ui_out.
16558         (tui_init): Rename to ...
16559         (tui_interp::init): ... this.  Remove the 'self' parameter, use
16560         bool, return void and make extern.  Adjust.
16561         (tui_resume): Rename to ...
16562         (tui_interp::resume): ... this.  Remove the 'data' parameter,
16563         return void and make extern.  Adjust.
16564         (tui_suspend): Rename to ...
16565         (tui_interp::suspend): ... this.  Remove the 'data' parameter,
16566         return void and make extern.  Adjust.
16567         (tui_ui_out): Rename to ...
16568         (tui_interp::interp_ui_out): ... this.  Remove the 'self'
16569         parameter, and make extern.  Adjust.
16570         (tui_exec): Rename to ...
16571         (tui_interp::exec): ... this.  Remove the 'data' parameter and
16572         make extern.
16573         (tui_interp_procs): Delete.
16574         (tui_interp_factory): Use "new".
16575
16576 2017-02-02  Tom Tromey  <tom@tromey.com>
16577
16578         * rust-exp.y (ends_raw_string, space_then_number)
16579         (rust_identifier_start_p): Return bool.
16580         * rust-lang.c (rust_tuple_type_p, rust_underscore_fields)
16581         (rust_tuple_struct_type_p, rust_tuple_variant_type_p)
16582         (rust_slice_type_p, rust_range_type_p, rust_u8_type_p)
16583         (rust_chartype_p): Return bool.
16584         (val_print_struct, rust_print_struct_def, rust_print_type):
16585         Update.
16586         * rust-lang.h (rust_tuple_type_p, rust_tuple_struct_type_p):
16587         Return bool.
16588
16589 2017-02-02  Tom Tromey  <tom@tromey.com>
16590
16591         * rust-lang.c: Reindent.
16592
16593 2017-02-02  Tom Tromey  <tom@tromey.com>
16594
16595         * rust-lang.h (rust_crate_for_block): Update.
16596         * rust-lang.c (rust_crate_for_block): Return std::string.
16597         (rust_get_disr_info): Use std:;string, not
16598         gdb::unique_xmalloc_ptr.
16599         * rust-exp.y (crate_name): Update.
16600
16601 2017-02-02  Pedro Alves  <palves@redhat.com>
16602
16603         * disasm-selftests.c (print_one_insn_test): Move the "verbose"
16604         field out of gdb_disassembler_test and make it static.
16605
16606 2017-02-02  Pedro Alves  <palves@redhat.com>
16607
16608         * mi/mi-common.h (struct mi_interp): Delete the mi2_interp,
16609         mi1_interp and mi_interp fields.
16610
16611 2017-02-02  Pedro Alves  <palves@redhat.com>
16612
16613         * cli/cli-interp.c (struct saved_output_files, saved_output):
16614         Moved from cli/cli-logging.c.
16615         (cli_set_logging): New function.
16616         (cli_interp_procs): Install cli_set_logging.
16617         * cli/cli-interp.h (make_logging_output, cli_set_logging):
16618         Declare.
16619         * cli/cli-logging.c (struct saved_output_files, saved_output):
16620         Moved to cli/cli-interp.c.
16621         (pop_output_files): Don't save outputs here.
16622         (make_logging_output): New function.
16623         (handle_redirections): Don't build tee nor save previous outputs
16624         here.
16625         * interps.c (current_interp_set_logging): Change prototype.
16626         Assume there's always a set_logging_proc method installed.
16627         * interps.h (interp_set_logging_ftype): Change prototype.
16628         (current_interp_set_logging): Change prototype and adjust comment.
16629         * mi/mi-interp.c (mi_set_logging): Change protototype.  Adjust to
16630         use make_logging_output.
16631         * tui/tui-interp.c (tui_interp_procs): Install cli_set_logging.
16632 2017-02-02  Pedro Alves  <palves@redhat.com>
16633
16634         * cli/cli-logging.c (maybe_warn_already_logging): New factored out
16635         from ...
16636         (set_logging_overwrite): ... here.
16637         (logging_no_redirect_file): Delete.
16638         (set_logging_redirect): Don't handle redirection on the fly.
16639         Instead warn that "logging off" / "logging on" is necessary.
16640         (pop_output_files): Delete references to logging_no_redirect_file.
16641         (show_logging_command): Always speak in terms of what will happen
16642         once logging is reenabled.
16643
16644 2017-02-02  Pedro Alves  <palves@redhat.com>
16645
16646         * disasm.h (gdb_pretty_print_disassembler): Tweak intro comment.
16647
16648 2017-02-02  Pedro Alves  <palves@redhat.com>
16649
16650         * disasm.c (gdb_pretty_print_insn): Rename to ...
16651         (gdb_pretty_print_disassembler::pretty_print_insn): ... this.
16652         Remove gdbarch parameter.  Adapt to clear the object's buffers
16653         instead of allocating new buffers, and to print using the object's
16654         gdb_disassembler instead of calling gdb_print_insn.
16655         (dump_insns): Use gdb_pretty_print_disassembler.
16656         * disasm.h (gdb_pretty_print_insn): Delete declaration.
16657         (gdb_pretty_print_disassembler): New class.
16658         * record-btrace.c (btrace_insn_history): Use
16659         gdb_pretty_print_disassembler.
16660
16661 2017-02-02  Pedro Alves  <palves@redhat.com>
16662
16663         * ada-lang.c (type_as_string): Use string_file.
16664         * ada-valprint.c (ada_print_floating): Use string_file.
16665         * ada-varobj.c (ada_varobj_scalar_image)
16666         (ada_varobj_get_value_image): Use string_file.
16667         * aix-thread.c (aix_thread_extra_thread_info): Use string_file.
16668         * arm-tdep.c (_initialize_arm_tdep): Use string_printf.
16669         * breakpoint.c (update_inserted_breakpoint_locations)
16670         (insert_breakpoint_locations, reattach_breakpoints)
16671         (print_breakpoint_location, print_one_detail_ranged_breakpoint)
16672         (print_it_watchpoint): Use string_file.
16673         (save_breakpoints): Use stdio_file.
16674         * c-exp.y (oper): Use string_file.
16675         * cli/cli-logging.c (set_logging_redirect): Use ui_file_up and
16676         tee_file.
16677         (pop_output_files): Use delete.
16678         (handle_redirections): Use stdio_file and tee_file.
16679         * cli/cli-setshow.c (do_show_command): Use string_file.
16680         * compile/compile-c-support.c (c_compute_program): Use
16681         string_file.
16682         * compile/compile-c-symbols.c (generate_vla_size): Take a
16683         'string_file &' instead of a 'ui_file *'.
16684         (generate_c_for_for_one_variable): Take a 'string_file &' instead
16685         of a 'ui_file *'.  Use string_file.
16686         (generate_c_for_variable_locations): Take a 'string_file &'
16687         instead of a 'ui_file *'.
16688         * compile/compile-internal.h (generate_c_for_for_one_variable):
16689         Take a 'string_file &' instead of a 'ui_file *'.
16690         * compile/compile-loc2c.c (push, pushf, unary, binary)
16691         (print_label, pushf_register_address, pushf_register)
16692         (do_compile_dwarf_expr_to_c): Take a 'string_file &' instead of a
16693         'ui_file *'.  Adjust.
16694         * compile/compile.c (compile_to_object): Use string_file.
16695         * compile/compile.h (compile_dwarf_expr_to_c)
16696         (compile_dwarf_bounds_to_c): Take a 'string_file &' instead of a
16697         'ui_file *'.
16698         * cp-support.c (inspect_type): Use string_file and obstack_copy0.
16699         (replace_typedefs_qualified_name): Use string_file and
16700         obstack_copy0.
16701         * disasm.c (gdb_pretty_print_insn): Use string_file.
16702         (gdb_disassembly): Adjust reference the null_stream global.
16703         (do_ui_file_delete): Delete.
16704         (gdb_insn_length): Use null_stream.
16705         * dummy-frame.c (maintenance_print_dummy_frames): Use stdio_file.
16706         * dwarf2loc.c (dwarf2_compile_property_to_c)
16707         (locexpr_generate_c_location, loclist_generate_c_location): Take a
16708         'string_file &' instead of a 'ui_file *'.
16709         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise.
16710         * dwarf2read.c (do_ui_file_peek_last): Delete.
16711         (dwarf2_compute_name): Use string_file.
16712         * event-top.c (gdb_setup_readline): Use stdio_file.
16713         * gdbarch.sh (verify_gdbarch): Use string_file.
16714         * gdbtypes.c (safe_parse_type): Use null_stream.
16715         * guile/scm-breakpoint.c (gdbscm_breakpoint_commands): Use
16716         string_file.
16717         * guile/scm-disasm.c (gdbscm_print_insn_from_port): Take a
16718         'string_file *' instead of a 'ui_file *'.
16719         (gdbscm_arch_disassemble): Use string_file.
16720         * guile/scm-frame.c (frscm_print_frame_smob): Use string_file.
16721         * guile/scm-ports.c (class ioscm_file_port): Now a class that
16722         inherits from ui_file.
16723         (ioscm_file_port_delete, ioscm_file_port_rewind)
16724         (ioscm_file_port_put): Delete.
16725         (ioscm_file_port_write): Rename to ...
16726         (ioscm_file_port::write): ... this.  Remove file_port_magic
16727         checks.
16728         (ioscm_file_port_new): Delete.
16729         (ioscm_with_output_to_port_worker): Use ioscm_file_port and
16730         ui_file_up.
16731         * guile/scm-type.c (tyscm_type_name): Use string_file.
16732         * guile/scm-value.c (vlscm_print_value_smob, gdbscm_value_print):
16733         Use string_file.
16734         * infcmd.c (print_return_value_1): Use string_file.
16735         * infrun.c (print_target_wait_results): Use string_file.
16736         * language.c (add_language): Use string_file.
16737         * location.c (explicit_to_string_internal): Use string_file.
16738         * main.c (captured_main_1): Use null_file.
16739         * maint.c (maintenance_print_architecture): Use stdio_file.
16740         * mi/mi-cmd-stack.c (list_arg_or_local): Use string_file.
16741         * mi/mi-common.h (struct mi_interp) <out, err, log, targ,
16742         event_channel>: Change type to mi_console_file pointer.
16743         * mi/mi-console.c (mi_console_file_fputs, mi_console_file_flush)
16744         (mi_console_file_delete): Delete.
16745         (struct mi_console_file): Delete.
16746         (mi_console_file_magic): Delete.
16747         (mi_console_file_new): Delete.
16748         (mi_console_file::mi_console_file): New.
16749         (mi_console_file_delete): Delete.
16750         (mi_console_file_fputs): Delete.
16751         (mi_console_file::write): New.
16752         (mi_console_raw_packet): Delete.
16753         (mi_console_file::flush): New.
16754         (mi_console_file_flush): Delete.
16755         (mi_console_set_raw): Rename to ...
16756         (mi_console_file::set_raw): ... this.
16757         * mi/mi-console.h (class mi_console_file): New class.
16758         (mi_console_file_new, mi_console_set_raw): Delete.
16759         * mi/mi-interp.c (mi_interpreter_init): Use mi_console_file.
16760         (mi_set_logging): Use delete and tee_file.  Adjust.
16761         * mi/mi-main.c (output_register): Use string_file.
16762         (mi_cmd_data_evaluate_expression): Use string_file.
16763         (mi_cmd_data_read_memory): Use string_file.
16764         (mi_cmd_execute, print_variable_or_computed): Use string_file.
16765         * mi/mi-out.c (mi_ui_out::main_stream): New.
16766         (mi_ui_out::rewind): Use main_stream and
16767         string_file.
16768         (mi_ui_out::put): Use main_stream and string_file.
16769         (mi_ui_out::mi_ui_out): Remove 'stream' parameter.
16770         Allocate a 'string_file' instead.
16771         (mi_out_new): Don't allocate a mem_fileopen stream here.
16772         * mi/mi-out.h (mi_ui_out::mi_ui_out): Remove 'stream' parameter.
16773         (mi_ui_out::main_stream): Declare method.
16774         * printcmd.c (eval_command): Use string_file.
16775         * psymtab.c (maintenance_print_psymbols): Use stdio_file.
16776         * python/py-arch.c (archpy_disassemble): Use string_file.
16777         * python/py-breakpoint.c (bppy_get_commands): Use string_file.
16778         * python/py-frame.c (frapy_str): Use string_file.
16779         * python/py-framefilter.c (py_print_type, py_print_single_arg):
16780         Use string_file.
16781         * python/py-type.c (typy_str): Use string_file.
16782         * python/py-unwind.c (unwind_infopy_str): Use string_file.
16783         * python/py-value.c (valpy_str): Use string_file.
16784         * record-btrace.c (btrace_insn_history): Use string_file.
16785         * regcache.c (regcache_print): Use stdio_file.
16786         * reggroups.c (maintenance_print_reggroups): Use stdio_file.
16787         * remote.c (escape_buffer): Use string_file.
16788         * rust-lang.c (rust_get_disr_info): Use string_file.
16789         * serial.c (serial_open_ops_1): Use stdio_file.
16790         (do_serial_close): Use delete.
16791         * stack.c (print_frame_arg): Use string_file.
16792         (print_frame_args): Remove local mem_fileopen stream, not used.
16793         (print_frame): Use string_file.
16794         * symmisc.c (maintenance_print_symbols): Use stdio_file.
16795         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
16796         Take a 'string_file *' instead of a 'ui_file *'.
16797         * top.c (new_ui): Use stdio_file and stderr_file.
16798         (free_ui): Use delete.
16799         (execute_command_to_string): Use string_file.
16800         (quit_confirm): Use string_file.
16801         * tracepoint.c (collection_list::append_exp): Use string_file.
16802         * tui/tui-disasm.c (tui_disassemble): Use string_file.
16803         * tui/tui-file.c: Don't include "ui-file.h".
16804         (enum streamtype, struct tui_stream): Delete.
16805         (tui_file_new, tui_file_delete, tui_fileopen, tui_sfileopen)
16806         (tui_file_isatty, tui_file_rewind, tui_file_put): Delete.
16807         (tui_file::tui_file): New method.
16808         (tui_file_fputs): Delete.
16809         (tui_file_get_strbuf): Delete.
16810         (tui_file::puts): New method.
16811         (tui_file_adjust_strbuf): Delete.
16812         (tui_file_flush): Delete.
16813         (tui_file::flush): New method.
16814         * tui/tui-file.h: Tweak intro comment.
16815         Include ui-file.h.
16816         (tui_fileopen, tui_sfileopen, tui_file_get_strbuf)
16817         (tui_file_adjust_strbuf): Delete declarations.
16818         (class tui_file): New class.
16819         * tui/tui-io.c (tui_initialize_io): Use tui_file.
16820         * tui/tui-regs.c (tui_restore_gdbout): Use delete.
16821         (tui_register_format): Use string_stream.
16822         * tui/tui-stack.c (tui_make_status_line): Use string_file.
16823         (tui_get_function_from_frame): Use string_file.
16824         * typeprint.c (type_to_string): Use string_file.
16825         * ui-file.c (struct ui_file, ui_file_magic, ui_file_new): Delete.
16826         (null_stream): New global.
16827         (ui_file_delete): Delete.
16828         (ui_file::ui_file): New.
16829         (null_file_isatty): Delete.
16830         (ui_file::~ui_file): New.
16831         (null_file_rewind): Delete.
16832         (ui_file::printf): New.
16833         (null_file_put): Delete.
16834         (null_file_flush): Delete.
16835         (ui_file::putstr): New.
16836         (null_file_write): Delete.
16837         (ui_file::putstrn): New.
16838         (null_file_read): Delete.
16839         (ui_file::putc): New.
16840         (null_file_fputs): Delete.
16841         (null_file_write_async_safe): Delete.
16842         (ui_file::vprintf): New.
16843         (null_file_delete): Delete.
16844         (null_file::write): New.
16845         (null_file_fseek): Delete.
16846         (null_file::puts): New.
16847         (ui_file_data): Delete.
16848         (null_file::write_async_safe): New.
16849         (gdb_flush, ui_file_isatty): Adjust.
16850         (ui_file_put, ui_file_rewind): Delete.
16851         (ui_file_write): Adjust.
16852         (ui_file_write_for_put): Delete.
16853         (ui_file_write_async_safe, ui_file_read): Adjust.
16854         (ui_file_fseek): Delete.
16855         (fputs_unfiltered): Adjust.
16856         (set_ui_file_flush, set_ui_file_isatty, set_ui_file_rewind)
16857         (set_ui_file_put, set_ui_file_write, set_ui_file_write_async_safe)
16858         (set_ui_file_read, set_ui_file_fputs, set_ui_file_fseek)
16859         (set_ui_file_data): Delete.
16860         (string_file::~string_file, string_file::write)
16861         (struct accumulated_ui_file, do_ui_file_xstrdup, ui_file_xstrdup)
16862         (do_ui_file_as_string, ui_file_as_string): Delete.
16863         (do_ui_file_obsavestring, ui_file_obsavestring): Delete.
16864         (struct mem_file): Delete.
16865         (mem_file_new): Delete.
16866         (stdio_file::stdio_file): New.
16867         (mem_file_delete): Delete.
16868         (stdio_file::stdio_file): New.
16869         (mem_fileopen): Delete.
16870         (stdio_file::~stdio_file): New.
16871         (mem_file_rewind): Delete.
16872         (stdio_file::set_stream): New.
16873         (mem_file_put): Delete.
16874         (stdio_file::open): New.
16875         (mem_file_write): Delete.
16876         (stdio_file_magic, struct stdio_file): Delete.
16877         (stdio_file_new, stdio_file_delete, stdio_file_flush): Delete.
16878         (stdio_file::flush): New.
16879         (stdio_file_read): Rename to ...
16880         (stdio_file::read): ... this.  Adjust.
16881         (stdio_file_write): Rename to ...
16882         (stdio_file::write): ... this.  Adjust.
16883         (stdio_file_write_async_safe): Rename to ...
16884         (stdio_file::write_async_safe) ... this.  Adjust.
16885         (stdio_file_fputs): Rename to ...
16886         (stdio_file::puts) ... this.  Adjust.
16887         (stdio_file_isatty): Delete.
16888         (stdio_file_fseek): Delete.
16889         (stdio_file::isatty): New.
16890         (stderr_file_write): Rename to ...
16891         (stderr_file::write) ... this.  Adjust.
16892         (stderr_file_fputs): Rename to ...
16893         (stderr_file::puts) ... this.  Adjust.
16894         (stderr_fileopen, stdio_fileopen, gdb_fopen): Delete.
16895         (stderr_file::stderr_file): New.
16896         (tee_file_magic): Delete.
16897         (struct tee_file): Delete.
16898         (tee_file::tee_file): New.
16899         (tee_file_new): Delete.
16900         (tee_file::~tee_file): New.
16901         (tee_file_delete): Delete.
16902         (tee_file_flush): Rename to ...
16903         (tee_file::flush): ... this.  Adjust.
16904         (tee_file_write): Rename to ...
16905         (tee_file::write): ... this.  Adjust.
16906         (tee_file::write_async_safe): New.
16907         (tee_file_fputs): Rename to ...
16908         (tee_file::puts): ... this.  Adjust.
16909         (tee_file_isatty): Rename to ...
16910         (tee_file::isatty): ... this.  Adjust.
16911         * ui-file.h (struct obstack, struct ui_file): Don't
16912         forward-declare.
16913         (ui_file_new, ui_file_flush_ftype, set_ui_file_flush)
16914         (ui_file_write_ftype)
16915         (set_ui_file_write, ui_file_fputs_ftype, set_ui_file_fputs)
16916         (ui_file_write_async_safe_ftype, set_ui_file_write_async_safe)
16917         (ui_file_read_ftype, set_ui_file_read, ui_file_isatty_ftype)
16918         (set_ui_file_isatty, ui_file_rewind_ftype, set_ui_file_rewind)
16919         (ui_file_put_method_ftype, ui_file_put_ftype, set_ui_file_put)
16920         (ui_file_delete_ftype, set_ui_file_data, ui_file_fseek_ftype)
16921         (set_ui_file_fseek): Delete.
16922         (ui_file_data, ui_file_delete, ui_file_rewind)
16923         (struct ui_file): New.
16924         (ui_file_up): New.
16925         (class null_file): New.
16926         (null_stream): Declare.
16927         (ui_file_write_for_put, ui_file_put): Delete.
16928         (ui_file_xstrdup, ui_file_as_string, ui_file_obsavestring):
16929         Delete.
16930         (ui_file_fseek, mem_fileopen, stdio_fileopen, stderr_fileopen)
16931         (gdb_fopen, tee_file_new): Delete.
16932         (struct string_file): New.
16933         (struct stdio_file): New.
16934         (stdio_file_up): New.
16935         (struct stderr_file): New.
16936         (class tee_file): New.
16937         * ui-out.c (ui_out::field_stream): Take a 'string_file &' instead
16938         of a 'ui_file *'.  Adjust.
16939         * ui-out.h (class ui_out) <field_stream>: Likewise.
16940         * utils.c (do_ui_file_delete, make_cleanup_ui_file_delete)
16941         (null_stream): Delete.
16942         (error_stream): Take a 'string_file &' instead of a 'ui_file *'.
16943         Adjust.
16944         * utils.h (struct ui_file): Delete forward declaration..
16945         (make_cleanup_ui_file_delete, null_stream): Delete declarations.
16946         (error_stream): Take a 'string_file &' instead of a
16947         'ui_file *'.
16948         * varobj.c (varobj_value_get_print_value): Use string_file.
16949         * xtensa-tdep.c (xtensa_verify_config): Use string_file.
16950         * gdbarch.c: Regenerate.
16951
16952 2017-02-02  Pedro Alves  <palves@redhat.com>
16953
16954         * disasm.c (gdb_disassembler::pretty_print_insn): Rename to...
16955         (gdb_pretty_print_insn): ... this.  Now a free function.  Add back
16956         a 'gdbarch' parameter.  Allocate a mem_fileopen stream here.
16957         Adjust to call gdb_print_insn instead of
16958         gdb_disassembler::print_insn.
16959         (dump_insns, do_mixed_source_and_assembly_deprecated)
16960         (do_mixed_source_and_assembly, do_assembly_only): Add back a
16961         'gdbarch' parameter.  Remove gdb_disassembler parameter.
16962         (gdb_disassembly): Don't allocate a gdb_disassembler here.
16963         * disasm.h (gdb_disassembler::pretty_print_insn): Delete
16964         declaration.
16965         (gdb_pretty_print_insn): Re-add declaration.
16966         * record-btrace.c (btrace_insn_history): Don't allocate a
16967         gdb_disassembler here.  Adjust to call gdb_pretty_print_insn.
16968
16969 2017-02-01  Simon Marchi  <simon.marchi@polymtl.ca>
16970
16971         * disasm.h (gdb_disassembly): Remove file_string parameter.
16972         * disasm.c (gdb_disassembly): Likewise.
16973         * cli/cli-cmds.c (print_disassembly): Adapt.
16974         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Likewise.
16975         * stack.c (do_gdb_disassembly): Likewise.
16976
16977 2017-02-01  Andreas Arnez  <arnez@linux.vnet.ibm.com>
16978
16979         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): For
16980         DWARF_VALUE_LITERAL, no longer ignore the offset on big-endian
16981         targets.  And if the implicit value is longer than needed, extract
16982         the first bytes instead of the "least significant" ones.
16983
16984 2017-02-01  Markus Metzger  <markus.t.metzger@intel.com>
16985
16986         * btrace.c (btrace_enable): Do not call btrace_add_pc for
16987         BTRACE_FORMAT_PT or if can_access_registers_ptid returns false.
16988         (btrace_fetch): Assert can_access_registers_ptid.
16989         * record-btrace.c (require_btrace_thread, record_btrace_info): Call
16990         validate_registers_access.
16991
16992 2017-02-01  Markus Metzger  <markus.t.metzger@intel.com>
16993
16994         * gdbthread.h (can_access_registers_ptid): New.
16995         * thread.c (can_access_registers_ptid): New.
16996
16997 2017-02-01  Pedro Alves  <palves@redhat.com>
16998
16999         * i386-tdep.c (i386_fast_tracepoint_valid_at): Use gdb_insn_length.
17000
17001 2017-01-31  Pedro Alves  <palves@redhat.com>
17002
17003         * mi/mi-interp.c (mi_breakpoint_created, mi_breakpoint_modified):
17004         Fix typos.
17005
17006 2017-01-31  Pedro Alves  <palves@redhat.com>
17007
17008         * stack.c (print_frame_args): Remove local mem_fileopen stream,
17009         not used.
17010
17011 2017-01-31  Pedro Alves  <palves@redhat.com>
17012
17013         * varobj.c (varobj_value_get_print_value): Remove xstrdup call.
17014
17015 2017-01-31  Pedro Alves  <palves@redhat.com>
17016
17017         * common/scoped_restore.h
17018         (scoped_restore_tmpl::scoped_restore_tmpl): Template on T2, and
17019         change the value's parameter type to T2.
17020         (make_scoped_restore): Likewise.
17021
17022 2017-01-27  Walfred Tedeschi  <walfred.tedeschi@intel.com>
17023             Richard Henderson  <rth@redhat.com>
17024
17025         * amd64-linux-nat.c (PTRACE_ARCH_PRCTL): New define.
17026         (amd64_linux_fetch_inferior_registers): Add case to fetch FS_BASE
17027         GS_BASE for older kernels.
17028         (amd64_linux_store_inferior_registers): Add case to store FS_BASE
17029         GS_BASE for older kernels.
17030         * amd64-linux-tdep.c (amd64_linux_gregset_reg_offset): Add FS_BASE
17031         and GS_BASE to the offset table.
17032         (amd64_linux_register_reggroup_p): Add FS_BASE and GS_BASE to the
17033         system register group.
17034         * amd64-nat.c (amd64_native_gregset_reg_offset): Implements case
17035         for older kernels.
17036         * amd64-tdep.c (amd64_init_abi): Add segment registers for the
17037         amd64 ABI.
17038         * amd64-tdep.h (amd64_regnum): Add AMD64_FSBASE_REGNUM and
17039         AMD64_GSBASE_REGNUM.
17040         (AMD64_NUM_REGS): Set to AMD64_GSBASE_REGNUM + 1.
17041         * features/Makefile (amd64-linux.dat, amd64-avx-linux.dat)
17042         (amd64-mpx-linux.dat, amd64-avx512-linux.dat, x32-linux.dat)
17043         (x32-avx-linux.dat, x32-avx512-linux.dat): Add
17044         i386/64bit-segments.xml in those rules.
17045         * features/i386/64bit-segments.xml: New file.
17046         * features/i386/amd64-avx-mpx-linux.xml: Add 64bit-segments.xml.
17047         * features/i386/amd64-avx-linux.xml: Add 64bit-segments.xml.
17048         * features/i386/amd64-avx512-linux.xml: Add 64bit-segments.xml.
17049         * features/i386/amd64-mpx-linux.xml: Add 64bit-segments.xml.
17050         * features/i386/x32-avx512-linux.xml: Add 64bit-segments.xml.
17051         * features/i386/x32-avx-linux.xml: Add 64bit-segments.xml.
17052         * features/i386/amd64-linux.xml: Add 64bit-segments.xml.
17053         * features/i386/amd64-avx-linux.c: Regenerated.
17054         * features/i386/amd64-avx-mpx-linux.c: Regenerated.
17055         * features/i386/amd64-avx-mpx.c: Regenerated.
17056         * features/i386/amd64-avx512-linux.c: Regenerated.
17057         * features/i386/amd64-linux.c: Regenerated.
17058         * features/i386/amd64-mpx-linux.c: Regenerated.
17059         * features/i386/i386-avx-mpx-linux.c: Regenerated.
17060         * features/i386/i386-avx-mpx.c: Regenerated.
17061         * features/i386/x32-avx-linux.c: Regenerated.
17062         * features/i386/x32-avx512-linux.c: Regenerated.
17063         * regformats/i386/amd64-avx-linux.dat: Regenerated.
17064         * regformats/i386/amd64-avx-mpx-linux.dat: Regenerated.
17065         * regformats/i386/amd64-avx512-linux.dat: Regenerated.
17066         * regformats/i386/amd64-linux.dat: Regenerated.
17067         * regformats/i386/amd64-mpx-linux.dat: Regenerated.
17068         * regformats/i386/x32-avx-linux.dat: Regenerated.
17069         * regformats/i386/x32-avx512-linux.dat: Regenerated.
17070         * regformats/i386/x32-linux.dat: Regenerated.
17071
17072 2017-01-27  Walfred Tedeschi  <walfred.tedeschi@intel.com>
17073
17074         * amd64-linux-tdep.h (AMD64_LINUX_ORIG_RAX_REGNUM):
17075         Set to AMD64_NUM_REGS.
17076
17077 2017-01-27  Walfred Tedeschi  <walfred.tedeschi@intel.com>
17078
17079         * amd64-nat.c (amd64_native_gregset_reg_offset): Simplify logic
17080         that checks validity of a register number.
17081
17082 2017-01-27  Kees Cook  <keescook@google.com>
17083
17084         * gdb/arm-linux-nat.c (arm_linux_fetch_inferior_registers): Call
17085         fetch_fpregs if target has fpa registers.
17086         (arm_linux_store_inferior_registers): Call store_fpregs if target
17087         has fpa registers.
17088
17089 2017-01-26  Andreas Arnez  <arnez@linux.vnet.ibm.com>
17090
17091         * cris-tdep.c (cris_gdbarch_init): Remove check for
17092         info.byte_order and force it to BFD_ENDIAN_LITTLE.
17093
17094 2017-01-26  Antoine Tremblay  <antoine.tremblay@ericsson.com>
17095
17096         * corelow.c (get_core_register_section): Check for regset
17097         existence before checking for REGSET_VARIABLE_SIZE.
17098
17099 2017-01-26  Yao Qi  <yao.qi@linaro.org>
17100             Pedro Alves  <palves@redhat.com>
17101
17102         PR gdb/20939
17103         * disasm.c (gdb_disassembler::dis_asm_memory_error): Don't
17104         call memory_error, save memaddr instead.
17105         (gdb_disassembler::print_insn): If gdbarch_print_insn returns
17106         negative, cal memory_error.
17107         * disasm.h (gdb_disassembler) <m_err_memaddr>: New field.
17108
17109 2017-01-26  Yao Qi  <yao.qi@linaro.org>
17110
17111         * disasm-selftests.c (memory_error_test): New function.
17112         (_initialize_disasm_selftests): Register memory_error_test.
17113
17114 2017-01-26  Yao Qi  <yao.qi@linaro.org>
17115
17116         * Makefile.in (SFILES): Add disasm-selftests.c and
17117         selftest-arch.c.
17118         (COMMON_OBS): Add disasm-selftests.o and selftest-arch.o.
17119         * disasm-selftests.c: New file.
17120         * selftest-arch.c: New file.
17121         * selftest-arch.h: New file.
17122
17123 2017-01-26  Yao Qi  <yao.qi@linaro.org>
17124
17125         * mep-tdep.c (mep_gdb_print_insn): Set info->arch
17126         to bfd_arch_mep.  Don't return 0 if section is not
17127         found.  Call print_insn_mep.
17128
17129 2017-01-26  Pedro Alves  <palves@redhat.com>
17130             Yao Qi  <yao.qi@linaro.org>
17131
17132         * arm-tdep.c: Include "disasm.h".
17133         (gdb_print_insn_arm): Update code to get gdbarch.
17134         * disasm.c (dis_asm_read_memory): Change it to
17135         gdb_disassembler::dis_asm_read_memory.
17136         (dis_asm_memory_error): Likewise.
17137         (dis_asm_print_address): Likewise.
17138         (gdb_pretty_print_insn): Change it to
17139         gdb_disassembler::pretty_print_insn.
17140         (dump_insns): Add one argument gdb_disassemlber.  All
17141         callers updated.
17142         (do_mixed_source_and_assembly_deprecated): Likewise.
17143         (do_mixed_source_and_assembly): Likewise.
17144         (do_assembly_only): Likewise.
17145         (gdb_disassembler::gdb_disassembler): New.
17146         (gdb_disassembler::print_insn): New.
17147         * disasm.h (class gdb_disassembler): New.
17148         (gdb_pretty_print_insn): Remove declaration.
17149         (gdb_disassemble_info): Likewise.
17150         * guile/scm-disasm.c (class gdbscm_disassembler): New.
17151         (gdbscm_disasm_read_memory_worker): Update.
17152         (gdbscm_disasm_read_memory): Update.
17153         (gdbscm_disasm_memory_error): Remove.
17154         (gdbscm_disasm_print_address): Remove.
17155         (gdbscm_disassembler::gdbscm_disassembler): New.
17156         (gdbscm_print_insn_from_port): Update.
17157         * mips-tdep.c: Include disasm.h.
17158         (gdb_print_insn_mips): Update code to get gdbarch.
17159         * record-btrace.c (btrace_insn_history): Update.
17160         * spu-tdep.c: Include disasm.h.
17161         (struct spu_dis_asm_data): Remove.
17162         (struct spu_dis_asm_info): New.
17163         (spu_dis_asm_print_address): Use spu_dis_asm_info to get
17164         SPU id.
17165         (gdb_print_insn_spu): Cast disassemble_info to
17166         spu_dis_asm_info.
17167
17168 2017-01-26  Yao Qi  <yao.qi@linaro.org>
17169
17170         * disasm.c (do_ui_file_delete): Delete.
17171         (gdb_insn_length): Move code creating stream to ...
17172         * utils.c (null_stream): ... here.  New function.
17173         * utils.h (null_stream): Declare.
17174
17175 2017-01-23  Simon Marchi  <simon.marchi@polymtl.ca>
17176
17177         * python/py-inferior.c (find_thread_object): Return directly
17178         from the loop.  Remove "found" variable.
17179
17180 2017-01-21  Joel Brobecker  <brobecker@adacore.com>
17181
17182         GDB 7.12.1 released.
17183
17184 2017-01-20  Simon Marchi  <simon.marchi@ericsson.com>
17185
17186         * python/py-function.c (fnpy_call): Reorder declarations to have
17187         the gdbpy_enter object declared first.
17188         * python/py-xmethods.c (gdbpy_get_xmethod_arg_types): Likewise.
17189
17190 2017-01-20  Simon Marchi  <simon.marchi@ericsson.com>
17191
17192         PR python/21068
17193         * python/python-internal.h (PyMem_RawMalloc): Define for
17194         Python < 3.4.
17195         * python/py-gdb-readline.c (gdbpy_readline_wrapper): Use
17196         PyMem_RawMalloc instead of PyMem_Malloc.
17197
17198 2017-01-20  Mike Wrighton  <mike_wrighton@codesourcery.com>
17199             Luis Machado  <lgustavo@codesourcery.com>
17200
17201         * NEWS (New commands): Mention flash-erase.
17202         (New MI commands): Mention target-flash-erase.
17203         * mi/mi-cmds.c (mi_cmd_target_flash_erase): Add target-flash-erase MI
17204         command.
17205         * mi/mi-cmds.h (mi_cmd_target_flash_erase): New declaration.
17206         * mi/mi-main.c (mi_cmd_target_flash_erase): New function.
17207         * target.c (flash_erase_command): New function.
17208         (initialize_targets): Add new flash-erase command.
17209         * target.h (flash_erase_command): New declaration.
17210
17211 2017-01-20  Joel Brobecker  <brobecker@adacore.com>
17212
17213         * nat/linux-ptrace.c: Only include <sys/procfs.h> if
17214         HAVE_SYS_PROCFS_H is defined.
17215
17216 2017-01-18  Alan Hayward  <alan.hayward@arm.com>
17217
17218         * remote.c (struct cached_reg): Change data into a pointer.
17219         * (stop_reply_dtr): Free data pointers before deleting vector.
17220         (process_stop_reply): Likewise.
17221         (remote_parse_stop_reply): Allocate space for data
17222
17223 2017-01-18  Alan Hayward  <alan.hayward@arm.com>
17224
17225         * amd64-tdep.c (amd64_pseudo_register_read_value): remove
17226         MAX_REGISTER_SIZE.
17227         (amd64_pseudo_register_read_value): Likewise.
17228         * remote.c (fetch_register_using_p): Remove MAX_REGISTER_SIZE.
17229         (store_register_using_P): Likewise.
17230         * regcache.c (regcache_xfer_part): Likewise.
17231
17232 2017-01-16  Ivo Raisr  <ivo.raisr@oracle.com>
17233
17234         Split real and pseudo registers.
17235         * sparc-tdep.h (SPARC_CORE_REGISTERS): New macro.
17236         (sparc32_pseudo_regnum): New enum.
17237         * sparc64-tdep.h (sparc64_pseudo_regnum): New enum.
17238         * sparc-tdep.c (SPARC32_FPU_REGISTERS): New macro.
17239         (SPARC32_CP0_REGISTERS): New macro.
17240         (sparc32_pseudo_register_name): New function.
17241         (sparc32_register_name): Use sparc32_pseudo_register_name.
17242         (sparc32_pseudo_register_type): New function.
17243         (sparc32_register_type): Use sparc32_pseudo_register_type.
17244         (sparc32_pseudo_register_read, sparc32_pseudo_register_write): Handle
17245         pseudo register numbers.
17246         * sparc64-tdep.c SPARC64_FPU_REGISTERS): New macro.
17247         (SPARC64_CP0_REGISTERS): New macro.
17248         (sparc64_pseudo_register_name): New function.
17249         (sparc64_register_name): Use sparc64_pseudo_register_name.
17250         (sparc64_pseudo_register_type): New function.
17251         (sparc64_register_type): Use sparc64_pseudo_register_type.
17252         (sparc64_pseudo_register_read, sparc64_pseudo_register_write): Handle
17253         pseudo register numbers.
17254         (sparc64_store_floating_fields, sparc64_extract_floating_fields,
17255         sparc64_store_arguments): Handle pseudo register numbers.
17256
17257 2017-01-13  Yao Qi  <yao.qi@linaro.org>
17258
17259         * remote.c (REMOTE_DEBUG_MAX_CHAR): New macro.
17260         (putpkt_binary): Print only REMOTE_DEBUG_MAX_CHAR chars in debug
17261         output.
17262         (getpkt_or_notif_sane_1): Likewise.
17263
17264 2017-01-13  Yao Qi  <yao.qi@linaro.org>
17265
17266         * Makefile.in (checker-headers): Use CXX and CXX_DIALET instead
17267         of CC.  Pass "-x c++-header" instead of "-x c".
17268
17269 2017-01-12  Simon Marchi  <simon.marchi@ericsson.com>
17270
17271         * remote.c (remote_can_async_p): Update comment.
17272
17273 2017-01-12  Simon Marchi  <simon.marchi@ericsson.com>
17274
17275         * linux-nat.c (linux_nat_can_async_p): Update comment.
17276
17277 2017-01-12  Simon Marchi  <simon.marchi@ericsson.com>
17278
17279         * serial.c (serial_open): Forget about "pc" and "lpt" serial interface.
17280
17281 2017-01-11  Simon Marchi  <simon.marchi@ericsson.com>
17282
17283         * cli/cli-decode.c (lookup_cmd_1): Fix typo in comment.
17284
17285 2017-01-10  Tom Tromey  <tom@tromey.com>
17286
17287         * python/py-type.c (typy_legacy_template_argument): Update.
17288         * cp-support.h (struct demangle_parse_info) (demangle_parse_info,
17289         ~demangle_parse_info): Declare new members.
17290         (cp_demangled_name_to_comp): Return unique_ptr.
17291         (cp_demangled_name_parse_free)
17292         (make_cleanup_cp_demangled_name_parse_free)
17293         (cp_new_demangle_parse_info): Remove.
17294         * cp-support.c (do_demangled_name_parse_free_cleanup)
17295         (make_cleanup_cp_demangled_name_parse_free): Remove.
17296         (inspect_type, cp_canonicalize_string_full)
17297         (cp_canonicalize_string): Update.
17298         (mangled_name_to_comp): Change return type.
17299         (cp_class_name_from_physname, method_name_from_physname)
17300         (cp_func_name, cp_remove_params): Update.
17301         * cp-name-parser.y (demangle_parse_info): New constructor, from
17302         cp_new_demangle_parse_info.
17303         (~demangle_parse_info): New destructor, from
17304         cp_demangled_name_parse_free.
17305         (cp_merge_demangle_parse_infos): Update.
17306         (cp_demangled_name_to_comp): Change return type.
17307
17308 2017-01-10  Tom Tromey  <tom@tromey.com>
17309
17310         * top.c (prevent_dont_repeat): Change return type.
17311         * python/python.c (execute_gdb_command): Use std::string.
17312         Update.
17313         * guile/guile.c (gdbscm_execute_gdb_command): Update.
17314         * command.h (prevent_dont_repeat): Change return type.
17315         * breakpoint.c (bpstat_do_actions_1): Update.
17316
17317 2017-01-10  Tom Tromey  <tom@tromey.com>
17318
17319         * value.h (scoped_value_mark::~scoped_value_mark): Call
17320         free_to_mark.
17321         (scoped_value_mark::free_to_mark): New method.
17322         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use
17323         scoped_value_mark.
17324
17325 2017-01-10  Tom Tromey  <tom@tromey.com>
17326
17327         * python/py-value.c (valpy_dereference, valpy_referenced_value)
17328         (valpy_reference_value, valpy_const_value, valpy_get_address)
17329         (valpy_get_dynamic_type, valpy_lazy_string, valpy_do_cast)
17330         (valpy_getitem, valpy_call, valpy_binop_throw, valpy_negative)
17331         (valpy_absolute, valpy_richcompare_throw): Use scoped_value_mark.
17332         * dwarf2loc.c (dwarf2_loc_desc_get_symbol_read_needs): Use
17333         scoped_value_mark.
17334         * dwarf2-frame.c (execute_stack_op): Use scoped_value_mark.
17335         * value.h (scoped_value_mark): New class.
17336
17337 2017-01-10  Tom Tromey  <tom@tromey.com>
17338
17339         * dwarf2read.c (dwarf2_build_psymtabs): Use psymtab_discarder.
17340         * psympriv.h (make_cleanup_discard_psymtabs): Don't declare.
17341         * psymtab.c (discard_psymtabs_upto): Remove.
17342         (make_cleanup_discard_psymtabs): Remove.
17343         (struct psymtab_state): Remove.
17344
17345 2017-01-10  Tom Tromey  <tom@tromey.com>
17346
17347         * record-full.c (record_full_save_cleanups): Remove.
17348         (record_full_save): Use gdb::unlinker.
17349         * gcore.c (do_bfd_delete_cleanup): Remove.
17350         (gcore_command): Use gdb::unlinker, unique_xmalloc_ptr.  Remove
17351         cleanups.
17352         * dwarf2read.c (unlink_if_set): Remove.
17353         (write_psymtabs_to_index): Use gdb::unlinker.
17354         * common/gdb_unlinker.h: New file.
17355
17356 2017-01-10  Tom Tromey  <tom@tromey.com>
17357
17358         * windows-tdep.c (windows_xfer_shared_library): Update.
17359         * windows-nat.c (windows_make_so): Update.
17360         * utils.h (make_cleanup_bfd_unref): Remove.
17361         * utils.c (do_bfd_close_cleanup, make_cleanup_bfd_unref): Remove.
17362         * symfile.h (symfile_bfd_open)
17363         (find_separate_debug_file_in_section): Return gdb_bfd_ref_ptr.
17364         * symfile.c (read_symbols, symbol_file_add)
17365         (separate_debug_file_exists): Update.
17366         (symfile_bfd_open): Return gdb_bfd_ref_ptr.
17367         (generic_load, reread_symbols): Update.
17368         * symfile-mem.c (symbol_file_add_from_memory): Update.
17369         * spu-linux-nat.c (spu_bfd_open): Return gdb_bfd_ref_ptr.
17370         (spu_symbol_file_add_from_memory): Update.
17371         * solist.h (struct target_so_ops) <bfd_open>: Return
17372         gdb_bfd_ref_ptr.
17373         (solib_bfd_fopen, solib_bfd_open): Return gdb_bfd_ref_ptr.
17374         * solib.c (solib_bfd_fopen, solib_bfd_open): Return
17375         gdb_bfd_ref_ptr.
17376         (solib_map_sections, reload_shared_libraries_1): Update.
17377         * solib-svr4.c (enable_break): Update.
17378         * solib-spu.c (spu_bfd_fopen): Return gdb_bfd_ref_ptr.
17379         * solib-frv.c (enable_break2): Update.
17380         * solib-dsbt.c (enable_break): Update.
17381         * solib-darwin.c (gdb_bfd_mach_o_fat_extract): Return
17382         gdb_bfd_ref_ptr.
17383         (darwin_solib_get_all_image_info_addr_at_init): Update.
17384         (darwin_bfd_open): Return gdb_bfd_ref_ptr.
17385         * solib-aix.c (solib_aix_bfd_open): Return gdb_bfd_ref_ptr.
17386         * record-full.c (record_full_save): Update.
17387         * python/py-objfile.c (objfpy_add_separate_debug_file): Update.
17388         * procfs.c (insert_dbx_link_bpt_in_file): Update.
17389         * minidebug.c (find_separate_debug_file_in_section): Return
17390         gdb_bfd_ref_ptr.
17391         * machoread.c (macho_add_oso_symfile): Change abfd to
17392         gdb_bfd_ref_ptr.
17393         (macho_symfile_read_all_oso): Update.
17394         (macho_check_dsym): Return gdb_bfd_ref_ptr.
17395         (macho_symfile_read): Update.
17396         * jit.c (bfd_open_from_target_memory): Return gdb_bfd_ref_ptr.
17397         (jit_bfd_try_read_symtab): Update.
17398         * gdb_bfd.h (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
17399         (gdb_bfd_openw, gdb_bfd_openr_iovec)
17400         (gdb_bfd_openr_next_archived_file, gdb_bfd_fdopenr): Return
17401         gdb_bfd_ref_ptr.
17402         (gdb_bfd_ref_policy): New struct.
17403         (gdb_bfd_ref_ptr): New typedef.
17404         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
17405         (gdb_bfd_openw, gdb_bfd_openr_iovec)
17406         (gdb_bfd_openr_next_archived_file, gdb_bfd_fdopenr): Return
17407         gdb_bfd_ref_ptr.
17408         * gcore.h (create_gcore_bfd): Return gdb_bfd_ref_ptr.
17409         * gcore.c (create_gcore_bfd): Return gdb_bfd_ref_ptr.
17410         (gcore_command): Update.
17411         * exec.c (exec_file_attach): Update.
17412         * elfread.c (elf_symfile_read): Update.
17413         * dwarf2read.c (dwarf2_get_dwz_file): Update.
17414         (try_open_dwop_file, open_dwo_file): Return gdb_bfd_ref_ptr.
17415         (open_and_init_dwo_file): Update.
17416         (open_dwp_file): Return gdb_bfd_ref_ptr.
17417         (open_and_init_dwp_file): Update.
17418         * corelow.c (core_open): Update.
17419         * compile/compile-object-load.c (compile_object_load): Update.
17420         * common/gdb_ref_ptr.h (ref_ptr::operator->): New operator.
17421         * coffread.c (coff_symfile_read): Update.
17422         * cli/cli-dump.c (bfd_openr_or_error, bfd_openw_or_error): Return
17423         gdb_bfd_ref_ptr.  Rename.
17424         (dump_bfd_file, restore_command): Update.
17425         * build-id.h (build_id_to_debug_bfd): Return gdb_bfd_ref_ptr.
17426         * build-id.c (build_id_to_debug_bfd): Return gdb_bfd_ref_ptr.
17427         (find_separate_debug_file_by_buildid): Update.
17428
17429 2017-01-10  Tom Tromey  <tom@tromey.com>
17430
17431         * common/gdb_ref_ptr.h: New file.
17432         * python/py-ref.h (struct gdbpy_ref_policy): New.
17433         (gdbpy_ref): Now a typedef.
17434
17435 2017-01-10  Tom Tromey  <tom@tromey.com>
17436
17437         * utils.h (make_cleanup_htab_delete): Don't declare.
17438         * utils.c (do_htab_delete_cleanup, make_cleanup_htab_delete):
17439         Remove.
17440         * linespec.c (decode_compound_collector): Add constructor,
17441         destructor.
17442         (lookup_prefix_sym): Remove cleanup.
17443         (symtab_collector): Add constructor, destructor.
17444         (collect_symtabs_from_filename): Remove cleanup.
17445         * disasm.c (do_mixed_source_and_assembly): Use htab_up.
17446         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
17447         Use htab_up.
17448         * gnu-v3-abi.c (gnuv3_print_vtable): Use htab_up.
17449         * dwarf2read.c (dw2_expand_symtabs_matching)
17450         (dw2_map_symbol_filenames, dwarf_decode_macros)
17451         (write_psymtabs_to_index): Use htab_up.
17452         * dwarf2loc.c (func_verify_no_selftailcall)
17453         (call_site_find_chain_1, func_verify_no_selftailcall)
17454         (chain_candidate, call_site_find_chain_1): Use std::unordered_set,
17455         std::vector, gdb::unique_xmalloc_ptr.
17456         (call_sitep): Remove typedef.
17457         (dwarf2_locexpr_baton_eval): Remove unused variable.
17458
17459 2017-01-10  Tom Tromey  <tom@tromey.com>
17460
17461         * python/python-internal.h (make_cleanup_py_decref)
17462         (make_cleanup_py_xdecref): Don't declare.
17463         * python/py-utils.c (py_decref, make_cleanup_py_decref)
17464         (py_xdecref, make_cleanup_py_xdecref): Remove.
17465
17466 2017-01-10  Tom Tromey  <tom@tromey.com>
17467
17468         * python/py-framefilter.c (py_mi_print_variables): Use gdbpy_ref.
17469         (py_print_locals, enumerate_locals, py_print_args): Use gdbpy_ref.
17470
17471 2017-01-10  Tom Tromey  <tom@tromey.com>
17472
17473         * python/py-framefilter.c (enumerate_args): Use gdbpy_ref.
17474
17475 2017-01-10  Tom Tromey  <tom@tromey.com>
17476
17477         * python/py-utils.c (unicode_to_encoded_string)
17478         (python_string_to_target_string)
17479         (python_string_to_target_python_string)
17480         (python_string_to_host_string, gdbpy_obj_to_string)
17481         (get_addr_from_python): Use gdbpy_ref.
17482
17483 2017-01-10  Tom Tromey  <tom@tromey.com>
17484
17485         * python/py-unwind.c (pyuw_object_attribute_to_pointer): Use
17486         gdbpy_ref.
17487
17488 2017-01-10  Tom Tromey  <tom@tromey.com>
17489
17490         * python/python.c (eval_python_command, gdbpy_decode_line)
17491         (gdbpy_run_events, gdbpy_start_type_printers)
17492         (gdbpy_apply_type_printers): Use gdbpy_ref.
17493
17494 2017-01-10  Tom Tromey  <tom@tromey.com>
17495
17496         * python/py-param.c (get_doc_string, compute_enum_values): Use
17497         gdbpy_ref.
17498
17499 2017-01-10  Tom Tromey  <tom@tromey.com>
17500
17501         * python/py-inferior.c (find_thread_object, build_inferior_list):
17502         Use gdbpy_ref.
17503
17504 2017-01-10  Tom Tromey  <tom@tromey.com>
17505
17506         * python/py-framefilter.c (py_print_frame): Use gdbpy_ref.
17507
17508 2017-01-10  Tom Tromey  <tom@tromey.com>
17509
17510         * python/py-finishbreakpoint.c (bpfinishpy_out_of_scope): Use
17511         gdbpy_ref.
17512
17513 2017-01-10  Tom Tromey  <tom@tromey.com>
17514
17515         * python/py-cmd.c (cmdpy_completer_helper): Use gdbpy_ref.  Remove
17516         extra incref.
17517         (cmdpy_completer_handle_brkchars, cmdpy_completer, cmdpy_init):
17518         Use gdbpy_ref.
17519
17520 2017-01-10  Tom Tromey  <tom@tromey.com>
17521
17522         * python/py-breakpoint.c (gdbpy_breakpoint_cond_says_stop): Use
17523         gdbpy_ref.
17524
17525 2017-01-10  Tom Tromey  <tom@tromey.com>
17526
17527         * python/py-arch.c (archpy_disassemble): Use gdbpy_ref.  Don't
17528         decref results of PyArg_ParseTupleAndKeywords.
17529
17530 2017-01-10  Tom Tromey  <tom@tromey.com>
17531
17532         * python/python.c (python_run_simple_file): Use
17533         unique_xmalloc_ptr, gdbpy_ref.
17534
17535 2017-01-10  Tom Tromey  <tom@tromey.com>
17536
17537         * python/py-prettyprint.c (print_stack_unless_memory_error)
17538         (print_string_repr, print_children): Use gdbpy_ref.
17539         (dummy_python_frame): New class.
17540         (dummy_python_frame::dummy_python_frame): Rename from
17541         push_dummy_python_frame.
17542         (py_restore_tstate): Remove.
17543
17544 2017-01-10  Tom Tromey  <tom@tromey.com>
17545
17546         * python/py-framefilter.c (py_print_frame): Use gdbpy_ref.
17547
17548 2017-01-10  Tom Tromey  <tom@tromey.com>
17549
17550         * python/python.c (ensure_python_env, restore_python_env):
17551         Remove.
17552         * python/python-internal.h (ensure_python_env): Don't declare.
17553         * varobj.h (varobj_ensure_python_env): Don't declare.
17554         * varobj.c (varobj_ensure_python_env): Remove.
17555
17556 2017-01-10  Tom Tromey  <tom@tromey.com>
17557
17558         * varobj.c (varobj_value_get_print_value): Use
17559         gdbpy_enter_varobj.
17560
17561 2017-01-10  Tom Tromey  <tom@tromey.com>
17562
17563         * python/py-prettyprint.c (print_string_repr, print_children):
17564         Update.
17565         * python/py-lazy-string.c (gdbpy_extract_lazy_string): Change type
17566         of "encoding".
17567         * varobj.c (varobj_value_get_print_value): Update.
17568         * python/python-internal.h (gdbpy_extract_lazy_string): Update.
17569
17570 2017-01-10  Tom Tromey  <tom@tromey.com>
17571
17572         * varobj.c (varobj_get_display_hint)
17573         (dynamic_varobj_has_child_method, install_new_value_visualizer)
17574         (varobj_set_visualizer, free_variable): Use
17575         gdbpy_enter_varobj.
17576
17577 2017-01-10  Tom Tromey  <tom@tromey.com>
17578
17579         * python/python.c (python_command): Use gdbpy_enter, gdbpy_ref.
17580         (do_finish_initialization): New function.  Use gdbpy_ref.
17581         (gdbpy_finish_initialization): Use gdbpy_enter.  Call
17582         do_finish_initialization.
17583
17584 2017-01-10  Tom Tromey  <tom@tromey.com>
17585
17586         * python/py-param.c (get_set_value, get_show_value): Use
17587         gdbpy_enter, gdbpy_ref.
17588
17589 2017-01-10  Tom Tromey  <tom@tromey.com>
17590
17591         * python/py-function.c (fnpy_call): Use gdbpy_enter, gdbpy_ref.
17592
17593 2017-01-10  Tom Tromey  <tom@tromey.com>
17594
17595         * python/py-cmd.c (cmdpy_function): Use gdbpy_enter, gdbpy_ref.
17596
17597 2017-01-10  Tom Tromey  <tom@tromey.com>
17598
17599         * python/py-varobj.c (py_varobj_iter_dtor, py_varobj_iter_next):
17600         Use gdbpy_enter_varobj.
17601
17602 2017-01-10  Tom Tromey  <tom@tromey.com>
17603
17604         * varobj.c (gdbpy_enter_varobj): New constructor.
17605         * python/python-internal.h (gdbpy_enter_varobj): New class.
17606         * python/py-varobj.c (py_varobj_get_iterator): Use
17607         gdbpy_enter_varobj.
17608
17609 2017-01-10  Tom Tromey  <tom@tromey.com>
17610
17611         * python/py-xmethods.c (gdbpy_get_xmethod_result_type): Use
17612         gdbpy_enter, gdbpy_ref, unique_xmalloc_ptr.
17613         (gdbpy_invoke_xmethod): Use gdbpy_ref, gdbpy_enter.
17614         (gdbpy_get_xmethod_arg_types): Use gdbpy_ref,
17615         unique_xmalloc_ptr.
17616         (gdbpy_get_xmethod_arg_types): Use gdbpy_ref, gdbpy_enter.
17617
17618 2017-01-10  Tom Tromey  <tom@tromey.com>
17619
17620         * python/py-xmethods.c (invoke_match_method): Use
17621         gdbpy_ref.
17622
17623 2017-01-10  Tom Tromey  <tom@tromey.com>
17624
17625         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers): use
17626         gdbpy_enter, gdbpy_ref.
17627
17628 2017-01-10  Tom Tromey  <tom@tromey.com>
17629
17630         * python/python.c (python_interactive_command): Use gdbpy_enter.
17631
17632 2017-01-10  Tom Tromey  <tom@tromey.com>
17633
17634         * python/python.c (gdbpy_before_prompt_hook): Use gdbpy_enter,
17635         gdbpy_ref.
17636
17637 2017-01-10  Tom Tromey  <tom@tromey.com>
17638
17639         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Use
17640         gdbpy_enter, gdbpy_ref, unique_xmalloc_ptr.
17641
17642 2017-01-10  Tom Tromey  <tom@tromey.com>
17643
17644         * utils.h (htab_deleter): New struct.
17645         (htab_up): New typedef.
17646         * python/py-framefilter.c (gdbpy_apply_frame_filter): Use
17647         gdbpy_enter, gdbpy_ref, htab_up.
17648
17649 2017-01-10  Tom Tromey  <tom@tromey.com>
17650
17651         * python/py-unwind.c (pending_frame_invalidate): Remove.
17652         (pyuw_sniffer): Use gdbpy_enter and gdbpy_ref.
17653
17654 2017-01-10  Tom Tromey  <tom@tromey.com>
17655
17656         * python/py-xmethods.c (gdbpy_free_xmethod_worker_data)
17657         (gdbpy_clone_xmethod_worker_data): Use gdbpy_enter.
17658
17659 2017-01-10  Tom Tromey  <tom@tromey.com>
17660
17661         * python/py-type.c (save_objfile_types): Use gdbpy_enter.
17662
17663 2017-01-10  Tom Tromey  <tom@tromey.com>
17664
17665         * python/python.c (gdbpy_eval_from_control_command)
17666         (gdbpy_source_script, gdbpy_run_events)
17667         (gdbpy_source_objfile_script, gdbpy_execute_objfile_script)
17668         (gdbpy_free_type_printers, gdbpy_finish_initialization): Use
17669         gdbpy_enter.
17670
17671 2017-01-10  Tom Tromey  <tom@tromey.com>
17672
17673         * python/py-progspace.c (py_free_pspace): Use gdbpy_enter.
17674
17675 2017-01-10  Tom Tromey  <tom@tromey.com>
17676
17677         * python/py-objfile.c (py_free_objfile): Use gdbpy_enter.
17678
17679 2017-01-10  Tom Tromey  <tom@tromey.com>
17680
17681         * python/py-inferior.c (python_on_normal_stop, python_on_resume)
17682         (python_on_inferior_call_pre, python_on_inferior_call_post)
17683         (python_on_memory_change, python_on_register_change)
17684         (python_inferior_exit, python_new_objfile, add_thread_object)
17685         (delete_thread_object, py_free_inferior): Use gdbpy_enter.
17686
17687 2017-01-10  Tom Tromey  <tom@tromey.com>
17688
17689         * python/py-finishbreakpoint.c (bpfinishpy_handle_stop)
17690         (bpfinishpy_handle_exit): Use gdbpy_enter.
17691
17692 2017-01-10  Tom Tromey  <tom@tromey.com>
17693
17694         * python/py-cmd.c (cmdpy_destroyer)
17695         (cmdpy_completer_handle_brkchars, cmdpy_completer): Use
17696         gdbpy_enter.
17697
17698 2017-01-10  Tom Tromey  <tom@tromey.com>
17699
17700         * python/py-breakpoint.c (gdbpy_breakpoint_cond_says_stop): Use
17701         gdbpy_enter.
17702         (gdbpy_breakpoint_has_cond): Likewise.
17703
17704 2017-01-10  Tom Tromey  <tom@tromey.com>
17705
17706         * python/python.c (gdbpy_enter): New constructor.
17707         (~gdbpy_enter): New destructor.
17708         (restore_python_env, ensure_python_env): Rewrite.
17709         * python/python-internal.h (gdbpy_enter): New class.
17710
17711 2017-01-10  Tom Tromey  <tom@tromey.com>
17712
17713         * python/py-symbol.c (gdbpy_lookup_symbol): Use gdbpy_ref.
17714
17715 2017-01-10  Tom Tromey  <tom@tromey.com>
17716
17717         * python/py-value.c (value_has_field, get_field_flag)
17718         (get_field_type, valpy_getitem, convert_value_from_python): Use
17719         gdbpy_ref.
17720
17721 2017-01-10  Tom Tromey  <tom@tromey.com>
17722
17723         * python/python.c (gdbpy_progspaces, gdbpy_objfiles): Use
17724         gdbpy_ref.
17725
17726 2017-01-10  Tom Tromey  <tom@tromey.com>
17727
17728         * python/py-prettyprint.c (search_pp_list)
17729         (find_pretty_printer_from_objfiles)
17730         (find_pretty_printer_from_progspace)
17731         (find_pretty_printer_from_gdb, find_pretty_printer)
17732         (gdbpy_get_display_hint, gdbpy_get_varobj_pretty_printer): Use
17733         gdbpy_ref.
17734
17735 2017-01-10  Tom Tromey  <tom@tromey.com>
17736
17737         * python/py-param.c (call_doc_function): Use gdbpy_ref.
17738
17739 2017-01-10  Tom Tromey  <tom@tromey.com>
17740
17741         * python/py-linetable.c (build_line_table_tuple_from_pcs)
17742         (ltpy_get_all_source_lines): Use gdbpy_ref.
17743
17744 2017-01-10  Tom Tromey  <tom@tromey.com>
17745
17746         * python/py-framefilter.c (extract_sym, extract_value)
17747         (get_py_iter_from_func, bootstrap_python_frame_filters): Use
17748         gdbpy_ref.
17749
17750 2017-01-10  Tom Tromey  <tom@tromey.com>
17751
17752         * python/py-breakpoint.c (gdbpy_breakpoints): Use gdbpy_ref.
17753
17754 2017-01-10  Tom Tromey  <tom@tromey.com>
17755
17756         * python/py-inferior.c (gdbpy_inferiors): Use gdbpy_ref.
17757
17758 2017-01-10  Tom Tromey  <tom@tromey.com>
17759
17760         * python/py-function.c (convert_values_to_python, fnpy_init): Use
17761         gdbpy_ref.
17762
17763 2017-01-10  Tom Tromey  <tom@tromey.com>
17764
17765         * python/py-cmd.c (gdbpy_string_to_argv): Use gdbpy_ref.
17766
17767 2017-01-10  Tom Tromey  <tom@tromey.com>
17768
17769         * python/py-type.c (convert_field, make_fielditem, typy_fields)
17770         (typy_range): Use gdbpy_ref.
17771
17772 2017-01-10  Tom Tromey  <tom@tromey.com>
17773
17774         * python/py-threadevent.c (create_thread_event_object): Use
17775         gdbpy_ref.
17776         * python/py-stopevent.c (create_stop_event_object): Simplify.
17777         (emit_stop_event): Use gdbpy_ref.
17778         * python/py-signalevent.c (create_signal_event_object): Use
17779         gdbpy_ref.
17780         * python/py-newobjfileevent.c (create_new_objfile_event_object)
17781         (emit_new_objfile_event, create_clear_objfiles_event_object)
17782         (emit_clear_objfiles_event): Use gdbpy_ref.
17783         * python/py-infevents.c (create_inferior_call_event_object)
17784         (create_register_changed_event_object)
17785         (create_memory_changed_event_object, emit_inferior_call_event)
17786         (emit_memory_changed_event, emit_register_changed_event): Use
17787         gdbpy_ref.
17788         * python/py-exitedevent.c (create_exited_event_object)
17789         (emit_exited_event): Use gdbpy_ref.
17790         * python/py-event.h (evpy_emit_event): Remove
17791         CPYCHECKER_STEALS_REFERENCE_TO_ARG annotation.
17792         * python/py-event.c (evpy_emit_event): Use gdbpy_ref.
17793         * python/py-continueevent.c (emit_continue_event): Use
17794         gdbpy_ref.
17795         * python/py-breakpoint.c (gdbpy_breakpoint_created)
17796         (gdbpy_breakpoint_deleted, gdbpy_breakpoint_modified): Use
17797         gdbpy_ref.
17798         * python/py-bpevent.c (create_breakpoint_event_object): Use
17799         gdbpy_ref.
17800
17801 2017-01-10  Tom Tromey  <tom@tromey.com>
17802
17803         * python/py-ref.h: New file.
17804
17805 2017-01-10  Simon Marchi  <simon.marchi@ericsson.com>
17806
17807         * cli-out.c (cli_ui_out::do_redirect): Change return type to
17808         void.
17809         * cli-out.h (cli_ui_out::do_redirect): Likewise.
17810         * mi/mi-out.c (mi_ui_out::do_redirect): Likewise.
17811         * mi/mi-out.h (mi_ui_out::do_redirect): Likewise.
17812         * ui-out.c (ui_out::redirect): Likewise.
17813         * ui-out.h (ui_out::redirect, ui_out::do_redirect): Likewise.
17814         * cli/cli-logging.c (set_logging_redirect): Update call site of
17815         ui_out::redirect.
17816         (handle_redirections): Likewise.
17817         * scm-ports.c (ioscm_with_output_to_port_worker): Likewise.
17818         * top.c (execute_command_to_string): Likewise.
17819         * utils.c (do_ui_out_redirect_pop): Likewise.
17820
17821 2017-01-10  Simon Marchi  <simon.marchi@ericsson.com>
17822
17823         * stack.c (_initialize_stack): Update "frame" command help message.
17824
17825 2017-01-08  Iain Buclaw  <ibuclaw@gdcproject.org>
17826
17827         * d-exp.y (CastExpression): Emit UNOP_CAST_TYPE.
17828
17829 2017-01-06  Yao Qi  <yao.qi@linaro.org>
17830
17831         * x86-linux-nat.h: Include gdb_proc_service.h.
17832
17833 2017-01-06  Yao Qi  <yao.qi@linaro.org>
17834
17835         * ser-base.h: Include serial.h.
17836
17837 2017-01-06  Yao Qi  <yao.qi@linaro.org>
17838
17839         * ppc-linux-tdep.h: Include ppc-tdep.h.
17840
17841 2017-01-06  Yao Qi  <yao.qi@linaro.org>
17842
17843         * nat/amd64-linux-siginfo.h: Include signal.h.
17844
17845 2017-01-06  Yao Qi  <yao.qi@linaro.org>
17846
17847         * nat/aarch64-linux-hw-point.h: Include break-common.h.
17848
17849 2017-01-06  Yao Qi  <yao.qi@linaro.org>
17850
17851         * mi/mi-parse.h: Include mi-cmds.h.
17852
17853 2017-01-06  Yao Qi  <yao.qi@linaro.org>
17854
17855         * inf-loop.c: Don't include "target.h".
17856         * inf-loop.h: Include it here.
17857
17858 2017-01-06  Yao Qi  <yao.qi@linaro.org>
17859
17860         * dfp.h: Include "dboulest.h" and "expression.h".
17861
17862 2017-01-06  Yao Qi  <yao.qi@linaro.org>
17863
17864         * ax-gdb.h: Include "ax.h".
17865
17866 2017-01-06  Yao Qi  <yao.qi@linaro.org>
17867
17868         * Makefile.in (HFILES_NO_SRCDIR): Replace gdb_ptrace.h
17869         with nat/gdb_ptrace.h.
17870
17871 2017-01-05  Yao Qi  <yao.qi@linaro.org>
17872
17873         * mips-fbsd-tdep.c (mips_fbsd_sigframe_init): Move && to
17874         new line.
17875         (mips64_fbsd_sigframe_init): Likewise.
17876
17877 2017-01-04  John Baldwin  <jhb@FreeBSD.org>
17878
17879         * mips-fbsd-tdep.c (_initialize_mips_fbsd_tdep): Use
17880         GDB_OSABI_FREEBSD instead of GDB_OSABI_FREEBSD_ELF.
17881
17882 2017-01-04  John Baldwin  <jhb@FreeBSD.org>
17883
17884         * Makefile.in (ALLDEPFILES): Add mips-fbsd-nat.c.
17885         * NEWS: Mention new FreeBSD/mips native configuration.
17886         * config/mips/fbsd.mh: New file.
17887         * configure.host: Add mips*-*-freebsd*.
17888         * mips-fbsd-nat.c: New file.
17889
17890 2017-01-04  John Baldwin  <jhb@FreeBSD.org>
17891
17892         * Makefile.in (ALL_TARGET_OBS): Add mips-fbsd-tdep.o.
17893         (ALLDEPFILES): Add mips-fbsd-tdep.c.
17894         * NEWS: Mention new FreeBSD/mips target.
17895         * configure.tgt: Add mips*-*-freebsd*.
17896         * mips-fbsd-tdep.c: New file.
17897         * mips-fbsd-tdep.h: New file.
17898
17899 2017-01-04  Yao Qi  <yao.qi@linaro.org>
17900
17901         * dwarf2loc.c (write_pieced_value): Don't use VALUE_FRAME_ID (to),
17902         use c->frame_id when the piece location is DWARF_VALUE_REGISTER.
17903
17904 2017-01-01  Joel Brobecker  <brobecker@adacore.com>
17905
17906         Update copyright year range in all GDB files.
17907
17908 2017-01-01  Joel Brobecker  <brobecker@adacore.com>
17909
17910         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2016.
17911
17912 For older changes see ChangeLog-2016.
17913 \f
17914 Local Variables:
17915 mode: change-log
17916 left-margin: 8
17917 fill-column: 74
17918 version-control: never
17919 coding: utf-8
17920 End: