Make "bt N" print correct number of frames when using a frame filter
[deliverable/binutils-gdb.git] / gdb / ChangeLog
index e58bc386e3ed77aa0822c23675640a9d865eebe3..906d14c1919fb0a55a9b0f31c78e4159c79f1e49 100644 (file)
@@ -1,3 +1,241 @@
+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
This page took 0.030678 seconds and 4 git commands to generate.