Fix for dwz-related crash
[deliverable/binutils-gdb.git] / gdb / ChangeLog
1 2018-05-17 Tom Tromey <tom@tromey.com>
2
3 PR symtab/23010:
4 * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
5 (dw2_instantiate_symtab): Add skip_partial parameter.
6 (dw2_find_last_source_symtab, dw2_map_expand_apply)
7 (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8 (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
9 (dw2_expand_symtabs_matching_one)
10 (dw2_find_pc_sect_compunit_symtab)
11 (dw2_debug_names_lookup_symbol)
12 (dw2_debug_names_expand_symtabs_for_function): Update.
13 (init_cutu_and_read_dies): Add skip_partial parameter.
14 (process_psymtab_comp_unit, build_type_psymtabs_1)
15 (process_skeletonless_type_unit, load_partial_comp_unit)
16 (psymtab_to_symtab_1): Update.
17 (load_full_comp_unit): Add skip_partial parameter.
18 (process_imported_unit_die, dwarf2_read_addr_index)
19 (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
20 (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
21 (read_signatured_type): Update.
22
23 2018-05-17 Simon Marchi <simon.marchi@ericsson.com>
24
25 * value.c (release_value): Remove unused variable.
26 (record_latest_value): Likewise.
27 (access_value_history): Likewise.
28 (preserve_values): Likewise.
29
30 2018-05-17 Tom Tromey <tom@tromey.com>
31
32 * extension.h (struct ext_lang_type_printers) <py_type_printers>:
33 Initialize.
34
35 2018-05-16 Maciej W. Rozycki <macro@mips.com>
36
37 PR gdb/22286
38 * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
39 Also handle registers whose width is not a multiple of
40 PTRACE_TYPE_RET.
41 (linux_nat_trad_target::store_register): Likewise.
42
43 2018-05-16 Tom Tromey <tom@tromey.com>
44
45 * gdbcore.h (core_bfd): Redefine.
46 * corelow.c (core_target::close): Update.
47 (core_target_open): Update.
48 * progspace.h (struct program_space) <cbfd>: Now a
49 gdb_bfd_ref_ptr.
50
51 2018-05-16 Tom Tromey <tom@tromey.com>
52
53 PR cli/19551:
54 * symfile-add-flags.h (enum symfile_add_flags)
55 <SYMFILE_NOT_FILENAME>: New constant.
56 * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME. Get
57 objfile name from BFD.
58 (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
59 * minidebug.c (find_separate_debug_file_in_section): Put
60 ".gnu_debugdata" into BFD's file name.
61
62 2018-05-16 Simon Marchi <simon.marchi@ericsson.com>
63
64 * regcache.c (regcache_read_ftype, regcache_write_ftype):
65 Remove.
66
67 2018-05-15 Tamar Christina <tamar.christina@arm.com>
68
69 PR binutils/21446
70 * aarch64-tdep.c (aarch64_analyze_prologue,
71 aarch64_software_single_step, aarch64_displaced_step_copy_insn):
72 Indicate not interested in errors.
73
74 2018-05-15 Maciej W. Rozycki <macro@mips.com>
75
76 * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
77 Supply the MIPS_ZERO_REGNUM register.
78
79 2018-05-15 Maciej W. Rozycki <macro@mips.com>
80
81 * mips-tdep.c (mask_address_var): Make variable static.
82
83 2018-05-14 Tom Tromey <tom@tromey.com>
84
85 * dwarf2read.c (rust_union_quirks): Clear rust_unions.
86
87 2018-05-11 Andrew Burgess <andrew.burgess@embecosm.com>
88
89 * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
90 FXSAVE_ADDR for the mxcsr register.
91
92 2018-05-11 Max Filippov <jcmvbkbc@gmail.com>
93
94 * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
95
96 2018-05-11 Pedro Alves <palves@redhat.com>
97
98 * corelow.c (core_target) <core_target>: No longer inline.
99 Initialize m_core_gdbarch, m_core_vec and build the section table
100 here.
101 <~core_target>: New.
102 <core_gdbarch, get_core_register_section>: New methods.
103 <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
104 factored out from ...
105 <core_data, core_vec, core_gdbarch>: ... these deleted globals.
106 (core_ops): Delete.
107 (sniff_core_bfd): Add gdbarch parameter.
108 (core_close): Delete, merged into ...
109 (core_target::close): ... here. Delete self.
110 (core_close_cleanup): Delete.
111 (core_target_open): Allocate a core_target on the heap. Use a
112 unique_ptr instead of a cleanup. Bits moved into the core_target
113 ctor. Adjust to use core_target methods instead of globals.
114 (get_core_register_section): Rename to ...
115 (core_target::get_core_register_section): ... this and adjust.
116 (struct get_core_registers_cb_data): New.
117 (get_core_registers_cb): Use it. Use bool.
118 (core_target::fetch_registers, core_target::files_info)
119 (core_target::xfer_partial, core_target::read_description)
120 (core_target::pid_to, core_target::thread_name): Adjust to
121 reference class fields instead of globals.
122 * target.h (struct target_ops_deleter, target_ops_up): New.
123
124 2018-05-11 Pedro Alves <palves@redhat.com>
125
126 * corefile.c (core_file_command): Move to corelow.c.
127 * corelow.c (the_core_target): Delete.
128 (core_file_command): Moved from corefile.c. Check exec_bfd
129 instead of the_core_target. Use target_detach instead of calling
130 into the_core_target directly.
131 (maybe_say_no_core_file_now): New.
132 (core_target::detach): Use it.
133 (_initialize_corelow): Remove references to the_core_target.
134 * gdbcore.h (the_core_target): Delete.
135
136 2018-05-11 Tom Tromey <tromey@redhat.com>
137 Pedro Alves <palves@redhat.com>
138
139 * corefile.c (core_bfd): Remove.
140 * gdbcore.h (core_bfd): Now a macro.
141 * progspace.h (struct program_space) <cbfd>: New field.
142
143 2018-05-11 Tom Tromey <tom@tromey.com>
144
145 * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
146 gdb::def_vector.
147
148 2018-05-10 Tom Tromey <tom@tromey.com>
149
150 * configure: Rebuild.
151 * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
152
153 2018-05-10 Joel Brobecker <brobecker@adacore.com>
154
155 PR server/23158:
156 * regformats/regdat.sh: Adjust script, following the addition
157 of the new expedite_regs parameter to init_target_desc.
158
159 2018-05-10 Omair Javaid <omair.javaid@linaro.org>
160
161 PR gdb/23127
162 * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
163 set_gdbarch_significant_addr_bit.
164 * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
165 set_gdbarch_significant_addr_bit.
166 * utils.c (address_significant): Update to sign extend addr.
167
168 2018-05-09 Max Filippov <jcmvbkbc@gmail.com>
169
170 * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
171 (xtensa_linux_init_abi): Limit tdep->num_regs by
172 tdep->num_nopriv_regs.
173 * xtensa-tdep.c (xtensa_derive_tdep): Calculate
174 tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
175 not initialized.
176
177 2018-05-08 Simon Marchi <simon.marchi@ericsson.com>
178
179 * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
180
181 2018-05-08 Andrew Burgess <andrew.burgess@embecosm.com>
182
183 * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
184 (I387_MXCSR_INIT_VAL): New constant.
185 * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
186 buffer if it was supplied by the inferior.
187 * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
188 (i387_xsave_get_clear_bv): New function.
189 (i387_supply_xsave): Only read x87 control registers from the
190 xsave buffer if the feature is enabled, and the state will have
191 been written, otherwise, provide a suitable default.
192 (i387_collect_xsave): Pre-clear all registers in xsave buffer,
193 including x87 control registers. Update control registers if they
194 have changed from the default value, and mark features as enabled
195 as required.
196 * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
197
198 2018-05-08 Ulrich Weigand <uweigand@de.ibm.com>
199
200 * spu-tdep.c (info_spu_event_command): Fix output formatting.
201
202 2018-05-07 Tom Tromey <tom@tromey.com>
203
204 * configure: Rebuild.
205 * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
206
207 2018-05-07 Tom Tromey <tom@tromey.com>
208
209 PR tdep/20362:
210 * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
211 bit. Use correct value for VDIV.
212
213 2018-05-04 Tom Tromey <tom@tromey.com>
214
215 * configure: Rebuild.
216 * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
217
218 2018-05-04 Tom Tromey <tom@tromey.com>
219
220 * linux-record.c (record_linux_system_call) <case
221 RECORD_SYS_RECVFROM>: Add "break".
222
223 2018-05-04 Tom Tromey <tom@tromey.com>
224
225 * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
226 Add missing "break".
227 * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
228 Add missing "break".
229
230 2018-05-04 Tom Tromey <tom@tromey.com>
231
232 * rs6000-tdep.c (ppc_process_record_op4)
233 (ppc_process_record_op63): Add fall-through comment.
234
235 2018-05-04 Tom Tromey <tom@tromey.com>
236
237 * i386-tdep.c (i386_process_record): Add fall-through comment.
238
239 2018-05-04 Tom Tromey <tom@tromey.com>
240
241 * stabsread.c (define_symbol) <case 'p'>: Add fall-through
242 comment.
243
244 2018-05-04 Tom Tromey <tom@tromey.com>
245
246 * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
247 * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
248 * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
249 comment.
250 * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
251 comment.
252 * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
253 comment.
254
255 2018-05-04 Tom Tromey <tom@tromey.com>
256
257 * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
258
259 2018-05-04 Tom Tromey <tom@tromey.com>
260
261 * s390-tdep.c (s390_process_record): Fix fall-through comments.
262 * xcoffread.c (scan_xcoff_symtab): Move comment later.
263 * symfile.c (section_is_mapped): Fix fall-through comment.
264 * stabsread.c (define_symbol, read_member_functions): Fix
265 fall-through comment.
266 * s390-linux-tdep.c (s390_process_record): Fix fall-through
267 comment.
268 * remote.c (remote_wait_as): Fix fall-through comment.
269 * p-exp.y (yylex): Fix fall-through comment.
270 * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
271 comment.
272 * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
273 * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
274 * jv-exp.y (yylex): Fix fall-through comment.
275 * go-exp.y (lex_one_token): Fix fall-through comment.
276 * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
277 fall-through comment.
278 * f-exp.y (yylex): Fix fall-through comment.
279 * dwarf2read.c (process_die): Fix fall-through comments.
280 * dbxread.c (process_one_symbol): Fix fall-through comment.
281 * d-exp.y (lex_one_token): Fix fall-through comment.
282 * cp-name-parser.y (yylex): Fix fall-through comment.
283 * coffread.c (coff_symtab_read): Fix fall-through comment.
284 * c-exp.y (lex_one_token): Fix fall-through comment.
285 * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
286 comment.
287 * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
288 comment.
289
290 2018-05-04 Tom Tromey <tom@tromey.com>
291
292 PR python/22730:
293 * NEWS: Mention gdb.execute change.
294 * gdbcmd.h (execute_control_command): Don't declare.
295 * python/python.c (execute_gdb_command): Use read_command_lines_1,
296 execute_control_commands, execute_control_commands_to_string.
297 * cli/cli-script.h (execute_control_commands)
298 (execute_control_commands_to_string): Declare.
299 (execute_control_command): Add from_tty parameter.
300 * cli/cli-script.c (execute_control_commands)
301 (execute_control_commands_to_string): New functions.
302 (execute_user_command): Use execute_control_commands.
303 (execute_control_command_1): Add "from_tty" parameter. Update.
304 (execute_control_command): Likewise.
305
306 2018-05-04 Tom Tromey <tom@tromey.com>
307
308 PR python/22731:
309 * NEWS: Mention that breakpoint commands are writable.
310 * python/py-breakpoint.c (bppy_set_commands): New function.
311 (breakpoint_object_getset) <"commands">: Use it.
312
313 2018-05-04 Tom Tromey <tom@tromey.com>
314
315 * tracepoint.c (actions_command): Update.
316 * mi/mi-cmd-break.c (mi_command_line_array)
317 (mi_command_line_array_cnt, mi_command_line_array_ptr)
318 (mi_read_next_line): Remove.
319 (mi_cmd_break_commands): Update.
320 * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
321 function_view.
322 * cli/cli-script.c (get_command_line): Update.
323 (process_next_line): Use function_view. Constify.
324 (recurse_read_control_structure, read_command_lines)
325 (read_command_lines_1): Change argument types to function_view.
326 (do_define_command, document_command): Update.
327 * breakpoint.h (check_tracepoint_command): Don't declare.
328 * breakpoint.c (check_tracepoint_command): Remove.
329 (commands_command_1, create_tracepoint_from_upload): Update.
330
331 2018-05-04 Tom Tromey <tom@tromey.com>
332
333 PR gdb/11750:
334 * cli/cli-script.h (enum command_control_type) <define_control>:
335 New constant.
336 * cli/cli-script.c (multi_line_command_p): Handle define_control.
337 (build_command_line, execute_control_command_1)
338 (process_next_line): Likewise.
339 (do_define_command): New function, extracted from define_command.
340 (define_command): Use it.
341
342 2018-05-04 Tom Tromey <tom@tromey.com>
343
344 * tracepoint.c (actions_command): Update.
345 * cli/cli-script.h (read_command_lines): Update.
346 * cli/cli-script.c (read_command_lines): Constify prompt_arg.
347 (MAX_TMPBUF): Remove define.
348 (define_command): Use string_printf.
349 (document_command): Likewise.
350 * breakpoint.c (commands_command_1): Update.
351
352 2018-05-04 Tom Tromey <tom@tromey.com>
353
354 * top.c (execute_command): Update.
355 * cli/cli-script.h (print_command_lines): Now varargs.
356 * cli/cli-script.c (print_command_lines): Now varargs.
357 (execute_control_command_1) <case while_control, case if_control>:
358 Update.
359
360 2018-05-04 Tom Tromey <tom@tromey.com>
361
362 * tracepoint.c (all_tracepoint_actions): Rename from
363 all_tracepoint_actions_and_cleanup. Change return type.
364 (actions_command, encode_actions_1, encode_actions)
365 (trace_dump_actions, tdump_command): Update.
366 * remote.c (remote_download_command_source): Update.
367 * python/python.c (gdbpy_eval_from_control_command)
368 (python_command, python_interactive_command): Update.
369 * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
370 * guile/guile.c (guile_command)
371 (gdbscm_eval_from_control_command, guile_command): Update.
372 * compile/compile.c (compile_code_command)
373 (compile_print_command, compile_to_object): Update.
374 * cli/cli-script.h (struct command_lines_deleter): New.
375 (counted_command_line): New typedef.
376 (struct command_line): Add constructor, destructor.
377 <body_list>: Remove.
378 <body_list_0, body_list_1>: New members.
379 (command_line_up): Remove typedef.
380 (read_command_lines, read_command_lines_1, get_command_line):
381 Update.
382 (copy_command_lines): Don't declare.
383 * cli/cli-script.c (build_command_line): Use "new".
384 (get_command_line): Return counted_command_line.
385 (print_command_lines, execute_user_command)
386 (execute_control_command_1, while_command, if_command): Update.
387 (realloc_body_list): Remove.
388 (process_next_line, recurse_read_control_structure): Update.
389 (read_command_lines, read_command_lines_1): Return counted_command_line.
390 (free_command_lines): Use "delete".
391 (copy_command_lines): Remove.
392 (define_command, document_command, show_user_1): Update.
393 * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
394 a counted_command_line.
395 * breakpoint.h (counted_command_line): Remove typedef.
396 (breakpoint_set_commands): Update.
397 * breakpoint.c (check_no_tracepoint_commands)
398 (validate_commands_for_breakpoint): Update.
399 (breakpoint_set_commands): Change commands to be a
400 counted_command_line.
401 (commands_command_1, update_dprintf_command_list)
402 (create_tracepoint_from_upload): Update.
403
404 2018-05-04 Tom Tromey <tom@tromey.com>
405
406 * cli/cli-decode.h (cmd_list_element): New constructor.
407 (~cmd_list_element): New destructor.
408 (struct cmd_list_element): Add initializers.
409 * cli/cli-decode.c (do_add_cmd): Use "new".
410 (delete_cmd): Use "delete".
411
412 2018-05-04 Jan Kratochvil <jan.kratochvil@redhat.com>
413 Pedro Alves <palves@redhat.com>
414
415 PR breakpoints/19806 and support for PR external/20207.
416 * NEWS: Mention Aarch64 watchpoint improvements.
417 * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
418 watchpoints and PR external/20207 watchpoints.
419 * nat/aarch64-linux-hw-point.c
420 (kernel_supports_any_contiguous_range): New.
421 (aarch64_watchpoint_offset): New.
422 (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
423 (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
424 (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
425 (aarch64_align_watchpoint): New parameters aligned_offset_p and
426 next_addr_orig_p. Support PR external/20207 watchpoints.
427 (aarch64_downgrade_regs): New.
428 (aarch64_dr_state_insert_one_point): New parameters offset and
429 addr_orig.
430 (aarch64_dr_state_remove_one_point): Likewise.
431 (aarch64_handle_breakpoint): Update caller.
432 (aarch64_handle_aligned_watchpoint): Likewise.
433 (aarch64_handle_unaligned_watchpoint): Support addr_orig and
434 aligned_offset.
435 (aarch64_linux_set_debug_regs): Remove const from state. Call
436 aarch64_downgrade_regs.
437 (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
438 * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
439 (DR_CONTROL_MASK): ... this.
440 (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
441 (unsigned int aarch64_watchpoint_offset): New prototype.
442 (aarch64_linux_set_debug_regs): Remove const from state.
443 * utils.c (align_up, align_down): Move to ...
444 * common/common-utils.c (align_up, align_down): ... here.
445 * utils.h (align_up, align_down): Move to ...
446 * common/common-utils.h (align_up, align_down): ... here.
447
448 2018-05-04 Joel Brobecker <brobecker@adacore.com>
449
450 * sparc-tdep.c (sparc_structure_return_p): Re-implement to
451 match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
452 (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
453 Re-implement to match the ABI as summarized in GCC's
454 gcc/config/sparc/sparc.c. All callers updated.
455 (sparc32_store_arguments): Remove assertion.
456
457 2018-05-04 Tom Tromey <tom@tromey.com>
458
459 * printcmd.c: Don't include tui.h.
460 (decode_format): Use skip_spaces.
461
462 2018-05-04 Tom Tromey <tom@tromey.com>
463
464 PR gdb/22619:
465 * printcmd.c (last_count): New global.
466 (x_command): Use saved count when repeating.
467
468 2018-05-04 Tom Tromey <tom@tromey.com>
469
470 * nto-procfs.c (do_closedir_cleanup): Remove.
471 (procfs_pidlist): Use gdb_dir_up.
472 * procfs.c (do_closedir_cleanup): Remove.
473 (proc_update_threads): Use gdb_dir_up.
474 * common/filestuff.h (struct gdb_dir_deleter): New.
475 (gdb_dir_up): New typedef.
476
477 2018-05-04 Tom Tromey <tom@tromey.com>
478
479 * ada-lang.c (print_mention_exception): Use std::string.
480
481 2018-05-04 Tom Tromey <tom@tromey.com>
482
483 * ada-lang.c (create_excep_cond_exprs): Update.
484 (ada_exception_catchpoint_cond_string): Use std::string.
485
486 2018-05-04 Tom Tromey <tom@tromey.com>
487
488 * ada-lang.c (xget_renaming_scope): Return std::string.
489 (old_renaming_is_invisible): Update.
490
491 2018-05-04 Tom Tromey <tom@tromey.com>
492
493 * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
494 (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
495
496 2018-05-04 Ulrich Weigand <uweigand@de.ibm.com>
497
498 * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
499
500 2018-05-04 Tom Tromey <tom@tromey.com>
501
502 * remote.c (remote_query_supported_append): Change type.
503 (remote_check_symbols): Update.
504
505 2018-05-04 Paul Pluzhnikov <ppluzhnikov@google.com>
506
507 PR gdb/11420
508 * configure.ac: Prepend libpython.
509 * python/python-config.py: Likewise.
510 * configure: Regenerate.
511
512 2018-05-03 Simon Marchi <simon.marchi@ericsson.com>
513
514 * Makefile.in (%.c: %.l): Use -t instead of --stdout.
515
516 2018-05-03 Pedro Alves <palves@redhat.com>
517
518 * s390-linux-nat.c
519 (s390_linux_nat_target::have_continuable_watchpoint): Mark with
520 override. Write 'true' instead of '1'.
521 (s390_linux_nat_target::watchpoint_addr_within_range): Remove
522 declaration.
523
524 2018-05-02 Pedro Alves <palves@redhat.com>
525
526 * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
527 add_inf_child_target.
528 * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
529 add_inf_child_target.
530 * aix-thread.c (aix_thread_target_info): New.
531 (aix_thread_target) <shortname, longname, doc>: Delete.
532 <info>: New.
533 * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
534 add_inf_child_target.
535 * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
536 add_inf_child_target.
537 * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
538 add_inf_child_target.
539 * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
540 add_inf_child_target.
541 * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
542 add_inf_child_target.
543 * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
544 add_inf_child_target.
545 * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
546 add_inf_child_target.
547 * arm-linux-nat.c (_initialize_arm_linux_nat): Use
548 add_inf_child_target.
549 * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
550 add_inf_child_target.
551 * bfd-target.c (target_bfd_target_info): New.
552 (target_bfd) <shortname, longname, doc>: Delete.
553 <info>: New.
554 * bsd-kvm.c (bsd_kvm_target_info): New.
555 (bsd_kvm_target) <shortname, longname, doc>: Delete.
556 <info>: New.
557 (bsd_kvm_target::open): Rename to ...
558 (bsd_kvm_target_open): ... this. Adjust.
559 * bsd-uthread.c (bsd_uthread_target_info): New.
560 (bsd_uthread_target) <shortname, longname, doc>: Delete.
561 <info>: New.
562 * corefile.c (core_file_command): Adjust.
563 * corelow.c (core_target_info): New.
564 (core_target) <shortname, longname, doc>: Delete.
565 <info>: New.
566 (core_target::open): Rename to ...
567 (core_target_open): ... this. Adjust.
568 * ctf.c (ctf_target_info): New.
569 (ctf_target) <shortname, longname, doc>: Delete.
570 <info>: New.
571 (ctf_target::open): Rename to ...
572 (ctf_target_open): ... this.
573 (_initialize_ctf): Adjust.
574 * exec.c (exec_target_info): New.
575 (exec_target) <shortname, longname, doc>: Delete.
576 <info>: New.
577 (exec_target::open): Rename to ...
578 (exec_target_open): ... this.
579 * gdbcore.h (core_target_open): Declare.
580 * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
581 * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
582 add_inf_child_target.
583 * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
584 add_inf_child_target.
585 * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
586 add_inf_child_target.
587 * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
588 add_inf_child_target.
589 * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
590 add_inf_child_target.
591 * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
592 add_inf_child_target.
593 * i386-linux-nat.c (_initialize_i386_linux_nat): Use
594 add_inf_child_target.
595 * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
596 add_inf_child_target.
597 * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
598 add_inf_child_target.
599 * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
600 add_inf_child_target.
601 * inf-child.c (inf_child_target_info): New.
602 (inf_child_target::info): New.
603 (inf_child_open_target): Remove 'target' parameter. Use
604 get_native_target instead.
605 (inf_child_target::open): Delete.
606 (add_inf_child_target): New.
607 * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
608 Delete.
609 <info>: New.
610 (add_inf_child_target): Declare.
611 (inf_child_open_target): Declare.
612 * linux-thread-db.c (thread_db_target_info): New.
613 (thread_db_target) <shortname, longname, doc>: Delete.
614 <info>: New.
615 * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
616 add_inf_child_target.
617 * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
618 add_inf_child_target.
619 * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
620 add_inf_child_target.
621 * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
622 add_inf_child_target.
623 * make-target-delegates (print_class): Adjust.
624 * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
625 add_inf_child_target.
626 * mips-linux-nat.c (_initialize_mips_linux_nat): Use
627 add_inf_child_target.
628 * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
629 add_inf_child_target.
630 * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
631 add_inf_child_target.
632 * nto-procfs.c (nto_native_target_info): New.
633 (nto_procfs_target_native) <shortname, longname, doc>:
634 Delete.
635 <info>: New.
636 (nto_procfs_target_info): New.
637 (nto_procfs_target_procfs) <shortname, longname, doc>:
638 Delete.
639 <info>: New.
640 (init_procfs_targets): Adjust.
641 * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
642 add_inf_child_target.
643 * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
644 add_inf_child_target.
645 * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
646 add_inf_child_target.
647 * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
648 add_inf_child_target.
649 * ravenscar-thread.c (ravenscar_target_info): New.
650 (ravenscar_thread_target) <shortname, longname, doc>:
651 Delete.
652 <info>: New.
653 * record-btrace.c (record_btrace_target_info):
654 (record_btrace_target) <shortname, longname, doc>: Delete.
655 <info>: New.
656 (record_btrace_target::open): Rename to ...
657 (record_btrace_target_open): ... this. Adjust.
658 * record-full.c (record_longname, record_doc): New.
659 (record_full_base_target) <shortname, longname, doc>: Delete.
660 <info>: New.
661 (record_full_target_info): New.
662 (record_full_target): <shortname>: Delete.
663 <info>: New.
664 (record_full_core_open_1, record_full_open_1): Update comments.
665 (record_full_base_target::open): Rename to ...
666 (record_full_open): ... this.
667 (cmd_record_full_restore): Update.
668 (_initialize_record_full): Update.
669 * remote-sim.c (remote_sim_target_info): New.
670 (gdbsim_target) <shortname, longname, doc>: Delete.
671 <info>: New.
672 (gdbsim_target::open): Rename to ...
673 (gdbsim_target_open): ... this.
674 (_initialize_remote_sim): Adjust.
675 * remote.c (remote_doc): New.
676 (remote_target_info): New.
677 (remote_target) <shortname, longname, doc>: Delete.
678 <info>: New.
679 (extended_remote_target_info): New.
680 (extended_remote_target) <shortname, longname, doc>: Delete.
681 <info>: New.
682 (remote_target::open_1): Make static. Adjust.
683 * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
684 * s390-linux-nat.c (_initialize_s390_nat): Use
685 add_inf_child_target.
686 * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
687 add_inf_child_target.
688 * sol-thread.c (thread_db_target_info): New.
689 (sol_thread_target) <shortname, longname, doc>: Delete.
690 <info>: New.
691 * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
692 add_inf_child_target.
693 * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
694 add_inf_child_target.
695 * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
696 add_inf_child_target.
697 * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
698 add_inf_child_target.
699 * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
700 add_inf_child_target.
701 * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
702 add_inf_child_target.
703 * spu-linux-nat.c (_initialize_spu_nat): Use
704 add_inf_child_target.
705 * spu-multiarch.c (spu_multiarch_target_info): New.
706 (spu_multiarch_target) <shortname, longname, doc>: Delete.
707 <info>: New.
708 * target-delegates.c: Regenerate.
709 * target.c: Include <unordered_map>.
710 (target_ops_p): Delete.
711 (DEF_VEC_P(target_ops_p)): Delete.
712 (target_factories): New.
713 (test_target_info): New.
714 (test_target_ops::info): New.
715 (open_target): Adjust to use target_factories.
716 (add_target_with_completer): Rename to ...
717 (add_target): ... this. Change prototype. Register target_info
718 and open callback in target_factories. Register target_info in
719 command context instead of target_ops.
720 (add_target): Delete old implementation.
721 (add_deprecated_target_alias): Change prototype. Adjust.
722 (the_native_target): New.
723 (set_native_target, get_native_target): New.
724 (find_default_run_target): Use the_native_target.
725 (find_attach_target, find_run_target): Simplify.
726 (target_ops::open): Delete.
727 (dummy_target_info): New.
728 (dummy_target::shortname, dummy_target::longname)
729 (dummy_target::doc): Delete.
730 (dummy_target::info): New.
731 (debug_target::shortname, debug_target::longname)
732 (debug_target::doc): Delete.
733 (debug_target::info): New.
734 * target.h (struct target_info): New.
735 (target_ops::~target_ops): Add comment.
736 (target_ops::info): New.
737 (target_ops::shortname, target_ops::longname, target_ops::doc): No
738 longer virtual. Implement in terms of target_info.
739 (set_native_target, get_native_target): Declare.
740 (target_open_ftype): New.
741 (add_target, add_target_with_completer)
742 (add_deprecated_target_alias): Change prototype.
743 (test_target) <shortname, longname, doc>: Delete.
744 <info>: New.
745 * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
746 add_inf_child_target.
747 * tracefile-tfile.c (tfile_target_info): New.
748 (tfile_target) <shortname, longname, doc>: Delete.
749 <info>: New.
750 (tfile_target::open): Rename to ...
751 (tfile_target_open): ... this.
752 (_initialize_tracefile_tfile): Adjust.
753 * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
754 add_inf_child_target.
755 * windows-nat.c (_initialize_windows_nat): Use
756 add_inf_child_target.
757 * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
758 add_inf_child_target.
759
760 2018-05-02 Pedro Alves <palves@redhat.com>
761
762 * linux-nat.h (linux_nat_target) <low_new_thread,
763 low_delete_thread, low_new_fork, low_forget_process,
764 low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
765 New virtual methods.
766 (linux_nat_set_new_thread, linux_nat_set_delete_thread)
767 (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
768 (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
769 (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
770 (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
771 Delete.
772 * linux-fork.c (delete_fork): Adjust to call low method.
773 * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
774 (linux_nat_new_fork, linux_nat_forget_process_hook)
775 (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
776 (linux_nat_status_is_event):
777 (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
778 (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
779 to call low method.
780 (sigtrap_is_event): Rename to ...
781 (linux_nat_target::low_status_is_event): ... this.
782 (linux_nat_set_status_is_event): Delete.
783 (save_stop_reason, linux_nat_wait_1)
784 (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
785 low methods.
786 (linux_nat_set_new_thread, linux_nat_set_delete_thread)
787 (linux_nat_set_new_fork, linux_nat_set_forget_process)
788 (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
789 (linux_nat_set_prepare_to_resume): Delete.
790 * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
791 low virtual methods.
792 * amd64-linux-nat.c: Likewise.
793 * arm-linux-nat.c: Likewise.
794 * i386-linux-nat.c: Likewise.
795 * ia64-linux-nat.c: Likewise.
796 * mips-linux-nat.c: Likewise.
797 * ppc-linux-nat.c: Likewise.
798 * s390-linux-nat.c: Likewise.
799 * sparc64-linux-nat.c: Likewise.
800 * x86-linux-nat.c: Likewise.
801 * x86-linux-nat.h: Include "nat/x86-linux.h".
802 (x86_linux_nat_target) <low_new_fork, low_forget_process,
803 low_prepare_to_resume, low_new_thread, low_delete_thread>:
804 Override methods.
805
806 2018-05-02 Pedro Alves <palves@redhat.com>
807
808 * target.h (target_ops)
809 <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
810 stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
811 stopped_by_watchpoint, have_continuable_watchpoint,
812 stopped_data_address, watchpoint_addr_within_range,
813 can_accel_watchpoint_condition, can_run, thread_alive,
814 has_all_memory, has_memory, has_stack, has_registers,
815 has_execution, can_async_p, is_async_p, supports_non_stop,
816 always_non_stop_p, can_execute_reverse, supports_multi_process,
817 supports_enable_disable_tracepoint,
818 supports_disable_randomization, supports_string_tracing,
819 supports_evaluation_of_breakpoint_conditions,
820 can_run_breakpoint_commands, filesystem_is_local,
821 can_download_tracepoint, get_trace_state_variable_value,
822 set_trace_notes, get_tib_address, use_agent, can_use_agent,
823 record_is_replaying, record_will_replay,
824 augmented_libraries_svr4_read>: Adjust to return bool.
825 * aarch64-linux-nat.c: All implementations adjusted.
826 * aix-thread.c: All implementations adjusted.
827 * arm-linux-nat.c: All implementations adjusted.
828 * breakpoint.c: All implementations adjusted.
829 * bsd-kvm.c: All implementations adjusted.
830 * bsd-uthread.c: All implementations adjusted.
831 * corelow.c: All implementations adjusted.
832 * ctf.c: All implementations adjusted.
833 * darwin-nat.c: All implementations adjusted.
834 * darwin-nat.h: All implementations adjusted.
835 * exec.c: All implementations adjusted.
836 * fbsd-nat.c: All implementations adjusted.
837 * fbsd-nat.h: All implementations adjusted.
838 * gnu-nat.c: All implementations adjusted.
839 * gnu-nat.h: All implementations adjusted.
840 * go32-nat.c: All implementations adjusted.
841 * ia64-linux-nat.c: All implementations adjusted.
842 * inf-child.c: All implementations adjusted.
843 * inf-child.h: All implementations adjusted.
844 * inf-ptrace.c: All implementations adjusted.
845 * inf-ptrace.h: All implementations adjusted.
846 * linux-nat.c: All implementations adjusted.
847 * linux-nat.h: All implementations adjusted.
848 * mips-linux-nat.c: All implementations adjusted.
849 * nto-procfs.c: All implementations adjusted.
850 * ppc-linux-nat.c: All implementations adjusted.
851 * procfs.c: All implementations adjusted.
852 * ravenscar-thread.c: All implementations adjusted.
853 * record-btrace.c: All implementations adjusted.
854 * record-full.c: All implementations adjusted.
855 * remote-sim.c: All implementations adjusted.
856 * remote.c: All implementations adjusted.
857 * s390-linux-nat.c: All implementations adjusted.
858 * sol-thread.c: All implementations adjusted.
859 * spu-multiarch.c: All implementations adjusted.
860 * target-delegates.c: All implementations adjusted.
861 * target.c: All implementations adjusted.
862 * target.h: All implementations adjusted.
863 * tracefile-tfile.c: All implementations adjusted.
864 * tracefile.c: All implementations adjusted.
865 * tracefile.h: All implementations adjusted.
866 * windows-nat.c: All implementations adjusted.
867 * x86-linux-nat.h: All implementations adjusted.
868 * x86-nat.h: All implementations adjusted.
869
870 2018-05-02 Pedro Alves <palves@redhat.com>
871
872 * make-target-delegates (scan_target_h): Don't trim lines here.
873 Replace sequences of tabs and/or whitespace with a single
874 whitespace.
875 (top level, parsing methods): Trim each line before processing it
876 here.
877
878 2018-05-02 Pedro Alves <palves@redhat.com>
879 John Baldwin <jhb@freebsd.org>
880
881 * target.h (enum strata) <debug_stratum>: New.
882 (struct target_ops) <all delegation methods>: Replace by C++
883 virtual methods, and drop "to_" prefix. All references updated
884 throughout.
885 <to_shortname, to_longname, to_doc, to_data,
886 to_have_steppable_watchpoint, to_have_continuable_watchpoint,
887 to_has_thread_control, to_attach_no_wait>: Delete, replaced by
888 virtual methods. All references updated throughout.
889 <can_attach, supports_terminal_ours, can_create_inferior,
890 get_thread_control_capabilities, attach_no_wait>: New
891 virtual methods.
892 <insert_breakpoint, remove_breakpoint>: Now
893 TARGET_DEFAULT_NORETURN methods.
894 <info_proc>: Now returns bool.
895 <to_magic>: Delete.
896 (OPS_MAGIC): Delete.
897 (current_target): Delete. All references replaced by references
898 to ...
899 (target_stack): ... this. New.
900 (target_shortname, target_longname): Adjust.
901 (target_can_run): Now a function declaration.
902 (default_child_has_all_memory, default_child_has_memory)
903 (default_child_has_stack, default_child_has_registers)
904 (default_child_has_execution): Remove target_ops parameter.
905 (complete_target_initialization): Delete.
906 (memory_breakpoint_target): New template class.
907 (test_target_ops): Refactor as a C++ class with virtual methods.
908 * make-target-delegates (NAME_PART): Tighten.
909 (POINTER_PART, CP_SYMBOL): New.
910 (SIMPLE_RETURN_PART): Reimplement.
911 (VEC_RETURN_PART): Expect less.
912 (RETURN_PART, VIRTUAL_PART): New.
913 (METHOD): Adjust to C++ virtual methods.
914 (scan_target_h): Remove reference to C99.
915 (dname): Output "target_ops::" prefix.
916 (write_function_header): Adjust to output a C++ class method.
917 (write_declaration): New.
918 (write_delegator): Adjust to output a C++ class method.
919 (tdname): Output "dummy_target::" prefix.
920 (write_tdefault, write_debugmethod): Adjust to output a C++ class
921 method.
922 (tdefault_names, debug_names): Delete.
923 (return_types, tdefaults, styles, argtypes_array): New.
924 (top level): All methods are delegators.
925 (print_class): New.
926 (top level): Print dummy_target and debug_target classes.
927 * target-delegates.c: Regenerate.
928 * target-debug.h (target_debug_print_enum_info_proc_what)
929 (target_debug_print_thread_control_capabilities)
930 (target_debug_print_thread_info_p): New.
931 * target.c (dummy_target): Delete.
932 (the_dummy_target, the_debug_target): New.
933 (target_stack): Now extern.
934 (set_targetdebug): Push/unpush debug target.
935 (default_child_has_all_memory, default_child_has_memory)
936 (default_child_has_stack, default_child_has_registers)
937 (default_child_has_execution): Remove target_ops parameter.
938 (complete_target_initialization): Delete.
939 (add_target_with_completer): No longer call
940 complete_target_initialization.
941 (target_supports_terminal_ours): Use regular delegation.
942 (update_current_target): Delete.
943 (push_target): No longer check magic number. Don't call
944 update_current_target.
945 (unpush_target): Don't call update_current_target.
946 (target_is_pushed): No longer check magic number.
947 (target_require_runnable): Skip for all stratums over
948 process_stratum.
949 (target_ops::info_proc): New.
950 (target_info_proc): Use find_target_at and
951 find_default_run_target.
952 (target_supports_disable_randomization): Use regular delegation.
953 (target_get_osdata): Use find_target_at.
954 (target_ops::open, target_ops::close, target_ops::can_attach)
955 (target_ops::attach, target_ops::can_create_inferior)
956 (target_ops::create_inferior, target_ops::can_run)
957 (target_can_run): New.
958 (default_fileio_target): Use regular delegation.
959 (target_ops::fileio_open, target_ops::fileio_pwrite)
960 (target_ops::fileio_pread, target_ops::fileio_fstat)
961 (target_ops::fileio_close, target_ops::fileio_unlink)
962 (target_ops::fileio_readlink): New.
963 (target_fileio_open_1, target_fileio_unlink)
964 (target_fileio_readlink): Always call the target method. Handle
965 FILEIO_ENOSYS.
966 (return_zero, return_zero_has_execution): Delete.
967 (init_dummy_target): Delete.
968 (dummy_target::dummy_target, dummy_target::shortname)
969 (dummy_target::longname, dummy_target::doc)
970 (debug_target::debug_target, debug_target::shortname)
971 (debug_target::longname, debug_target::doc): New.
972 (target_supports_delete_record): Use regular delegation.
973 (setup_target_debug): Delete.
974 (maintenance_print_target_stack): Skip debug_stratum.
975 (initialize_targets): Instantiate the_dummy_target and
976 the_debug_target.
977 * auxv.c (target_auxv_parse): Remove 'ops' parameter. Adjust to
978 use target_stack.
979 (target_auxv_search, fprint_target_auxv): Adjust.
980 (info_auxv_command): Adjust to use target_stack.
981 * auxv.h (target_auxv_parse): Remove 'ops' parameter.
982 * exceptions.c (print_flush): Handle a NULL target_stack.
983 * regcache.c (target_ops_no_register): Refactor as class with
984 virtual methods.
985
986 * exec.c (exec_target): New class.
987 (exec_ops): Now an exec_target.
988 (exec_open, exec_close_1, exec_get_section_table)
989 (exec_xfer_partial, exec_files_info, exec_has_memory)
990 (exec_make_note_section): Refactor as exec_target methods.
991 (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
992 Delete.
993 (exec_target::find_memory_regions): New.
994 (_initialize_exec): Don't call init_exec_ops.
995 * gdbcore.h (exec_file_clear): Delete.
996
997 * corefile.c (core_target): Delete.
998 (core_file_command): Adjust.
999 * corelow.c (core_target): New class.
1000 (the_core_target): New.
1001 (core_close): Remove target_ops parameter.
1002 (core_close_cleanup): Adjust.
1003 (core_target::close): New.
1004 (core_open, core_detach, get_core_registers, core_files_info)
1005 (core_xfer_partial, core_thread_alive, core_read_description)
1006 (core_pid_to_str, core_thread_name, core_has_memory)
1007 (core_has_stack, core_has_registers, core_info_proc): Rework as
1008 core_target methods.
1009 (ignore, core_remove_breakpoint, init_core_ops): Delete.
1010 (_initialize_corelow): Initialize the_core_target.
1011 * gdbcore.h (core_target): Delete.
1012 (the_core_target): New.
1013
1014 * ctf.c: (ctf_target): New class.
1015 (ctf_ops): Now a ctf_target.
1016 (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
1017 (ctf_xfer_partial, ctf_get_trace_state_variable_value)
1018 (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
1019 methods.
1020 (init_ctf_ops): Delete.
1021 (_initialize_ctf): Don't call it.
1022 * tracefile-tfile.c (tfile_target): New class.
1023 (tfile_ops): Now a tfile_target.
1024 (tfile_open, tfile_close, tfile_files_info)
1025 (tfile_get_tracepoint_status, tfile_trace_find)
1026 (tfile_fetch_registers, tfile_xfer_partial)
1027 (tfile_get_trace_state_variable_value, tfile_traceframe_info):
1028 Refactor as tfile_target methods.
1029 (tfile_xfer_partial_features): Remove target_ops parameter.
1030 (init_tfile_ops): Delete.
1031 (_initialize_tracefile_tfile): Don't call it.
1032 * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
1033 (tracefile_has_stack, tracefile_has_registers)
1034 (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
1035 tracefile_target methods.
1036 (init_tracefile_ops): Delete.
1037 (tracefile_target::tracefile_target): New.
1038 * tracefile.h: Include "target.h".
1039 (tracefile_target): New class.
1040 (init_tracefile_ops): Delete.
1041
1042 * spu-multiarch.c (spu_multiarch_target): New class.
1043 (spu_ops): Now a spu_multiarch_target.
1044 (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
1045 (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
1046 (spu_search_memory, spu_mourn_inferior): Refactor as
1047 spu_multiarch_target methods.
1048 (init_spu_ops): Delete.
1049 (_initialize_spu_multiarch): Remove references to init_spu_ops,
1050 complete_target_initialization.
1051
1052 * ravenscar-thread.c (ravenscar_thread_target): New class.
1053 (ravenscar_ops): Now a ravenscar_thread_target.
1054 (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
1055 (ravenscar_thread_alive, ravenscar_pid_to_str)
1056 (ravenscar_fetch_registers, ravenscar_store_registers)
1057 (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
1058 (ravenscar_stopped_by_hw_breakpoint)
1059 (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
1060 (ravenscar_mourn_inferior, ravenscar_core_of_thread)
1061 (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
1062 methods.
1063 (init_ravenscar_thread_ops): Delete.
1064 (_initialize_ravenscar): Remove references to
1065 init_ravenscar_thread_ops and complete_target_initialization.
1066
1067 * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
1068 (bsd_uthread_target): New class.
1069 (bsd_uthread_ops): Now a bsd_uthread_target.
1070 (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
1071 (bsd_uthread_close, bsd_uthread_mourn_inferior)
1072 (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
1073 (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
1074 (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
1075 (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
1076 (bsd_uthread_target): Delete function.
1077 (_initialize_bsd_uthread): Remove reference to
1078 complete_target_initialization.
1079
1080 * bfd-target.c (target_bfd_data): Delete. Fields folded into ...
1081 (target_bfd): ... this new class.
1082 (target_bfd_xfer_partial, target_bfd_get_section_table)
1083 (target_bfd_close): Refactor as target_bfd methods.
1084 (target_bfd::~target_bfd): New.
1085 (target_bfd_reopen): Adjust.
1086 (target_bfd::close): New.
1087
1088 * record-btrace.c (record_btrace_target): New class.
1089 (record_btrace_ops): Now a record_btrace_target.
1090 (record_btrace_open, record_btrace_stop_recording)
1091 (record_btrace_disconnect, record_btrace_close)
1092 (record_btrace_async, record_btrace_info)
1093 (record_btrace_insn_history, record_btrace_insn_history_range)
1094 (record_btrace_insn_history_from, record_btrace_call_history)
1095 (record_btrace_call_history_range)
1096 (record_btrace_call_history_from, record_btrace_record_method)
1097 (record_btrace_is_replaying, record_btrace_will_replay)
1098 (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
1099 (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
1100 (record_btrace_store_registers, record_btrace_prepare_to_store)
1101 (record_btrace_to_get_unwinder)
1102 (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
1103 (record_btrace_commit_resume, record_btrace_wait)
1104 (record_btrace_stop, record_btrace_can_execute_reverse)
1105 (record_btrace_stopped_by_sw_breakpoint)
1106 (record_btrace_supports_stopped_by_sw_breakpoint)
1107 (record_btrace_stopped_by_hw_breakpoint)
1108 (record_btrace_supports_stopped_by_hw_breakpoint)
1109 (record_btrace_update_thread_list, record_btrace_thread_alive)
1110 (record_btrace_goto_begin, record_btrace_goto_end)
1111 (record_btrace_goto, record_btrace_stop_replaying_all)
1112 (record_btrace_execution_direction)
1113 (record_btrace_prepare_to_generate_core)
1114 (record_btrace_done_generating_core): Refactor as
1115 record_btrace_target methods.
1116 (init_record_btrace_ops): Delete.
1117 (_initialize_record_btrace): Remove reference to
1118 init_record_btrace_ops.
1119 * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
1120 the execution_direction global.
1121 (record_full_base_target, record_full_target)
1122 (record_full_core_target): New classes.
1123 (record_full_ops): Now a record_full_target.
1124 (record_full_core_ops): Now a record_full_core_target.
1125 (record_full_target::detach, record_full_target::disconnect)
1126 (record_full_core_target::disconnect)
1127 (record_full_target::mourn_inferior, record_full_target::kill):
1128 New.
1129 (record_full_open, record_full_close, record_full_async): Refactor
1130 as methods of the record_full_base_target class.
1131 (record_full_resume, record_full_commit_resume): Refactor
1132 as methods of the record_full_target class.
1133 (record_full_wait, record_full_stopped_by_watchpoint)
1134 (record_full_stopped_data_address)
1135 (record_full_stopped_by_sw_breakpoint)
1136 (record_full_supports_stopped_by_sw_breakpoint)
1137 (record_full_stopped_by_hw_breakpoint)
1138 (record_full_supports_stopped_by_hw_breakpoint): Refactor as
1139 methods of the record_full_base_target class.
1140 (record_full_store_registers, record_full_xfer_partial)
1141 (record_full_insert_breakpoint, record_full_remove_breakpoint):
1142 Refactor as methods of the record_full_target class.
1143 (record_full_can_execute_reverse, record_full_get_bookmark)
1144 (record_full_goto_bookmark, record_full_execution_direction)
1145 (record_full_record_method, record_full_info, record_full_delete)
1146 (record_full_is_replaying, record_full_will_replay)
1147 (record_full_goto_begin, record_full_goto_end, record_full_goto)
1148 (record_full_stop_replaying): Refactor as methods of the
1149 record_full_base_target class.
1150 (record_full_core_resume, record_full_core_kill)
1151 (record_full_core_fetch_registers)
1152 (record_full_core_prepare_to_store)
1153 (record_full_core_store_registers, record_full_core_xfer_partial)
1154 (record_full_core_insert_breakpoint)
1155 (record_full_core_remove_breakpoint)
1156 (record_full_core_has_execution): Refactor
1157 as methods of the record_full_core_target class.
1158 (record_full_base_target::supports_delete_record): New.
1159 (init_record_full_ops): Delete.
1160 (init_record_full_core_ops): Delete.
1161 (record_full_save): Refactor as method of the
1162 record_full_base_target class.
1163 (_initialize_record_full): Remove references to
1164 init_record_full_ops and init_record_full_core_ops.
1165
1166 * remote.c (remote_target, extended_remote_target): New classes.
1167 (remote_ops): Now a remote_target.
1168 (extended_remote_ops): Now an extended_remote_target.
1169 (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
1170 (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
1171 (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
1172 (remote_pass_signals, remote_set_syscall_catchpoint)
1173 (remote_program_signals, )
1174 (remote_thread_always_alive): Remove target_ops parameter.
1175 (remote_thread_alive, remote_thread_name)
1176 (remote_update_thread_list, remote_threads_extra_info)
1177 (remote_static_tracepoint_marker_at)
1178 (remote_static_tracepoint_markers_by_strid)
1179 (remote_get_ada_task_ptid, remote_close, remote_start_remote)
1180 (remote_open): Refactor as methods of remote_target.
1181 (extended_remote_open, extended_remote_detach)
1182 (extended_remote_attach, extended_remote_post_attach):
1183 (extended_remote_supports_disable_randomization)
1184 (extended_remote_create_inferior): : Refactor as method of
1185 extended_remote_target.
1186 (remote_set_permissions, remote_open_1, remote_detach)
1187 (remote_follow_fork, remote_follow_exec, remote_disconnect)
1188 (remote_resume, remote_commit_resume, remote_stop)
1189 (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
1190 (remote_terminal_ours, remote_wait, remote_fetch_registers)
1191 (remote_prepare_to_store, remote_store_registers)
1192 (remote_flash_erase, remote_flash_done, remote_files_info)
1193 (remote_kill, remote_mourn, remote_insert_breakpoint)
1194 (remote_remove_breakpoint, remote_insert_watchpoint)
1195 (remote_watchpoint_addr_within_range)
1196 (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
1197 (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
1198 (remote_supports_stopped_by_sw_breakpoint)
1199 (remote_stopped_by_hw_breakpoint)
1200 (remote_supports_stopped_by_hw_breakpoint)
1201 (remote_stopped_by_watchpoint, remote_stopped_data_address)
1202 (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
1203 (remote_verify_memory): Refactor as methods of remote_target.
1204 (remote_write_qxfer, remote_read_qxfer): Remove target_ops
1205 parameter.
1206 (remote_xfer_partial, remote_get_memory_xfer_limit)
1207 (remote_search_memory, remote_rcmd, remote_memory_map)
1208 (remote_pid_to_str, remote_get_thread_local_address)
1209 (remote_get_tib_address, remote_read_description): Refactor as
1210 methods of remote_target.
1211 (remote_target::fileio_open, remote_target::fileio_pwrite)
1212 (remote_target::fileio_pread, remote_target::fileio_close): New.
1213 (remote_hostio_readlink, remote_hostio_fstat)
1214 (remote_filesystem_is_local, remote_can_execute_reverse)
1215 (remote_supports_non_stop, remote_supports_disable_randomization)
1216 (remote_supports_multi_process, remote_supports_cond_breakpoints)
1217 (remote_supports_enable_disable_tracepoint)
1218 (remote_supports_string_tracing)
1219 (remote_can_run_breakpoint_commands, remote_trace_init)
1220 (remote_download_tracepoint, remote_can_download_tracepoint)
1221 (remote_download_trace_state_variable, remote_enable_tracepoint)
1222 (remote_disable_tracepoint, remote_trace_set_readonly_regions)
1223 (remote_trace_start, remote_get_trace_status)
1224 (remote_get_tracepoint_status, remote_trace_stop)
1225 (remote_trace_find, remote_get_trace_state_variable_value)
1226 (remote_save_trace_data, remote_get_raw_trace_data)
1227 (remote_set_disconnected_tracing, remote_core_of_thread)
1228 (remote_set_circular_trace_buffer, remote_traceframe_info)
1229 (remote_get_min_fast_tracepoint_insn_len)
1230 (remote_set_trace_buffer_size, remote_set_trace_notes)
1231 (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
1232 (remote_disable_btrace, remote_teardown_btrace)
1233 (remote_read_btrace, remote_btrace_conf)
1234 (remote_augmented_libraries_svr4_read, remote_load)
1235 (remote_pid_to_exec_file, remote_can_do_single_step)
1236 (remote_execution_direction, remote_thread_handle_to_thread_info):
1237 Refactor as methods of remote_target.
1238 (init_remote_ops, init_extended_remote_ops): Delete.
1239 (remote_can_async_p, remote_is_async_p, remote_async)
1240 (remote_thread_events, remote_upload_tracepoints)
1241 (remote_upload_trace_state_variables): Refactor as methods of
1242 remote_target.
1243 (_initialize_remote): Remove references to init_remote_ops and
1244 init_extended_remote_ops.
1245
1246 * remote-sim.c (gdbsim_target): New class.
1247 (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
1248 (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
1249 (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
1250 (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
1251 (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
1252 (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
1253 Refactor as methods of gdbsim_target.
1254 (gdbsim_ops): Now a gdbsim_target.
1255 (init_gdbsim_ops): Delete.
1256 (gdbsim_cntrl_c): Adjust.
1257 (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
1258
1259 * amd64-linux-nat.c (amd64_linux_nat_target): New class.
1260 (the_amd64_linux_nat_target): New.
1261 (amd64_linux_fetch_inferior_registers)
1262 (amd64_linux_store_inferior_registers): Refactor as methods of
1263 amd64_linux_nat_target.
1264 (_initialize_amd64_linux_nat): Adjust. Set linux_target.
1265 * i386-linux-nat.c: Don't include "linux-nat.h".
1266 (i386_linux_nat_target): New class.
1267 (the_i386_linux_nat_target): New.
1268 (i386_linux_fetch_inferior_registers)
1269 (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
1270 as methods of i386_linux_nat_target.
1271 (_initialize_i386_linux_nat): Adjust. Set linux_target.
1272 * inf-child.c (inf_child_ops): Delete.
1273 (inf_child_fetch_inferior_registers)
1274 (inf_child_store_inferior_registers): Delete.
1275 (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
1276 methods of inf_child_target.
1277 (inf_child_target::supports_terminal_ours)
1278 (inf_child_target::terminal_init)
1279 (inf_child_target::terminal_inferior)
1280 (inf_child_target::terminal_ours_for_output)
1281 (inf_child_target::terminal_ours, inf_child_target::interrupt)
1282 (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
1283 New.
1284 (inf_child_open, inf_child_disconnect, inf_child_close)
1285 (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
1286 (inf_child_post_startup_inferior, inf_child_can_run)
1287 (inf_child_pid_to_exec_file): Refactor as methods of
1288 inf_child_target.
1289 (inf_child_follow_fork): Delete.
1290 (inf_child_target::can_create_inferior)
1291 (inf_child_target::can_attach): New.
1292 (inf_child_target::has_all_memory, inf_child_target::has_memory)
1293 (inf_child_target::has_stack, inf_child_target::has_registers)
1294 (inf_child_target::has_execution): New.
1295 (inf_child_fileio_open, inf_child_fileio_pwrite)
1296 (inf_child_fileio_pread, inf_child_fileio_fstat)
1297 (inf_child_fileio_close, inf_child_fileio_unlink)
1298 (inf_child_fileio_readlink, inf_child_use_agent)
1299 (inf_child_can_use_agent): Refactor as methods of
1300 inf_child_target.
1301 (return_zero, inf_child_target): Delete.
1302 (inf_child_target::inf_child_target): New.
1303 * inf-child.h: Include "target.h".
1304 (inf_child_target): Delete function prototype.
1305 (inf_child_target): New class.
1306 (inf_child_open_target, inf_child_mourn_inferior)
1307 (inf_child_maybe_unpush_target): Delete.
1308 * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
1309 (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
1310 (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
1311 (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
1312 (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
1313 (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
1314 (inf_ptrace_wait, inf_ptrace_xfer_partial)
1315 (inf_ptrace_thread_alive, inf_ptrace_files_info)
1316 (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
1317 methods of inf_ptrace_target.
1318 (inf_ptrace_target): Delete function.
1319 * inf-ptrace.h: Include "inf-child.h".
1320 (inf_ptrace_target): Delete function declaration.
1321 (inf_ptrace_target): New class.
1322 (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
1323 * linux-nat.c (linux_target): New.
1324 (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
1325 (linux_nat_target::~linux_nat_target): New.
1326 (linux_child_post_attach, linux_child_post_startup_inferior)
1327 (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
1328 (linux_child_remove_fork_catchpoint)
1329 (linux_child_insert_vfork_catchpoint)
1330 (linux_child_remove_vfork_catchpoint)
1331 (linux_child_insert_exec_catchpoint)
1332 (linux_child_remove_exec_catchpoint)
1333 (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
1334 (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
1335 (linux_nat_resume, linux_nat_stopped_by_watchpoint)
1336 (linux_nat_stopped_data_address)
1337 (linux_nat_stopped_by_sw_breakpoint)
1338 (linux_nat_supports_stopped_by_sw_breakpoint)
1339 (linux_nat_stopped_by_hw_breakpoint)
1340 (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
1341 (linux_nat_kill, linux_nat_mourn_inferior)
1342 (linux_nat_xfer_partial, linux_nat_thread_alive)
1343 (linux_nat_update_thread_list, linux_nat_pid_to_str)
1344 (linux_nat_thread_name, linux_child_pid_to_exec_file)
1345 (linux_child_static_tracepoint_markers_by_strid)
1346 (linux_nat_is_async_p, linux_nat_can_async_p)
1347 (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
1348 (linux_nat_supports_multi_process)
1349 (linux_nat_supports_disable_randomization, linux_nat_async)
1350 (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
1351 (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
1352 (linux_nat_fileio_open, linux_nat_fileio_readlink)
1353 (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
1354 methods of linux_nat_target.
1355 (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
1356 (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
1357 parameter.
1358 (check_stopped_by_watchpoint): Adjust.
1359 (linux_xfer_partial): Delete.
1360 (linux_target_install_ops, linux_target, linux_nat_add_target):
1361 Delete.
1362 (linux_nat_target::linux_nat_target): New.
1363 * linux-nat.h: Include "inf-ptrace.h".
1364 (linux_nat_target): New.
1365 (linux_target, linux_target_install_ops, linux_nat_add_target):
1366 Delete function declarations.
1367 (linux_target): Declare global.
1368 * linux-thread-db.c (thread_db_target): New.
1369 (thread_db_target::thread_db_target): New.
1370 (thread_db_ops): Delete.
1371 (the_thread_db_target): New.
1372 (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
1373 (thread_db_update_thread_list, thread_db_pid_to_str)
1374 (thread_db_extra_thread_info)
1375 (thread_db_thread_handle_to_thread_info)
1376 (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
1377 (thread_db_resume): Refactor as methods of thread_db_target.
1378 (init_thread_db_ops): Delete.
1379 (_initialize_thread_db): Remove reference to init_thread_db_ops.
1380 * x86-linux-nat.c: Don't include "linux-nat.h".
1381 (super_post_startup_inferior): Delete.
1382 (x86_linux_nat_target::~x86_linux_nat_target): New.
1383 (x86_linux_child_post_startup_inferior)
1384 (x86_linux_read_description, x86_linux_enable_btrace)
1385 (x86_linux_disable_btrace, x86_linux_teardown_btrace)
1386 (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
1387 methods of x86_linux_nat_target.
1388 (x86_linux_create_target): Delete. Bits folded ...
1389 (x86_linux_add_target): ... here. Now takes a linux_nat_target
1390 pointer.
1391 * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
1392 (x86_linux_nat_target): New class.
1393 (x86_linux_create_target): Delete.
1394 (x86_linux_add_target): Now takes a linux_nat_target pointer.
1395 * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
1396 (x86_region_ok_for_watchpoint, x86_stopped_data_address)
1397 (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
1398 (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
1399 (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
1400 make extern.
1401 (x86_use_watchpoints): Delete.
1402 * x86-nat.h: Include "breakpoint.h" and "target.h".
1403 (x86_use_watchpoints): Delete.
1404 (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
1405 (x86_stopped_by_watchpoint, x86_stopped_data_address)
1406 (x86_insert_watchpoint, x86_remove_watchpoint)
1407 (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
1408 (x86_stopped_by_hw_breakpoint): New declarations.
1409 (x86_nat_target): New template class.
1410
1411 * ppc-linux-nat.c (ppc_linux_nat_target): New class.
1412 (the_ppc_linux_nat_target): New.
1413 (ppc_linux_fetch_inferior_registers)
1414 (ppc_linux_can_use_hw_breakpoint)
1415 (ppc_linux_region_ok_for_hw_watchpoint)
1416 (ppc_linux_ranged_break_num_registers)
1417 (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
1418 (ppc_linux_insert_mask_watchpoint)
1419 (ppc_linux_remove_mask_watchpoint)
1420 (ppc_linux_can_accel_watchpoint_condition)
1421 (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
1422 (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
1423 (ppc_linux_watchpoint_addr_within_range)
1424 (ppc_linux_masked_watch_num_registers)
1425 (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
1426 (ppc_linux_read_description): Refactor as methods of
1427 ppc_linux_nat_target.
1428 (_initialize_ppc_linux_nat): Adjust. Set linux_target.
1429
1430 * procfs.c (procfs_xfer_partial): Delete forward declaration.
1431 (procfs_target): New class.
1432 (the_procfs_target): New.
1433 (procfs_target): Delete function.
1434 (procfs_auxv_parse, procfs_attach, procfs_detach)
1435 (procfs_fetch_registers, procfs_store_registers, procfs_wait)
1436 (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
1437 (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
1438 (procfs_create_inferior, procfs_update_thread_list)
1439 (procfs_thread_alive, procfs_pid_to_str)
1440 (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
1441 (procfs_stopped_data_address, procfs_insert_watchpoint)
1442 (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
1443 (proc_find_memory_regions, procfs_info_proc)
1444 (procfs_make_note_section): Refactor as methods of procfs_target.
1445 (_initialize_procfs): Adjust.
1446 * sol-thread.c (sol_thread_target): New class.
1447 (sol_thread_ops): Now a sol_thread_target.
1448 (sol_thread_detach, sol_thread_resume, sol_thread_wait)
1449 (sol_thread_fetch_registers, sol_thread_store_registers)
1450 (sol_thread_xfer_partial, sol_thread_mourn_inferior)
1451 (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
1452 (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
1453 (init_sol_thread_ops): Delete.
1454 (_initialize_sol_thread): Adjust. Remove references to
1455 init_sol_thread_ops and complete_target_initialization.
1456
1457 * windows-nat.c (windows_nat_target): New class.
1458 (windows_fetch_inferior_registers)
1459 (windows_store_inferior_registers, windows_resume, windows_wait)
1460 (windows_attach, windows_detach, windows_pid_to_exec_file)
1461 (windows_files_info, windows_create_inferior)
1462 (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
1463 (windows_close, windows_pid_to_str, windows_xfer_partial)
1464 (windows_get_tib_address, windows_get_ada_task_ptid)
1465 (windows_thread_name, windows_thread_alive): Refactor as
1466 windows_nat_target methods.
1467 (do_initial_windows_stuff): Adjust.
1468 (windows_target): Delete function.
1469 (_initialize_windows_nat): Adjust.
1470
1471 * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
1472 (darwin_mourn_inferior, darwin_kill_inferior)
1473 (darwin_create_inferior, darwin_attach, darwin_detach)
1474 (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
1475 (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
1476 (darwin_supports_multi_process): Refactor as darwin_nat_target
1477 methods.
1478 (darwin_resume_to, darwin_files_info): Delete.
1479 (_initialize_darwin_inferior): Rename to ...
1480 (_initialize_darwin_nat): ... this. Adjust to C++ification.
1481 * darwin-nat.h: Include "inf-child.h".
1482 (darwin_nat_target): New class.
1483 (darwin_complete_target): Delete.
1484 * i386-darwin-nat.c (i386_darwin_nat_target): New class.
1485 (darwin_target): New.
1486 (i386_darwin_fetch_inferior_registers)
1487 (i386_darwin_store_inferior_registers): Refactor as methods of
1488 darwin_nat_target.
1489 (darwin_complete_target): Delete, with ...
1490 (_initialize_i386_darwin_nat): ... bits factored out here.
1491
1492 * alpha-linux-nat.c (alpha_linux_nat_target): New class.
1493 (the_alpha_linux_nat_target): New.
1494 (alpha_linux_register_u_offset): Refactor as
1495 alpha_linux_nat_target method.
1496 (_initialize_alpha_linux_nat): Adjust.
1497 * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
1498 (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
1499 (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
1500 methods of linux_nat_trad_target.
1501 (linux_trad_target): Delete.
1502 * linux-nat-trad.h (linux_trad_target): Delete function.
1503 (linux_nat_trad_target): New class.
1504 * mips-linux-nat.c (mips_linux_nat_target): New class.
1505 (super_fetch_registers, super_store_registers, super_close):
1506 Delete.
1507 (the_mips_linux_nat_target): New.
1508 (mips64_linux_regsets_fetch_registers)
1509 (mips64_linux_regsets_store_registers)
1510 (mips64_linux_fetch_registers, mips64_linux_store_registers)
1511 (mips_linux_register_u_offset, mips_linux_read_description)
1512 (mips_linux_can_use_hw_breakpoint)
1513 (mips_linux_stopped_by_watchpoint)
1514 (mips_linux_stopped_data_address)
1515 (mips_linux_region_ok_for_hw_watchpoint)
1516 (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
1517 (mips_linux_close): Refactor as methods of mips_linux_nat.
1518 (_initialize_mips_linux_nat): Adjust to C++ification.
1519
1520 * aix-thread.c (aix_thread_target): New class.
1521 (aix_thread_ops): Now an aix_thread_target.
1522 (aix_thread_detach, aix_thread_resume, aix_thread_wait)
1523 (aix_thread_fetch_registers, aix_thread_store_registers)
1524 (aix_thread_xfer_partial, aix_thread_mourn_inferior)
1525 (aix_thread_thread_alive, aix_thread_pid_to_str)
1526 (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
1527 Refactor as methods of aix_thread_target.
1528 (init_aix_thread_ops): Delete.
1529 (_initialize_aix_thread): Remove references to init_aix_thread_ops
1530 and complete_target_initialization.
1531 * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
1532 (rs6000_nat_target): New class.
1533 (the_rs6000_nat_target): New.
1534 (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
1535 (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
1536 (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
1537 (super_create_inferior): Delete.
1538 (_initialize_rs6000_nat): Adjust to C++ification.
1539
1540 * arm-linux-nat.c (arm_linux_nat_target): New class.
1541 (the_arm_linux_nat_target): New.
1542 (arm_linux_fetch_inferior_registers)
1543 (arm_linux_store_inferior_registers, arm_linux_read_description)
1544 (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
1545 (arm_linux_remove_hw_breakpoint)
1546 (arm_linux_region_ok_for_hw_watchpoint)
1547 (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
1548 (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
1549 (arm_linux_watchpoint_addr_within_range): Refactor as methods of
1550 arm_linux_nat_target.
1551 (_initialize_arm_linux_nat): Adjust to C++ification.
1552
1553 * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
1554 (the_aarch64_linux_nat_target): New.
1555 (aarch64_linux_fetch_inferior_registers)
1556 (aarch64_linux_store_inferior_registers)
1557 (aarch64_linux_child_post_startup_inferior)
1558 (aarch64_linux_read_description)
1559 (aarch64_linux_can_use_hw_breakpoint)
1560 (aarch64_linux_insert_hw_breakpoint)
1561 (aarch64_linux_remove_hw_breakpoint)
1562 (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
1563 (aarch64_linux_region_ok_for_hw_watchpoint)
1564 (aarch64_linux_stopped_data_address)
1565 (aarch64_linux_stopped_by_watchpoint)
1566 (aarch64_linux_watchpoint_addr_within_range)
1567 (aarch64_linux_can_do_single_step): Refactor as methods of
1568 aarch64_linux_nat_target.
1569 (super_post_startup_inferior): Delete.
1570 (_initialize_aarch64_linux_nat): Adjust to C++ification.
1571
1572 * hppa-linux-nat.c (hppa_linux_nat_target): New class.
1573 (the_hppa_linux_nat_target): New.
1574 (hppa_linux_fetch_inferior_registers)
1575 (hppa_linux_store_inferior_registers): Refactor as methods of
1576 hppa_linux_nat_target.
1577 (_initialize_hppa_linux_nat): Adjust to C++ification.
1578
1579 * ia64-linux-nat.c (ia64_linux_nat_target): New class.
1580 (the_ia64_linux_nat_target): New.
1581 (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
1582 (ia64_linux_stopped_data_address)
1583 (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
1584 (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
1585 ia64_linux_nat_target methods.
1586 (super_xfer_partial): Delete.
1587 (_initialize_ia64_linux_nat): Adjust to C++ification.
1588
1589 * m32r-linux-nat.c (m32r_linux_nat_target): New class.
1590 (the_m32r_linux_nat_target): New.
1591 (m32r_linux_fetch_inferior_registers)
1592 (m32r_linux_store_inferior_registers): Refactor as
1593 m32r_linux_nat_target methods.
1594 (_initialize_m32r_linux_nat): Adjust to C++ification.
1595
1596 * m68k-linux-nat.c (m68k_linux_nat_target): New class.
1597 (the_m68k_linux_nat_target): New.
1598 (m68k_linux_fetch_inferior_registers)
1599 (m68k_linux_store_inferior_registers): Refactor as
1600 m68k_linux_nat_target methods.
1601 (_initialize_m68k_linux_nat): Adjust to C++ification.
1602
1603 * s390-linux-nat.c (s390_linux_nat_target): New class.
1604 (the_s390_linux_nat_target): New.
1605 (s390_linux_fetch_inferior_registers)
1606 (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
1607 (s390_insert_watchpoint, s390_remove_watchpoint)
1608 (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
1609 (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
1610 (s390_auxv_parse, s390_read_description): Refactor as methods of
1611 s390_linux_nat_target.
1612 (_initialize_s390_nat): Adjust to C++ification.
1613
1614 * sparc-linux-nat.c (sparc_linux_nat_target): New class.
1615 (the_sparc_linux_nat_target): New.
1616 (_initialize_sparc_linux_nat): Adjust to C++ification.
1617 * sparc-nat.c (sparc_fetch_inferior_registers)
1618 (sparc_store_inferior_registers): Remove target_ops parameter.
1619 * sparc-nat.h (sparc_fetch_inferior_registers)
1620 (sparc_store_inferior_registers): Remove target_ops parameter.
1621 * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
1622 (the_sparc64_linux_nat_target): New.
1623 (_initialize_sparc64_linux_nat): Adjust to C++ification.
1624
1625 * spu-linux-nat.c (spu_linux_nat_target): New class.
1626 (the_spu_linux_nat_target): New.
1627 (spu_child_post_startup_inferior, spu_child_post_attach)
1628 (spu_child_wait, spu_fetch_inferior_registers)
1629 (spu_store_inferior_registers, spu_xfer_partial)
1630 (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
1631 methods.
1632 (_initialize_spu_nat): Adjust to C++ification.
1633
1634 * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
1635 (the_tilegx_linux_nat_target): New.
1636 (fetch_inferior_registers, store_inferior_registers):
1637 Refactor as methods.
1638 (_initialize_tile_linux_nat): Adjust to C++ification.
1639
1640 * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
1641 (the_xtensa_linux_nat_target): New.
1642 (xtensa_linux_fetch_inferior_registers)
1643 (xtensa_linux_store_inferior_registers): Refactor as
1644 xtensa_linux_nat_target methods.
1645 (_initialize_xtensa_linux_nat): Adjust to C++ification.
1646
1647 * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
1648 (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
1649 (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
1650 (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
1651 (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
1652 (fbsd_stopped_by_sw_breakpoint)
1653 (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
1654 (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
1655 (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
1656 (fbsd_post_startup_inferior, fbsd_post_attach)
1657 (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
1658 (fbsd_set_syscall_catchpoint)
1659 (super_xfer_partial, super_resume, super_wait)
1660 (fbsd_supports_stopped_by_hw_breakpoint): Delete.
1661 (fbsd_handle_debug_trap): Remove target_ops parameter.
1662 (fbsd_nat_add_target): Delete.
1663 * fbsd-nat.h: Include "inf-ptrace.h".
1664 (fbsd_nat_add_target): Delete.
1665 (USE_SIGTRAP_SIGINFO): Define.
1666 (fbsd_nat_target): New class.
1667
1668 * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
1669 (amd64bsd_store_inferior_registers): Remove target_ops parameter.
1670 (amd64bsd_target): Delete.
1671 * amd64-bsd-nat.h: New file.
1672 * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
1673 "x86-bsd-nat.h".
1674 (amd64_fbsd_nat_target): New class.
1675 (the_amd64_fbsd_nat_target): New.
1676 (amd64fbsd_read_description): Refactor as method of
1677 amd64_fbsd_nat_target.
1678 (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
1679 (_initialize_amd64fbsd_nat): Adjust to C++ification.
1680 * amd64-nat.h (amd64bsd_target): Delete function declaration.
1681 * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
1682 (i386bsd_store_inferior_registers): Remove target_ops parameter.
1683 (i386bsd_target): Delete.
1684 * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
1685 (i386bsd_fetch_inferior_registers)
1686 (i386bsd_store_inferior_registers): Declare.
1687 (i386_bsd_nat_target): New class.
1688 * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
1689 (the_i386_fbsd_nat_target): New.
1690 (i386fbsd_resume, i386fbsd_read_description): Refactor as
1691 i386_fbsd_nat_target methods.
1692 (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
1693 (_initialize_i386fbsd_nat): Adjust to C++ification.
1694 * x86-bsd-nat.c (super_mourn_inferior): Delete.
1695 (x86bsd_mourn_inferior, x86bsd_target): Delete.
1696 (_initialize_x86_bsd_nat): Adjust to C++ification.
1697 * x86-bsd-nat.h: Include "x86-nat.h".
1698 (x86bsd_target): Delete declaration.
1699 (x86bsd_nat_target): New class.
1700
1701 * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
1702 (the_aarch64_fbsd_nat_target): New.
1703 (aarch64_fbsd_fetch_inferior_registers)
1704 (aarch64_fbsd_store_inferior_registers): Refactor as methods of
1705 aarch64_fbsd_nat_target.
1706 (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
1707 * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
1708 (the_alpha_bsd_nat_target): New.
1709 (alphabsd_fetch_inferior_registers)
1710 (alphabsd_store_inferior_registers): Refactor as
1711 alpha_bsd_nat_target methods.
1712 (_initialize_alphabsd_nat): Refactor as methods of
1713 alpha_bsd_nat_target.
1714 * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
1715 (the_amd64_nbsd_nat_target): New.
1716 (_initialize_amd64nbsd_nat): Adjust to C++ification.
1717 * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
1718 (the_amd64_obsd_nat_target): New.
1719 (_initialize_amd64obsd_nat): Adjust to C++ification.
1720 * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
1721 (the_arm_fbsd_nat_target): New.
1722 (arm_fbsd_fetch_inferior_registers)
1723 (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
1724 (_initialize_arm_fbsd_nat): Refactor as methods of
1725 arm_fbsd_nat_target.
1726 (_initialize_arm_fbsd_nat): Adjust to C++ification.
1727 * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
1728 (the_arm_netbsd_nat_target): New.
1729 (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
1730 arm_netbsd_nat_target.
1731 (_initialize_arm_netbsd_nat): Adjust to C++ification.
1732 * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
1733 (the_hppa_nbsd_nat_target): New.
1734 (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
1735 hppa_nbsd_nat_target methods.
1736 (_initialize_hppanbsd_nat): Adjust to C++ification.
1737 * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
1738 (the_hppa_obsd_nat_target): New.
1739 (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
1740 methods of hppa_obsd_nat_target.
1741 (_initialize_hppaobsd_nat): Adjust to C++ification. Use
1742 add_target.
1743 * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
1744 (_initialize_i386nbsd_nat): Adjust to C++ification. Use
1745 add_target.
1746 * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
1747 (_initialize_i386obsd_nat): Use add_target.
1748 * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
1749 (the_m68k_bsd_nat_target): New.
1750 (m68kbsd_fetch_inferior_registers)
1751 (m68kbsd_store_inferior_registers): Refactor as methods of
1752 m68k_bsd_nat_target.
1753 (_initialize_m68kbsd_nat): Adjust to C++ification.
1754 * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
1755 (the_mips_fbsd_nat_target): New.
1756 (mips_fbsd_fetch_inferior_registers)
1757 (mips_fbsd_store_inferior_registers): Refactor as methods of
1758 mips_fbsd_nat_target.
1759 (_initialize_mips_fbsd_nat): Adjust to C++ification. Use
1760 add_target.
1761 * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
1762 (the_mips_nbsd_nat_target): New.
1763 (mipsnbsd_fetch_inferior_registers)
1764 (mipsnbsd_store_inferior_registers): Refactor as methods of
1765 mips_nbsd_nat_target.
1766 (_initialize_mipsnbsd_nat): Adjust to C++ification.
1767 * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
1768 (the_mips64_obsd_nat_target): New.
1769 (mips64obsd_fetch_inferior_registers)
1770 (mips64obsd_store_inferior_registers): Refactor as methods of
1771 mips64_obsd_nat_target.
1772 (_initialize_mips64obsd_nat): Adjust to C++ification. Use
1773 add_target.
1774 * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
1775 nbsd_nat_target.
1776 * nbsd-nat.h: Include "inf-ptrace.h".
1777 (nbsd_nat_target): New class.
1778 * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
1779 (obsd_wait): Refactor as methods of obsd_nat_target.
1780 (obsd_add_target): Delete.
1781 * obsd-nat.h: Include "inf-ptrace.h".
1782 (obsd_nat_target): New class.
1783 * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
1784 (the_ppc_fbsd_nat_target): New.
1785 (ppcfbsd_fetch_inferior_registers)
1786 (ppcfbsd_store_inferior_registers): Refactor as methods of
1787 ppc_fbsd_nat_target.
1788 (_initialize_ppcfbsd_nat): Adjust to C++ification. Use
1789 add_target.
1790 * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
1791 (the_ppc_nbsd_nat_target): New.
1792 (ppcnbsd_fetch_inferior_registers)
1793 (ppcnbsd_store_inferior_registers): Refactor as methods of
1794 ppc_nbsd_nat_target.
1795 (_initialize_ppcnbsd_nat): Adjust to C++ification.
1796 * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
1797 (the_ppc_obsd_nat_target): New.
1798 (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
1799 methods of ppc_obsd_nat_target.
1800 (_initialize_ppcobsd_nat): Adjust to C++ification. Use
1801 add_target.
1802 * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
1803 (the_sh_nbsd_nat_target): New.
1804 (shnbsd_fetch_inferior_registers)
1805 (shnbsd_store_inferior_registers): Refactor as methods of
1806 sh_nbsd_nat_target.
1807 (_initialize_shnbsd_nat): Adjust to C++ification.
1808 * sparc-nat.c (sparc_xfer_wcookie): Make extern.
1809 (inf_ptrace_xfer_partial): Delete.
1810 (sparc_xfer_partial, sparc_target): Delete.
1811 * sparc-nat.h (sparc_fetch_inferior_registers)
1812 (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
1813 (sparc_target): Delete function declaration.
1814 (sparc_target): New template class.
1815 * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
1816 (_initialize_sparcnbsd_nat): Adjust to C++ification.
1817 * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
1818 (_initialize_sparc64fbsd_nat): Adjust to C++ification. Use
1819 add_target.
1820 * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
1821 (_initialize_sparc64nbsd_nat): Adjust to C++ification.
1822 * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
1823 (_initialize_sparc64obsd_nat): Adjust to C++ification. Use
1824 add_target.
1825 * vax-bsd-nat.c (vax_bsd_nat_target): New class.
1826 (the_vax_bsd_nat_target): New.
1827 (vaxbsd_fetch_inferior_registers)
1828 (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
1829 methods.
1830 (_initialize_vaxbsd_nat): Adjust to C++ification.
1831
1832 * bsd-kvm.c (bsd_kvm_target): New class.
1833 (bsd_kvm_ops): Now a bsd_kvm_target.
1834 (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
1835 (bsd_kvm_files_info, bsd_kvm_fetch_registers)
1836 (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
1837 bsd_kvm_target.
1838 (bsd_kvm_return_one): Delete.
1839 (bsd_kvm_add_target): Adjust to C++ification.
1840
1841 * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
1842 (nto_procfs_target_procfs): New classes.
1843 (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
1844 (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
1845 (procfs_post_attach, procfs_wait, procfs_fetch_registers)
1846 (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
1847 (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
1848 (procfs_remove_hw_breakpoint, procfs_resume)
1849 (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
1850 (procfs_kill_inferior, procfs_store_registers)
1851 (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
1852 as methods of nto_procfs_target.
1853 (nto_procfs_ops): Now an nto_procfs_target_procfs.
1854 (nto_native_ops): Delete.
1855 (procfs_open, procfs_native_open): Delete.
1856 (nto_native_ops): Now an nto_procfs_target_native.
1857 (init_procfs_targets): Adjust to C++ification.
1858 (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
1859 (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
1860 Refactor as methods of nto_procfs_target.
1861
1862 * go32-nat.c (go32_nat_target): New class.
1863 (the_go32_nat_target): New.
1864 (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
1865 (go32_store_registers, go32_xfer_partial, go32_files_info)
1866 (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
1867 (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
1868 (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
1869 (go32_pid_to_str): Refactor as methods of go32_nat_target.
1870 (go32_target): Delete.
1871 (_initialize_go32_nat): Adjust to C++ification.
1872
1873 * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
1874 (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
1875 (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
1876 (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
1877 gnu_nat_target.
1878 (gnu_target): Delete.
1879 * gnu-nat.h (gnu_target): Delete.
1880 (gnu_nat_target): New class.
1881 * i386-gnu-nat.c (gnu_base_target): New.
1882 (i386_gnu_nat_target): New class.
1883 (the_i386_gnu_nat_target): New.
1884 (_initialize_i386gnu_nat): Adjust to C++ification.
1885
1886 2018-05-02 Pedro Alves <palves@redhat.com>
1887
1888 * bfd-target.c (target_bfd_xclose): Rename to ...
1889 (target_bfd_close): ... this.
1890 (target_bfd_reopen): Adjust.
1891 * target.c (target_close): Remove references to to_xclose.
1892 * target.h (target_ops::to_xclose): Delete.
1893 (target_ops::to_close): Update comments.
1894
1895 2018-05-02 Pedro Alves <palves@redhat.com>
1896
1897 * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
1898 "linux-nat.h".
1899 * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
1900 * inf-ptrace.c (inf_ptrace_register_u_offset)
1901 (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
1902 (inf_ptrace_store_register, inf_ptrace_store_registers)
1903 (inf_ptrace_trad_target): Move to ...
1904 * linux-nat-trad.c: ... this new file.
1905 * linux-nat-trad.h: New file.
1906 * linux-nat.c (linux_target_install_ops): Make extern.
1907 (linux_trad_target): Delete.
1908 * linux-nat.h (linux_trad_target): Delete declaration.
1909 (linux_target_install_ops): Declare.
1910 * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
1911 "linux-nat.h".
1912
1913 2018-05-02 Pedro Alves <palves@redhat.com>
1914
1915 * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
1916 procfs_target/add_target here.
1917 * procfs.c (procfs_target): Make static.
1918 (_initialize_procfs): Call add_target here.
1919 * procfs.h (struct target_ops): Remove forward declaration.
1920 (procfs_target): Remove declaration.
1921 * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
1922
1923 2018-05-02 Pedro Alves <palves@redhat.com>
1924
1925 * procfs.c (procfs_stopped_by_watchpoint)
1926 (procfs_insert_watchpoint, procfs_remove_watchpoint)
1927 (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
1928 Forward declare.
1929 (procfs_use_watchpoints): Delete, move contents...
1930 (procfs_target): ... here.
1931 * procfs.h (procfs_use_watchpoints): Delete declaration.
1932 * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
1933 procfs_use_watchpoints.
1934 * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
1935 procfs_use_watchpoints.
1936
1937 2018-05-02 Tom Tromey <tom@tromey.com>
1938
1939 PR python/20084:
1940 * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
1941 and var_zuinteger_unlimited.
1942 * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
1943 and PARAM_ZUINTEGER_UNLIMITED.
1944 (set_parameter_value): Handle var_zuinteger and
1945 var_zuinteger_unlimited.
1946 (add_setshow_generic): Likewise.
1947 (parmpy_init): Likewise.
1948
1949 2018-04-28 Dan Robertson <danlrobertson89@gmail.com>
1950
1951 PR rust/23124
1952 * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
1953 pointer is not null before dereferencing it.
1954
1955 2018-04-30 Tom Tromey <tom@tromey.com>
1956
1957 * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
1958 is_mi_like_p.
1959
1960 2018-04-30 Tom Tromey <tom@tromey.com>
1961
1962 * breakpoint.c (mention): Remove use of is_mi_like_p.
1963 (print_mention_ranged_breakpoint): Likewise.
1964 * break-catch-throw.c (print_it_exception_catchpoint): Remove use
1965 of is_mi_like_p.
1966
1967 2018-04-30 Tom Tromey <tom@tromey.com>
1968
1969 * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
1970
1971 2018-04-30 Tom Tromey <tom@tromey.com>
1972
1973 * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
1974 (info_spu_event_command): Remove some uses of is_mi_like_p.
1975
1976 2018-04-30 Tom Tromey <tom@tromey.com>
1977
1978 * python/py-framefilter.c (py_print_single_arg)
1979 (enumerate_locals, py_print_args, py_print_frame): Remove some
1980 uses of is_mi_like_p.
1981
1982 2018-04-30 Tom Tromey <tom@tromey.com>
1983
1984 * ui-out.c: Update.
1985 * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
1986 * ui-out.h (ui_out::is_mi_like_p): Now const.
1987 (ui_out::do_is_mi_like_p): Now const.
1988 * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
1989
1990 2018-04-30 Tom Tromey <tom@tromey.com>
1991
1992 * varobj.c (varobj_set_visualizer): Use new_reference.
1993 * python/python.c (gdbpy_decode_line): Use new_reference.
1994 * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
1995 new_reference.
1996
1997 2018-04-30 Tom Tromey <tom@tromey.com>
1998
1999 * varobj.c (install_new_value): Use new_reference.
2000 * value.h (value_incref): Return void. Swap intro comment with
2001 value_decref.
2002 * value.c (set_value_parent): Use new_reference.
2003 (value_incref): Return void. Update intro comment.
2004 (release_value): Use new_reference.
2005 * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
2006
2007 2018-04-30 Tom Tromey <tom@tromey.com>
2008
2009 * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
2010 * gdb_bfd.h (new_bfd_ref): Remove.
2011 (gdb_bfd_open): Update comment.
2012 * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
2013 (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
2014 (gdb_bfd_fdopenr): Use new_reference.
2015 * exec.c (exec_file_attach): Use new_reference.
2016
2017 2018-04-30 Tom Tromey <tom@tromey.com>
2018
2019 * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
2020 method.
2021
2022 2018-04-30 Tom Tromey <tom@tromey.com>
2023
2024 * jit.c (jit_read_code_entry): Use type_align.
2025 * i386-tdep.c (i386_gdbarch_init): Don't call
2026 set_gdbarch_long_long_align_bit.
2027 * gdbarch.sh: Remove long_long_align_bit.
2028 * gdbarch.c, gdbarch.h: Rebuild.
2029 * arc-tdep.c (arc_type_align): New function.
2030 (arc_gdbarch_init): Use arc_type_align. Don't call
2031 set_gdbarch_long_long_align_bit.
2032
2033 2018-04-30 Tom Tromey <tom@tromey.com>
2034
2035 * rust-lang.c (rust_type_alignment): Remove.
2036 (rust_composite_type): Use type_align.
2037
2038 2018-04-30 Tom Tromey <tom@tromey.com>
2039
2040 * NEWS: Mention Type.align.
2041 * python/py-type.c (typy_get_alignof): New function.
2042 (type_object_getset): Add "alignof".
2043
2044 2018-04-30 Tom Tromey <tom@tromey.com>
2045
2046 PR exp/17095:
2047 * NEWS: Update.
2048 * std-operator.def (UNOP_ALIGNOF): New operator.
2049 * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
2050 New.
2051 * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
2052 * c-lang.c (c_op_print_tab): Add alignof.
2053 * c-exp.y (ALIGNOF): New token.
2054 (exp): Add "ALIGNOF" production.
2055 (ident_tokens): Add _Alignof and alignof.
2056
2057 2018-04-30 Tom Tromey <tom@tromey.com>
2058
2059 * i386-tdep.c (i386_type_align): New function.
2060 (i386_gdbarch_init): Update.
2061 * gdbarch.sh (type_align): New method.
2062 * gdbarch.c, gdbarch.h: Rebuild.
2063 * arch-utils.h (default_type_align): Declare.
2064 * arch-utils.c (default_type_align): New function.
2065 * gdbtypes.h (TYPE_ALIGN_BITS): New define.
2066 (struct type) <align_log2>: New field.
2067 <instance_flags>: Now a bitfield.
2068 (TYPE_RAW_ALIGN): New macro.
2069 (type_align, type_raw_align, set_type_align): Declare.
2070 * gdbtypes.c (type_align, type_raw_align, set_type_align): New
2071 functions.
2072 * dwarf2read.c (quirk_rust_enum): Set type alignment.
2073 (get_alignment, maybe_set_alignment): New functions.
2074 (read_structure_type, read_enumeration_type, read_array_type)
2075 (read_set_type, read_tag_pointer_type, read_tag_reference_type)
2076 (read_subrange_type, read_base_type): Set type alignment.
2077
2078 2018-04-30 Simon Marchi <simon.marchi@ericsson.com>
2079
2080 * dwarf2read.c (read_index_from_section): Use bool.
2081
2082 2018-04-29 Fabian Groffen <grobian@gentoo.org>
2083
2084 PR gdb/22950
2085 * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
2086 with #ifdef.
2087
2088 2018-04-29 John Reiser <jreiser@BitWagon.com>
2089
2090 PR build/22873
2091 * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
2092 last step, and do it atomically.
2093
2094 2018-04-27 Alexandre Oliva <aoliva@redhat.com>
2095
2096 * compile/compile-c-types.c (convert_int, convert_float):
2097 Update for C FE v1.
2098
2099 2018-04-27 Tom Tromey <tom@tromey.com>
2100
2101 PR rust/22545:
2102 * rust-lang.c (rust_inclusive_range_type_p): New function.
2103 (rust_range): Handle inclusive ranges.
2104 (rust_compute_range): Likewise.
2105 * rust-exp.y (struct rust_op) <inclusive>: New field.
2106 (DOTDOTEQ): New constant.
2107 (range_expr): Add "..=" productions.
2108 (operator_tokens): Add "..=" token.
2109 (ast_range): Add "inclusive" parameter.
2110 (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
2111 ranges.
2112 * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
2113 bounds values.
2114 * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
2115 LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
2116 Update comments.
2117 * expprint.c (print_subexp_standard): Handle new bounds values.
2118 (dump_subexp_body_standard): Likewise.
2119
2120 2018-04-27 Tom Tromey <tom@tromey.com>
2121
2122 * configure: Rebuild.
2123 * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
2124 * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
2125 "OVERRIDE".
2126 (class symbol_needs_eval_context): Likewise.
2127 * dwarf2read.c (mock_mapped_index::symbol_name_count)
2128 (mock_mapped_index::symbol_name_at): Use "override". Remove
2129 "virtual".
2130 * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
2131 "override".
2132 (class dwarf_expr_executor): Use "override", not "OVERRIDE".
2133 * aarch64-tdep.c (instruction_reader::read): Use "override".
2134 (instruction_reader_test::read): Likewise.
2135 * arm-tdep.c (instruction_reader::read): Use "override".
2136 (instruction_reader_thumb::read): Likewise.
2137
2138 2018-04-26 Andrzej Kaczmarek <andrzej.kaczmarek@codecoup.pl>
2139
2140 PR remote/9665
2141 * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
2142 instead of remote_send.
2143 (remote_send): Remove.
2144
2145 2018-04-26 Pedro Alves <palves@redhat.com>
2146
2147 * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
2148 find_function_start_sal instead of find_pc_line.
2149
2150 2018-04-26 Pedro Alves <palves@redhat.com>
2151
2152 * breakpoint.c (set_breakpoint_location_function): Handle
2153 mst_data_gnu_ifunc.
2154 * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
2155 * elfread.c (elf_symtab_read): Give data symbols with
2156 BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
2157 (elf_rel_plt_read): Update comment.
2158 * linespec.c (convert_linespec_to_sals): Handle
2159 mst_data_gnu_ifunc.
2160 (minsym_found): Handle mst_data_gnu_ifunc.
2161 * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
2162 (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
2163 * parse.c (find_minsym_type_and_address): Handle
2164 mst_data_gnu_ifunc.
2165 * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
2166 * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
2167 * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
2168 comment.
2169 <mst_data_gnu_ifunc>: New enumerator.
2170
2171 2018-04-26 Pedro Alves <palves@redhat.com>
2172
2173 * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
2174 (lookup_minimal_symbol_by_pc_section): ... this. Replace
2175 'want_trampoline' parameter by a lookup_msym_prefer parameter.
2176 Handle it.
2177 (lookup_minimal_symbol_by_pc_section): Delete old implementation.
2178 (lookup_minimal_symbol_by_pc): Adjust.
2179 (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
2180 (lookup_solib_trampoline_symbol_by_pc): Adjust.
2181 * minsyms.h (lookup_msym_prefer): New enum.
2182 (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
2183 parameter by a lookup_msym_prefer parameter.
2184
2185 2018-04-26 Pedro Alves <palves@redhat.com>
2186
2187 * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
2188 ends in "@plt" instead of looking at the symbol's section.
2189
2190 2018-04-26 Pedro Alves <palves@redhat.com>
2191
2192 * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete. Remove
2193 all references.
2194 (find_pc_partial_function_gnu_ifunc): Rename to ...
2195 (find_pc_partial_function): ... this, and remove references to
2196 'is_gnu_ifunc_p'.
2197 (find_pc_partial_function): Delete old implementation.
2198 * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
2199
2200 2018-04-26 Pedro Alves <palves@redhat.com>
2201
2202 * linespec.c (struct bound_minimal_symbol_search_key): New.
2203 (convert_linespec_to_sals): Sort minimal symbols earlier. Don't
2204 skip first line if we found a GNU ifunc minimal symbol by name.
2205 (compare_msymbols): Change parameters to work with a destructured
2206 lhs minsym.
2207 (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
2208 functions.
2209
2210 2018-04-26 Pedro Alves <palves@redhat.com>
2211
2212 * breakpoint.c (set_breakpoint_location_function): Don't resolve
2213 ifunc targets here. Instead, if we have an ifunc minsym, use its
2214 address/name.
2215 (add_location_to_breakpoint): Store the minsym and the objfile in
2216 the breakpoint location.
2217 * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
2218 * linespec.c (minsym_found): Resolve GNU ifunc targets here.
2219 Record the minsym in the sal.
2220 * symtab.h (symtab_and_line) <msymbol>: New field.
2221
2222 2018-04-26 Pedro Alves <palves@redhat.com>
2223
2224 * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
2225 unless we actually resolved the ifunc.
2226
2227 2018-04-26 Pedro Alves <palves@redhat.com>
2228
2229 * c-exp.y (variable production): Prefer ifunc minsyms over
2230 regular function symbols.
2231 * symtab.c (find_gnu_ifunc): New function.
2232 * minsyms.h (lookup_msym_prefer): New enum.
2233 (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
2234 parameter by a lookup_msym_prefer parameter.
2235 * symtab.h (find_gnu_ifunc): New declaration.
2236
2237 2018-04-26 Pedro Alves <palves@redhat.com>
2238
2239 * blockframe.c (find_gnu_ifunc_target_type): New function.
2240 (find_function_type): New.
2241 * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
2242 return a value with a memory address.
2243 (eval_call): For calls to GNU ifunc functions, try to find the
2244 type of the target function from the type that the resolver
2245 returns.
2246 * gdbtypes.c (objfile_type): Don't install a return type for ifunc
2247 symbols.
2248 * infcall.c (find_function_return_type): Delete.
2249 (find_function_addr): Add 'function_type' parameter. For calls to
2250 GNU ifunc functions, try to find the type of the target function
2251 from the type that the resolver returns, and return it via
2252 FUNCTION_TYPE.
2253 (call_function_by_hand_dummy): Adjust to use the function type
2254 returned by find_function_addr.
2255 (find_function_addr): Add 'function_type' parameter and move
2256 description here.
2257 * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
2258 declarations.
2259
2260 2018-04-26 Pedro Alves <palves@redhat.com>
2261
2262 * c-exp.y (variable production): Skip finding an alias for ifunc
2263 symbols.
2264
2265 2018-04-26 Pedro Alves <palves@redhat.com>
2266
2267 * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
2268
2269 2018-04-25 Pedro Alves <palves@redhat.com>
2270
2271 * infcmd.c (kill_command): Print the pid as string, not the whole
2272 thread's ptid. Add comment. s/has been killed/killed/ in output
2273 message.
2274 * remote.c (remote_detach_1): Print the pid as string, not the
2275 whole thread's ptid.
2276
2277 2018-04-24 Jan Kratochvil <jan.kratochvil@redhat.com>
2278 Sergio Durigan Junior <sergiodj@redhat.com>
2279 Pedro Alves <palves@redhat.com>
2280
2281 * infcmd.c (kill_command): Print message when inferior has
2282 been killed.
2283 * inferior.c (print_inferior_events): Remove 'static'. Set as
2284 '1'.
2285 (add_inferior): Improve message printed when
2286 'print_inferior_events' is on.
2287 (exit_inferior): Remove message printed when
2288 'print_inferior_events' is on.
2289 (detach_inferior): Improve message printed when
2290 'print_inferior_events' is on.
2291 (initialize_inferiors): Use 'add_inferior_silent' to set
2292 'current_inferior_'.
2293 * inferior.h (print_inferior_events): Declare here as
2294 'extern'.
2295 * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
2296 '[Detaching...]' messages when 'print_inferior_events' is on.
2297 Use 'add_thread_silent' instead of 'add_thread'. Add '[' and ']'
2298 as prefix/suffix for messages. Remove periods. Fix erroneous
2299 'Detaching after fork from child...', replace it by '... from
2300 parent...'.
2301 (handle_vfork_child_exec_or_exit): Add '[' and ']' as
2302 prefix/suffix when printing 'Detaching...' messages. Print
2303 them when 'print_inferior_events' is on.
2304 * remote.c (remote_detach_1): Print message when detaching
2305 from inferior and '!is_fork_parent'.
2306
2307 2018-04-24 Tom Tromey <tom@tromey.com>
2308
2309 * cli-out.h: Reindent.
2310
2311 2018-04-24 Tom Tromey <tom@tromey.com>
2312
2313 * cli-out.c (cli_ui_out::out_field_fmt): Remove.
2314 (cli_ui_out::do_field_string): Use fputs_filtered.
2315 * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
2316
2317 2018-04-23 Tom Tromey <tom@tromey.com>
2318
2319 * guile/scm-frame.c (gdbscm_frame_read_var): Use
2320 gdb::unique_xmalloc_ptr.
2321
2322 2018-04-23 Tom Tromey <tom@tromey.com>
2323
2324 * configure: Rebuild.
2325
2326 2018-04-22 Rajendra SY <rajendra.sy@gmail.com>
2327
2328 PR gdb/23095
2329 * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
2330 prepare_for_testing. Set normal_bp to r_debug_state if target
2331 is bsd.
2332
2333 2018-04-21 Pedro Alves <palves@redhat.com>
2334 Rajendra SY <rajendra.sy@gmail.com>
2335
2336 * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
2337 * remote.c (extended_remote_attach): In all-stop mode, mark the
2338 thread as executing.
2339
2340 2018-04-19 Philippe Waroquiers <philippe.waroquiers@skynet.be>
2341
2342 * thread.c (thread_apply_all_command): Fix comment.
2343 (thread_command): Fix comment.
2344
2345 2018-04-10 Alan Hayward <alan.hayward@arm.com>
2346
2347 * common/tdesc.h (tdesc_create_feature): Remove xml filename
2348 parameter.
2349 * features/aarch64-core.c (create_feature_aarch64_core):
2350 Regenerate.
2351 * features/aarch64-fpu.c (create_feature_aarch64_fpu):
2352 Likewise.
2353 * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
2354 Likewise.
2355 * features/i386/32bit-avx512.c
2356 (create_feature_i386_32bit_avx512): Likewise.
2357 * features/i386/32bit-core.c (create_feature_i386_32bit_core):
2358 Likewise.
2359 * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
2360 Likewise.
2361 * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
2362 Likewise.
2363 * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
2364 Likewise.
2365 * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
2366 Likewise.
2367 * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
2368 Likewise.
2369 * features/i386/64bit-avx512.c
2370 (create_feature_i386_64bit_avx512): Likewise.
2371 * features/i386/64bit-core.c (create_feature_i386_64bit_core):
2372 Likewise.
2373 * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
2374 Likewise.
2375 * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
2376 Likewise.
2377 * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
2378 Likewise.
2379 * features/i386/64bit-segments.c
2380 (create_feature_i386_64bit_segments): Likewise.
2381 * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
2382 Likewise.
2383 * features/i386/x32-core.c
2384 (create_feature_i386_x32_core): Likewise.
2385 * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
2386 * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
2387 * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
2388 * target-descriptions.c: In generated code, don't pass xml
2389 filename.
2390
2391 2018-04-18 Alan Hayward <alan.hayward@arm.com>
2392
2393 * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
2394 (print_xml_feature::visit_post): Likewise.
2395 (print_xml_feature::visit): Likewise.
2396 * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
2397 (print_xml_feature): Add new class.
2398 * regformats/regdat.sh: Null xmltarget on feature targets.
2399 * target-descriptions.c (struct target_desc): Add xmltarget.
2400 (maintenance_check_tdesc_xml_convert): Add unittest function.
2401 (tdesc_get_features_xml): Add function to get xml.
2402 (maintenance_check_xml_descriptions): Test xml generation.
2403 * xml-tdesc.c (string_read_description_xml): Add function.
2404 * xml-tdesc.h (string_read_description_xml): Add declaration.
2405
2406 2018-04-18 Alan Hayward <alan.hayward@arm.com>
2407
2408 * features/Makefile: Add feature marker to targets with new style
2409 target descriptions.
2410 * regformats/aarch64.dat: Regenerate.
2411 * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
2412 * regformats/i386/amd64-avx-linux.dat: Likewise.
2413 * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
2414 * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
2415 * regformats/i386/amd64-linux.dat: Likewise.
2416 * regformats/i386/amd64-mpx-linux.dat: Likewise.
2417 * regformats/i386/amd64.dat: Likewise.
2418 * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
2419 * regformats/i386/i386-avx-linux.dat: Likewise.
2420 * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
2421 * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
2422 * regformats/i386/i386-linux.dat: Likewise.
2423 * regformats/i386/i386-mmx-linux.dat: Likewise.
2424 * regformats/i386/i386-mpx-linux.dat: Likewise.
2425 * regformats/i386/i386.dat: Likewise.
2426 * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
2427 * regformats/i386/x32-avx-linux.dat: Likewise.
2428 * regformats/i386/x32-linux.dat: Likewise.
2429 * regformats/tic6x-c62x-linux.dat: Likewise.
2430 * regformats/tic6x-c64x-linux.dat: Likewise.
2431 * regformats/tic6x-c64xp-linux.dat: Likewise.
2432 * regformats/regdat.sh: Parse feature marker.
2433
2434 2018-04-18 Alan Hayward <alan.hayward@arm.com>
2435
2436 * common/tdesc.h (tdesc_architecture_name): Add new declaration.
2437 (tdesc_osabi_name): Likewise.
2438 * target-descriptions.c (tdesc_architecture_name): Add new
2439 function.
2440 (tdesc_osabi_name): Likewise.
2441
2442 2018-04-18 Alan Hayward <alan.hayward@arm.com>
2443
2444 * common/tdesc.c (tdesc_predefined_type): Move to here.
2445 (tdesc_named_type): Likewise.
2446 (tdesc_create_vector): Likewise.
2447 (tdesc_create_struct): Likewise.
2448 (tdesc_set_struct_size): Likewise.
2449 (tdesc_create_union): Likewise.
2450 (tdesc_create_flags): Likewise.
2451 (tdesc_create_enum): Likewise.
2452 (tdesc_add_field): Likewise.
2453 (tdesc_add_typed_bitfield): Likewise.
2454 (tdesc_add_bitfield): Likewise.
2455 (tdesc_add_flag): Likewise.
2456 (tdesc_add_enum_value): Likewise.
2457 * common/tdesc.h (struct tdesc_type_builtin): Likewise.
2458 (struct tdesc_type_vector): Likewise.
2459 (struct tdesc_type_field): Likewise.
2460 (struct tdesc_type_with_fields): Likewise.
2461 (tdesc_create_enum): Add declaration.
2462 (tdesc_add_typed_bitfield): Likewise.
2463 (tdesc_add_enum_value): Likewise.
2464 * target-descriptions.c (tdesc_type_field): Move from here.
2465 (tdesc_type_builtin): Likewise.
2466 (tdesc_type_vector): Likewise.
2467 (tdesc_type_with_fields): Likewise.
2468 (tdesc_predefined_types): Likewise.
2469 (tdesc_named_type): Likewise.
2470 (tdesc_create_vector): Likewise.
2471 (tdesc_create_struct): Likewise.
2472 (tdesc_set_struct_size): Likewise.
2473 (tdesc_create_union): Likewise.
2474 (tdesc_create_flags): Likewise.
2475 (tdesc_create_enum): Likewise.
2476 (tdesc_add_field): Likewise.
2477 (tdesc_add_typed_bitfield): Likewise.
2478 (tdesc_add_bitfield): Likewise.
2479 (tdesc_add_flag): Likewise.
2480 (tdesc_add_enum_value): Likewise.
2481 * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
2482 (tdesc_add_typed_bitfield): Likewise.
2483 (tdesc_add_enum_value): Likewise.
2484
2485 2018-04-18 Alan Hayward <alan.hayward@arm.com>
2486
2487 * common/tdesc.c (tdesc_feature::accept): Move to here.
2488 (tdesc_feature::operator==): Likewise.
2489 (tdesc_create_reg): Likewise.
2490 * common/tdesc.h (tdesc_type_kind): Likewise.
2491 (struct tdesc_type): Likewise.
2492 (struct tdesc_feature): Likewise.
2493 * regformats/regdat.sh: Create a feature.
2494 * target-descriptions.c (tdesc_type_kind): Move from here.
2495 (tdesc_type): Likewise.
2496 (tdesc_type_up): Likewise.
2497 (tdesc_feature): Likewise.
2498 (tdesc_create_reg): Likewise.
2499
2500 2018-04-18 Alan Hayward <alan.hayward@arm.com>
2501
2502 * Makefile.in: Add arch/tdesc.c
2503 * common/tdesc.c: New file.
2504 * common/tdesc.h (tdesc_element_visitor): Move to here.
2505 (tdesc_element): Likewise.
2506 (tdesc_reg): Likewise.
2507 (tdesc_reg_up): Likewise.
2508 * regformats/regdef.h (reg): Add offset to constructors.
2509 * target-descriptions.c (tdesc_element_visitor): Move from here.
2510 (tdesc_element): Likewise.
2511 (tdesc_reg): Likewise.
2512 (tdesc_reg_up): Likewise.
2513
2514 2018-04-17 Tom Tromey <tom@tromey.com>
2515
2516 * dwarf2read.c (quirk_rust_enum): Conditionally drop the
2517 discriminant field.
2518
2519 2018-04-17 Tom Tromey <tom@tromey.com>
2520
2521 * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
2522
2523 2018-04-17 Andreas Arnez <arnez@linux.vnet.ibm.com>
2524
2525 * symtab.c (print_symbol_info): Skip printing filename and line
2526 number when `last' is NULL.
2527 (symtab_symbol_info): Use empty string instead of NULL for first
2528 invocation of print_symbol_info.
2529 (rbreak_command): Pass NULL to `last' parameter of
2530 print_symbol_info.
2531
2532 2018-04-16 Simon Marchi <simon.marchi@ericsson.com>
2533
2534 * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
2535 instead of nullptr.
2536
2537 2018-04-16 Pedro Alves <palves@redhat.com>
2538
2539 * MAINTAINERS (sh): Remove.
2540 * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
2541 (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
2542 (ALLDEPFILES): Remove sh64-tdep.c.
2543 * NEWS: Mentions that support for SH-5/SH64 is removed.
2544 * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
2545 (sh*-*-openbsd*): Ditto.
2546 (sh64-*-elf*): Remove.
2547 (sh*): Remove.
2548 * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
2549 * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
2550 * sh-tdep.c: No longer include "sh64-tdep.h".
2551 (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
2552 * sh64-tdep.c, sh64-tdep.h: Remove files.
2553
2554 2018-04-16 Pedro Alves <palves@redhat.com>
2555
2556 * MAINTAINERS: Remove m88k.
2557 * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
2558 (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
2559 (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
2560 * NEWS: Mention that support for m88k was removed.
2561 * configure.host (m88*-*-*): Remove support.
2562 * configure.nat (m88k-*-*): Remove support.
2563 * configure.tgt (m88*-*-openbsd*): Remove.
2564 * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
2565
2566 2018-04-15 Simon Marchi <simon.marchi@polymtl.ca>
2567
2568 * configure.tgt (x86_tobjs): New variable.
2569 (amd64_tobjs, i386_tobjs): Use it.
2570
2571 2018-04-13 Andreas Arnez <arnez@linux.vnet.ibm.com>
2572
2573 * symtab.c (print_symbol_info): Precede the symbol definition by
2574 the line number when available.
2575 * NEWS: Advertise this enhancement.
2576
2577 2018-04-13 Markus Metzger <markus.t.metzger@intel.com>
2578
2579 * NEWS (New options): announce set/show record btrace cpu.
2580 * btrace.c: Include record-btrace.h.
2581 (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
2582 the vendor is unknown.
2583 (btrace_compute_ftrace_1): Add cpu parameter. Update callers.
2584 Maybe overwrite the btrace configuration's cpu.
2585 (btrace_compute_ftrace): Add cpu parameter. Update callers.
2586 (btrace_fetch): Add cpu parameter. Update callers.
2587 (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
2588 Maybe overwrite the btrace configuration's cpu. Skip enabling
2589 errata workarounds if the vendor is unknown.
2590 * python/py-record-btrace.c: Include record-btrace.h.
2591 (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
2592 (recpy_bt_function_call_history): Call record_btrace_get_cpu.
2593 * record-btrace.c (record_btrace_cpu_state_kind): New.
2594 (record_btrace_cpu): New.
2595 (set_record_btrace_cpu_cmdlist): New.
2596 (record_btrace_get_cpu): New.
2597 (require_btrace_thread, record_btrace_info)
2598 (record_btrace_resume_thread): Call record_btrace_get_cpu.
2599 (cmd_set_record_btrace_cpu_none): New.
2600 (cmd_set_record_btrace_cpu_auto): New.
2601 (cmd_set_record_btrace_cpu): New.
2602 (cmd_show_record_btrace_cpu): New.
2603 (_initialize_record_btrace): Initialize set/show record btrace cpu
2604 commands.
2605 * record-btrace.h (record_btrace_get_cpu): New.
2606
2607 2018-04-13 Markus Metzger <markus.t.metzger@intel.com>
2608
2609 * record.c (set_record_command): Fix typo in message.
2610
2611 2018-04-13 Markus Metzger <markus.t.metzger@intel.com>
2612
2613 * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
2614
2615 2018-04-13 Markus Metzger <markus.t.metzger@intel.com>
2616
2617 * infrun.c (process_event_stop_test): Call
2618 gdbarch_in_indirect_branch_thunk.
2619 * gdbarch.sh (in_indirect_branch_thunk): New.
2620 * gdbarch.c: Regenerated.
2621 * gdbarch.h: Regenerated.
2622 * x86-tdep.h: New.
2623 * x86-tdep.c: New.
2624 * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
2625 (HFILES_NO_SRCDIR): Add x86-tdep.h.
2626 (ALLDEPFILES): Add x86-tdep.c.
2627 * arch-utils.h (default_in_indirect_branch_thunk): New.
2628 * arch-utils.c (default_in_indirect_branch_thunk): New.
2629 * i386-tdep: Include x86-tdep.h.
2630 (i386_in_indirect_branch_thunk): New.
2631 (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
2632 function.
2633 * amd64-tdep: Include x86-tdep.h.
2634 (amd64_in_indirect_branch_thunk): New.
2635 (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
2636
2637 2018-04-12 Jan Kratochvil <jan.kratochvil@redhat.com>
2638
2639 PR gdb/23053
2640 * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
2641 (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
2642 (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
2643 regression.
2644
2645 2018-04-12 Tom Tromey <tom@tromey.com>
2646
2647 * rust-lang.c (rust_print_struct_def): Remove univariant code.
2648 (rust_evaluate_subexp): Likewise.
2649
2650 2018-04-12 Pedro Alves <palves@redhat.com>
2651
2652 * procfs.c (procfs_detach): Make forward declaration's prototype
2653 match definition's protototype.
2654 (proc_get_LDT_entry): Remove stale do_cleanups call.
2655
2656 2018-04-12 Pedro Alves <palves@redhat.com>
2657
2658 * target.h (target_ops::to_has_exited): Delete.
2659 (target_has_exited): Delete.
2660 * target-delegates.c: Regenerate.
2661
2662 2018-04-11 Pedro Alves <palves@redhat.com>
2663
2664 * target.c (fileio_fh_t::t): Add comment.
2665 (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
2666 (target_fileio_close): Handle a NULL target.
2667 (invalidate_fileio_fh): New.
2668 (target_close): Call it.
2669 * remote.c (remote_hostio_send_command): No longer check whether
2670 remote_desc is open.
2671
2672 2018-04-11 Pedro Alves <palves@redhat.com>
2673
2674 * target.c (fileio_fh_t): Make it a named struct instead of a
2675 typedef.
2676 (fileio_fh_t::is_closed): New method.
2677 (DEF_VEC_O (fileio_fh_t)): Remove.
2678 (fileio_fhandles): Now a std::vector.
2679 (is_closed_fileio_fh): Delete.
2680 (acquire_fileio_fd): Adjust. Rename parameters.
2681 (release_fileio_fd): Adjust.
2682 (fileio_fd_to_fh): Reimplement as a function instead of a macro.
2683 (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
2684 (target_fileio_close): Adjust.
2685
2686 2018-04-10 Simon Marchi <simon.marchi@ericsson.com>
2687
2688 * auto-load.c (auto_load_safe_path_vec_update): Iterate by
2689 index.
2690
2691 2018-04-10 Pedro Alves <palves@redhat.com>
2692
2693 * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
2694 (scoped_finish_thread_state): New class.
2695 * infcmd.c (run_command_1): Use it instead of finish_thread_state
2696 cleanup.
2697 * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
2698 (fetch_inferior_event, normal_stop): Likewise.
2699 * thread.c (finish_thread_state_cleanup): Delete.
2700
2701 2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
2702 Pedro Alves <palves@redhat.com>
2703
2704 * value.c: Include "selftest.h" and "common/array-view.h".
2705 (struct range) <operator ==>: New.
2706 (test_ranges_contain): New.
2707 (check_ranges_vector): New.
2708 (test_insert_into_bit_range_vector): New.
2709 (_initialize_values): Register selftests.
2710 * common/array-view.h (operator==, operator!=): New.
2711
2712 2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
2713
2714 * common/gdb_vecs.h (unordered_remove): Add overload that takes
2715 an iterator.
2716 * inline-frame.c: Include <algorithm>.
2717 (struct inline_state): Add constructor.
2718 (inline_state_s): Remove.
2719 (DEF_VEC_O(inline_state_s)): Remove.
2720 (inline_states): Change type to std::vector.
2721 (find_inline_frame_state): Adjust to std::vector.
2722 (allocate_inline_frame_state): Remove.
2723 (clear_inline_frame_state): Adjust to std::vector.
2724 (skip_inline_frames): Adjust to std::vector.
2725
2726 2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
2727
2728 * tracepoint.h (struct trace_state_variable): Add constructor.
2729 <name>: Change type to std::string.
2730 * tracepoint.c (tsv_s): Remove.
2731 (DEF_VEC_O(tsv_s)): Remove.
2732 (tvariables): Change to std::vector.
2733 (create_trace_state_variable): Adjust to std::vector.
2734 (find_trace_state_variable): Likewise.
2735 (find_trace_state_variable_by_number): Likewise.
2736 (delete_trace_state_variable): Likewise.
2737 (trace_variable_command): Adjust to std::string.
2738 (delete_trace_variable_command): Likewise.
2739 (tvariables_info_1): Adjust to std::vector.
2740 (save_trace_state_variables): Likewise.
2741 (start_tracing): Likewise.
2742 (merge_uploaded_trace_state_variables): Adjust to std::vector
2743 and std::string.
2744 * target.h (struct target_ops)
2745 <to_download_trace_state_variable>: Pass reference to
2746 trace_state_variable.
2747 * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
2748 * target-delegates.c: Re-generate.
2749 * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
2750 (mi_tsv_deleted): Likewise.
2751 * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
2752 * remote.c (remote_download_trace_state_variable): Change
2753 pointer to reference and adjust.
2754 * make-target-delegates (parse_argtypes): Handle references.
2755 (write_function_header): Likewise.
2756 (munge_type): Likewise.
2757
2758 2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
2759
2760 * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
2761 string_view-selftests.c.
2762 * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
2763 testsuite.
2764 * unittests/basic_string_view/cons/char/1.cc: Likewise.
2765 * unittests/basic_string_view/cons/char/2.cc: Likewise.
2766 * unittests/basic_string_view/cons/char/3.cc: Likewise.
2767 * unittests/basic_string_view/element_access/char/1.cc:
2768 Likewise.
2769 * unittests/basic_string_view/element_access/char/empty.cc:
2770 Likewise.
2771 * unittests/basic_string_view/element_access/char/front_back.cc:
2772 Likewise.
2773 * unittests/basic_string_view/inserters/char/2.cc: Likewise.
2774 * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
2775 Likewise.
2776 * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
2777 Likewise.
2778 * unittests/basic_string_view/modifiers/swap/char/1.cc:
2779 Likewise.
2780 * unittests/basic_string_view/operations/compare/char/1.cc:
2781 Likewise.
2782 * unittests/basic_string_view/operations/compare/char/13650.cc:
2783 Likewise.
2784 * unittests/basic_string_view/operations/copy/char/1.cc:
2785 Likewise.
2786 * unittests/basic_string_view/operations/data/char/1.cc:
2787 Likewise.
2788 * unittests/basic_string_view/operations/find/char/1.cc:
2789 Likewise.
2790 * unittests/basic_string_view/operations/find/char/2.cc:
2791 Likewise.
2792 * unittests/basic_string_view/operations/find/char/3.cc:
2793 Likewise.
2794 * unittests/basic_string_view/operations/find/char/4.cc:
2795 Likewise.
2796 * unittests/basic_string_view/operations/rfind/char/1.cc:
2797 Likewise.
2798 * unittests/basic_string_view/operations/rfind/char/2.cc:
2799 Likewise.
2800 * unittests/basic_string_view/operations/rfind/char/3.cc:
2801 Likewise.
2802 * unittests/basic_string_view/operations/substr/char/1.cc:
2803 Likewise.
2804 * unittests/basic_string_view/operators/char/2.cc: Likewise.
2805 * unittests/string_view-selftests.c: New file.
2806
2807 2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
2808
2809 * unittests/basic_string_view/capacity/1.cc: New file.
2810 * unittests/basic_string_view/capacity/empty_neg.cc: New file.
2811 * unittests/basic_string_view/cons/char/1.cc: New file.
2812 * unittests/basic_string_view/cons/char/2.cc: New file.
2813 * unittests/basic_string_view/cons/char/3.cc: New file.
2814 * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
2815 * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
2816 * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
2817 * unittests/basic_string_view/element_access/char/1.cc: New file.
2818 * unittests/basic_string_view/element_access/char/2.cc: New file.
2819 * unittests/basic_string_view/element_access/char/empty.cc: New file.
2820 * unittests/basic_string_view/element_access/char/front_back.cc: New file.
2821 * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
2822 * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
2823 * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
2824 * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
2825 * unittests/basic_string_view/include.cc: New file.
2826 * unittests/basic_string_view/inserters/char/1.cc: New file.
2827 * unittests/basic_string_view/inserters/char/2.cc: New file.
2828 * unittests/basic_string_view/inserters/char/3.cc: New file.
2829 * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
2830 * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
2831 * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
2832 * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
2833 * unittests/basic_string_view/literals/types.cc: New file.
2834 * unittests/basic_string_view/literals/values.cc: New file.
2835 * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
2836 * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
2837 * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
2838 * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
2839 * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
2840 * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
2841 * unittests/basic_string_view/operations/compare/char/1.cc: New file.
2842 * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
2843 * unittests/basic_string_view/operations/compare/char/2.cc: New file.
2844 * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
2845 * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
2846 * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
2847 * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
2848 * unittests/basic_string_view/operations/copy/char/1.cc: New file.
2849 * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
2850 * unittests/basic_string_view/operations/data/char/1.cc: New file.
2851 * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
2852 * unittests/basic_string_view/operations/find/char/1.cc: New file.
2853 * unittests/basic_string_view/operations/find/char/2.cc: New file.
2854 * unittests/basic_string_view/operations/find/char/3.cc: New file.
2855 * unittests/basic_string_view/operations/find/char/4.cc: New file.
2856 * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
2857 * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
2858 * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
2859 * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
2860 * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
2861 * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
2862 * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
2863 * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
2864 * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
2865 * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
2866 * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
2867 * unittests/basic_string_view/operations/substr/char/1.cc: New file.
2868 * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
2869 * unittests/basic_string_view/operators/char/2.cc: New file.
2870 * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
2871 * unittests/basic_string_view/range_access/char/1.cc: New file.
2872 * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
2873 * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
2874 * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
2875 * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
2876 * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
2877 * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
2878 * unittests/basic_string_view/requirements/typedefs.cc: New file.
2879 * unittests/basic_string_view/typedefs.cc: New file.
2880 * unittests/basic_string_view/types/1.cc: New file.
2881
2882 2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
2883
2884 * common/gdb_string_view.h: Remove libstdc++ implementation
2885 details, adjust to gdb reality.
2886 * common/gdb_string_view.tcc: Likewise.
2887 * cli/cli-script.c (struct string_view): Remove.
2888 (user_args) <m_args>: Change element type to gdb::string_view.
2889 (user_args::insert_args): Adjust.
2890
2891 2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
2892
2893 * common/gdb_string_view.h: New file.
2894 * common/gdb_string_view.tcc: New file.
2895
2896 2018-04-09 Simon Marchi <simon.marchi@polymtl.ca>
2897
2898 * ax_cxx_compile_stdcxx.m4: Sync with upstream.
2899 * configure: Re-generate.
2900
2901 2018-04-09 Pedro Alves <palves@redhat.com>
2902
2903 * gdbarch.sh: Include "observable.h" instead of "observer.h".
2904 (set_target_gdbarch): Call
2905 gdb::observers::architecture_changed.notify instead of
2906 observer_notify_architecture_changed.
2907
2908 2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
2909
2910 * tracepoint.c (struct current_traceframe_cleanup): Remove.
2911 (do_restore_current_traceframe_cleanup): Remove.
2912 (restore_current_traceframe_cleanup_dtor): Remove.
2913 (make_cleanup_restore_current_traceframe): Remove.
2914 (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
2915 New.
2916 * tracepoint.h (struct scoped_restore_current_traceframe): New.
2917 * infrun.c (fetch_inferior_event): Use
2918 scoped_restore_current_traceframe.
2919
2920 2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
2921
2922 * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
2923 Remove.
2924 <n_allocated_type_units>: Remove.
2925 <all_type_units>: Change to std::vector.
2926 * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
2927 to std::vector change.
2928 (dwarf2_per_objfile::get_cutu): Likewise.
2929 (dwarf2_per_objfile::get_tu): Likewise.
2930 (create_signatured_type_table_from_index): Likewise.
2931 (create_signatured_type_table_from_debug_names): Likewise.
2932 (dw2_symtab_iter_next): Likewise.
2933 (dw2_print_stats): Likewise.
2934 (dw2_expand_all_symtabs): Likewise.
2935 (dw2_expand_marked_cus): Likewise.
2936 (dw2_debug_names_iterator::next): Likewise.
2937 (dwarf2_initialize_objfile): Likewise.
2938 (add_signatured_type_cu_to_table): Likewise.
2939 (create_all_type_units): Likewise.
2940 (add_type_unit): Likewise.
2941 (struct tu_abbrev_offset): Add constructor.
2942 (build_type_psymtabs_1): Adjust to std::vector change.
2943 (print_tu_stats): Likewise.
2944 * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
2945 (write_debug_names): Likewise.
2946
2947 2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
2948
2949 * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
2950 Make an std::vector.
2951 <n_comp_units>: Remove.
2952 * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
2953 to std::vector change.
2954 (dwarf2_per_objfile::get_cutu): Likewise.
2955 (dwarf2_per_objfile::get_cu): Likewise.
2956 (create_cus_from_index): Likewise.
2957 (create_addrmap_from_index): Likewise.
2958 (create_addrmap_from_aranges): Likewise.
2959 (dwarf2_read_index): Likewise.
2960 (dw2_find_last_source_symtab): Likewise.
2961 (dw2_map_symtabs_matching_filename): Likewise.
2962 (dw2_symtab_iter_next): Likewise.
2963 (dw2_print_stats): Likewise.
2964 (dw2_expand_all_symtabs): Likewise.
2965 (dw2_expand_symtabs_with_fullname): Likewise.
2966 (dw2_expand_marked_cus): Likewise.
2967 (dw2_map_symbol_filenames): Likewise.
2968 (create_cus_from_debug_names): Likewise.
2969 (dwarf2_read_debug_names): Likewise.
2970 (dw2_debug_names_iterator::next): Likewise.
2971 (dwarf2_initialize_objfile): Likewise.
2972 (set_partial_user): Likewise.
2973 (dwarf2_build_psymtabs_hard): Likewise.
2974 (read_comp_units_from_section): Remove arguments, adjust to
2975 std::vector change.
2976 (create_all_comp_units): Adjust to std::vector and
2977 read_comp_units_from_section changes.
2978 (dwarf2_find_containing_comp_unit): Adjust to std::vector
2979 change.
2980 * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
2981 (psyms_seen_size): Likewise.
2982 (write_gdbindex): Likewise.
2983 (write_debug_names): Likewise.
2984
2985 2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
2986
2987 * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
2988 with dwarf2_per_objfile.
2989 (create_cus_from_index): Likewise.
2990 (create_signatured_type_table_from_index): Likewise.
2991 (dwarf2_read_index): Likewise.
2992 (dwarf2_initialize_objfile): Likewise.
2993 (dwarf2_fetch_die_loc_sect_off): Get dwarf2_per_objfile from
2994 per_cu rather than get_dwarf2_per_objfile.
2995
2996 2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
2997
2998 * dwarf2read.h (struct signatured_type): Forward declare.
2999 (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
3000 New methods.
3001 * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
3002 (dw2_get_cutu): ...this.
3003 (dwarf2_per_objfile::get_cu): Rename from...
3004 (dw2_get_cu): ...this.
3005 (dwarf2_per_objfile::get_tu): New.
3006 (create_addrmap_from_index): Adjust.
3007 (create_addrmap_from_aranges): Adjust.
3008 (dw2_find_last_source_symtab): Adjust.
3009 (dw2_map_symtabs_matching_filename): Adjust.
3010 (dw2_symtab_iter_next): Adjust.
3011 (dw2_print_stats): Adjust.
3012 (dw2_expand_all_symtabs): Adjust.
3013 (dw2_expand_symtabs_with_fullname): Adjust.
3014 (dw2_expand_marked_cus): Adjust.
3015 (dw_expand_symtabs_matching_file_matcher): Adjust.
3016 (dw2_map_symbol_filenames): Adjust.
3017 (dw2_debug_names_iterator::next): Adjust.
3018 (dwarf2_initialize_objfile): Adjust.
3019 (set_partial_user): Adjust.
3020 (dwarf2_build_psymtabs_hard): Adjust.
3021
3022 2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
3023
3024 * dwarf2read.c (create_signatured_type_table_from_debug_names):
3025 Remove unused variables.
3026 (dw2_map_symtabs_matching_filename): Likewise.
3027 (dwarf2_record_block_ranges): Likewise.
3028 (dwarf2_read_addr_index): Likewise.
3029 (follow_die_offset): Likewise.
3030
3031 2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
3032
3033 * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
3034 to symbol_file_add_main.
3035
3036 2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
3037
3038 PR mi/22299
3039 * mi/mi-console.c (do_fputc_async_safe): New.
3040 (mi_console_file::write_async_safe): New.
3041 (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
3042 * mi/mi-console.h (class mi_console_file) <write_async_safe>:
3043 New.
3044 * ui-file.c (ui_file::putstrn): Adjust call to
3045 fputstrn_unfiltered.
3046 * utils.c (printchar): Replace do_fputs and do_fprintf
3047 parameters by do_fputc.
3048 (fputstr_filtered): Adjust call to printchar.
3049 (fputstr_unfiltered): Likewise.
3050 (fputstrn_filtered): Likewise.
3051 (fputstrn_unfiltered): Add do_fputc parameter, pass to
3052 printchar.
3053 * utils.h (do_fputc_ftype): New typedef.
3054 (fputstrn_unfiltered): Add do_fputc parameter.
3055
3056 2018-04-07 Simon Marchi <simon.marchi@polymtl.ca>
3057
3058 * regformats/i386/i386-avx.dat: Remove.
3059
3060 2018-04-07 Simon Marchi <simon.marchi@ericsson.com>
3061
3062 PR gdb/22979
3063 * amd64-tdep.c (amd64_none_init_abi): New function.
3064 (amd64_x32_none_init_abi): New function.
3065 (_initialize_amd64_tdep): Register handlers for x86-64 and
3066 x64_32 with GDB_OSABI_NONE.
3067 * osabi.c (gdbarch_init_osabi): Allow running handlers for the
3068 GDB_OSABI_NONE osabi.
3069
3070 2018-04-07 Simon Marchi <simon.marchi@ericsson.com>
3071
3072 PR gdb/22980
3073 * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
3074 GDB_OSABI_NONE.
3075 * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
3076 * osabi.c (gdb_osabi_names): Add "unknown" entry.
3077
3078 2018-04-07 Simon Marchi <simon.marchi@ericsson.com>
3079
3080 * common/byte-vector.h (char_vector): New type.
3081 * target.h (target_read_alloc): Return
3082 gdb::optional<byte_vector>.
3083 (target_read_stralloc): Return gdb::optional<char_vector>.
3084 (target_get_osdata): Return gdb::optional<char_vector>.
3085 * target.c (target_read_alloc_1): Templatize. Replacement
3086 manual memory management with vector.
3087 (target_read_alloc): Change return type, adjust.
3088 (target_read_stralloc): Change return type, adjust.
3089 (target_get_osdata): Change return type, adjust.
3090 * auxv.c (struct auxv_info) <length>: Remove.
3091 <data>: Change type to gdb::optional<byte_vector>.
3092 (auxv_inferior_data_cleanup): Free auxv_info with delete.
3093 (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
3094 (target_auxv_search): Adjust.
3095 (fprint_target_auxv): Adjust.
3096 * avr-tdep.c (avr_io_reg_read_command): Adjust.
3097 * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
3098 (linux_make_corefile_notes): Adjust.
3099 * osdata.c (get_osdata): Adjust.
3100 * remote.c (remote_get_threads_with_qxfer): Adjust.
3101 (remote_memory_map): Adjust.
3102 (remote_traceframe_info): Adjust.
3103 (btrace_read_config): Adjust.
3104 (remote_read_btrace): Adjust.
3105 (remote_pid_to_exec_file): Adjust.
3106 * solib-aix.c (solib_aix_get_library_list): Adjust.
3107 * solib-dsbt.c (decode_loadmap): Don't free buf.
3108 (dsbt_get_initial_loadmaps): Adjust.
3109 * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
3110 * solib-target.c (solib_target_current_sos): Adjust.
3111 * tracepoint.c (sdata_make_value): Adjust.
3112 * xml-support.c (xinclude_start_include): Adjust.
3113 (xml_fetch_content_from_file): Adjust.
3114 * xml-support.h (xml_fetch_another): Change return type.
3115 (xml_fetch_content_from_file): Change return type.
3116 * xml-syscall.c (xml_init_syscalls_info): Adjust.
3117 * xml-tdesc.c (file_read_description_xml): Adjust.
3118 (fetch_available_features_from_target): Change return type.
3119 (target_fetch_description_xml): Adjust.
3120 (target_read_description_xml): Adjust.
3121
3122 2018-04-06 Tom Tromey <tom@tromey.com>
3123
3124 * value.c (~value): Update.
3125 (struct value) <contents>: Now unique_xmalloc_ptr.
3126 (value_contents_bits_eq, allocate_value_contents)
3127 (value_contents_raw, value_contents_all_raw)
3128 (value_contents_for_printing, value_contents_for_printing_const)
3129 (set_value_enclosing_type): Update.
3130
3131 2018-04-06 Tom Tromey <tom@tromey.com>
3132
3133 * value.c (range_s): Remove typedef, VEC.
3134 (struct range): Add operator<.
3135 (range_lessthan): Remove.
3136 (ranges_contain): Change type.
3137 (~value): Update.
3138 (struct value) <unavailable, optimized_out>: Now std::vector.
3139 (value_entirely_available)
3140 (value_entirely_covered_by_range_vector)
3141 (value_entirely_unavailable, value_entirely_optimized_out):
3142 Update.
3143 (insert_into_bit_range_vector): Change argument type.
3144 (find_first_range_overlap): Likewise.
3145 (struct ranges_and_idx, value_contents_bits_eq)
3146 (require_not_optimized_out, require_available): Update.
3147 (ranges_copy_adjusted): Change argument types.
3148 (value_optimized_out, value_copy, value_fetch_lazy): Update.
3149
3150 2018-04-06 Tom Tromey <tom@tromey.com>
3151
3152 * value.c (~value): Update.
3153 (struct value) <parent>: Now a value_ref_ptr.
3154 (value_parent, set_value_parent, value_address, value_copy):
3155 Update.
3156
3157 2018-04-06 Tom Tromey <tom@tromey.com>
3158
3159 * value.c (struct value): Add constructor, destructor, and member
3160 initializers.
3161 (allocate_value_lazy, value_decref): Update.
3162
3163 2018-04-06 Tom Tromey <tom@tromey.com>
3164
3165 * value.c (struct value) <released, next>: Remove.
3166 (all_values): Now a std::vector.
3167 (allocate_value_lazy): Update.
3168 (value_next): Remove.
3169 (value_mark, value_free_to_mark, release_value)
3170 (value_release_to_mark): Update.
3171
3172 2018-04-06 Tom Tromey <tom@tromey.com>
3173
3174 * value.h (fetch_subexp_value, value_release_to_mark): Update.
3175 (free_value_chain): Remove.
3176 * value.c (free_value_chain): Remove.
3177 (value_release_to_mark): Return a std::vector.
3178 * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
3179 std::vector.
3180 (check_condition): Update.
3181 * eval.c (fetch_subexp_value): Change "val_chain" to a
3182 std::vector.
3183 * breakpoint.c (update_watchpoint): Update.
3184 (can_use_hardware_watchpoint): Change "vals" to a std::vector.
3185
3186 2018-04-06 Tom Tromey <tom@tromey.com>
3187
3188 * value.h (free_all_values): Remove.
3189 * value.c (free_all_values): Remove.
3190
3191 2018-04-06 Tom Tromey <tom@tromey.com>
3192
3193 * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
3194 (value_history_chain, value_history_count): Remove.
3195 (value_history): New global.
3196 (record_latest_value, access_value_history, show_values)
3197 (preserve_values): Update.
3198
3199 2018-04-06 Tom Tromey <tom@tromey.com>
3200
3201 * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
3202 * varobj.c (varobj_set_display_format, varobj_set_value)
3203 (install_default_visualizer, construct_visualizer)
3204 (install_new_value, ~varobj, varobj_get_value_type)
3205 (my_value_of_variable, varobj_editable_p): Update.
3206 * c-varobj.c (c_describe_child, c_value_of_variable)
3207 (cplus_number_of_children, cplus_describe_child): Update.
3208 * ada-varobj.c (ada_number_of_children, ada_name_of_child)
3209 (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
3210 (ada_value_of_variable, ada_value_is_changeable_p): Update.
3211
3212 2018-04-06 Tom Tromey <tom@tromey.com>
3213
3214 * printcmd.c (last_examine_address): Change type to
3215 value_ref_ptr.
3216 (do_examine, x_command): Update.
3217
3218 2018-04-06 Tom Tromey <tom@tromey.com>
3219
3220 * value.c (release_value): Update.
3221 * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
3222 (struct bpstats) <val>: Now a value_ref_ptr.
3223 * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
3224 (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
3225 (~watchpoint, print_it_watchpoint, watch_command_1)
3226 (invalidate_bp_value_on_memory_change): Update.
3227
3228 2018-04-06 Tom Tromey <tom@tromey.com>
3229
3230 * varobj.c (varobj_clear_saved_item)
3231 (update_dynamic_varobj_children, install_new_value, ~varobj):
3232 Update.
3233 * value.h (value_incref): Move declaration earlier.
3234 (value_decref): Rename from value_free.
3235 (struct value_ref_policy): New.
3236 (value_ref_ptr): New typedef.
3237 (struct value_deleter): Remove.
3238 (gdb_value_up): Remove typedef.
3239 (release_value): Change return type.
3240 (release_value_or_incref): Remove.
3241 * value.c (set_value_parent): Update.
3242 (value_incref): Change return type.
3243 (value_decref): Rename from value_free.
3244 (value_free_to_mark, free_all_values, free_value_chain): Update.
3245 (release_value): Return value_ref_ptr.
3246 (release_value_or_incref): Remove.
3247 (record_latest_value, set_internalvar, clear_internalvar):
3248 Update.
3249 * stack.c (info_frame_command): Don't call value_free.
3250 * python/py-value.c (valpy_dealloc, valpy_new)
3251 (value_to_value_object): Update.
3252 * printcmd.c (do_examine): Update.
3253 * opencl-lang.c (lval_func_free_closure): Update.
3254 * mi/mi-main.c (register_changed_p): Don't call value_free.
3255 * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
3256 * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
3257 * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
3258 value_free.
3259 * guile/scm-value.c (vlscm_free_value_smob)
3260 (vlscm_scm_from_value): Update.
3261 * frame.c (frame_register_unwind, frame_unwind_register_signed)
3262 (frame_unwind_register_unsigned, get_frame_register_bytes)
3263 (put_frame_register_bytes): Don't call value_free.
3264 * findvar.c (address_from_register): Don't call value_free.
3265 * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
3266 * dwarf2loc.c (entry_data_value_free_closure)
3267 (value_of_dwarf_reg_entry, free_pieced_value_closure)
3268 (dwarf2_evaluate_loc_desc_full): Update.
3269 * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
3270 (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
3271 (~watchpoint, watch_command_1)
3272 (invalidate_bp_value_on_memory_change): Update.
3273 * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
3274
3275 2018-04-06 Simon Marchi <simon.marchi@polymtl.ca>
3276
3277 PR gdb/23022
3278 * warning.m4: Add -Wno-error=deprecated-register.
3279 * configure: Re-generate.
3280
3281 2018-04-05 Tom Tromey <tom@tromey.com>
3282
3283 * linespec.h: Remove include of "vec.h".
3284
3285 2018-04-05 Tom Tromey <tom@tromey.com>
3286
3287 * linespec.c (typep): Remove typedef.
3288 (find_methods, find_superclass_methods): Take a std::vector.
3289 (find_method): Use std::vector.
3290
3291 2018-04-05 Tom Tromey <tom@tromey.com>
3292
3293 * utils.c (compare_strings): Remove.
3294 * utils.h (compare_strings): Remove.
3295 * objc-lang.h (find_imps): Update.
3296 * objc-lang.c (find_methods): Take a std::vector.
3297 (uniquify_strings, find_imps): Likewise.
3298 * linespec.c (find_methods): Take a std::vector.
3299 (decode_objc): Use std::vector.
3300 (add_all_symbol_names_from_pspace, find_superclass_methods): Take
3301 a std::vector.
3302 (find_method, find_function_symbols): Use std::vector.
3303
3304 2018-04-05 Tom Tromey <tom@tromey.com>
3305
3306 * completer.c (completion_tracker::completion_tracker): Remove
3307 cast.
3308 (completion_tracker::discard_completions): Likewise.
3309 * breakpoint.c (ambiguous_names_p): Remove cast.
3310 * ada-lang.c (_initialize_ada_language): Remove cast.
3311 * utils.h (streq): Update.
3312 (streq_hash): Add new declaration.
3313 * utils.c (streq): Return bool.
3314 (streq_hash): New function.
3315
3316 2018-04-05 Tom Tromey <tom@tromey.com>
3317
3318 * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
3319 Remove a string copy.
3320
3321 2018-04-05 Tom Tromey <tom@tromey.com>
3322
3323 * linespec.c (filter_results): Use std::vector.
3324 (decode_line_2, decode_line_full): Update.
3325
3326 2018-04-05 Tom Tromey <tom@tromey.com>
3327
3328 * linespec.c (canonical_to_fullform): Return std::string.
3329 (filter_results): Update.
3330 (struct decode_line_2_item): Add constructor.
3331 <fullform, displayform>: Now std::string.
3332 (decode_line_2_compare_items): Now a std::sort comparator.
3333 (decode_line_2): Update.
3334
3335 2018-04-05 Tom Tromey <tom@tromey.com>
3336
3337 * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
3338 (unexpected_linespec_error): Update.
3339 (linespec_parse_basic, parse_linespec): Update.
3340
3341 2018-04-05 Tom Tromey <tom@tromey.com>
3342
3343 * linespec.c (linespec_parse_basic): Reindent.
3344
3345 2018-04-05 Tom Tromey <tom@tromey.com>
3346
3347 * minsyms.h (iterate_over_minimal_symbols): Update.
3348 * minsyms.c (iterate_over_minimal_symbols): Take a
3349 gdb::function_view.
3350 * linespec.c (struct collect_minsyms): Remove.
3351 (compare_msyms): Now a std::sort comparator.
3352 (add_minsym): Add parameters.
3353 (search_minsyms_for_name): Update. Use std::vector.
3354
3355 2018-04-03 Tom Tromey <tom@tromey.com>
3356
3357 * mipsread.c (read_alphacoff_dynamic_symtab): Use
3358 gdb::byte_vector.
3359
3360 2018-04-02 Weimin Pan <weimin.pan@oracle.com>
3361
3362 * MAINTAINERS (Write After Approval): Add Weimin Pan.
3363
3364 2018-04-02 Weimin Pan <weimin.pan@oracle.com>
3365
3366 PR gdb/16959
3367 * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when
3368 printing static type.
3369
3370 2018-04-01 Tom Tromey <tom@tromey.com>
3371
3372 * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
3373 (rs6000_xfer_shared_libraries): Update.
3374
3375 2018-04-01 Simon Marchi <simon.marchi@polymtl.ca>
3376
3377 * common/gdb_vecs.h (char_ptr): Remove.
3378 * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
3379
3380 2018-03-30 Simon Marchi <simon.marchi@polymtl.ca>
3381
3382 * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
3383 with std::vector.
3384 * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
3385
3386 2018-03-30 Simon Marchi <simon.marchi@polymtl.ca>
3387
3388 * tracepoint.h (struct uploaded_tp): Initialize fields.
3389 <actions, step_actions, cmd_strings>: Change type to
3390 std::vector<char *>.
3391 * tracepoint.c (get_uploaded_tp): Allocate with new.
3392 (free_uploaded_tps): Free with delete.
3393 (parse_tracepoint_definition): Adjust to std::vector change.
3394 * breakpoint.c (read_uploaded_action): Likewise.
3395 (create_tracepoint_from_upload): Likewise.
3396 * ctf.c (ctf_write_uploaded_tp): Likewise.
3397 (SET_ARRAY_FIELD): Likewise.
3398 * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
3399
3400 2018-03-30 Tom Tromey <tom@tromey.com>
3401
3402 * solib-svr4.c (lm_info_read): Use gdb::byte_vector. Return
3403 std::unique_ptr.
3404 (svr4_keep_data_in_core): Update.
3405 (svr4_read_so_list): Update.
3406
3407 2018-03-30 Tom Tromey <tom@tromey.com>
3408
3409 * windows-nat.c (handle_output_debug_string, handle_exception):
3410 Update.
3411 * target.h (target_read_string): Update.
3412 * target.c (target_read_string): Change "string" to
3413 unique_xmalloc_ptr.
3414 * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
3415 Update.
3416 * solib-frv.c (frv_current_sos): Update.
3417 * solib-dsbt.c (dsbt_current_sos): Update.
3418 * solib-darwin.c (darwin_current_sos): Update.
3419 * linux-thread-db.c (inferior_has_bug): Update.
3420 * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
3421 Update. Remove alloca.
3422 * ada-lang.c (ada_main_name): Update.
3423
3424 2018-03-30 Tom Tromey <tom@tromey.com>
3425
3426 * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
3427 (struct dwo_file_deleter): New.
3428 (dwo_file_up): New typedef.
3429 (open_and_init_dwo_file): Use dwo_file_up.
3430 (free_dwo_file_cleanup): Remove.
3431
3432 2018-03-30 Tom Tromey <tom@tromey.com>
3433
3434 * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
3435 (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
3436
3437 2018-03-30 Tom Tromey <tom@tromey.com>
3438
3439 * dwarf2read.c (class free_cached_comp_units): New class.
3440 (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
3441 (free_cached_comp_units): Remove function.
3442
3443 2018-03-30 Tom Tromey <tom@tromey.com>
3444
3445 * utils.h (make_cleanup_unpush_target): Remove.
3446 * inf-ptrace.c (struct target_unpusher): New.
3447 (target_unpush_up) New typedef.
3448 (inf_ptrace_create_inferior, inf_ptrace_attach): Use
3449 target_unpush_up.
3450 * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
3451
3452 2018-03-27 Tom Tromey <tom@tromey.com>
3453
3454 * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
3455
3456 2018-03-27 Pedro Alves <palves@redhat.com>
3457 Tom Tromey <tom@tromey.com>
3458
3459 * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
3460 destructor. Now a class.
3461 (gdb_readline_wrapper_cleanup): Remove function.
3462 (gdb_readline_wrapper): Remove cleanups.
3463
3464 2018-03-27 Tom Tromey <tom@tromey.com>
3465
3466 * typeprint.h (struct type_print_options) <local_typedefs,
3467 global_typedefs>: Remove "struct" keyword.
3468 (class typedef_hash_table): New class.
3469 (recursively_update_typedef_hash, add_template_parameters)
3470 (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
3471 (find_typedef_in_hash): Don't declare.
3472 * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
3473 (typedef_hash_table::recursively_update): Rename from
3474 recursively_update_typedef_hash. Now a member.
3475 (typedef_hash_table::add_template_parameters): Rename from
3476 add_template_parameters. Now a member.
3477 (typedef_hash_table::typedef_hash_table): Now a constructor;
3478 rename from create_typedef_hash.
3479 (typedef_hash_table::~typedef_hash_table): Now a destructor;
3480 rename from free_typedef_hash.
3481 (do_free_typedef_hash, make_cleanup_free_typedef_hash)
3482 (do_free_global_table): Remove.
3483 (typedef_hash_table::typedef_hash_table): New constructor; renamed
3484 from copy_type_recursive.
3485 (create_global_typedef_table): Remove.
3486 (typedef_hash_table::find_global_typedef): Now a member of
3487 typedef_hash_table.
3488 (typedef_hash_table::find_typedef): Rename from
3489 find_typedef_in_hash; now a member.
3490 (whatis_exp): Update.
3491 * extension.h (struct ext_lang_type_printers): Add constructor and
3492 destructor.
3493 (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
3494 declare.
3495 * extension.c (ext_lang_type_printers::ext_lang_type_printers):
3496 Now a constructor; rename from start_ext_lang_type_printers.
3497 (ext_lang_type_printers): Now a destructor; rename from
3498 free_ext_lang_type_printers.
3499 * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
3500 Update.
3501 (c_type_print_base_struct_union): Update. Remove cleanups.
3502
3503 2018-03-27 Tom Tromey <tom@tromey.com>
3504
3505 * dwarf-index-write.c: Include <cmath>.
3506
3507 2018-03-27 Joel Brobecker <brobecker@adacore.com>
3508
3509 * NEWS: Add entry describing new "set|show varsize-limit" command.
3510 * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
3511 command.
3512 * printcmd.c (_initialize_printcmd): Add "set var" alias of
3513 "set variable".
3514
3515 2018-03-27 Simon Marchi <simon.marchi@ericsson.com>
3516
3517 * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
3518 dwarf-index-write.c
3519 (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
3520 * dwarf-index-common.c: New file.
3521 * dwarf-index-common.h: New file.
3522 * dwarf-index-write.c: New file.
3523 * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
3524 (struct dwarf2_section_info): Move from here.
3525 (dwarf2_section_info_def): Likewise.
3526 (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
3527 (offset_type): Likewise.
3528 (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
3529 (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
3530 (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
3531 (byte_swap): Likewise.
3532 (MAYBE_SWAP): Likewise.
3533 (dwarf2_per_cu_ptr): Likewise.
3534 (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
3535 (struct tu_stats): Likewise.
3536 (struct dwarf2_per_objfile): Likewise.
3537 (struct dwarf2_per_cu_data): Likewise.
3538 (struct signatured_type): Likewise.
3539 (sig_type_ptr): Likewise.
3540 (DEF_VEC_P (sig_type_ptr)): Likewise.
3541 (INDEX4_SUFFIX): Likewise.
3542 (INDEX5_SUFFIX): Likewise.
3543 (DEBUG_STR_SUFFIX): Likewise.
3544 (dwarf2_read_section): Make non-static.
3545 (mapped_index_string_hash): Move from here.
3546 (dwarf5_djb_hash): Likewise.
3547 (file_write): Likewise.
3548 (class data_buf): Likewise.
3549 (struct symtab_index_entry): Likewise.
3550 (struct mapped_symtab): Likewise.
3551 (find_slot): Likewise.
3552 (hash_expand): Likewise.
3553 (add_index_entry): Likewise.
3554 (uniquify_cu_indices): Likewise.
3555 (class c_str_view): Likewise.
3556 (class c_str_view_hasher): Likewise.
3557 (class vector_hasher): Likewise.
3558 (write_hash_table): Likewise.
3559 (psym_index_map): Likewise.
3560 (struct addrmap_index_data): Likewise.
3561 (add_address_entry): Likewise.
3562 (add_address_entry_worker): Likewise.
3563 (write_address_map): Likewise.
3564 (symbol_kind): Likewise.
3565 (write_psymbols): Likewise.
3566 (struct signatured_type_index_data): Likewise.
3567 (write_one_signatured_type): Likewise.
3568 (recursively_count_psymbols): Likewise.
3569 (recursively_write_psymbols): Likewise.
3570 (class debug_names): Likewise.
3571 (check_dwarf64_offsets): Likewise.
3572 (psyms_seen_size): Likewise.
3573 (write_gdbindex): Likewise.
3574 (write_debug_names): Likewise.
3575 (assert_file_size): Likewise.
3576 (write_psymtabs_to_index): Likewise.
3577 (save_gdb_index_command): Likewise.
3578 (_initialize_dwarf2_read): Don't register the "save gdb-index"
3579 command.
3580 * dwarf2read.h: New file.
3581
3582 2018-03-27 Joel Brobecker <brobecker@adacore.com>
3583
3584 PR gdb/22670
3585 * dwarf2read.c (dwarf2_physname): Do not return the demangled
3586 symbol name if the CU's language stores symbol names in linkage
3587 format.
3588 * language.h (struct language_defn)
3589 <la_store_sym_names_in_linkage_form_p>: New field. Adjust
3590 all instances of this struct.
3591
3592 2018-03-26 Tom Tromey <tom@tromey.com>
3593
3594 * stack.c (backtrace_command_1): Remove verbose code.
3595
3596 2018-03-26 Tom Tromey <tom@tromey.com>
3597
3598 * python/py-framefilter.c (py_print_type): Don't catch
3599 exceptions. Return void.
3600 (py_print_value): Likewise.
3601 (py_print_single_arg): Likewise.
3602 (enumerate_args): Don't catch exceptions.
3603 (py_print_args): Likewise.
3604 (py_print_frame): Likewise.
3605 (gdbpy_apply_frame_filter): Catch exceptions here.
3606
3607 2018-03-26 Tom Tromey <tom@tromey.com>
3608
3609 * stack.c (_initialize_stack): Remove trailing newlines from help
3610 text. Add "Usage" line to "backtrace" help.
3611
3612 2018-03-26 Tom Tromey <tom@tromey.com>
3613
3614 PR python/16486:
3615 * python/py-framefilter.c (py_print_args): Call wrap_hint.
3616
3617 2018-03-26 Tom Tromey <tom@tromey.com>
3618
3619 * python/py-framefilter.c (py_print_single_arg): Return
3620 EXT_LANG_BT_ERROR from catch.
3621
3622 2018-03-26 Tom Tromey <tom@tromey.com>
3623
3624 PR backtrace/15584:
3625 * stack.c (backtrace_command_1): Move some code into no-filters
3626 "if".
3627
3628 2018-03-26 Tom Tromey <tom@tromey.com>
3629
3630 * python/py-framefilter.c (throw_quit_or_print_exception): New
3631 function.
3632 (gdbpy_apply_frame_filter): Use it.
3633
3634 2018-03-26 Tom Tromey <tom@tromey.com>
3635
3636 PR cli/17716:
3637 * python/py-framefilter.c (py_print_type, py_print_value)
3638 (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
3639 RETURN_MASK_ERROR.
3640
3641 2018-03-26 Tom Tromey <tom@tromey.com>
3642
3643 * python/py-framefilter.c (enumerate_args): Use
3644 gdb::unique_xmalloc_ptr.
3645
3646 2018-03-26 Tom Tromey <tom@tromey.com>
3647
3648 * python/py-framefilter.c (py_print_frame): Return
3649 EXT_LANG_BT_OK.
3650 (gdbpy_apply_frame_filter): Update comment.
3651 * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
3652 Remove.
3653 <EXT_LANG_BT_NO_FILTERS>: Change value.
3654
3655 2018-03-26 Tom Tromey <tom@tromey.com>
3656
3657 PR backtrace/15582:
3658 * stack.c (backtrace_command): Parse "hide" argument.
3659 * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
3660 * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
3661 constant.
3662
3663 2018-03-26 Tom Tromey <tom@tromey.com>
3664
3665 * stack.c (backtrace_command_1): Remove "show_locals" parameter,
3666 add "flags".
3667 (backtrace_command): Remove "fulltrace", add "flags".
3668
3669 2018-03-26 Tom Tromey <tom@tromey.com>
3670
3671 * stack.c (backtrace_command): Rewrite command line parsing.
3672
3673 2018-03-26 Simon Marchi <simon.marchi@ericsson.com>
3674
3675 * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
3676
3677 2018-03-26 Simon Marchi <simon.marchi@ericsson.com>
3678
3679 * filename-seen-cache.h: Add include guard.
3680
3681 2018-03-26 Keith Seitz <keiths@redhat.com>
3682
3683 * symfile.c (place_section): Remove "struct" from section_addr_info
3684 in comment.
3685 * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
3686 "struct" keyword from section_addr_info.
3687
3688 2018-03-26 Alan Hayward <alan.hayward@arm.com>
3689
3690 * regformats/regdef.h (reg): Add constructors.
3691
3692 2018-03-25 Pedro Alves <palves@redhat.com>
3693
3694 * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
3695 if then/else bodies in var_func_name extraction.
3696
3697 2018-03-23 Weimin Pan <weimin.pan@oracle.com>
3698
3699 * minsyms.c (lookup_minimal_symbol_and_objfile): Use
3700 lookup_minimal_symbol() to find symbol entry.
3701 * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
3702
3703 2018-03-23 Keith Seitz <keiths@redhat.com>
3704
3705 PR c++/22968
3706 * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
3707 nested type definitions for C++, too.
3708
3709 2018-03-23 Tom Tromey <tom@tromey.com>
3710
3711 * machoread.c (struct oso_el): Add a constructor. Don't define as
3712 a typedef.
3713 (macho_register_oso): Remove.
3714 (macho_symtab_read): Take a std::vector.
3715 (oso_el_compare_name): Now a std::sort comparator.
3716 (macho_symfile_read_all_oso): Take a std::vector.
3717 (macho_symfile_read): Use std::vector. Remove cleanups.
3718
3719 2018-03-22 Tom Tromey <tom@tromey.com>
3720
3721 * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
3722 (record_full_goto_bookmark): Use std::string.
3723
3724 2018-03-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
3725
3726 PR tdep/18295
3727 * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
3728 a single mask.
3729
3730 2018-03-22 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
3731
3732 * rs6000-tdep.c (store_insn_p): New function.
3733 (skip_prologue): New variable alloca_reg_offset. Set lr_reg
3734 and cr_reg to their unshifted values. Use store_insn_p to
3735 match LR saves using either R1 or fdata->alloca_reg. Use
3736 store_insn_p to match CR saves. Set alloca_reg_offset
3737 when alloca_reg and framep are set. Remove lr_reg shift
3738 when assigning to fdata->lr_register.
3739
3740 2018-03-22 Andreas Arnez <arnez@linux.vnet.ibm.com>
3741
3742 * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
3743 command line args instead of emitting a warning.
3744
3745 2018-03-22 Simon Marchi <simon.marchi@polymtl.ca>
3746
3747 * tracepoint.h (struct static_tracepoint_marker): Initialize
3748 fields, define default constructor, move constructor and move
3749 assignment, disable the rest.
3750 <str_id, extra>: Make std::string.
3751 (release_static_tracepoint_marker): Remove.
3752 (free_current_marker): Remove.
3753 * tracepoint.c (free_current_marker): Remove.
3754 (parse_static_tracepoint_marker_definition): Adjust to
3755 std::string, use new hex2str overload.
3756 (release_static_tracepoint_marker): Remove.
3757 (print_one_static_tracepoint_marker): Get marker by reference
3758 and adjust to std::string.
3759 (info_static_tracepoint_markers_command): Adjust to std::vector
3760 changes
3761 * target.h (static_tracepoint_marker_p): Remove typedef.
3762 (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
3763 (struct target_ops) <to_static_tracepoint_marker_at>: Return
3764 bool.
3765 <to_static_tracepoint_markers_by_strid>: Return std::vector.
3766 * target-debug.h
3767 (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
3768 (target_debug_print_std_vector_static_tracepoint_marker): New.
3769 (target_debug_print_struct_static_tracepoint_marker_p): Rename
3770 to...
3771 (target_debug_print_static_tracepoint_marker_p): ... this.
3772 * target-delegates.c: Re-generate.
3773 * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
3774 Make std::string.
3775 * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
3776 (decode_static_tracepoint_spec): Adjust to std::vector.
3777 (tracepoint_print_one_detail): Adjust to std::string.
3778 (strace_marker_decode_location): Adjust to std::string.
3779 (update_static_tracepoint): Adjust to std::string, remove call
3780 to release_static_tracepoint_marker.
3781 * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
3782 Adjust to std::vector.
3783 * remote.c (remote_static_tracepoint_marker_at): Return bool.
3784 (remote_static_tracepoint_markers_by_strid): Adjust to
3785 std::vector.
3786 * common/rsp-low.h (hex2str): New overload with explicit count
3787 of bytes.
3788 * common/rsp-low.c (hex2str): New overload with explicit count
3789 of bytes.
3790 * unittests/rsp-low-selftests.c (test_hex2str): New function.
3791 (_initialize_rsp_low_selftests): Add test_hex2str test.
3792 * unittests/tracepoint-selftests.c
3793 (test_parse_static_tracepoint_marker_definition): Adjust to
3794 std::string.
3795
3796 2018-03-22 Simon Marchi <simon.marchi@polymtl.ca>
3797
3798 * tracepoint.c (parse_static_tracepoint_marker_definition):
3799 Consider case where the definition is followed by more
3800 definitions.
3801 * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
3802 tracepoint-selftests.c.
3803 * unittests/tracepoint-selftests.c: New.
3804
3805 2018-03-21 Pedro Franco de Carvalho <pedromfc@linux.vnet.ibm.com>
3806
3807 * MAINTAINERS (Write After Approval): Add Pedro Franco de
3808 Carvalho.
3809
3810 2018-03-20 Stephen Roberts <stephen.roberts@arm.com>
3811
3812 * symtab.c (find_pc_sect_line): fixed indentation.
3813
3814 2018-03-20 Stephen Roberts <stephen.roberts@arm.com>
3815
3816 * symtab.c (find_pc_sect_line): now uses binary search.
3817
3818 2018-03-19 Tom Tromey <tom@tromey.com>
3819
3820 * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
3821 "IDENT" production.
3822
3823 2018-03-19 Pedro Alves <palves@redhat.com>
3824 Tom Tromey <tom@tromey.com>
3825
3826 * unittests/observable-selftests.c: New file.
3827 * common/observable.h: New file.
3828 * observable.h: New file.
3829 * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
3830 arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
3831 breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
3832 corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
3833 extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
3834 infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
3835 linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
3836 mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
3837 ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
3838 python/py-breakpoint.c, python/py-finishbreakpoint.c,
3839 python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
3840 record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
3841 riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
3842 spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
3843 symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
3844 tui/tui-interp.c, valops.c: Update all users.
3845 * tui/tui-hooks.c (tui_bp_created_observer)
3846 (tui_bp_deleted_observer, tui_bp_modified_observer)
3847 (tui_inferior_exit_observer, tui_before_prompt_observer)
3848 (tui_normal_stop_observer, tui_register_changed_observer):
3849 Remove.
3850 (tui_observers_token): New global.
3851 (attach_or_detach, tui_attach_detach_observers): New functions.
3852 (tui_install_hooks, tui_remove_hooks): Use
3853 tui_attach_detach_observers.
3854 * record-btrace.c (record_btrace_thread_observer): Remove.
3855 (record_btrace_thread_observer_token): New global.
3856 * observer.sh: Remove.
3857 * observer.c: Rename to observable.c.
3858 * observable.c (namespace gdb_observers): Define new objects.
3859 (observer_debug): Move into gdb_observers namespace.
3860 (struct observer, struct observer_list, xalloc_observer_list_node)
3861 (xfree_observer_list_node, generic_observer_attach)
3862 (generic_observer_detach, generic_observer_notify): Remove.
3863 (_initialize_observer): Update.
3864 Don't include observer.inc.
3865 * Makefile.in (generated_files): Remove observer.h, observer.inc.
3866 (clean mostlyclean): Likewise.
3867 (observer.h, observer.inc): Remove targets.
3868 (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
3869 (COMMON_SFILES): Use observable.c, not observer.c.
3870 * .gitignore: Remove observer.h.
3871
3872 2018-03-18 Tom Tromey <tom@tromey.com>
3873
3874 * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
3875 gdb::def_vector.
3876 (bfd_lookup_symbol_from_dyn_symtab): Likewise.
3877
3878 2018-03-17 Tom Tromey <tom@tromey.com>
3879
3880 * auto-load.c (auto_load_objfile_script_1): Use std::string.
3881
3882 2018-03-17 Tom Tromey <tom@tromey.com>
3883
3884 * target.c (class scoped_target_fd): New.
3885 (target_fileio_close_cleanup): Remove.
3886 (target_fileio_read_alloc_1): Use scoped_target_fd.
3887
3888 2018-03-16 Simon Marchi <simon.marchi@polymtl.ca>
3889
3890 * silent-rules.mk: New.
3891 * Makefile.in: Include silent-rules.mk
3892 (srcdir, VPATH, top_srcdir): Move up.
3893 (COMPILE): Add ECHO_CXX.
3894 (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
3895 (init.c): Add ECHO_INIT_C.
3896 (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
3897 (version.c): Add ECHO_GEN.
3898 (printcmd.o): Add ECHO_CXX.
3899 (target-float.o): Add ECHO_CXX.
3900 (ada-exp.o): Add ECHO_CXX.
3901 (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
3902 (insight$(EXEEXT)): Add ECHO_CXXLD.
3903 * gnulib/configure.ac: Add AM_SILENT_RULES.
3904 * gnulib/aclocal.m4: Re-generate.
3905 * gnulib/configure: Re-generate.
3906 * gnulib/import/Makefile.in: Re-generate.
3907
3908 2018-03-16 Tom Tromey <tom@tromey.com>
3909
3910 * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
3911 * utils.h (make_cleanup_free_section_addr_info): Don't declare.
3912 * utils.c (do_free_section_addr_info)
3913 (make_cleanup_free_section_addr_info): Remove.
3914 * symfile.h (struct other_sections): Add constructor.
3915 (struct section_addr_info): Remove.
3916 (section_addr_info): New typedef.
3917 (struct sym_fns) <sym_offsets>: Change type of parameter.
3918 (build_section_addr_info_from_objfile)
3919 (relative_addr_info_to_section_offsets, addr_info_make_relative)
3920 (default_symfile_offsets, symbol_file_add)
3921 (symbol_file_add_from_bfd)
3922 (build_section_addr_info_from_section_table): Update.
3923 (alloc_section_addr_info, free_section_addr_info): Don't declare.
3924 * symfile.c (alloc_section_addr_info): Remove.
3925 (build_section_addr_info_from_section_table): Change return type.
3926 Update.
3927 (build_section_addr_info_from_bfd)
3928 (build_section_addr_info_from_objfile): Likewise.
3929 (free_section_addr_info): Remove.
3930 (relative_addr_info_to_section_offsets): Change type of "addrs".
3931 (addrs_section_compar): Now a std::sort comparator.
3932 (addrs_section_sort): Change return type.
3933 (addr_info_make_relative): Change type of "addrs". Update.
3934 (default_symfile_offsets, syms_from_objfile_1)
3935 (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
3936 (symbol_file_add_separate): Update.
3937 (symbol_file_add): Change type of "addrs". Update.
3938 (add_symbol_file_command): Update. Remove cleanups.
3939 * symfile-mem.c (symbol_file_add_from_memory): Update. Remove
3940 cleanups.
3941 * symfile-debug.c (debug_sym_offsets): Change type of "info".
3942 * solib.c (solib_read_symbols): Update.
3943 * objfiles.c (objfile_relocate): Update. Remove cleanups.
3944 * machoread.c (macho_symfile_offsets): Update.
3945 * jit.c (jit_bfd_try_read_symtab): Update.
3946
3947 2018-03-15 Simon Marchi <simon.marchi@polymtl.ca>
3948
3949 * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
3950 unittests/utils-selftests.c.
3951 * unittests/utils-selftests.c: New file.
3952
3953 2018-03-14 Tom Tromey <tom@tromey.com>
3954
3955 PR cli/14977:
3956 * printcmd.c (printf_c_string, printf_wide_c_string): Special case
3957 for NULL.
3958
3959 2018-03-14 Tom Tromey <tom@tromey.com>
3960
3961 PR cli/19918:
3962 * printcmd.c (printf_pointer): Allow "-" in format.
3963
3964 2018-03-14 Tom Tromey <tom@tromey.com>
3965
3966 * printcmd.c (_initialize_printcmd): Add usage to printf.
3967
3968 2018-03-14 Yao Qi <qiyao@sourceware.org>
3969
3970 * MAINTAINERS: Update my email address.
3971
3972 2018-03-13 Tom Tromey <tom@tromey.com>
3973
3974 * machoread.c (macho_check_dsym): Change filenamep to a
3975 std::string*.
3976 (macho_symfile_read): Update.
3977 * symfile.c (load_command): Use std::string.
3978
3979 2018-03-12 Andrew Burgess <andrew.burgess@embecosm.com>
3980
3981 * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
3982 to error message string.
3983 (riscv_register_name): Use xsnprintf instead of sprintf.
3984 (riscv_insn::fetch_instruction): Use gdb_assert instead of
3985 internal_error.
3986 (riscv_print_arg_location): Use gdb_assert_not_reached instead of
3987 error.
3988 (riscv_push_dummy_call): Likewise.
3989
3990 2018-03-12 Tom Tromey <tom@tromey.com>
3991
3992 * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
3993 Use gdb::byte_vector.
3994 * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
3995
3996 2018-03-12 Yao Qi <yao.qi@linaro.org>
3997
3998 * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
3999 parameter type to readable_regcache.
4000 * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
4001 the declaration.
4002
4003 2018-03-11 Tom Tromey <tom@tromey.com>
4004
4005 * dwarf2read.c (struct nextfield): Add initializers.
4006 (struct nextfnfield): Remove.
4007 (struct fnfieldlist): Add initializers. Remove "length" and
4008 "head", use std::vector.
4009 (struct decl_field_list): Remove.
4010 (struct field_info): Add initializers.
4011 <fields, baseclasses>: Now std::vector.
4012 <nbaseclasses, nfnfields, typedef_field_list_count,
4013 nested_types_list_count>: Remove.
4014 (dwarf2_add_field, dwarf2_add_type_defn)
4015 (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
4016 (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
4017 (process_structure_scope): Update.
4018
4019 2018-03-11 Tom Tromey <tom@tromey.com>
4020
4021 * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
4022 for use by std::sort.
4023 (build_type_psymtabs_1): Use std::vector.
4024
4025 2018-03-09 Eli Zaretskii <eliz@gnu.org>
4026
4027 * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
4028 and LIBMPFR in the printed configuration.
4029
4030 2018-03-08 Tom Tromey <tom@tromey.com>
4031
4032 * source.c (get_filename_and_charpos): Use scoped_fd.
4033 * nto-procfs.c (procfs_open_1): Use scoped_fd.
4034 (procfs_pidlist): Likewise.
4035 * procfs.c (proc_get_LDT_entry): Use scoped_fd.
4036 (iterate_over_mappings): Likewise.
4037
4038 2018-03-08 Tom Tromey <tom@tromey.com>
4039
4040 * infcall.c (struct call_return_meta_info)
4041 <stack_temporaries_enabled>: Remove.
4042 (get_call_return_value, call_function_by_hand_dummy): Update.
4043 * thread.c (disable_thread_stack_temporaries): Remove.
4044 (enable_thread_stack_temporaries): Remove.
4045 (thread_stack_temporaries_enabled_p): Return bool.
4046 (push_thread_stack_temporary, value_in_thread_stack_temporaries)
4047 (get_last_thread_stack_temporary): Update.
4048 * eval.c (evaluate_subexp): Update.
4049 * gdbthread.h (class enable_thread_stack_temporaries): Now a
4050 class, not a function.
4051 (value_ptr, value_vec): Remove typedefs.
4052 (class thread_info) <stack_temporaries_enabled>: Now bool.
4053 <stack_temporaries>: Now a std::vector.
4054 (thread_stack_temporaries_enabled_p)
4055 (value_in_thread_stack_temporaries): Return bool.
4056
4057 2018-03-08 Simon Marchi <simon.marchi@ericsson.com>
4058
4059 * remote.c (putpkt_binary): Fix omitted bytes reporting.
4060 (getpkt_or_notif_sane_1): Likewise.
4061
4062 2018-03-08 Simon Marchi <simon.marchi@polymtl.ca>
4063
4064 * build-id.c (build_id_to_debug_bfd): Use std::string.
4065
4066 2018-03-08 Simon Marchi <simon.marchi@polymtl.ca>
4067
4068 * build-id.c (find_separate_debug_file_by_buildid): Return
4069 std::string.
4070 * build-id.h (find_separate_debug_file_by_buildid): Return
4071 std::string.
4072 * coffread.c (coff_symfile_read): Adjust to std::string.
4073 * elfread.c (elf_symfile_read): Adjust to std::string.
4074 * symfile.c (separate_debug_file_exists): Change parameter to
4075 std::string.
4076 (find_separate_debug_file): Return std::string.
4077 (find_separate_debug_file_by_debuglink): Return std::string.
4078 * symfile.h (find_separate_debug_file_by_debuglink): Return
4079 std::string.
4080
4081 2018-03-08 Simon Marchi <simon.marchi@polymtl.ca>
4082
4083 * common/xml-utils.c (xml_escape_text): Move code to...
4084 (xml_escape_text_append): ... this new function.
4085 * common/xml-utils.h (xml_escape_text_append): New declaration.
4086 * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
4087 New function.
4088 (_initialize_xml_utils): register test_xml_escape_text_append as
4089 a selftest.
4090
4091 2018-03-07 Alan Hayward <alan.hayward@arm.com>
4092
4093 * defs.h: Remove MAX_REGISTER_SIZE.
4094 * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
4095 asserts.
4096 * python/py-unwind.c (pyuw_sniffer): Likewise.
4097
4098 2018-03-07 Tom Tromey <tom@tromey.com>
4099
4100 * linux-tdep.c (linux_info_proc): Update.
4101 * target.h (struct target_ops) <to_fileio_readlink>: Return
4102 optional<string>.
4103 (target_fileio_readlink): Return optional<string>.
4104 * remote.c (remote_hostio_readlink): Return optional<string>.
4105 * inf-child.c (inf_child_fileio_readlink): Return
4106 optional<string>.
4107 * target.c (target_fileio_readlink): Return optional<string>.
4108
4109 2018-03-07 Andrew Burgess <andrew.burgess@embecosm.com>
4110
4111 * regcache.c (cooked_read_test): Add riscv to the list of
4112 architectures that have a save_reggroup.
4113
4114 2018-03-07 Andreas Arnez <arnez@linux.vnet.ibm.com>
4115
4116 * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
4117 value is not a dynamic class object.
4118
4119 2018-03-06 Tom Tromey <tom@tromey.com>
4120
4121 * rust-exp.y: Formatting fixes.
4122
4123 2018-03-06 Andrew Burgess <andrew.burgess@embecosm.com>
4124
4125 * riscv-tdep.c (riscv_register_name): Remove target description
4126 support.
4127 (riscv_gdbarch_init): Remove target description check.
4128
4129 2018-03-06 Andrew Burgess <andrew.burgess@embecosm.com>
4130
4131 * riscv-tdep.c: Remove 'Contributed by ...' lines from header
4132 comment.
4133 * riscv-tdep.h: Likewise.
4134
4135 2018-03-06 Andrew Burgess <andrew.burgess@embecosm.com>
4136
4137 * riscv-tdep.c (riscv_pseudo_register_read): Delete.
4138 (riscv_pseudo_register_write): Delete.
4139 (riscv_gdbarch_init): Remove all use of pseudo registers.
4140
4141 2018-03-06 Simon Marchi <simon.marchi@polymtl.ca>
4142
4143 * record-btrace.c (btrace_print_lines): Replace cleanup
4144 parameter with RAII equivalents.
4145 (btrace_insn_history): Replace cleanup with RAII equivalents.
4146 * ui-out.h (make_cleanup_ui_out_list_begin_end,
4147 make_cleanup_ui_out_tuple_begin_end): Remove.
4148 * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
4149 make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
4150 make_cleanup_ui_out_list_begin_end): Remove.
4151
4152 2018-03-06 Simon Marchi <simon.marchi@polymtl.ca>
4153
4154 * record-btrace.c (record_btrace_maybe_mark_async_event): Change
4155 parameter types to std::vector. Use bool.
4156 (record_btrace_wait): Replace VEC(tp_t) with
4157 std::vector<thread_info *>.
4158 * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
4159
4160 2018-03-06 Simon Marchi <simon.marchi@polymtl.ca>
4161
4162 * record-btrace.c (record_btrace_disable_callback): Remove.
4163 (struct scoped_btrace_disable): New.
4164 (record_btrace_open): Use scoped_btrace_disable.
4165
4166 2018-03-06 Andrew Burgess <andrew.burgess@embecosm.com>
4167
4168 * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
4169 reading values from registers.
4170
4171 2018-03-06 Andrew Burgess <andrew.burgess@embecosm.com>
4172
4173 * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
4174 where appropriate.
4175
4176 2018-03-06 Andrew Burgess <andrew.burgess@embecosm.com>
4177
4178 * riscv-tdep.c (riscv_print_arg_location): Add header comment,
4179 change parameter type. Use GDB's print functions, and use
4180 core_addr_to_string where appropriate.
4181 (riscv_push_dummy_call): Use core_addr_to_string where
4182 appropriate, update call to riscv_print_arg_location, and reindent
4183 a few lines.
4184 (riscv_return_value): Update call to riscv_print_arg_location.
4185
4186 2018-03-06 Andrew Burgess <andrew.burgess@embecosm.com>
4187 Tim Newsome <tim@sifive.com>
4188 Albert Ou <a0u@eecs.berkeley.edu>
4189 Darius Rad <darius@bluespec.com>
4190
4191 * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
4192 (HFILES_NO_SRCDIR): Add riscv-tdep.h.
4193 (ALLDEPFILES): Add riscv-tdep.c
4194 * configure.tgt: Add riscv support.
4195 * riscv-tdep.c: New file.
4196 * riscv-tdep.h: New file.
4197 * NEWS: Mention new target.
4198 * MAINTAINERS: Add entry for riscv.
4199
4200 2018-03-06 Andrew Burgess <andrew.burgess@embecosm.com>
4201
4202 * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
4203 fields within aggregates.
4204
4205 2018-03-04 Simon Marchi <simon.marchi@polymtl.ca>
4206
4207 * record-btrace.c (btrace_print_lines): Change type of flags to
4208 gdb_disassembly_flags.
4209
4210 2018-03-04 John Baldwin <jhb@FreeBSD.org>
4211
4212 * fbsd-nat.c: Include "inf-ptrace.h".
4213 (USE_SIGTRAP_SIGINFO): Conditionally define.
4214 [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
4215 (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
4216 [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
4217 function.
4218 [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
4219 Likewise.
4220 [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
4221 Likewise.
4222 (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
4223 "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
4224 "supports_stopped_by_hw_breakpoint" target methods.
4225
4226 2018-03-04 John Baldwin <jhb@FreeBSD.org>
4227
4228 * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
4229 * fbsd-nat.c (debug_fbsd_nat): New variable.
4230 (show_fbsd_nat_debug): New function.
4231 (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
4232 (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
4233
4234 2018-03-04 John Baldwin <jhb@FreeBSD.org>
4235
4236 * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
4237 * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
4238 prototype.
4239 * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
4240 (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
4241 method.
4242
4243 2018-03-02 Simon Marchi <simon.marchi@polymtl.ca>
4244
4245 * common/gdb_vecs.c (free_char_ptr_vec): Remove.
4246 * common/gdb_vecs.h (free_char_ptr_vec): Remove.
4247
4248 2018-03-02 Simon Marchi <simon.marchi@polymtl.ca>
4249
4250 * charset.c (struct charset_vector): New.
4251 (charsets): Change type to charset_vector.
4252 (find_charset_names): Adjust.
4253 (add_one): Adjust.
4254 (_initialize_charset): Adjust.
4255
4256 2018-03-02 Simon Marchi <simon.marchi@polymtl.ca>
4257
4258 * progspace.h (struct program_space) <deleted_solibs>: Change
4259 type to std::vector<std::string>.
4260 * progspace.c (clear_program_space_solib_cache): Adjust.
4261 * breakpoint.c (print_solib_event): Adjust.
4262 (check_status_catch_solib): Adjust.
4263 * solib.c (update_solib_list): Adjust.
4264 * ui-out.h (class ui_out) <field_string>: New overload.
4265 * ui-out.c (ui_out::field_string): New overload.
4266
4267 2018-03-02 Simon Marchi <simon.marchi@polymtl.ca>
4268
4269 * progspace.h (struct program_space): Add constructor and
4270 destructor, initialize fields.
4271 (add_program_space): Remove.
4272 * progspace.c (add_program_space): Rename to...
4273 (program_space::program_space): ... this.
4274 (release_program_space): Rename to...
4275 (program_space::~program_space): ... this.
4276 (delete_program_space): Use delete to delete program_space.
4277 (initialize_progspace): Use new to allocate program_space.
4278 * inferior.c (add_inferior_with_spaces): Likewise.
4279 (clone_inferior_command): Likewise.
4280 * infrun.c (follow_fork_inferior): Likewise.
4281 (handle_vfork_child_exec_or_exit): Likewise.
4282
4283 2018-03-02 Simon Marchi <simon.marchi@polymtl.ca>
4284
4285 * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
4286 (delim_string_to_char_ptr_vec): Return std::vector of
4287 gdb::unique_xmalloc_ptr.
4288 (dirnames_to_char_ptr_vec_append): Take std::vector of
4289 gdb::unique_xmalloc_ptr.
4290 (dirnames_to_char_ptr_vec): Return std::vector of
4291 gdb::unique_xmalloc_ptr.
4292 * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
4293 Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
4294 (delim_string_to_char_ptr_vec): Return an std::vector of
4295 gdb::unique_xmalloc_ptr, adjust the code.
4296 (dirnames_to_char_ptr_vec_append): Take an std::vector of
4297 gdb::unique_xmalloc_ptr, adjust the code.
4298 (dirnames_to_char_ptr_vec): Return an std::vector of
4299 gdb::unique_xmalloc_ptr, adjust the code.
4300 * auto-load.c (auto_load_safe_path_vec): Change type to
4301 std::vector of gdb::unique_xmalloc_ptr.
4302 (auto_load_expand_dir_vars): Return an std::vector of
4303 gdb::unique_xmalloc_ptr, adjust the code.
4304 (auto_load_safe_path_vec_update): Adjust.
4305 (filename_is_in_auto_load_safe_path_vec): Adjust.
4306 (auto_load_objfile_script_1): Adjust.
4307 * build-id.c (build_id_to_debug_bfd): Adjust.
4308 * linux-thread-db.c (thread_db_load_search): Adjust.
4309 * source.c (add_path): Adjust.
4310 (openp): Adjust.
4311 * symfile.c (find_separate_debug_file): Adjust.
4312 * utils.c (do_free_char_ptr_vec): Remove.
4313 (make_cleanup_free_char_ptr_vec): Remove.
4314
4315 2018-03-01 Sergio Durigan Junior <sergiodj@redhat.com>
4316
4317 PR gdb/22907
4318 * common/pathstuff.c: Conditionally include "<windows.h>".
4319
4320 2018-03-01 Georg Sauthoff <mail@georg.so>
4321
4322 PR gdb/22888
4323 * gcore.in: Quote variables and switch interpreter to bash.
4324
4325 2018-03-01 Tom Tromey <tom@tromey.com>
4326
4327 * dwarf2read.c (alloc_discriminant_info): Fix default_index
4328 assertion. Add assertion for discriminant_index.
4329 (quirk_rust_enum): Use correct base type name in univariant case.
4330
4331 2018-03-01 Simon Marchi <simon.marchi@ericsson.com>
4332
4333 * record.c (get_call_history_modifiers): Return a
4334 record_print_flags.
4335 (cmd_record_call_history): Adjust.
4336 * record-btrace.c (record_btrace_call_history): Adjust.
4337 (record_btrace_call_history_range): Adjust.
4338 (record_btrace_call_history_from): Adjust.
4339 * target-debug.h (target_debug_print_record_print_flags): New.
4340 * target-delegates.c: Re-generate.
4341 * target.c (target_call_history): Change flags type.
4342 (target_call_history_from): Likewise.
4343 (target_call_history_range): Likewise.
4344 * target.h (struct target_ops) <target_call_history>: Likewise.
4345 (target_call_history_from): Likewise.
4346 (target_call_history_range): Likewise.
4347
4348 2018-02-28 Sergio Durigan Junior <sergiodj@redhat.com>
4349 Simon Marchi <simon.marchi@polymtl.ca>
4350
4351 * common/common-utils.c: Include "sys/stat.h".
4352 (is_regular_file): Move here from "source.c"; change return
4353 type to "bool".
4354 * common/common-utils.h (is_regular_file): New prototype.
4355 * common/pathstuff.c (contains_dir_separator): New function.
4356 * common/pathstuff.h (contains_dir_separator): New prototype.
4357 * source.c: Don't include "sys/stat.h".
4358 (is_regular_file): Move to "common/common-utils.c".
4359
4360 2018-02-28 Sergio Durigan Junior <sergiodj@redhat.com>
4361
4362 * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
4363 (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
4364 * auto-load.c: Include "common/pathstuff.h".
4365 * common/common-def.h (current_directory): Move here.
4366 * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
4367 function.
4368 * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
4369 prototype.
4370 * common/pathstuff.c: New file.
4371 * common/pathstuff.h: New file.
4372 * compile/compile.c: Include "common/pathstuff.h".
4373 * defs.h (current_directory): Move to "common/common-defs.h".
4374 * dwarf2read.c: Include "common/pathstuff.h".
4375 * exec.c: Likewise.
4376 * guile/scm-safe-call.c: Likewise.
4377 * linux-thread-db.c: Likewise.
4378 * main.c: Likewise.
4379 * nto-tdep.c: Likewise.
4380 * objfiles.c: Likewise.
4381 * source.c: Likewise.
4382 * symtab.c: Likewise.
4383 * utils.c: Include "common/pathstuff.h".
4384 (gdb_realpath): Move to "common/pathstuff.c".
4385 (gdb_realpath_keepfile): Likewise.
4386 (gdb_abspath): Likewise.
4387 * utils.h (gdb_realpath): Move to "common/pathstuff.h".
4388 (gdb_realpath_keepfile): Likewise.
4389 (gdb_abspath): Likewise.
4390
4391 2018-02-28 John Baldwin <jhb@FreeBSD.org>
4392
4393 * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
4394 wildcard process pid for super_resume for kernels with a
4395 specific bug.
4396
4397 2018-02-27 Phil Muldoon <pmuldoon@redhat.com>
4398
4399 * compile/compile.c (get_args): Add additional comments
4400 explaining function.
4401
4402 2018-02-27 Simon Marchi <simon.marchi@polymtl.ca>
4403 Tom Tromey <tom@tromey.com>
4404
4405 * target.h (memory_write_request_s): Remove typedef. Don't define
4406 VEC.
4407 (target_write_memory_blocks): Change argument to std::vector.
4408 (struct memory_write_request): Add constructor.
4409 * target-memory.c (compare_block_starting_address): Return bool.
4410 Change argument types.
4411 (claim_memory): Change arguments to use std::vector.
4412 (split_regular_and_flash_blocks, blocks_to_erase)
4413 (compute_garbled_blocks): Likewise.
4414 (cleanup_request_data, cleanup_write_requests_vector): Remove.
4415 (target_write_memory_blocks): Change argument to std::vector.
4416 * symfile.c (struct load_section_data): Add constructor and
4417 destructor. Use std::vector for "requests".
4418 (struct load_progress_data): Add initializers.
4419 (load_section_callback): Update. Use "new".
4420 (clear_memory_write_data): Remove.
4421 (generic_load): Update.
4422
4423 2018-02-27 Alan Hayward <alan.hayward@arm.com>
4424
4425 * arch/aarch64.h: Use common/tdesc.h.
4426
4427 2018-02-26 Maciej W. Rozycki <macro@mips.com>
4428
4429 * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
4430 architecture with a 64-bit ABI.
4431
4432 2018-02-26 Maciej W. Rozycki <macro@mips.com>
4433
4434 * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
4435 ahead of target description loading.
4436
4437 2018-02-26 Tom Tromey <tom@tromey.com>
4438
4439 * stack.c (backtrace_command_1): Update.
4440 * python/python-internal.h (gdbpy_apply_frame_filter): Change type
4441 of "flags".
4442 * python/py-framefilter.c (py_print_frame)
4443 (gdbpy_apply_frame_filter): Change type of "flags".
4444 * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
4445 of "flags".
4446 (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
4447 (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
4448 * extension.h (enum frame_filter_flag): Rename from
4449 frame_filter_flags.
4450 (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
4451 (apply_ext_lang_frame_filter): Change type of "flags".
4452 * extension.c (apply_ext_lang_frame_filter): Change type of
4453 "flags".
4454 * extension-priv.h (struct extension_language_ops)
4455 <apply_frame_filter>: Change type of "flags".
4456
4457 2018-02-26 Tom Tromey <tom@tromey.com>
4458
4459 PR python/16497:
4460 * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag. Fix
4461 off-by-one in py_end computation.
4462 * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
4463 PRINT_MORE_FRAMES.
4464 * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
4465 constant.
4466
4467 2018-02-26 Tom Tromey <tom@tromey.com>
4468
4469 * dwarf2read.c (struct variant_field): New.
4470 (struct nextfield) <variant>: New field.
4471 (dwarf2_add_field): Handle DW_TAG_variant_part.
4472 (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
4473 discriminated union.
4474 (read_structure_type): Handle DW_TAG_variant_part.
4475 (handle_struct_member_die): New function, extracted from
4476 process_structure_scope. Handle DW_TAG_variant.
4477 (process_structure_scope): Handle discriminated unions. Call
4478 handle_struct_member_die.
4479
4480 2018-02-26 Tom Tromey <tom@tromey.com>
4481
4482 * rust-lang.h (rust_last_path_segment): Declare.
4483 * rust-lang.c (rust_last_path_segment): Now public. Change
4484 contract.
4485 (struct disr_info): Remove.
4486 (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
4487 (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
4488 (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
4489 (rust_enum_p, rust_enum_variant): New function.
4490 (rust_underscore_fields): Remove "offset" parameter.
4491 (rust_print_enum): New function.
4492 (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
4493 <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
4494 (rust_print_struct_def): Add "for_rust_enum" parameter. Handle
4495 enums.
4496 (rust_internal_print_type): New function, from rust_print_type.
4497 Remove enum code.
4498 (rust_print_type): Call rust_internal_print_type.
4499 (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
4500 Update enum handling.
4501 * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
4502 (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
4503 (rust_union_quirks): New functions.
4504 (process_full_comp_unit, process_full_type_unit): Call
4505 rust_union_quirks.
4506 (process_structure_scope): Update rust_unions if necessary.
4507
4508 2018-02-26 Tom Tromey <tom@tromey.com>
4509
4510 * value.h (value_union_variant): Declare.
4511 * valops.c (value_union_variant): New function.
4512 * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
4513 (struct discriminant_info): New.
4514 (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
4515 enumerator.
4516 (struct main_type) <flag_discriminated_union>: New field.
4517
4518 2018-02-26 Tom Tromey <tom@tromey.com>
4519
4520 * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
4521 unittests/unpack-selftests.c.
4522 * unittests/unpack-selftests.c: New file.
4523 * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
4524
4525 2018-02-26 Yao Qi <yao.qi@linaro.org>
4526
4527 * dwarf2read.c (struct partial_die_info) <read>: New method.
4528 (read_partial_die): Remove the declaration.
4529 (load_partial_dies): Update.
4530 (partial_die_info::partial_die_info):
4531 (read_partial_die): Change it to partial_die_info::read.
4532
4533 2018-02-26 Yao Qi <yao.qi@linaro.org>
4534
4535 * dwarf2read.c (struct partial_die_info) <fixup>: New method.
4536 (fixup_partial_die): Remove declaration.
4537 (scan_partial_symbols): Update.
4538 (partial_die_parent_scope): Likewise.
4539 (partial_die_full_name): Likewise.
4540 (fixup_partial_die): Change it to partial_die_info::fixup.
4541
4542 2018-02-26 Yao Qi <yao.qi@linaro.org>
4543
4544 * dwarf2read.c (read_partial_die): Update the declaration.
4545 (load_partial_dies): Caller update.
4546 (read_partial_die): Remove one argument abbrev_len.
4547
4548 2018-02-26 Yao Qi <yao.qi@linaro.org>
4549
4550 * dwarf2read.c (struct partial_die_info): Add ctor, delete
4551 assignment operator.
4552 (load_partial_dies): Use ctor and copy ctor.
4553 (read_partial_die): Update.
4554 (dwarf2_cu::find_partial_die): Use ctor.
4555
4556 2018-02-26 Yao Qi <yao.qi@linaro.org>
4557
4558 * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
4559 (find_partial_die_in_comp_unit): Change it to
4560 dwarf2_cu::find_partial_die.
4561 (find_partial_die): Update.
4562
4563 2018-02-26 Yao Qi <yao.qi@linaro.org>
4564
4565 * dwarf2read.c (read_partial_die): Remove the code checking abbrev
4566 is NULL.
4567
4568 2018-02-26 Yao Qi <yao.qi@linaro.org>
4569
4570 * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
4571
4572 2018-02-26 Alan Hayward <alan.hayward@arm.com>
4573
4574 * arch/amd64.h: Use common/tdesc.h.
4575 * arch/i386.c: Likewise.
4576 * arch/i386.h: Likewise.
4577 * arch/tic6x.c: Likewise.
4578 * arch/tdesc.h: Move file from here...
4579 * common/tdesc.h: ...to here.
4580 * features/aarch64-core.c: Regenerate.
4581 * features/aarch64-fpu.c: Regenerate.
4582 * features/i386/32bit-avx.c: Regenerate.
4583 * features/i386/32bit-avx512.c: Regenerate.
4584 * features/i386/32bit-core.c: Regenerate.
4585 * features/i386/32bit-linux.c: Regenerate.
4586 * features/i386/32bit-mpx.c: Regenerate.
4587 * features/i386/32bit-pkeys.c: Regenerate.
4588 * features/i386/32bit-sse.c: Regenerate.
4589 * features/i386/64bit-avx.c: Regenerate.
4590 * features/i386/64bit-avx512.c: Regenerate.
4591 * features/i386/64bit-core.c: Regenerate.
4592 * features/i386/64bit-linux.c: Regenerate.
4593 * features/i386/64bit-mpx.c: Regenerate.
4594 * features/i386/64bit-pkeys.c: Regenerate.
4595 * features/i386/64bit-segments.c: Regenerate.
4596 * features/i386/64bit-sse.c: Regenerate.
4597 * features/i386/x32-core.c: Regenerate.
4598 * features/tic6x-c6xp.c: Regenerate.
4599 * features/tic6x-core.c: Regenerate.
4600 * features/tic6x-gp.c: Regenerate.
4601 * target-descriptions.c: Use common/tdesc.h.
4602 * target-descriptions.h: Likewise.
4603
4604 2018-02-24 Tom Tromey <tom@tromey.com>
4605
4606 * linux-thread-db.c (try_thread_db_load_from_pdir_1)
4607 (try_thread_db_load_from_dir, thread_db_load_search): Use
4608 std::string.
4609 (info_auto_load_libthread_db_compare): Return bool. Change
4610 argument types.
4611 (info_auto_load_libthread_db): Use std::vector, std::string.
4612 Remove cleanups.
4613
4614 2018-02-24 Tom Tromey <tom@tromey.com>
4615
4616 * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
4617 std::string.
4618 * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
4619 std::string*.
4620 * gdbarch.c: Rebuild.
4621 * gdbarch.h: Rebuild.
4622 * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
4623 * arch-utils.h (default_fast_tracepoint_valid_at): Update.
4624 * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
4625 std::string*.
4626
4627 2018-02-23 Simon Marchi <simon.marchi@polymtl.ca>
4628
4629 * gdbtypes.h (sect_offset): Change type to uint64_t.
4630 (sect_offset_str): New function.
4631 * dwarf2read.c (create_addrmap_from_aranges): Use
4632 sect_offset_str.
4633 (error_check_comp_unit_head): Likewise.
4634 (create_debug_type_hash_table): Likewise.
4635 (read_cutu_die_from_dwo): Likewise.
4636 (init_cutu_and_read_dies): Likewise.
4637 (init_cutu_and_read_dies_no_follow): Likewise.
4638 (process_psymtab_comp_unit_reader): Likewise.
4639 (partial_die_parent_scope): Likewise.
4640 (peek_die_abbrev): Likewise.
4641 (process_queue): Likewise.
4642 (dwarf2_physname): Likewise.
4643 (read_namespace_alias): Likewise.
4644 (read_import_statement): Likewise.
4645 (create_dwo_cu_reader): Likewise.
4646 (create_cus_hash_table): Likewise.
4647 (lookup_dwo_cutu): Likewise.
4648 (inherit_abstract_dies): Likewise.
4649 (read_func_scope): Likewise.
4650 (read_call_site_scope): Likewise.
4651 (dwarf2_add_member_fn): Likewise.
4652 (read_common_block): Likewise.
4653 (read_module_type): Likewise.
4654 (read_typedef): Likewise.
4655 (read_subrange_type): Likewise.
4656 (load_partial_dies): Likewise.
4657 (read_partial_die): Likewise.
4658 (find_partial_die): Likewise.
4659 (read_str_index): Likewise.
4660 (dwarf2_string_attr): Likewise.
4661 (build_error_marker_type): Likewise.
4662 (lookup_die_type): Likewise.
4663 (dump_die_shallow): Likewise.
4664 (follow_die_ref): Likewise.
4665 (dwarf2_fetch_die_loc_sect_off): Likewise.
4666 (dwarf2_fetch_constant_bytes): Likewise.
4667 (follow_die_sig): Likewise.
4668 (get_signatured_type): Likewise.
4669 (get_DW_AT_signature_type): Likewise.
4670 (dwarf2_find_containing_comp_unit): Likewise.
4671 (set_die_type): Likewise.
4672
4673 2018-02-21 John Baldwin <jhb@FreeBSD.org>
4674
4675 * arch/aarch64.c: Include "common-defs.h".
4676 * arch/amd64.c: Likewise.
4677 * arch/i386.c: Likewise.
4678
4679 2018-02-21 Tom Tromey <tom@tromey.com>
4680
4681 * value.h: (extract_field_op): Update.
4682 * eval.c (extract_field_op): Return a const char *.
4683 * expression.h (parse_expression_for_completion): Update.
4684 * completer.c (complete_expression): Update.
4685 (add_struct_fields): Make fieldname const.
4686 * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
4687 (mark_completion_tag, parse_exp_in_context_1): Update.
4688 (parse_expression_for_completion): Change "name" to
4689 unique_xmalloc_ptr*.
4690
4691 2018-02-21 Tom Tromey <tom@tromey.com>
4692
4693 * infcall.c (call_function_by_hand_dummy): Use std::vector.
4694
4695 2018-02-21 Yao Qi <yao.qi@linaro.org>
4696
4697 * avr-tdep.c (avr_read_pc): Change parameter type to
4698 readable_regcache.
4699 * gdbarch.sh (read_pc): Likewise.
4700 * gdbarch.c: Re-generated.
4701 * gdbarch.h: Re-generated.
4702 * hppa-tdep.c (hppa_read_pc): Change parameter type to
4703 readable_regcache.
4704 * ia64-tdep.c (ia64_read_pc): Likewise.
4705 * mips-tdep.c (mips_read_pc): Likewise.
4706 * spu-tdep.c (spu_read_pc): Likewise.
4707
4708 2018-02-21 Yao Qi <yao.qi@linaro.org>
4709
4710 * Makefile.in (COMMON_SFILES): Add regcache-dump.c
4711 * regcache-dump.c: New file.
4712 * regcache.c: Move register_dump to regcache-dump.c.
4713 (maintenance_print_registers): Likewise.
4714 (maintenance_print_raw_registers): Likewise.
4715 (maintenance_print_cooked_registers): Likewise.
4716 (maintenance_print_register_groups): Likewise.
4717 (maintenance_print_remote_registers): Likewise.
4718 (_initialize_regcache): Likewise.
4719 * regcache.h (register_dump): Moved from regcache.c.
4720
4721 2018-02-21 Yao Qi <yao.qi@linaro.org>
4722
4723 * regcache.c (regcache::regcache): Update.
4724 (regcache::invalidate): Move it to detached_regcache::invalidate.
4725 (get_thread_arch_aspace_regcache): Update.
4726 (regcache::raw_update): Update.
4727 (regcache::cooked_read): Remove some code.
4728 (regcache::cooked_read_value): Likewise.
4729 (regcache::raw_write): Remove assert on m_readonly_p.
4730 (regcache::raw_supply_integer): Move it to
4731 detached_regcache::raw_supply_integer.
4732 (regcache::raw_supply_zeroed): Likewise.
4733 * regcache.h (detached_regcache) <raw_supply_integer>: New
4734 declaration.
4735 <raw_supply_zeroed, invalidate>: Likewise.
4736 (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
4737 <invalidate>: Likewise.
4738 <m_readonly_p>: Removed.
4739
4740 2018-02-21 Yao Qi <yao.qi@linaro.org>
4741
4742 * infcmd.c (get_return_value): Let stop_regs point to
4743 get_current_regcache.
4744 * regcache.c (regcache::regcache): Remove.
4745 (register_dump_reg_buffer): New class.
4746 (regcache_print): Adjust.
4747 * regcache.h (regcache): Remove constructors.
4748
4749 2018-02-21 Yao Qi <yao.qi@linaro.org>
4750
4751 * regcache.c (class register_dump): New class.
4752 (register_dump_regcache, register_dump_none): New class.
4753 (register_dump_remote, register_dump_groups): New class.
4754 (regcache_print): Update.
4755 * regcache.h (regcache_dump_what): Move it to regcache.c.
4756 (regcache) <dump>: Remove.
4757
4758 2018-02-21 Yao Qi <yao.qi@linaro.org>
4759
4760 * jit.c (struct jit_unwind_private) <regcache>: Change its type to
4761 reg_buffer_rw *.
4762 (jit_unwind_reg_set_impl): Call raw_supply.
4763 (jit_frame_sniffer): Use reg_buffer_rw.
4764 * record-full.c (record_full_core_regbuf): Change its type.
4765 (record_full_core_open_1): Use reg_buffer_rw.
4766 (record_full_close): Likewise.
4767 (record_full_core_fetch_registers): Use regcache->raw_supply.
4768 (record_full_core_store_registers): Likewise.
4769 * regcache.c (regcache::get_register_status): Move it to
4770 reg_buffer.
4771 (regcache_raw_set_cached_value): Remove.
4772 (regcache::raw_set_cached_value): Remove.
4773 (regcache::raw_write): Call raw_supply.
4774 (regcache::raw_supply): Move it to reg_buffer_rw.
4775 * regcache.h (regcache_raw_set_cached_value): Remove.
4776 (reg_buffer_rw): New class.
4777
4778 2018-02-21 Yao Qi <yao.qi@linaro.org>
4779
4780 * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
4781 readonly_detached_regcache.
4782 (dummy_frame_prev_register): Use regcache->cooked_read.
4783 * frame.c (frame_save_as_regcache): Change return type.
4784 (frame_pop): Update.
4785 * frame.h (frame_save_as_regcache): Update declaration.
4786 * inferior.h (get_infcall_suspend_state_regcache): Update
4787 declaration.
4788 * infrun.c (infcall_suspend_state) <registers>: use
4789 readonly_detached_regcache.
4790 (save_infcall_suspend_state): Don't use regcache_dup.
4791 (get_infcall_suspend_state_regcache): Change return type.
4792 * linux-fork.c (struct fork_info) <savedregs>: Change to
4793 readonly_detached_regcache.
4794 <pc>: New field.
4795 (fork_save_infrun_state): Don't use regcache_dup.
4796 (info_checkpoints_command): Adjust.
4797 * mi/mi-main.c (register_changed_p): Update declaration.
4798 (mi_cmd_data_list_changed_registers): Use
4799 readonly_detached_regcache.
4800 (register_changed_p): Change parameter type to
4801 readonly_detached_regcache.
4802 * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
4803 readonly_detached_regcache.
4804 (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
4805 * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
4806 New.
4807 (regcache::save): Move it to reg_buffer.
4808 (regcache::restore): Change parameter type.
4809 (regcache_dup): Remove.
4810 * regcache.h (reg_buffer) <save>: New method.
4811 (readonly_detached_regcache): New class.
4812 * spu-tdep.c (spu2ppu_cache) <regcache>: Use
4813 readonly_detached_regcache.
4814 (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
4815
4816 2018-02-21 Yao Qi <yao.qi@linaro.org>
4817
4818 * frame.c (frame_save_as_regcache): Use regcache method save.
4819 (frame_pop): Use regcache method restore.
4820 * infrun.c (restore_infcall_suspend_state): Likewise.
4821 * linux-fork.c (fork_load_infrun_state): Likewise.
4822 * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
4823 save.
4824 * regcache.c (regcache_save): Remove.
4825 (regcache::restore): More asserts.
4826 (regcache_cpy): Remove.
4827 * regcache.h (regcache_save): Remove the declaration.
4828 (regcache::restore): Move from private to public.
4829 Remove the friend declaration of regcache_cpy.
4830 (regcache_cpy): Remove declaration.
4831
4832 2018-02-21 Yao Qi <yao.qi@linaro.org>
4833
4834 * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
4835 parameter type to 'readable_regcache *'.
4836 * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
4837 * arm-tdep.c (arm_neon_quad_read): Likewise.
4838 (arm_pseudo_read): Likewise.
4839 * avr-tdep.c (avr_pseudo_register_read): Likewise.
4840 * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
4841 * frv-tdep.c (frv_pseudo_register_read): Likewise.
4842 * gdbarch.c: Re-generated.
4843 * gdbarch.h: Re-generated.
4844 * gdbarch.sh (pseudo_register_read): Change parameter type to
4845 'readable_regcache *'.
4846 (pseudo_register_read_value): Likewise.
4847 * h8300-tdep.c (pseudo_from_raw_register): Likewise.
4848 (h8300_pseudo_register_read): Likewise.
4849 * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
4850 * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
4851 (i386_pseudo_register_read_into_value): Likewise.
4852 (i386_pseudo_register_read_value): Likewise.
4853 * i386-tdep.h (i386_pseudo_register_read_into_value): Update
4854 declaration.
4855 * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
4856 * m32c-tdep.c (m32c_raw_read): Likewise.
4857 (m32c_read_flg): Likewise.
4858 (m32c_banked_register): Likewise.
4859 (m32c_banked_read): Likewise.
4860 (m32c_sb_read): Likewise.
4861 (m32c_part_read): Likewise.
4862 (m32c_cat_read): Likewise.
4863 (m32c_r3r2r1r0_read): Likewise.
4864 (m32c_pseudo_register_read): Likewise.
4865 * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
4866 * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
4867 (mep_pseudo_cr64_read): Likewise.
4868 (mep_pseudo_register_read): Likewise.
4869 * mips-tdep.c (mips_pseudo_register_read): Likewise.
4870 * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
4871 * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
4872 * regcache.c (regcache::raw_read): Move it to readable_regcache.
4873 (regcache::cooked_read): Likewise.
4874 (regcache::cooked_read_value): Likewise.
4875 (regcache_cooked_read_signed):
4876 (regcache::cooked_read): Likewise.
4877 * regcache.h (readable_regcache): New class.
4878 (regcache): Inherit readable_regcache. Move some methods to
4879 readable_regcache.
4880 * rl78-tdep.c (rl78_pseudo_register_read): Change
4881 parameter type to 'readable_regcache *'.
4882 * rs6000-tdep.c (do_regcache_raw_read): Remove.
4883 (e500_pseudo_register_read): Change parameter type to
4884 'readable_regcache *'.
4885 (dfp_pseudo_register_read): Likewise.
4886 (vsx_pseudo_register_read): Likewise.
4887 (efpr_pseudo_register_read): Likewise.
4888 * s390-tdep.c (s390_pseudo_register_read): Likewise.
4889 * sh-tdep.c (sh_pseudo_register_read): Likewise.
4890 * sh64-tdep.c (pseudo_register_read_portions): Likewise.
4891 (sh64_pseudo_register_read): Likewise.
4892 * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
4893 * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
4894 * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
4895 (spu_pseudo_register_read): Likewise.
4896 * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
4897 (xtensa_pseudo_register_read): Likewise.
4898
4899 2018-02-21 Yao Qi <yao.qi@linaro.org>
4900
4901 * regcache.c (regcache::regcache): Call reg_buffer ctor.
4902 (regcache::arch): Move it to reg_buffer::arch.
4903 (regcache::register_buffer): Likewise.
4904 (regcache::assert_regnum): Likewise.
4905 (regcache::num_raw_registers): Likewise.
4906 * regcache.h (reg_buffer): New class.
4907 (regcache): Inherit reg_buffer.
4908
4909 2018-02-20 Simon Marchi <simon.marchi@ericsson.com>
4910
4911 * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
4912 gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
4913
4914 2018-02-20 Markus Metzger <markus.t.metzger@intel.com>
4915
4916 * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
4917
4918 2018-02-19 Alan Hayward <alan.hayward@arm.com>
4919
4920 * Makefile.in: (COMMON_SFILES): Add common/*.c files.
4921 (SFILES): Remove common/*.c files.
4922 (COMMON_OBS): Remove some *.o files built from common/*.c files.
4923 * common/common.host: Add common reference.
4924 * configure.ac: Likewise.
4925 * configure: Regenerate.
4926
4927 2018-02-16 Yao Qi <yao.qi@linaro.org>
4928
4929 * block.c (block_namespace_info): Inherit allocate_on_obstack.
4930 (block_initialize_namespace): Use new.
4931 * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
4932 (dwarf2_free_objfile): Use delete.
4933 * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
4934 (copy_type_recursive): Use new.
4935 * gdb_obstack.h (allocate_on_obstack): New.
4936
4937 2018-02-15 Yao Qi <yao.qi@linaro.org>
4938
4939 PR gdb/22849
4940 * inferior.c (exit_inferior_1): Reset inf->control.
4941
4942 2018-02-15 Joel Brobecker <brobecker@adacore.com>
4943
4944 * ada-lang.c (ada_to_fixed_value_create): Delete advance
4945 declaration.
4946
4947 2018-02-14 Pedro Alves <palves@redhat.com>
4948
4949 * frame-unwind.c (frame_unwind_try_unwinder): Always call
4950 frame_cleanup_after_sniffer on exception.
4951
4952 2018-02-14 Tom Tromey <tom@tromey.com>
4953
4954 * solist.h (struct target_so_ops) <bfd_open>: Make pathname
4955 const.
4956 (solib_bfd_open): Make pathname const.
4957 * solib.c (solib_bfd_open): Make pathname const.
4958 * solib-spu.c (spu_bfd_fopen): Make name const.
4959 (spu_bfd_open): Make pathname const.
4960 * solib-darwin.c (darwin_bfd_open): Make pathname const.
4961 * solib-aix.c (solib_aix_bfd_open): Make pathname const.
4962
4963 2018-02-14 Tom Tromey <tom@tromey.com>
4964
4965 * symfile.c (symfile_bfd_open): Update.
4966 * source.h (openp, source_full_path_of, find_and_open_source):
4967 Change argument type to unique_xmalloc_ptr.
4968 * source.c (openp): Take a unique_xmalloc_ptr.
4969 (source_full_path_of, find_and_open_source): Likewise.
4970 (open_source_file, symtab_to_fullname): Update.
4971 * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
4972 unique_xmalloc_ptr.
4973 * solib.c (solib_find_1): Use unique_xmalloc_ptr.
4974 (exec_file_find): Update.
4975 * psymtab.c (psymtab_to_fullname): Update.
4976 * nto-tdep.h (nto_find_and_open_solib): Update.
4977 * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
4978 unique_xmalloc_ptr.
4979 * exec.c (exec_file_attach): Update.
4980 * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
4981 * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
4982
4983 2018-02-14 Tom Tromey <tom@tromey.com>
4984
4985 * solib.c: Include source.h.
4986 * nto-tdep.c: Include source.h.
4987 * mi/mi-cmd-env.c: Include source.h.
4988 * infcmd.c: Include source.h.
4989 * exec.c: Include source.h.
4990 * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
4991 (add_path, directory_switch, source_path, init_source_path): Move
4992 declarations...
4993 * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
4994 (add_path, directory_switch, source_path, init_source_path):
4995 ...here.
4996
4997 2018-02-14 Tom Tromey <tom@tromey.com>
4998
4999 * solist.h (exec_file_find, solib_find): Return
5000 unique_xmalloc_ptr.
5001 (solib_bfd_fopen): Take a const char *.
5002 * solib.c (solib_find_1): Return unique_xmalloc_ptr.
5003 (exec_file_find, solib_find): Likewise.
5004 (solib_bfd_fopen): Do not take ownership of "pathname".
5005 (solib_bfd_open): Use unique_xmalloc_ptr.
5006 * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
5007 * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
5008 * infrun.c (follow_exec): Use unique_xmalloc_ptr.
5009 * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
5010
5011 2018-02-14 Joel Brobecker <brobecker@adacore.com>
5012
5013 * ada-lang.c (name_match_type_from_name): Remove reference to
5014 ada_name_for_lookup in function's documentation.
5015 * ada-lang.h (ada_name_for_lookup): Delete declaration.
5016
5017 2018-02-13 Simon Marchi <simon.marchi@polymtl.ca>
5018
5019 * defs.h (enum openp_flags): New enum.
5020 (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
5021 Move to enum openp_flags.
5022 (openp_flags): New enum flags.
5023 (openp): Change parameter type to openp_flags.
5024 * source.c (openp): Change parameter type to openp_flags.
5025 * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
5026 * dwarf2read.c (try_open_dwop_file): Use openp_flags.
5027
5028 2018-02-13 Simon Marchi <simon.marchi@polymtl.ca>
5029
5030 * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
5031 per-command.
5032
5033 2018-02-12 Andrew Burgess <andrew.burgess@embecosm.com>
5034
5035 * dwarf2read.c (dwarf2_release_queue): Delete function, move body
5036 into...
5037 (class dwarf2_queue_guard): ...the destructor of this new class.
5038 (dw2_do_instantiate_symtab): Create instance of the new class
5039 dwarf2_queue_guard, remove cleanup.
5040
5041 2018-02-09 Tom Tromey <tom@tromey.com>
5042
5043 * source.c (find_source_lines): Don't reference past the end of
5044 the vector.
5045
5046 2018-02-09 Markus Metzger <markus.t.metzger@intel.com>
5047
5048 * remote.c (remote_btrace_maybe_reopen): Change error message.
5049 * btrace.c (btrace_enable): Likewise.
5050 (parse_xml_btrace): Likewise.
5051 (parse_xml_btrace_conf): Likewise.
5052
5053 2018-02-09 Markus Metzger <markus.t.metzger@intel.com>
5054
5055 * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
5056 (linux_enable_pt, linux_enable_bts): Call
5057 diagnose_perf_event_open_fail.
5058
5059 2018-02-09 Markus Metzger <markus.t.metzger@intel.com>
5060
5061 * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
5062 Remove parameter and change return type. Update callers. Move it.
5063 (linux_enable_bts, linux_enable_pt): Improve error message.
5064 (linux_enable_pt): Remove zero buffer size check.
5065 (linux_enable_btrace): Improve error messages. Remove NULL return
5066 check.
5067
5068 2018-02-09 Markus Metzger <markus.t.metzger@intel.com>
5069
5070 * btrace.c (btrace_enable): Remove target_supports_btrace call.
5071 * nat/linux-btrace.c (perf_event_pt_event_type): Move.
5072 (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
5073 (linux_supports_pt, linux_supports_btrace): Remove.
5074 (linux_enable_bts): Call cpu_supports_bts.
5075 * nat/linux-btrace.h (linux_supports_btrace): Remove.
5076 * remote.c (remote_supports_btrace): Remove.
5077 (init_remote_ops): Remove remote_supports_btrace.
5078 * target-delegates.c: Regenerated.
5079 * target.c (target_supports_btrace): Remove.
5080 * target.h (target_ops) <to_supports_btrace>: Remove
5081 (target_supports_btrace): Remove.
5082 * x86-linux-nat.c (x86_linux_create_target): Remove
5083 linux_supports_btrace.
5084
5085 2018-02-09 Markus Metzger <markus.t.metzger@intel.com>
5086
5087 * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
5088 btrace failed.
5089 * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
5090 exception and use message in own exception.
5091
5092 2018-02-09 Markus Metzger <markus.t.metzger@intel.com>
5093
5094 * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
5095 (perf_event_pt_event_type): Use gdb_file_up.
5096 (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
5097 scoped_fd, and scoped_mmap.
5098
5099 2018-02-09 Markus Metzger <markus.t.metzger@intel.com>
5100
5101 * common/scoped_mmap.h: New.
5102 * unittests/scoped_mmap-selftest.c: New.
5103 * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5104 unittests/scoped_mmap-selftest.c.
5105
5106 2018-02-09 Markus Metzger <markus.t.metzger@intel.com>
5107
5108 * common/scoped_fd.h: New.
5109 * unittests/scoped_fd-selftest.c: New.
5110 * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5111 unittests/scoped_fd-selftest.c.
5112
5113 2018-02-09 Tom Tromey <tom@tromey.com>
5114
5115 * auto-load.c (auto_load_section_scripts): Use
5116 gdb::unique_xmalloc_ptr.
5117
5118 2018-02-09 Tom Tromey <tom@tromey.com>
5119
5120 * auto-load.c (execute_script_contents): Use std::string.
5121
5122 2018-02-09 Joel Brobecker <brobecker@adacore.com>
5123
5124 * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
5125 Python function, rather than a new command.
5126
5127 2018-02-08 Tom Tromey <tom@tromey.com>
5128
5129 * solib.c (solib_find_1): Use std::string.
5130 (solib_bfd_fopen): Use unique_xmalloc_ptr.
5131
5132 2018-02-08 Tom Tromey <tom@tromey.com>
5133
5134 * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
5135
5136 2018-02-08 Tom Tromey <tom@tromey.com>
5137
5138 * source.c (find_source_lines): Use gdb::def_vector.
5139
5140 2018-02-08 Tom Tromey <tom@tromey.com>
5141
5142 * macrocmd.c (struct temporary_macro_definition): New.
5143 (macro_define_command): Use temporary_macro_definition. Remove
5144 cleanups.
5145 (free_macro_definition_ptr): Remove.
5146
5147 2018-02-08 Tom Tromey <tom@tromey.com>
5148
5149 * macroexp.c (maybe_expand): Use std::string.
5150
5151 2018-02-08 Tom Tromey <tom@tromey.com>
5152
5153 * macroexp.c (struct macro_buffer): Add initializers for some
5154 members.
5155 (init_buffer, init_shared_buffer, free_buffer)
5156 (free_buffer_return_text): Remove.
5157 (macro_buffer): New constructors.
5158 (~macro_buffer): New destructor.
5159 (macro_buffer::set_shared): New method.
5160 (macro_buffer::resize_buffer, macro_buffer::appendc)
5161 (macro_buffer::appendmem): Now methods, not free functions.
5162 (set_token, append_tokens_without_splicing, stringify)
5163 (macro_stringify): Update.
5164 (gather_arguments): Change return type. Remove argc_p argument,
5165 add args_ptr argument. Use std::vector.
5166 (substitute_args): Remove argc argument. Accept std::vector.
5167 (expand): Update. Use std::vector.
5168 (scan, macro_expand, macro_expand_next): Update.
5169
5170 2018-02-08 Tom Tromey <tom@tromey.com>
5171
5172 * symtab.c (default_collect_symbol_completion_matches_break_on):
5173 Use unique_xmalloc_ptr.
5174 * macroscope.h: (sal_macro_scope, user_macro_scope)
5175 (default_macro_scope): Return unique_xmalloc_ptr.
5176 * macroscope.c (sal_macro_scope, user_macro_scope)
5177 (default_macro_scope): Return unique_xmalloc_ptr.
5178 * macroexp.h (macro_expand, macro_expand_once): Return
5179 unique_xmalloc_ptr.
5180 * macroexp.c (macro_expand, macro_expand_once): Return
5181 unique_xmalloc_ptr.
5182 * macrocmd.c (macro_expand_command, macro_expand_once_command)
5183 (info_macro_command, info_macros_command): Use
5184 unique_xmalloc_ptr.
5185 * compile/compile-c-support.c (write_macro_definitions): Use
5186 unique_xmalloc_ptr.
5187 * c-exp.y (c_parse): Use unique_xmalloc_ptr.
5188
5189 2018-02-07 Simon Marchi <simon.marchi@ericsson.com>
5190
5191 * value.c (value_static_field): Assign field type instead of
5192 containing type when returning an optimized out value.
5193
5194 2018-02-06 Yao Qi <yao.qi@linaro.org>
5195
5196 * ft32-tdep.c (ft32_read_pc): Remove.
5197 (ft32_write_pc): Remove.
5198 (ft32_gdbarch_init): Update.
5199 * m32r-tdep.c (m32r_read_pc): Remove.
5200 (m32r_gdbarch_init): Update.
5201 * mep-tdep.c (mep_read_pc): Remove.
5202 (mep_gdbarch_init): Update.
5203 * microblaze-tdep.c (microblaze_write_pc): Remove.
5204 (microblaze_gdbarch_init): Update.
5205 * mn10300-tdep.c (mn10300_read_pc): Remove.
5206 (mn10300_write_pc): Remove.
5207 (mn10300_gdbarch_init): Update.
5208 * moxie-tdep.c (moxie_read_pc): Remove.
5209 (moxie_write_pc): Remove.
5210 (moxie_gdbarch_init): Update.
5211
5212 2018-02-06 Yao Qi <yao.qi@linaro.org>
5213
5214 * expprint.c (print_subexp_standard): Handle
5215 OP_F77_UNDETERMINED_ARGLIST.
5216 (dump_subexp_body_standard): Likewise.
5217
5218 2018-02-05 Alan Hayward <alan.hayward@arm.com>
5219
5220 * target-descriptions.c (tdesc_element_visitor) Add empty
5221 implementations.
5222 (tdesc_type): Move make_gdb_type from here.
5223 (tdesc_type_builtin): Likewise.
5224 (tdesc_type_vector): Likewise.
5225 (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
5226 (make_gdb_type_struct): Move from tdesc_type_with_fields.
5227 (make_gdb_type_union): Likewise.
5228 (make_gdb_type_flags): Likewise.
5229 (make_gdb_type_enum): Likewise.
5230 (make_gdb_type): New function.
5231 (tdesc_register_type): Use static make_gdb_type.
5232
5233 2018-02-05 Ruslan Kabatsayev <b7.10110111@gmail.com>
5234
5235 * infcmd.c (default_print_one_register_info): Align natural-format
5236 column values consistently one under another.
5237 (pad_to_column): New function.
5238
5239 2018-02-05 Joel Brobecker <brobecker@adacore.com>
5240
5241 * dwarf2read.c (dwarf2_physname): Move commment.
5242
5243 2018-02-01 Leszek Swirski <leszeks@google.com>
5244
5245 * varobj.c (varobj_formatted_print_options): Allow recursive
5246 pretty printing if pretty printing is enabled.
5247
5248 2018-02-01 Leszek Swirski <leszeks@google.com>
5249
5250 * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
5251 names after a structop as a filename.
5252
5253 2018-02-01 Yao Qi <yao.qi@linaro.org>
5254
5255 * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
5256 (arm_record_coproc_data_proc): Likewise.
5257
5258 2018-02-01 Yao Qi <yao.qi@linaro.org>
5259
5260 * arm-tdep.c (arm_record_extension_space): Change ret to signed.
5261
5262 2018-01-31 Nikola Prica <nikola.prica@rt-rk.com>
5263
5264 * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
5265 assign shifted lr_reg to fdata->lr_register when lr_reg is set.
5266
5267 2018-01-31 Pedro Alves <palves@redhat.com>
5268
5269 * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
5270 * inflow.c (child_terminal_save_inferior): Wrap reference to
5271 tcgetpgrp in HAVE_TERMIOS_H.
5272 (child_interrupt, child_pass_ctrlc): Wrap references to signal in
5273 _WIN32.
5274 * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
5275 always iterate over all inferiors.
5276 (gdbsim_cntrl_c): Adjust.
5277 * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
5278
5279 2018-01-31 Joel Brobecker <brobecker@adacore.com>
5280
5281 * gdbtypes.c (lookup_array_range_type): Make sure the array's
5282 index type is objfile-owned if the element type is as well.
5283
5284 2018-01-31 Joel Brobecker <brobecker@adacore.com>
5285
5286 GDB 8.1 released.
5287
5288 2018-01-30 Philipp Rudo <prudo@linux.vnet.ibm.com>
5289
5290 * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
5291 "features/s390x-linux64.c".
5292 (_initialize_s390_linux_tdep): Remove initialization of tdescs
5293 s390_linux32 and s390x_linux64.
5294 (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
5295 default tdesc.
5296 * s390-tdep.c: Include "features/s390-linux32.c" and
5297 "features/s390x-linux64.c".
5298 (s390_tdesc_valid): Add check for tdesc_has_registers.
5299 (s390_gdbarch_init): Make sure there is always a valid tdesc.
5300 (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
5301 tdesc_s390x_linux64.
5302 * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
5303 tdesc_s390x_linux64 to...
5304 * s390-tdep.h: ...here.
5305
5306 2018-01-30 Pedro Alves <palves@redhat.com>
5307
5308 PR gdb/13211
5309 * config.in, configure: Regenerate.
5310 * configure.ac: Check for getpgid.
5311 * go32-nat.c (go32_pass_ctrlc): New.
5312 (go32_target): Install it.
5313 * inf-child.c (inf_child_target): Install
5314 child_terminal_save_inferior, child_pass_ctrlc and
5315 child_interrupt.
5316 * inf-ptrace.c (inf_ptrace_interrupt): Delete.
5317 (inf_ptrace_target): No longer install it.
5318 * infcmd.c (interrupt_target_1): Adjust.
5319 * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
5320 (child_interrupt): Declare.
5321 (inferior::terminal_state): New.
5322 * inflow.c (struct terminal_info): Update comments.
5323 (inferior_process_group): Delete.
5324 (terminal_is_ours): Delete.
5325 (gdb_tty_state): New.
5326 (child_terminal_init): Adjust.
5327 (is_gdb_terminal, sharing_input_terminal_1)
5328 (sharing_input_terminal): New functions.
5329 (child_terminal_inferior): Adjust. Use sharing_input_terminal.
5330 Set the process's actual process group in the foreground if
5331 possible. Handle is_ours_for_output/is_ours distinction. Don't
5332 mark terminal as the inferior's if not sharing GDB's terminal.
5333 Don't check attach_flag.
5334 (child_terminal_ours_for_output, child_terminal_ours): Adjust to
5335 pass down a target_terminal_state.
5336 (child_terminal_save_inferior): New, factored out from ...
5337 (child_terminal_ours_1): ... this. Handle
5338 target_terminal_state::is_ours_for_output.
5339 (child_interrupt, child_pass_ctrlc): New.
5340 (inflow_inferior_exit): Clear the inferior's terminal_state.
5341 (copy_terminal_info): Copy the inferior's terminal state.
5342 (_initialize_inflow): Remove reference to terminal_is_ours.
5343 * inflow.h (inferior_process_group): Delete.
5344 * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
5345 * procfs.c (procfs_target): Don't install procfs_interrupt.
5346 (procfs_interrupt): Delete.
5347 * remote.c (remote_serial_quit_handler): Adjust.
5348 (remote_interrupt): Remove ptid parameter. Adjust.
5349 * target-delegates.c: Regenerate.
5350 * target.c: Include "terminal.h".
5351 (target_terminal::terminal_state): Rename to ...
5352 (target_terminal::m_terminal_state): ... this.
5353 (target_terminal::init): Adjust.
5354 (target_terminal::inferior): Adjust to per-inferior
5355 terminal_state.
5356 (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
5357 (target_terminal::ours, target_terminal::ours_for_output): Use
5358 target_terminal_is_ours_kind.
5359 (target_interrupt): Remove ptid parameter. Adjust.
5360 (default_target_pass_ctrlc): Adjust.
5361 * target.h (target_ops::to_terminal_save_inferior): New field.
5362 (target_ops::to_interrupt): Remove ptid_t parameter.
5363 (target_interrupt): Remove ptid_t parameter. Update comment.
5364 (target_pass_ctrlc): Update comment.
5365 * target/target.h (target_terminal_state): New scoped enum,
5366 factored out of ...
5367 (target_terminal::terminal_state): ... here.
5368 (target_terminal::inferior): Update comments.
5369 (target_terminal::restore_inferior): New.
5370 (target_terminal::is_inferior, target_terminal::is_ours)
5371 (target_terminal::is_ours_for_output): Adjust.
5372 (target_terminal::scoped_restore_terminal_state): Adjust to
5373 rename, and call restore_inferior() instead of inferior().
5374 (target_terminal::scoped_restore_terminal_state::m_state): Change
5375 type.
5376 (target_terminal::terminal_state): Rename to ...
5377 (target_terminal::m_terminal_state): ... this and change type.
5378
5379 2018-01-30 Pedro Alves <palves@redhat.com>
5380
5381 * linux-nat.c (wait_for_signal): New function.
5382 (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
5383 directly.
5384 (async_terminal_is_ours)
5385 (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
5386 (linux_nat_add_target): Don't override
5387 to_terminal_inferior/to_terminal_ours.
5388
5389 2018-01-29 Sergio Durigan Junior <sergiodj@redhat.com>
5390
5391 * remote.c (remote_follow_fork): Don't call "detach_inferior".
5392
5393 2018-01-28 Simon Marchi <simon.marchi@ericsson.com>
5394
5395 * dwarf2read.c (free_dwo_files): Add forward-declaration.
5396 (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
5397 dwarf2_per_objfile_free here.
5398 (dwarf2_per_objfile_free): Remove.
5399 (_initialize_dwarf2_read): Don't register
5400 dwarf2_per_objfile_free as a registry cleanup.
5401
5402 2018-01-27 Eli Zaretskii <eliz@gnu.org>
5403
5404 Avoid compilation errors in MinGW native builds
5405
5406 The error is triggered by including python-internal.h, and the
5407 error message is:
5408
5409 In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
5410 from build-gnulib/import/math.h:27,
5411 from d:/usr/Python26/include/pyport.h:235,
5412 from d:/usr/Python26/include/Python.h:58,
5413 from python/python-internal.h:94,
5414 from python/py-arch.c:24:
5415 d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
5416 using ::hypot;
5417 ^~~~~
5418
5419 This happens because Python headers define 'hypot' to expand t
5420 '_hypot' in the Windows builds.
5421 * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
5422 'hypoth'. This avoids a compilation error.
5423
5424 2018-01-26 Alan Hayward <alan.hayward@arm.com>
5425
5426 * MAINTAINERS (Write After Approval): Fix ordering.
5427
5428 2018-01-26 Alan Hayward <alan.hayward@arm.com>
5429
5430 * MAINTAINERS (Write After Approval): Add Alan Hayward.
5431
5432 2018-01-26 Alan Modra <amodra@gmail.com>
5433
5434 * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
5435 (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
5436 Remove nop. Make const. Comment.
5437 (powerpc32_plt_stub_so_2): New.
5438 (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
5439 Correct count. Update uses.
5440 (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
5441 Move common code reading PLT entry word. Correct
5442 powerpc32_plt_stub PLT address calculation.
5443 * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
5444 (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
5445 (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
5446 (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
5447 (ppc64_standard_linkage8): Likewise.
5448 * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
5449 Correct insns description.
5450 * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
5451
5452 2018-01-24 Pedro Alves <palves@redhat.com>
5453
5454 GCC PR libstdc++/83906
5455 * gdbtypes.c (operator==(const dynamic_prop &,
5456 const dynamic_prop &)): New.
5457 (operator==(const range_bounds &, const range_bounds &)): New.
5458 (check_types_equal): Use them instead of memcmp.
5459 * gdbtypes.h (operator==(const dynamic_prop &,
5460 const dynamic_prop &)): Declare.
5461 (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
5462 (operator==(const range_bounds &, const range_bounds &)): Declare.
5463 (operator!=(const range_bounds &, const range_bounds &)): Declare.
5464
5465 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
5466
5467 * s390-linux-tdep.c (s390_record_address_mask)
5468 (s390_record_calc_disp_common, s390_record_calc_disp)
5469 (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
5470 (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
5471 (s390_process_record): Move to s390-tdep.c.
5472 (s390_linux_init_abi_any): Adjust.
5473 * s390-tdep.c (s390_record_address_mask)
5474 (s390_record_calc_disp_common, s390_record_calc_disp)
5475 (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
5476 (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
5477 (s390_process_record): Moved from s390-linux-tdep.c
5478 (s390_gdbarch_init): Adjust.
5479
5480 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
5481
5482 * s390-linux-nat.c (s390-tdep.h): New include.
5483 * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
5484 (HFILES_NO_SRCDIR): Add s390-tdep.h.
5485 (ALLDEPFILES): Add s390-tdep.c.
5486 * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
5487 * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
5488 * s390-tdep.h: ...this. New file.
5489 * s390-linux-tdep.c (s390-tdep.h): New include.
5490 (_initialize_s390_tdep): Rename to...
5491 (_initialize_s390_linux_tdep): ...this and adjust.
5492 (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
5493 (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
5494 s390-tdep.h.
5495 (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
5496 (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
5497 (s390_is_partial_instruction, s390_software_single_step)
5498 (is_non_branch_ril, s390_displaced_step_copy_insn)
5499 (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
5500 (s390_prologue_data, s390_addr, s390_store, s390_load)
5501 (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
5502 (s390_register_call_saved, s390_guess_tracepoint_registers)
5503 (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
5504 (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
5505 (s390_pseudo_register_name, s390_pseudo_register_type)
5506 (s390_pseudo_register_read, s390_pseudo_register_write)
5507 (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
5508 (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
5509 (s390_addr_bits_remove, s390_address_class_type_flags)
5510 (s390_address_class_type_flags_to_name)
5511 (s390_address_class_name_to_type_flags, s390_effective_inner_type)
5512 (s390_function_arg_float, s390_function_arg_vector)
5513 (is_power_of_two, s390_function_arg_integer, s390_arg_state)
5514 (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
5515 (s390_frame_align, s390_register_return_value, s390_return_value)
5516 (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
5517 (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
5518 (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
5519 (s390_trad_frame_prev_register, s390_unwind_cache)
5520 (s390_prologue_frame_unwind_cache)
5521 (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
5522 (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
5523 (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
5524 (s390_stub_frame_this_id, s390_stub_frame_prev_register)
5525 (s390_stub_frame_sniffer, s390_stub_frame_unwind)
5526 (s390_frame_base_address, s390_local_base_address)
5527 (s390_frame_base, s390_gcc_target_options)
5528 (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
5529 (s390_validate_reg_range, s390_tdesc_valid)
5530 (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
5531 * s390-tdep.c: ...this. New file.
5532
5533 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
5534
5535 * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
5536 (s390_process_record, s390_gdbarch_tdep_alloc)
5537 (s390_linux_init_abi_any): Use/set new hook.
5538
5539 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
5540
5541 * s390-linux-tdep.c (osabi.h): New include.
5542 (s390_linux_init_abi_31, s390_linux_init_abi_64)
5543 (s390_linux_init_abi_any): New functions.
5544 (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
5545
5546 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
5547
5548 * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
5549 tdesc_has_registers check
5550
5551 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
5552
5553 * s390-linux-tdep.c (s390_tdesc_valid): New function.
5554 (s390_validate_reg_range): New macro.
5555 (s390_gdbarch_init): Adjust.
5556
5557 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
5558
5559 * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
5560 (s390_gdbarch_tdep_alloc): Adjust.
5561 (s390_gdbarch_init): Adjust.
5562
5563 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
5564
5565 * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
5566 <have_tdb>: Change type to bool.
5567 (s390_gdbarch_tdep_alloc): Adjust.
5568 (s390_gdbarch_init): Adjust.
5569
5570 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
5571
5572 * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
5573 (gdbarch_tdep) <have_upper, have_vx>: New fields.
5574 (s390_gdbarch_tdep_alloc): New function.
5575 (s390_gdbarch_init): Allocate tdep at start and use its fields
5576 instead of separate variables.
5577
5578 2018-01-23 Philipp Rudo <prudo@linux.vnet.ibm.com>
5579
5580 * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
5581 when looking for cached gdbarch and add comment for remaining.
5582
5583 2018-01-22 Pedro Alves <palves@redhat.com>
5584 Sergio Durigan Junior <sergiodj@redhat.com>
5585
5586 * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
5587 case.
5588
5589 2018-01-22 Maciej W. Rozycki <macro@mips.com>
5590
5591 * MAINTAINERS: Update my company e-mail address.
5592
5593 2018-01-22 Yao Qi <yao.qi@linaro.org>
5594
5595 * regcache.c (cooked_write_test): New function.
5596 (_initialize_regcache): Register the test.
5597
5598 2018-01-22 Yao Qi <yao.qi@linaro.org>
5599
5600 * ia64-tdep.c (ia64_pseudo_register_read): Call
5601 regcache->cooked_read instead of regcache_cooked_read_unsigned.
5602 * m32c-tdep.c (m32c_cat_read): Likewise.
5603 (m32c_r3r2r1r0_read): Likewise.
5604 * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
5605 * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
5606
5607 2018-01-22 Yao Qi <yao.qi@linaro.org>
5608
5609 * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
5610 method raw_read instead of regcache_raw_read.
5611 * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
5612 * arm-tdep.c (arm_neon_quad_read): Likewise.
5613 * avr-tdep.c (avr_pseudo_register_read): Likewise.
5614 * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
5615 * frv-tdep.c (frv_pseudo_register_read): Likewise.
5616 * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
5617 * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
5618 (i386_pseudo_register_read_into_value): Likewise.
5619 * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
5620 * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
5621 * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
5622 * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
5623 * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
5624 * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
5625 * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
5626 * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
5627 * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
5628
5629 2018-01-22 Yao Qi <yao.qi@linaro.org>
5630
5631 * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
5632 * configure.tgt: Remove target mt.
5633 * mt-tdep.c: Remove.
5634 * regcache.c (cooked_read_test): Remove the check for mt.
5635
5636 2018-01-22 Yao Qi <yao.qi@linaro.org>
5637
5638 * jit.c (jit_frame_prev_register): Call regcache::cooked_read
5639 instead of gdbarch_pseudo_register_read_value.
5640
5641 2018-01-22 Joel Brobecker <brobecker@adacore.com>
5642
5643 * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
5644 language is Ada.
5645
5646 2018-01-22 Joel Brobecker <brobecker@adacore.com>
5647
5648 * linespec.c (create_sals_line_offset): Remove code that preserved
5649 the symtab_and_line's line number.
5650
5651 2018-01-21 Andrew Burgess <andrew.burgess@embecosm.com>
5652
5653 * varobj.c (varobj_create): Don't set valid_block when creating a
5654 floating varobj.
5655
5656 2018-01-21 Andrew Burgess <andrew.burgess@embecosm.com>
5657
5658 * varobj.c (varobj_create): Remove out of date comment.
5659
5660 2018-01-21 Andrew Burgess <andrew.burgess@embecosm.com>
5661
5662 PR mi/20395
5663 * ada-exp.y (write_var_from_sym): Pass extra parameter when
5664 updating innermost block.
5665 * parse.c (innermost_block_tracker::update): Take extra type
5666 parameter, and check types match before updating innermost block.
5667 (write_dollar_variable): Update innermost block for registers.
5668 * parser-defs.h (enum innermost_block_tracker_type): New enum.
5669 (innermost_block_tracker::innermost_block_tracker): Initialise
5670 m_types member.
5671 (innermost_block_tracker::reset): Take type parameter.
5672 (innermost_block_tracker::update): Take type parameter, and pass
5673 type through as needed.
5674 (innermost_block_tracker::m_types): New member.
5675 * varobj.c (varobj_create): Pass type when reseting innermost
5676 block.
5677
5678 2018-01-21 Andrew Burgess <andrew.burgess@embecosm.com>
5679
5680 * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
5681 * ada-lang.c (resolve_subexp): Likewise.
5682 * breakpoint.c (set_breakpoint_condition) Likewise.
5683 (watch_command_1) Likewise.
5684 * c-exp.y (variable): Likewise.
5685 * d-exp.y (PrimaryExpression): Likewise.
5686 * f-exp.y (variable): Likewise.
5687 * go-exp.y (variable): Likewise.
5688 * m2-exp.y (variable): Likewise.
5689 * objfiles.c (objfile::~objfile): Likewise.
5690 * p-exp.y (variable): Likewise.
5691 * parse.c (innermost_block): Change type.
5692 * parser-defs.h (class innermost_block_tracker): New.
5693 (innermost_block): Change to innermost_block_tracker.
5694 * printcmd.c (display_command): Switch to innermost_block API.
5695 (do_one_display): Likewise.
5696 * rust-exp.y (do_one_display): Likewise.
5697 * symfile.c (clear_symtab_users): Likewise.
5698 * varobj.c (varobj_create): Switch to innermost_block API, replace
5699 use of innermost_block with block stored on varobj object.
5700
5701 2018-01-21 Andrew Burgess <andrew.burgess@embecosm.com>
5702
5703 * expression.h (innermost_block): Remove declaration.
5704 * varobj.c: Add 'parser-defs.h' include.
5705
5706 2018-01-19 Tom Tromey <tom@tromey.com>
5707
5708 * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
5709 symbols in the static and global blocks.
5710
5711 2018-01-19 James Clarke <jrtc27@jrtc27.com>
5712
5713 * nat/linux-ptrace.c: Remove unnecessary reinclusion of
5714 gdb_ptrace.h, and move including gdb_wait.h ...
5715 * nat/linux-ptrace.h: ... to here.
5716
5717 2018-01-19 Simon Marchi <simon.marchi@ericsson.com>
5718
5719 * inf-ptrace.c (inf_ptrace_detach): Adjust call to
5720 inf_ptrace_detach_success.
5721 (inf_ptrace_detach_success): Add inferior parameter, use it
5722 instead of inferior_ptid, pass it to detach_inferior.
5723 * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
5724 parameter.
5725 * inferior.c (detach_inferior): Add overload that takes an
5726 inferior object.
5727 * inferior.h (detach_inferior): Likewise.
5728 * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
5729 use inferior_ptid, adjust call to inf_ptrace_detach_success.
5730 * linux-thread-db.c (thread_db_detach): Use inf parameter.
5731
5732 2018-01-19 Simon Marchi <simon.marchi@ericsson.com>
5733
5734 * target.h (struct target_ops) <to_detach>: Add inferior
5735 parameter.
5736 (target_detach): Likewise.
5737 * target.c (dispose_inferior): Pass inferior down.
5738 (target_detach): Pass inferior down. Assert that it is equal to
5739 the current inferior.
5740 * aix-thread.c (aix_thread_detach): Pass inferior down.
5741 * corefile.c (core_file_command): Pass current_inferior() down.
5742 * corelow.c (core_detach): Add inferior parameter.
5743 * darwin-nat.c (darwin_detach): Likewise.
5744 * gnu-nat.c (gnu_detach): Likewise.
5745 * inf-ptrace.c (inf_ptrace_detach): Likewise.
5746 * infcmd.c (detach_command): Pass current_inferior() down to
5747 target_detach.
5748 * infrun.c (follow_fork_inferior): Pass parent_inf to
5749 target_detach.
5750 (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
5751 target_detach.
5752 * linux-nat.c (linux_nat_detach): Add inferior parameter.
5753 * linux-thread-db.c (thread_db_detach): Likewise.
5754 * nto-procfs.c (procfs_detach): Likewise.
5755 * procfs.c (procfs_detach): Likewise.
5756 * record.c (record_detach): Likewise.
5757 * record.h (struct inferior): Forward-declare.
5758 (record_detach): Add inferior parameter.
5759 * remote-sim.c (gdbsim_detach): Likewise.
5760 * remote.c (remote_detach_1): Likewise.
5761 (remote_detach): Likewise.
5762 (extended_remote_detach): Likewise.
5763 * sol-thread.c (sol_thread_detach): Likewise.
5764 * target-debug.h (target_debug_print_inferior_p): New macro.
5765 * target-delegates.c: Re-generate.
5766 * top.c (kill_or_detach): Pass inferior down to target_detach.
5767 * windows-nat.c (windows_detach): Add inferior parameter.
5768
5769 2018-01-19 Simon Marchi <simon.marchi@ericsson.com>
5770
5771 * target.h (struct target_ops) <to_detach>: Remove args
5772 parameter.
5773 (target_detach): Likewise.
5774 * target.c (dispose_inferior): Adjust.
5775 (target_detach): Remove args parameter, adjust.
5776 * aix-thread.c (aix_thread_detach): Adjust.
5777 * corefile.c (core_file_command): Adjust.
5778 * corelow.c (core_detach): Adjust.
5779 * darwin-nat.c (darwin_detach): Adjust.
5780 * gnu-nat.c (gnu_detach): Adjust.
5781 * inf-ptrace.c (inf_ptrace_detach): Adjust.
5782 * infcmd.c (detach_command): Adjust
5783 * infrun.c (follow_fork_inferior): Adjust.
5784 (handle_vfork_child_exec_or_exit): Adjust.
5785 * linux-fork.c (linux_fork_detach): Remove args parameter.
5786 * linux-fork.h (linux_fork_detach): Likewise.
5787 * linux-nat.c (linux_nat_detach): Likewise, and adjust.
5788 * linux-thread-db.c (thread_db_detach): Likewise.
5789 * nto-procfs.c (procfs_detach): Likewise.
5790 * procfs.c (procfs_detach): Likewise.
5791 (do_detach): Remove signo parameter.
5792 * record.c (record_detach): Remove args parameter.
5793 * record.h (record_detach): Likewise.
5794 * remote-sim.c (gdbsim_detach): Likewise.
5795 * remote.c (remote_detach_1): Likewise.
5796 (remote_detach): Likewise.
5797 (extended_remote_detach): Likewise.
5798 * sol-thread.c (sol_thread_detach): Likewise.
5799 * target-delegates.c: Re-generate.
5800 * top.c (struct qt_args) <args>: Remove field.
5801 (kill_or_detach): Don't pass args.
5802 (quit_force): Don't set args.
5803 * windows-nat.c (windows_detach): Remove args parameter.
5804
5805 2018-01-19 Yao Qi <yao.qi@linaro.org>
5806
5807 * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
5808 (arm_linux_init_abi): Install it.
5809
5810 2018-01-19 Yao Qi <yao.qi@linaro.org>
5811
5812 * osabi.c (gdb_osabi_names): Extend the regexp for
5813 arm-linux-gnueabihf.
5814
5815 2018-01-18 Yao Qi <yao.qi@linaro.org>
5816
5817 * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
5818 m_abbrevs.
5819 (abbrev_table::add_abbrev): Update.
5820 (abbrev_table::lookup_abbrev): Update.
5821
5822 2018-01-18 Yao Qi <yao.qi@linaro.org>
5823
5824 * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
5825
5826 2018-01-17 Sergio Durigan Junior <sergiodj@redhat.com>
5827
5828 * compile/compile.c (compile_to_object): Convert "triplet_rx"
5829 to "std::string".
5830
5831 2018-01-17 Tom Tromey <tom@tromey.com>
5832
5833 * dwarf2read.c (symbolp): Remove typedef. Don't instantiate VEC.
5834
5835 2018-01-17 Tom Tromey <tom@tromey.com>
5836
5837 * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
5838 * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
5839 (create_array_type_with_stride): Update.
5840 * dwarf2read.c (set_die_type): Update.
5841
5842 2018-01-17 Tom Tromey <tom@tromey.com>
5843
5844 * dwarf2read.c (delayed_method_info): Remove typedef.
5845 (dwarf2_cu::method_info): Now a std::vector.
5846 (add_to_method_list): Update.
5847 (free_delayed_list): Remove.
5848 (compute_delayed_physnames): Update.
5849 (process_full_comp_unit, process_full_type_unit): Clear the method
5850 list. Remove cleanups.
5851 (psymtab_include_file_name): Add name_holder parameter. Use
5852 unique_xmalloc_ptr.
5853 (dwarf_decode_lines): Update.
5854
5855 2018-01-17 Tom Tromey <tom@tromey.com>
5856 Simon Marchi <simon.marchi@ericsson.com>
5857
5858 * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
5859 (dwarf2_per_objfile::free_cached_comp_units)
5860 (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
5861 (init_cutu_and_read_dies_no_follow): Update.
5862 (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
5863 (dwarf2_cu::~dwarf2_cu): New.
5864 (free_heap_comp_unit, free_stack_comp_unit): Remove.
5865 (age_cached_comp_units, free_one_cached_comp_unit): Update.
5866
5867 2018-01-17 Tom Tromey <tom@tromey.com>
5868 Simon Marchi <simon.marchi@ericsson.com>
5869
5870 * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
5871 (struct die_reader_specs) <abbrev_table>: New member.
5872 (struct abbrev_table): Add constructor.
5873 <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
5874 <abbrev_obstack>: Now an auto_obstack.
5875 (abbrev_table_up): New typedef.
5876 (init_cu_die_reader): Add abbrev_table parameter.
5877 (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
5878 Add result_dwo_abbrev_table.
5879 (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
5880 (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
5881 Update.
5882 (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
5883 parameter.
5884 (skip_children): Update.
5885 (abbrev_table::alloc_abbrev): Rename from
5886 abbrev_table_alloc_abbrev.
5887 (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
5888 (abbrev_table::lookup_abbrev): Rename from
5889 abbrev_table_lookup_abbrev.
5890 (abbrev_table_read_table): Return abbrev_table_up.
5891 (abbrev_table_free, abbrev_table_free_cleanup)
5892 (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
5893 (load_partial_dies): Update.
5894
5895 2018-01-17 Tom Tromey <tom@tromey.com>
5896
5897 * dwarf2read.c (dwarf2_compute_name): Update comment.
5898 (read_func_scope, read_variable): Update.
5899 (new_symbol): Remove.
5900 (new_symbol_full): Rename to new_symbol.
5901
5902 2018-01-17 Mike Gulick <mgulick@mathworks.com>
5903
5904 PR gdb/16577
5905 * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
5906 a warning instead of throwing an error, set section size to 0 and return
5907 NULL.
5908 * gdb_bfd.h (gdb_bfd_map_section): Update description.
5909
5910 2018-01-17 Simon Marchi <simon.marchi@ericsson.com>
5911
5912 * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
5913 std::string.
5914 (linux_ptrace_attach_fail_reason_string): Likewise.
5915 * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
5916 Likewise.
5917 (linux_ptrace_attach_fail_reason_string): Likewise.
5918 * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
5919
5920 2018-01-17 Simon Marchi <simon.marchi@ericsson.com>
5921
5922 * linux-nat.c (linux_nat_attach): Remove xstrdup.
5923
5924 2018-01-17 Eldar Abusalimov <eldar.abusalimov@jetbrains.com>
5925
5926 PR gdb/21559
5927 * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
5928 checking for fs_base/gs_base fields in struct user_regs_struct.
5929 * configure: Regenerate.
5930
5931 2018-01-17 Yao Qi <yao.qi@linaro.org>
5932
5933 * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
5934 function.
5935 (aarch64_linux_init_abi): Install it to gdbarch hook
5936 gcc_target_options.
5937
5938 2018-01-15 Pedro Alves <palves@redhat.com>
5939
5940 * common/signals-state-save-restore.c
5941 (save_original_signals_state): Fix typos.
5942
5943 2017-01-12 Tom Tromey <tom@tromey.com>
5944 Sergio Durigan Junior <sergiodj@redhat.com>
5945
5946 * Makefile.in (install-only): Install gdb-add-index.
5947
5948 2018-01-12 John Baldwin <jhb@FreeBSD.org>
5949
5950 * fbsd-tdep.c (KVE_PROTECTION): Correct value.
5951
5952 2018-01-12 Andreas Arnez <arnez@linux.vnet.ibm.com>
5953
5954 * infrun.c (keep_going_pass_signal): Clear step-over info when
5955 insert_breakpoints fails.
5956
5957 2018-01-11 Pedro Alves <palves@redhat.com>
5958
5959 PR gdb/22583
5960 * infrun.c (resume): Rename to ...
5961 (resume_1): ... this.
5962 (resume): Reimplement as wrapper around resume_1.
5963
5964 2018-01-11 Pedro Alves <palves@redhat.com>
5965
5966 PR remote/22597
5967 * remote.c (remote_parse_stop_reply): Default to the last-set
5968 general thread instead of to 'magic_null_ptid'.
5969
5970 2018-01-10 Pedro Alves <palves@redhat.com>
5971
5972 * language.h (language_get_symbol_name_matcher): Rename ...
5973 (get_symbol_name_matcher): ... this.
5974 * language.c (language_get_symbol_name_matcher): Ditto.
5975 * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
5976 callers adjusted.
5977
5978 2018-01-10 Pedro Alves <palves@redhat.com>
5979
5980 PR gdb/22670
5981 * dwarf2read.c
5982 (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
5983 Adjust to use language_get_symbol_name_matcher instead of
5984 language_defn::la_get_symbol_name_matcher.
5985 * language.c (language_get_symbol_name_matcher): If in Ada mode
5986 and the lookup name is a verbatim match, return Ada's matcher.
5987 * language.h (language_get_symbol_name_matcher): Adjust comment.
5988 (ada_lookup_name_info::verbatim_p):: New method.
5989
5990 2018-01-10 Pedro Alves <palves@redhat.com>
5991
5992 PR gdb/22670
5993 * ada-lang.c (ada_collect_symbol_completion_matches): If the
5994 minsym's language is language_auto or language_cplus, pass down
5995 language_ada instead.
5996 * symtab.c (compare_symbol_name): Don't frob symbol language here.
5997
5998 2018-01-10 Pedro Alves <palves@redhat.com>
5999
6000 PR gdb/22670
6001 * minsyms.c (linkage_name_str): New function.
6002 (iterate_over_minimal_symbols): Use it.
6003
6004 2018-01-09 John Baldwin <jhb@FreeBSD.org>
6005
6006 * NEWS: Document that 'info proc' now works on FreeBSD.
6007
6008 2018-01-09 John Baldwin <jhb@FreeBSD.org>
6009
6010 * configure.ac: Check for kinfo_getfile in libutil.
6011 * configure: Regenerate.
6012 * config.in: Regenerate.
6013 * fbsd-nat.c: Include "fbsd-tdep.h".
6014 (fbsd_fetch_cmdline): New.
6015 (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
6016 rather than calling error.
6017 (fbsd_info_proc): New.
6018 (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
6019 (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
6020 (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
6021
6022 2018-01-09 John Baldwin <jhb@FreeBSD.org>
6023
6024 * fbsd-nat.c (struct free_deleter): Remove.
6025 (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
6026
6027 2018-01-09 John Baldwin <jhb@FreeBSD.org>
6028
6029 * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
6030 NULL for an empty pathname.
6031
6032 2018-01-09 John Baldwin <jhb@FreeBSD.org>
6033
6034 * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
6035 (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
6036 (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
6037 (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
6038 (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
6039 (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
6040 (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
6041 (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
6042 (kinfo_proc_layout_32, kinfo_proc_layout_i386)
6043 (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
6044 (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
6045 (fbsd_core_fetch_timeval, fbsd_print_sigset)
6046 (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
6047 (fbsd_init_abi): Install gdbarch "core_info_proc" method.
6048 * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
6049
6050 2018-01-08 Samuel Thibault <samuel.thibault@ens-lyon.org>
6051
6052 * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
6053 (gnu_xfer_auxv): New function.
6054 (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
6055 TARGET_OBJECT_AUXV.
6056
6057 2018-01-08 Yao Qi <yao.qi@linaro.org>
6058 Simon Marchi <simon.marchi@ericsson.com>
6059
6060 * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
6061 common/selftest.c.
6062 (COMMON_OBS): Remove selftest.o.
6063 * configure.ac: Append selftest-arch.c and common/selftest.c to
6064 CONFIG_SRCS. Append selftest-arch.o and selftest.o to COMMON_OBS.
6065 * configure: Re-generated.
6066 * maint.c (maintenance_selftest): Wrap selftests::run_tests with
6067 GDB_SELF_TEST.
6068 (maintenance_info_selftests): Likewise.
6069
6070 2018-01-08 Xavier Roirand <roirand@adacore.com>
6071
6072 * ada-valprint.c (val_print_packed_array_elements): Use
6073 proper number of elements when printing an array indexed
6074 by an enumeration type.
6075
6076 2018-01-07 Simon Marchi <simon.marchi@polymtl.ca>
6077
6078 * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
6079 (dw2_get_file_names_reader): Adjust.
6080 (lookup_dwo_signatured_type): Adjust.
6081 (lookup_dwp_signatured_type): Adjust.
6082 (lookup_signatured_type): Adjust.
6083 (create_type_unit_group): Adjust.
6084 (get_type_unit_group): Adjust.
6085 (process_psymtab_comp_unit_reader): Adjust.
6086 (build_type_psymtabs_reader): Adjust.
6087 (scan_partial_symbols): Adjust.
6088 (add_partial_symbol): Adjust.
6089 (add_partial_subprogram): Adjust.
6090 (peek_die_abbrev): Adjust.
6091 (fixup_go_packaging): Adjust.
6092 (process_imported_unit_die): Adjust.
6093 (dwarf2_compute_name): Adjust.
6094 (dwarf2_physname): Adjust.
6095 (read_import_statement): Adjust.
6096 (handle_DW_AT_stmt_list): Adjust.
6097 (read_file_scope): Adjust.
6098 (read_func_scope): Adjust.
6099 (read_lexical_block_scope): Adjust.
6100 (read_call_site_scope): Adjust.
6101 (read_variable): Adjust.
6102 (dwarf2_rnglists_process): Adjust.
6103 (dwarf2_ranges_process): Adjust.
6104 (dwarf2_ranges_read): Adjust.
6105 (dwarf2_get_pc_bounds): Adjust.
6106 (dwarf2_record_block_ranges): Adjust.
6107 (dwarf2_add_field): Adjust.
6108 (dwarf2_add_member_fn): Adjust.
6109 (read_structure_type): Adjust.
6110 (process_structure_scope): Adjust.
6111 (read_enumeration_type): Adjust.
6112 (read_array_type): Adjust.
6113 (mark_common_block_symbol_computed): Adjust.
6114 (read_common_block): Adjust.
6115 (read_namespace_type): Adjust.
6116 (read_namespace): Adjust.
6117 (read_module_type): Adjust.
6118 (read_tag_pointer_type): Adjust.
6119 (read_tag_ptr_to_member_type): Adjust.
6120 (read_tag_string_type): Adjust.
6121 (read_subroutine_type): Adjust.
6122 (read_typedef): Adjust.
6123 (read_base_type): Adjust.
6124 (attr_to_dynamic_prop): Adjust.
6125 (read_subrange_type): Adjust.
6126 (read_unspecified_type): Adjust.
6127 (dwarf2_read_abbrevs): Adjust.
6128 (load_partial_dies): Adjust.
6129 (read_partial_die): Adjust.
6130 (find_partial_die): Adjust.
6131 (guess_partial_die_structure_name): Adjust.
6132 (fixup_partial_die): Adjust.
6133 (read_attribute_value): Adjust.
6134 (read_addr_index): Adjust.
6135 (read_addr_index_from_leb128): Adjust.
6136 (read_str_index): Adjust.
6137 (dwarf2_string_attr): Adjust.
6138 (get_debug_line_section): Adjust.
6139 (dwarf_decode_line_header): Adjust.
6140 (lnp_state_machine::check_line_address): Adjust.
6141 (dwarf_decode_lines_1): Adjust.
6142 (dwarf_decode_lines): Adjust.
6143 (dwarf2_start_symtab): Adjust.
6144 (var_decode_location): Adjust.
6145 (new_symbol_full): Adjust.
6146 (dwarf2_const_value_data): Adjust.
6147 (dwarf2_const_value_attr): Adjust.
6148 (dwarf2_const_value): Adjust.
6149 (die_type): Adjust.
6150 (die_containing_type): Adjust.
6151 (build_error_marker_type): Adjust.
6152 (lookup_die_type): Adjust.
6153 (guess_full_die_structure_name): Adjust.
6154 (anonymous_struct_prefix): Adjust.
6155 (determine_prefix): Adjust.
6156 (dwarf2_name): Adjust.
6157 (follow_die_ref_or_sig): Adjust.
6158 (follow_die_offset): Adjust.
6159 (follow_die_ref): Adjust.
6160 (follow_die_sig_1): Adjust.
6161 (follow_die_sig): Adjust.
6162 (get_signatured_type): Adjust.
6163 (get_DW_AT_signature_type): Adjust.
6164 (decode_locdesc): Adjust.
6165 (dwarf_decode_macros): Adjust.
6166 (cu_debug_loc_section): Adjust.
6167 (fill_in_loclist_baton): Adjust.
6168 (dwarf2_symbol_mark_computed): Adjust.
6169 (init_one_comp_unit): Don't assign
6170 dwarf2_cu::dwarf2_per_objfile.
6171 (set_die_type): Adjust.
6172
6173 2018-01-07 Simon Marchi <simon.marchi@ericsson.com>
6174
6175 * dwarf2read.c (struct mapped_debug_names): Add constructor.
6176 <dwarf2_per_objfile>: New field.
6177 (dwarf2_per_objfile): Remove global.
6178 (get_dwarf2_per_objfile): New function.
6179 (set_dwarf2_per_objfile): New function.
6180 (dwarf2_build_psymtabs_hard): Change objfile parameter to
6181 dwarf2_per_objfile.
6182 (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
6183 (read_abbrev_offset): Likewise.
6184 (read_indirect_string): Likewise.
6185 (read_indirect_line_string): Likewise.
6186 (read_indirect_string_at_offset): Likewise.
6187 (read_indirect_string_from_dwz): Likewise.
6188 (dwarf2_find_containing_comp_unit): Change objfile parameter to
6189 dwarf2_per_objfile.
6190 (age_cached_comp_units): Add dwarf2_per_objfile parameter.
6191 (create_all_comp_units): Change objfile parameter to
6192 dwarf2_per_objfile.
6193 (create_all_type_units): Likewise.
6194 (process_queue): Add dwarf2_per_objfile parameter.
6195 (read_and_check_comp_unit_head): Likewise.
6196 (lookup_dwo_unit_in_dwp): Likewise.
6197 (get_dwp_file): Likewise.
6198 (process_cu_includes): Likewise.
6199 (struct free_dwo_file_cleanup_data): New struct.
6200 (dwarf2_has_info): Use get_dwarf2_per_objfile and
6201 set_dwarf2_per_objfile.
6202 (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
6203 (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
6204 context, adjust calls.
6205 (dw2_instantiate_symtab): Likewise.
6206 (dw2_get_cutu): Add dwarf2_per_objfile parameter.
6207 (dw2_get_cu): Likewise.
6208 (create_cu_from_index_list): Change objfile parameter to
6209 dwarf2_per_objfile.
6210 (create_cus_from_index_list): Get dwarf2_per_objfile from
6211 context, adjust calls.
6212 (create_cus_from_index): Likewise.
6213 (create_signatured_type_table_from_index): Change objfile
6214 parameter to dwarf2_per_objfile.
6215 (create_signatured_type_table_from_debug_names): Change objfile
6216 parameter to dwarf2_per_objfile.
6217 (create_addrmap_from_index): Likewise.
6218 (create_addrmap_from_aranges): Likewise.
6219 (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
6220 (dw2_setup): Remove.
6221 (dw2_get_file_names_reader): Get dwarf2_per_objfile from
6222 context.
6223 (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
6224 get_dwarf2_per_objfile.
6225 (dw2_forget_cached_source_info): Likewise.
6226 (dw2_map_symtabs_matching_filename): Likewise.
6227 (struct dw2_symtab_iterator) <index>: Remove.
6228 <dwarf2_per_objfile>: New field.
6229 (dw2_symtab_iter_init): Replace index parameter with
6230 dwarf2_per_objfile.
6231 (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
6232 (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
6233 (dw2_print_stats): Likewise.
6234 (dw2_dump): Likewise.
6235 (dw2_expand_symtabs_for_function): Likewise.
6236 (dw2_expand_all_symtabs): Likewise.
6237 (dw2_expand_symtabs_with_fullname): Likewise.
6238 (dw2_expand_marked_cus): Replace index and objfile parameters
6239 with dwarf2_per_objfile.
6240 (dw_expand_symtabs_matching_file_matcher): Add
6241 dwarf2_per_objfile parameter and adjust calls.
6242 (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
6243 adjust calls.
6244 (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
6245 (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
6246 adjust calls.
6247 (create_cus_from_debug_names_list): Replace objfile parameter
6248 with dwarf2_per_objfile and adjust calls.
6249 (create_cus_from_debug_names): Likewise.
6250 (dwarf2_read_debug_names): Likewise.
6251 (mapped_debug_names::namei_to_name): Adjust call.
6252 (dw2_debug_names_iterator::next): Likewise.
6253 (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
6254 (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
6255 (dw2_debug_names_dump): Likewise.
6256 (dw2_debug_names_expand_symtabs_for_function): Likewise.
6257 (dw2_debug_names_expand_symtabs_matching): Likewise.
6258 (dwarf2_initialize_objfile): Likewise.
6259 (dwarf2_build_psymtabs): Likewise.
6260 (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
6261 this_cu.
6262 (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
6263 (read_and_check_comp_unit_head): Likewise.
6264 (read_abbrev_offset): Likewise.
6265 (create_debug_type_hash_table): Likewise.
6266 (create_debug_types_hash_table): Likewise.
6267 (create_all_type_units): Replace objfile parameter with
6268 dwarf2_per_objfile.
6269 (add_type_unit): Add dwarf2_per_objfile parameter.
6270 (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
6271 with dwarf2_per_objfile.
6272 (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
6273 (lookup_dwp_signatured_type): Likewise.
6274 (lookup_signatured_type): Likewise.
6275 (read_cutu_die_from_dwo): Likewise.
6276 (init_tu_and_read_dwo_dies): Likewise.
6277 (init_cutu_and_read_dies): Likewise.
6278 (init_cutu_and_read_dies_no_follow): Likewise.
6279 (allocate_type_unit_groups_table): Add objfile parameter.
6280 (create_type_unit_group): Use dwarf2_per_objfile from cu.
6281 (get_type_unit_group): Likewise.
6282 (process_psymtab_comp_unit): Update call.
6283 (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
6284 (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
6285 (print_tu_stats): Likewise.
6286 (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
6287 in void* parameter.
6288 (build_type_psymtabs): Change objfile parameter to
6289 dwarf2_per_objfile.
6290 (process_skeletonless_type_unit): Use dwarf2_per_objfile
6291 passed in void* parameter.
6292 (process_skeletonless_type_units): Change objfile parameter to
6293 dwarf2_per_objfile.
6294 (set_partial_user): Likewise.
6295 (dwarf2_build_psymtabs_hard): Likewise.
6296 (read_comp_units_from_section): Likewise.
6297 (create_all_comp_units): Likewise.
6298 (scan_partial_symbols): Update calls.
6299 (add_partial_symbol): Likewise.
6300 (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
6301 (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
6302 (process_queue): Add dwarf2_per_objfile parameter.
6303 (get_compunit_symtab): Use dwarf2_per_objfile from cu.
6304 (compute_compunit_symtab_includes): Likewise.
6305 (process_cu_includes): Add dwarf2_per_objfile parameter.
6306 (process_full_comp_unit): Use dwarf2_per_objfile from cu.
6307 (process_full_type_unit): Likewise.
6308 (process_imported_unit_die): Update call.
6309 (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
6310 (read_file_scope): Likewise.
6311 (allocate_dwo_file_hash_table): Add objfile parameter.
6312 (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
6313 (create_cus_hash_table): Likewise.
6314 (create_dwp_hash_table): Likewise.
6315 (create_dwo_unit_in_dwp_v1): Likewise.
6316 (create_dwp_v2_section): Likewise.
6317 (create_dwo_unit_in_dwp_v2): Likewise.
6318 (lookup_dwo_unit_in_dwp): Likewise.
6319 (try_open_dwop_file): Likewise.
6320 (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
6321 (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
6322 cleanup to include a reference to dwarf2_per_objfile.
6323 (open_dwp_file): Add dwarf2_per_objfile parameter.
6324 (open_and_init_dwp_file): Likewise.
6325 (get_dwp_file): Likewise.
6326 (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
6327 (queue_and_load_all_dwo_tus): Update call.
6328 (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
6329 data.
6330 (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
6331 (dwarf2_ranges_process): Likewise.
6332 (dwarf2_get_pc_bounds): Likewise.
6333 (mark_common_block_symbol_computed): Likewise.
6334 (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
6335 (dwarf2_read_abbrevs): Update call.
6336 (read_partial_die): Use dwarf2_per_objfile from cu.
6337 (find_partial_die): Likewise.
6338 (fixup_partial_die): Likewise.
6339 (read_attribute_value): Likewise.
6340 (read_indirect_string_at_offset_from): Add objfile parameter.
6341 (read_indirect_string_at_offset): Add dwarf2_per_objfile
6342 parameter.
6343 (read_indirect_string_from_dwz): Add objfile parameter.
6344 (read_indirect_string): Add objfile parameter.
6345 (read_addr_index_1): Add dwarf2_per_objfile parameter.
6346 (read_addr_index): Use dwarf2_per_objfile from cu.
6347 (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
6348 call dw2_setup.
6349 (read_str_index): Use dwarf2_per_objfile from cu.
6350 (get_debug_line_section): Likewise.
6351 (read_formatted_entries): Add dwarf2_per_objfile parameter.
6352 (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
6353 (new_symbol_full): Use dwarf2_per_objfile from cu.
6354 (build_error_marker_type): Likewise.
6355 (lookup_die_type): Likewise.
6356 (determine_prefix): Likewise.
6357 (follow_die_offset): Likewise.
6358 (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
6359 (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
6360 (dwarf2_fetch_die_type_sect_off): Likewise.
6361 (dwarf2_get_die_type): Likewise.
6362 (follow_die_sig_1): Use dwarf2_per_objfile from cu.
6363 (get_signatured_type): Likewise.
6364 (get_DW_AT_signature_type): Likewise.
6365 (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
6366 (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
6367 (cu_debug_loc_section): Likewise.
6368 (fill_in_loclist_baton): Likewise.
6369 (dwarf2_symbol_mark_computed): Likewise.
6370 (dwarf2_find_containing_comp_unit): Change objfile parameter to
6371 dwarf2_per_objfile.
6372 (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
6373 parameter.
6374 (age_cached_comp_units): Add dwarf2_per_objfile parameter.
6375 (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
6376 (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
6377 (set_die_type): Use dwarf2_free_objfile from cu.
6378 (get_die_type_at_offset): Likewise.
6379 (dwarf2_per_objfile_free): Don't assign global variable.
6380 (debug_names) <constructor>: Add dwarf2_per_objfile
6381 parameter, update m_debugstrlookup construction.
6382 (debug_names::debug_str_lookup): Add dwarf2_per_objfile
6383 parameter.
6384 <m_dwarf2_per_objfile>: New field.
6385 <lookup>: Use m_dwarf2_per_objfile.
6386 (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
6387 (psyms_seen_size): Likewise.
6388 (write_gdbindex): Replace objfile parameter with
6389 dwarf2_per_objfile.
6390 (write_debug_names): Likewise.
6391 (write_psymtabs_to_index): Likewise.
6392 (save_gdb_index_command): Use get_dwarf2_per_objfile, update
6393 calls.
6394
6395 2018-01-07 Simon Marchi <simon.marchi@ericsson.com>
6396
6397 * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
6398 <dwarf2_per_objfile>: New field.
6399 (struct dwarf2_per_cu_data) <objfile>: Remove.
6400 <dwarf2_per_objfile>: New field.
6401 (create_cu_from_index_list): Assign dwarf2_per_objfile instead
6402 of objfile.
6403 (create_signatured_type_table_from_index): Likewise.
6404 (create_debug_type_hash_table): Likewise.
6405 (fill_in_sig_entry_from_dwo_entry): Likewise.
6406 (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
6407 (create_type_unit_group): Assign dwarf2_per_objfile instead of
6408 objfile.
6409 (create_partial_symtab): Access objfile through
6410 dwarf2_per_objfile.
6411 (process_psymtab_comp_unit_reader): Likewise.
6412 (read_comp_units_from_section): Likewise.
6413 (scan_partial_symbols): Likewise.
6414 (add_partial_symbol): Likewise.
6415 (add_partial_subprogram): Likewise.
6416 (peek_die_abbrev): Likewise.
6417 (fixup_go_packaging): Likewise.
6418 (process_full_comp_unit): Likewise.
6419 (process_full_type_unit): Likewise.
6420 (process_imported_unit_die): Likewise.
6421 (dwarf2_compute_name): Likewise.
6422 (dwarf2_physname): Likewise.
6423 (read_import_statement): Likewise.
6424 (create_cus_hash_table): Assign dwarf2_physname instead of
6425 objfile.
6426 (read_func_scope): Access objfile through dwarf2_per_objfile.
6427 (read_lexical_block_scope): Likewise.
6428 (read_call_site_scope): Likewise.
6429 (read_variable): Likewise.
6430 (dwarf2_rnglists_process): Likewise.
6431 (dwarf2_ranges_process): Likewise.
6432 (dwarf2_ranges_read): Likewise.
6433 (dwarf2_record_block_ranges): Likewise.
6434 (dwarf2_add_field): Likewise.
6435 (dwarf2_add_member_fn): Likewise.
6436 (read_structure_type): Likewise.
6437 (process_structure_scope): Likewise.
6438 (read_enumeration_type): Likewise.
6439 (read_array_type): Likewise.
6440 (read_common_block): Likewise.
6441 (read_namespace_type): Likewise.
6442 (read_namespace): Likewise.
6443 (read_module_type): Likewise.
6444 (read_tag_pointer_type): Likewise.
6445 (read_tag_ptr_to_member_type): Likewise.
6446 (read_tag_string_type): Likewise.
6447 (read_subroutine_type): Likewise.
6448 (read_typedef): Likewise.
6449 (read_base_type): Likewise.
6450 (attr_to_dynamic_prop): Likewise.
6451 (read_subrange_type): Likewise.
6452 (read_unspecified_type): Likewise.
6453 (load_partial_dies): Likewise.
6454 (read_partial_die): Likewise.
6455 (find_partial_die): Likewise.
6456 (guess_partial_die_structure_name): Likewise.
6457 (fixup_partial_die): Likewise.
6458 (read_attribute_value): Likewise.
6459 (read_addr_index_from_leb128): Likewise.
6460 (dwarf2_read_addr_index): Likewise.
6461 (dwarf2_string_attr): Likewise.
6462 (lnp_state_machine::check_line_address): Likewise.
6463 (dwarf_decode_lines_1): Likewise.
6464 (dwarf_decode_lines): Likewise.
6465 (dwarf2_start_symtab): Likewise.
6466 (var_decode_location): Likewise.
6467 (new_symbol_full): Likewise.
6468 (dwarf2_const_value_data): Likewise.
6469 (dwarf2_const_value_attr): Likewise.
6470 (dwarf2_const_value): Likewise.
6471 (die_type): Likewise.
6472 (die_containing_type): Likewise.
6473 (lookup_die_type): Likewise.
6474 (guess_full_die_structure_name): Likewise.
6475 (anonymous_struct_prefix): Likewise.
6476 (dwarf2_name): Likewise.
6477 (follow_die_ref_or_sig): Likewise.
6478 (follow_die_offset): Likewise.
6479 (follow_die_ref): Likewise.
6480 (dwarf2_fetch_die_loc_sect_off): Likewise.
6481 (dwarf2_fetch_constant_bytes): Likewise.
6482 (dwarf2_fetch_die_type_sect_off): Likewise.
6483 (dwarf2_get_die_type): Likewise.
6484 (follow_die_sig): Likewise.
6485 (decode_locdesc): Likewise.
6486 (dwarf2_per_cu_objfile): Likewise.
6487 (dwarf2_per_cu_text_offset): Likewise.
6488 (init_one_comp_unit): Assign dwarf2_per_objfile instead of
6489 objfile.
6490 (set_die_type): Access objfile through
6491 dwarf2_per_objfile.
6492
6493 2018-01-07 Simon Marchi <simon.marchi@ericsson.com>
6494
6495 * valprint.c (converted_character_d): Remove typedef.
6496 (DEF_VEC_O (converted_character_d)): Remove.
6497 (count_next_character): Use std::vector.
6498 (print_converted_chars_to_obstack): Likewise.
6499 (generic_printstr): Likewise.
6500
6501 2018-01-07 Simon Marchi <simon.marchi@polymtl.ca>
6502
6503 * xml-support.h (struct gdb_xml_value): Add constructor.
6504 <value>: Change type to unique_xmalloc_ptr.
6505 (gdb_xml_value_s): Remove typedef.
6506 (DEF_VEC_O (gdb_xml_value_s)): Remove.
6507 (gdb_xml_element_start_handler): Change parameter type to
6508 std::vector.
6509 (xml_find_attribute): Likewise.
6510 * xml-support.c (xml_find_attribute): Change parameter type to
6511 std::vector and adjust.
6512 (gdb_xml_values_cleanup): Remove.
6513 (gdb_xml_parser::start_element): Adjust to std::vector.
6514 (xinclude_start_include): Change paraeter type to std::vector
6515 and adjust.
6516 * btrace.c (check_xml_btrace_version): Likewise.
6517 (parse_xml_btrace_block): Likewise.
6518 (parse_xml_btrace_pt_config_cpu): Likewise.
6519 (parse_xml_btrace_pt): Likewise.
6520 (parse_xml_btrace_conf_bts): Likewise.
6521 (parse_xml_btrace_conf_pt): Likewise.
6522 * memory-map.c (memory_map_start_memory): Likewise.
6523 (memory_map_start_property): Likewise.
6524 * osdata.c (osdata_start_osdata): Likewise.
6525 (osdata_start_item): Likewise.
6526 (osdata_start_column): Likewise.
6527 * remote.c (start_thread): Likewise.
6528 * solib-aix.c (library_list_start_library): Likewise.
6529 (library_list_start_list): Likewise.
6530 * solib-svr4.c (library_list_start_library): Likewise.
6531 (svr4_library_list_start_list): Likewise.
6532 * solib-target.c (library_list_start_segment): Likewise.
6533 (library_list_start_section): Likewise.
6534 (library_list_start_library): Likewise.
6535 (library_list_start_list): Likewise.
6536 * tracepoint.c (traceframe_info_start_memory): Likewise.
6537 (traceframe_info_start_tvar): Likewise.
6538 * xml-syscall.c (syscall_start_syscall): Likewise.
6539 * xml-tdesc.c (tdesc_start_target): Likewise.
6540 (tdesc_start_feature): Likewise.
6541 (tdesc_start_reg): Likewise.
6542 (tdesc_start_union): Likewise.
6543 (tdesc_start_struct): Likewise.
6544 (tdesc_start_flags): Likewise.
6545 (tdesc_start_enum): Likewise.
6546 (tdesc_start_field): Likewise.
6547 (tdesc_start_enum_value): Likewise.
6548 (tdesc_start_vector): Likewise.
6549
6550 2018-01-07 Simon Marchi <simon.marchi@polymtl.ca>
6551
6552 * extension.h (struct xmethod_worker) <clone>: Remove.
6553 * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
6554 Remove.
6555 (python_xmethod_worker::clone): Remove.
6556 * valops.c (find_overload_match): Use std::move instead of
6557 clone.
6558
6559 2018-01-07 Simon Marchi <simon.marchi@polymtl.ca>
6560
6561 * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
6562 (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
6563 <free_xmethod_worker_data>: Remove.
6564 <get_matching_xmethod_workers>: Chance VEC to std::vector.
6565 <get_xmethod_arg_types>: Remove.
6566 <get_xmethod_result_type>: Remove.
6567 <invoke_xmethod>: Remove.
6568 * extension.c (new_xmethod_worker): Remove.
6569 (clone_xmethod_worker): Remove.
6570 (get_matching_xmethod_workers): Return void, pass std::vector by
6571 pointer.
6572 (get_xmethod_arg_types): Rename to...
6573 (xmethod_worker::get_arg_types): ... this, and adjust.
6574 (get_xmethod_result_type): Rename to...
6575 (xmethod_worker::get_result_type): ... this, and adjust.
6576 (invoke_xmethod): Remove.
6577 (free_xmethod_worker): Remove.
6578 (free_xmethod_worker_vec): Remove.
6579 * extension.h (enum ext_lang_rc): Move here from
6580 extension-priv.h.
6581 (struct xmethod_worker): Add constructor and destructor.
6582 <data>: Remove.
6583 <value>: Remove.
6584 <invoke, clone, do_get_result_type, do_get_arg_types>: New
6585 virtual pure methods.
6586 <get_arg_types, get_result_type>: New methods.
6587 (xmethod_worker_ptr): Remove typedef.
6588 (DEF_VEC_P (xmethod_worker_ptr)): Remove.
6589 (xmethod_worker_vec): Remove typedef.
6590 (xmethod_worker_up): New typedef.
6591 (invoke_xmethod): Remove.
6592 (clone_xmethod_worker): Remove.
6593 (free_xmethod_worker): Remove.
6594 (free_xmethod_worker_vec): Remove.
6595 (get_xmethod_arg_types): Remove.
6596 (get_xmethod_result_type): Remove.
6597 * valops.c (find_method_list): Use std::vector, don't use
6598 intermediate vector.
6599 (value_find_oload_method_list): Use std::vector.
6600 (find_overload_match): Use std::vector.
6601 (find_oload_champ): Use std::vector.
6602 * value.c (value_free): Use operator delete.
6603 (value_of_xmethod): Rename to...
6604 (value_from_xmethod): ... this. Don't assign
6605 xmethod_worker::value, take rvalue-reference.
6606 (result_type_of_xmethod): Adjust.
6607 (call_xmethod): Adjust.
6608 * value.h: Include extension.h.
6609 (struct xmethod_worker): Don't forward-declare.
6610 (value_of_xmethod): Rename to...
6611 (value_from_xmethod): ... this, take rvalue-reference.
6612 * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
6613 (struct python_xmethod_worker): ... this, add constructor and
6614 destructor.
6615 <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
6616 (gdbpy_free_xmethod_worker_data): Rename to...
6617 (python_xmethod_worker::~python_xmethod_worker): ... this and
6618 adjust.
6619 (gdbpy_clone_xmethod_worker_data): Rename to...
6620 (python_xmethod_worker::clone): ... this and adjust.
6621 (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
6622 temporary vector.
6623 (gdbpy_get_xmethod_arg_types): Rename to...
6624 (python_xmethod_worker::do_get_arg_types): ... this and adjust.
6625 (gdbpy_get_xmethod_result_type): Rename to...
6626 (python_xmethod_worker::do_get_result_type): ... this and
6627 adjust.
6628 (gdbpy_invoke_xmethod): Rename to...
6629 (python_xmethod_worker::invoke): ... this and adjust.
6630 (new_python_xmethod_worker): Rename to...
6631 (python_xmethod_worker::python_xmethod_worker): ... this and
6632 adjust.
6633 * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
6634 Remove.
6635 (gdbpy_free_xmethod_worker_data): Remove.
6636 (gdbpy_get_matching_xmethod_workers): Use std::vector.
6637 (gdbpy_get_xmethod_arg_types): Remove.
6638 (gdbpy_get_xmethod_result_type): Remove.
6639 (gdbpy_invoke_xmethod): Remove.
6640 * python/python.c (python_extension_ops): Remove obsolete
6641 callbacks.
6642
6643 2018-01-05 Pedro Alves <palves@redhat.com>
6644
6645 PR gdb/18653
6646 * common/signals-state-save-restore.c
6647 (save_original_signals_state): New parameter 'quiet'. Warn if we
6648 find a custom handler preinstalled, instead of internal erroring.
6649 But only warn if !quiet.
6650 * common/signals-state-save-restore.h
6651 (save_original_signals_state): New parameter 'quiet'.
6652 * main.c (captured_main_1): Move save_original_signals_state call
6653 after option handling, and pass QUIET.
6654
6655 2018-01-05 Pedro Alves <palves@redhat.com>
6656
6657 * spu-tdep.c (spu_catch_start): Pass
6658 symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
6659
6660 2018-01-05 Pedro Alves <palves@redhat.com>
6661
6662 PR gdb/22670
6663 * ada-lang.c (literal_symbol_name_matcher): New function.
6664 (ada_get_symbol_name_matcher): Use it for
6665 symbol_name_match_type::SEARCH_NAME.
6666 * block.c (block_lookup_symbol): New parameter 'match_type'. Pass
6667 it down instead of assuming symbol_name_match_type::FULL.
6668 * block.h (block_lookup_symbol): New parameter 'match_type'.
6669 * c-valprint.c (print_unpacked_pointer): Use
6670 lookup_symbol_search_name instead of lookup_symbol.
6671 * compile/compile-object-load.c (get_out_value_type): Pass down
6672 symbol_name_match_type::SEARCH_NAME.
6673 * cp-namespace.c (cp_basic_lookup_symbol): Pass down
6674 symbol_name_match_type::FULL.
6675 * cp-support.c (cp_get_symbol_name_matcher): Handle
6676 symbol_name_match_type::SEARCH_NAME.
6677 * infrun.c (insert_exception_resume_breakpoint): Use
6678 lookup_symbol_search_name.
6679 * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
6680 * psymtab.c (maintenance_check_psymtabs): Use
6681 symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
6682 * stack.c (print_frame_args): Use lookup_symbol_search_name and
6683 SYMBOL_SEARCH_NAME.
6684 * symtab.c (lookup_local_symbol): Don't demangle the lookup name
6685 if symbol_name_match_type::SEARCH_NAME.
6686 (lookup_symbol_in_language): Pass down
6687 symbol_name_match_type::FULL.
6688 (lookup_symbol_search_name): New.
6689 (lookup_language_this): Pass down
6690 symbol_name_match_type::SEARCH_NAME.
6691 (lookup_symbol_aux, lookup_local_symbol): New parameter
6692 'match_type'. Pass it down.
6693 * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
6694 (lookup_symbol_search_name): New declaration.
6695 (lookup_symbol_in_block): New 'match_type' parameter.
6696
6697 2018-01-05 Pedro Alves <palves@redhat.com>
6698
6699 PR gdb/22670
6700 * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
6701 ada_lookup_symbol.
6702 (ada_lookup_symbol): Reimplement in terms of
6703 ada_lookup_symbol_list, bits factored out from
6704 ada_lookup_encoded_symbol.
6705
6706 2018-01-05 Joel Brobecker <brobecker@adacore.com>
6707
6708 * ada-exp.y (write_object_renaming): When subscripting an array
6709 using a symbol as the index, pass the block in call to
6710 ada_lookup_encoded_symbol when looking that symbol up.
6711
6712 2018-01-05 Jerome Guitton <guitton@adacore.com>
6713
6714 * ada-lang.c (ada_array_length): Use ada_index_type instead of
6715 TYPE_INDEX_TYPE.
6716
6717 2018-01-05 Joel Brobecker <brobecker@adacore.com>
6718
6719 * ada-lang.c (ada_to_fixed_value_create): Add handling of
6720 the case where VALUE_LVAL (val0) is not lval_memory.
6721
6722 2018-01-05 Xavier Roirand <roirand@adacore.com>
6723
6724 * ada-valprint.c (print_optional_low_bound): Handle
6725 character-indexed array printing like boolean-indexed array
6726 printing.
6727
6728 2018-01-05 Joel Brobecker <brobecker@adacore.com>
6729
6730 * NEWS: Create a new section for the next release branch.
6731 Rename the section of the current branch, now that it has
6732 been cut.
6733
6734 2018-01-05 Joel Brobecker <brobecker@adacore.com>
6735
6736 GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
6737 * version.in: Bump version to 8.1.50.DATE-git.
6738
6739 2018-01-03 Xavier Roirand <roirand@adacore.com>
6740
6741 * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
6742 Add field.
6743 * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
6744 Add field.
6745 (default_exception_support_info) <catch_handlers_sym>: Add field.
6746 (exception_support_info_fallback) <catch_handlers_sym>: Add field.
6747 (ada_exception_name_addr_1): Add "catch handlers" handling.
6748 (ada_exception_catchpoint_cond_string) <ex>: New parameter.
6749 Update all callers.
6750 (create_excep_cond_exprs) <ex>: Add parameter.
6751 (re_set_exception): Update create_excep_cond_exprs call.
6752 (print_it_exception, print_one_exception, print_mention_exception)
6753 (print_recreate_exception): Add "catch handler" handling.
6754 (allocate_location_catch_handlers, re_set_catch_handlers)
6755 (check_status_catch_handlers, print_it_catch_handlers)
6756 (print_one_catch_handlers, print_mention_catch_handlers)
6757 (print_recreate_catch_handlers): New function.
6758 (catch_handlers_breakpoint_ops): New variable.
6759 (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
6760 Add parameter. Add "catch handler" handling.
6761 (ada_exception_sym_name, ada_exception_breakpoint_ops):
6762 Add "catch handler" handling.
6763 (ada_exception_catchpoint_cond_string): Add "catch handler"
6764 handling.
6765 (create_ada_exception_catchpoint): Update create_excep_cond_exprs
6766 call.
6767 (catch_ada_handlers_command): New function.
6768 (initialize_ada_catchpoint_ops): Initialize "catch handlers"
6769 operations structure.
6770 (_initialize_ada_language): Add "catch handlers" command entry.
6771 * NEWS: Document "catch handlers" feature.
6772
6773 2018-01-02 Joel Brobecker <brobecker@adacore.com>
6774
6775 * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
6776 account when creating the array type of the slice.
6777 (ada_value_slice): Likewise.
6778
6779 2018-01-02 Joel Brobecker <brobecker@adacore.com>
6780
6781 * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
6782 New enum value.
6783 (create_array_type_with_stride): Add byte_stride_prop parameter.
6784 * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
6785 New parameter. Update all callers in this file.
6786 (array_type_has_dynamic_stride): New function.
6787 (is_dynamic_type_internal, resolve_dynamic_array): Add handling
6788 of arrays with dynamic byte strides.
6789 * dwarf2read.c (read_array_type): Add support for dynamic
6790 DW_AT_byte_stride attributes.
6791
6792 2018-01-02 Joel Brobecker <brobecker@adacore.com>
6793
6794 * dwarf2read.c (read_unspecified_type): Treat
6795 DW_TAG_enumeration_type DIEs from Ada units as stubs.
6796
6797 2018-01-01 Joel Brobecker <brobecker@adacore.com>
6798
6799 Update copyright year range in all GDB files.
6800
6801 2018-01-01 Joel Brobecker <brobecker@adacore.com>
6802
6803 * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
6804 and gdb/testsuite/gdb.base/step-line.c.
6805
6806 2018-01-01 Joel Brobecker <brobecker@adacore.com>
6807
6808 * copyright.py (main): Dump the contents of
6809 MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
6810 even if BY_HAND is empty.
6811
6812 2018-01-01 Joel Brobecker <brobecker@adacore.com>
6813
6814 * top.c (print_gdb_version): Update Copyright year in version
6815 message.
6816
6817 2018-01-01 Joel Brobecker <brobecker@adacore.com>
6818
6819 * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
6820
6821 For older changes see ChangeLog-2017.
6822 \f
6823 Local Variables:
6824 mode: change-log
6825 left-margin: 8
6826 fill-column: 74
6827 version-control: never
6828 coding: utf-8
6829 End:
This page took 0.263211 seconds and 5 git commands to generate.