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