+2018-02-26 Tom Tromey <tom@tromey.com>
+
+ PR python/16497:
+ * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag. Fix
+ off-by-one in py_end computation.
+ * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
+ PRINT_MORE_FRAMES.
+ * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
+ constant.
+
+2018-02-26 Tom Tromey <tom@tromey.com>
+
+ * dwarf2read.c (struct variant_field): New.
+ (struct nextfield) <variant>: New field.
+ (dwarf2_add_field): Handle DW_TAG_variant_part.
+ (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
+ discriminated union.
+ (read_structure_type): Handle DW_TAG_variant_part.
+ (handle_struct_member_die): New function, extracted from
+ process_structure_scope. Handle DW_TAG_variant.
+ (process_structure_scope): Handle discriminated unions. Call
+ handle_struct_member_die.
+
+2018-02-26 Tom Tromey <tom@tromey.com>
+
+ * rust-lang.h (rust_last_path_segment): Declare.
+ * rust-lang.c (rust_last_path_segment): Now public. Change
+ contract.
+ (struct disr_info): Remove.
+ (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
+ (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
+ (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
+ (rust_enum_p, rust_enum_variant): New function.
+ (rust_underscore_fields): Remove "offset" parameter.
+ (rust_print_enum): New function.
+ (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
+ <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
+ (rust_print_struct_def): Add "for_rust_enum" parameter. Handle
+ enums.
+ (rust_internal_print_type): New function, from rust_print_type.
+ Remove enum code.
+ (rust_print_type): Call rust_internal_print_type.
+ (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
+ Update enum handling.
+ * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
+ (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
+ (rust_union_quirks): New functions.
+ (process_full_comp_unit, process_full_type_unit): Call
+ rust_union_quirks.
+ (process_structure_scope): Update rust_unions if necessary.
+
+2018-02-26 Tom Tromey <tom@tromey.com>
+
+ * value.h (value_union_variant): Declare.
+ * valops.c (value_union_variant): New function.
+ * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
+ (struct discriminant_info): New.
+ (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
+ enumerator.
+ (struct main_type) <flag_discriminated_union>: New field.
+
+2018-02-26 Tom Tromey <tom@tromey.com>
+
+ * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
+ unittests/unpack-selftests.c.
+ * unittests/unpack-selftests.c: New file.
+ * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
+
+2018-02-26 Yao Qi <yao.qi@linaro.org>
+
+ * dwarf2read.c (struct partial_die_info) <read>: New method.
+ (read_partial_die): Remove the declaration.
+ (load_partial_dies): Update.
+ (partial_die_info::partial_die_info):
+ (read_partial_die): Change it to partial_die_info::read.
+
+2018-02-26 Yao Qi <yao.qi@linaro.org>
+
+ * dwarf2read.c (struct partial_die_info) <fixup>: New method.
+ (fixup_partial_die): Remove declaration.
+ (scan_partial_symbols): Update.
+ (partial_die_parent_scope): Likewise.
+ (partial_die_full_name): Likewise.
+ (fixup_partial_die): Change it to partial_die_info::fixup.
+
+2018-02-26 Yao Qi <yao.qi@linaro.org>
+
+ * dwarf2read.c (read_partial_die): Update the declaration.
+ (load_partial_dies): Caller update.
+ (read_partial_die): Remove one argument abbrev_len.
+
+2018-02-26 Yao Qi <yao.qi@linaro.org>
+
+ * dwarf2read.c (struct partial_die_info): Add ctor, delete
+ assignment operator.
+ (load_partial_dies): Use ctor and copy ctor.
+ (read_partial_die): Update.
+ (dwarf2_cu::find_partial_die): Use ctor.
+
+2018-02-26 Yao Qi <yao.qi@linaro.org>
+
+ * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
+ (find_partial_die_in_comp_unit): Change it to
+ dwarf2_cu::find_partial_die.
+ (find_partial_die): Update.
+
+2018-02-26 Yao Qi <yao.qi@linaro.org>
+
+ * dwarf2read.c (read_partial_die): Remove the code checking abbrev
+ is NULL.
+
+2018-02-26 Yao Qi <yao.qi@linaro.org>
+
+ * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
+
+2018-02-26 Alan Hayward <alan.hayward@arm.com>
+
+ * arch/amd64.h: Use common/tdesc.h.
+ * arch/i386.c: Likewise.
+ * arch/i386.h: Likewise.
+ * arch/tic6x.c: Likewise.
+ * arch/tdesc.h: Move file from here...
+ * common/tdesc.h: ...to here.
+ * features/aarch64-core.c: Regenerate.
+ * features/aarch64-fpu.c: Regenerate.
+ * features/i386/32bit-avx.c: Regenerate.
+ * features/i386/32bit-avx512.c: Regenerate.
+ * features/i386/32bit-core.c: Regenerate.
+ * features/i386/32bit-linux.c: Regenerate.
+ * features/i386/32bit-mpx.c: Regenerate.
+ * features/i386/32bit-pkeys.c: Regenerate.
+ * features/i386/32bit-sse.c: Regenerate.
+ * features/i386/64bit-avx.c: Regenerate.
+ * features/i386/64bit-avx512.c: Regenerate.
+ * features/i386/64bit-core.c: Regenerate.
+ * features/i386/64bit-linux.c: Regenerate.
+ * features/i386/64bit-mpx.c: Regenerate.
+ * features/i386/64bit-pkeys.c: Regenerate.
+ * features/i386/64bit-segments.c: Regenerate.
+ * features/i386/64bit-sse.c: Regenerate.
+ * features/i386/x32-core.c: Regenerate.
+ * features/tic6x-c6xp.c: Regenerate.
+ * features/tic6x-core.c: Regenerate.
+ * features/tic6x-gp.c: Regenerate.
+ * target-descriptions.c: Use common/tdesc.h.
+ * target-descriptions.h: Likewise.
+
+2018-02-24 Tom Tromey <tom@tromey.com>
+
+ * linux-thread-db.c (try_thread_db_load_from_pdir_1)
+ (try_thread_db_load_from_dir, thread_db_load_search): Use
+ std::string.
+ (info_auto_load_libthread_db_compare): Return bool. Change
+ argument types.
+ (info_auto_load_libthread_db): Use std::vector, std::string.
+ Remove cleanups.
+
+2018-02-24 Tom Tromey <tom@tromey.com>
+
+ * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
+ std::string.
+ * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
+ std::string*.
+ * gdbarch.c: Rebuild.
+ * gdbarch.h: Rebuild.
+ * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
+ * arch-utils.h (default_fast_tracepoint_valid_at): Update.
+ * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
+ std::string*.
+
+2018-02-23 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * gdbtypes.h (sect_offset): Change type to uint64_t.
+ (sect_offset_str): New function.
+ * dwarf2read.c (create_addrmap_from_aranges): Use
+ sect_offset_str.
+ (error_check_comp_unit_head): Likewise.
+ (create_debug_type_hash_table): Likewise.
+ (read_cutu_die_from_dwo): Likewise.
+ (init_cutu_and_read_dies): Likewise.
+ (init_cutu_and_read_dies_no_follow): Likewise.
+ (process_psymtab_comp_unit_reader): Likewise.
+ (partial_die_parent_scope): Likewise.
+ (peek_die_abbrev): Likewise.
+ (process_queue): Likewise.
+ (dwarf2_physname): Likewise.
+ (read_namespace_alias): Likewise.
+ (read_import_statement): Likewise.
+ (create_dwo_cu_reader): Likewise.
+ (create_cus_hash_table): Likewise.
+ (lookup_dwo_cutu): Likewise.
+ (inherit_abstract_dies): Likewise.
+ (read_func_scope): Likewise.
+ (read_call_site_scope): Likewise.
+ (dwarf2_add_member_fn): Likewise.
+ (read_common_block): Likewise.
+ (read_module_type): Likewise.
+ (read_typedef): Likewise.
+ (read_subrange_type): Likewise.
+ (load_partial_dies): Likewise.
+ (read_partial_die): Likewise.
+ (find_partial_die): Likewise.
+ (read_str_index): Likewise.
+ (dwarf2_string_attr): Likewise.
+ (build_error_marker_type): Likewise.
+ (lookup_die_type): Likewise.
+ (dump_die_shallow): Likewise.
+ (follow_die_ref): Likewise.
+ (dwarf2_fetch_die_loc_sect_off): Likewise.
+ (dwarf2_fetch_constant_bytes): Likewise.
+ (follow_die_sig): Likewise.
+ (get_signatured_type): Likewise.
+ (get_DW_AT_signature_type): Likewise.
+ (dwarf2_find_containing_comp_unit): Likewise.
+ (set_die_type): Likewise.
+
+2018-02-21 John Baldwin <jhb@FreeBSD.org>
+
+ * arch/aarch64.c: Include "common-defs.h".
+ * arch/amd64.c: Likewise.
+ * arch/i386.c: Likewise.
+
+2018-02-21 Tom Tromey <tom@tromey.com>
+
+ * value.h: (extract_field_op): Update.
+ * eval.c (extract_field_op): Return a const char *.
+ * expression.h (parse_expression_for_completion): Update.
+ * completer.c (complete_expression): Update.
+ (add_struct_fields): Make fieldname const.
+ * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
+ (mark_completion_tag, parse_exp_in_context_1): Update.
+ (parse_expression_for_completion): Change "name" to
+ unique_xmalloc_ptr*.
+
+2018-02-21 Tom Tromey <tom@tromey.com>
+
+ * infcall.c (call_function_by_hand_dummy): Use std::vector.
+
2018-02-21 Yao Qi <yao.qi@linaro.org>
* avr-tdep.c (avr_read_pc): Change parameter type to