GDB (xrefs)
|
#include "gdbtypes.h"
Public Member Functions | |
struct type * | type () const |
void | set_type (struct type *type) |
const char * | name () const |
void | set_name (const char *name) |
bool | is_artificial () const |
void | set_is_artificial (bool is_artificial) |
unsigned int | bitsize () const |
void | set_bitsize (unsigned int bitsize) |
bool | is_packed () const |
bool | is_static () const |
field_loc_kind | loc_kind () const |
LONGEST | loc_bitpos () const |
void | set_loc_bitpos (LONGEST bitpos) |
LONGEST | loc_enumval () const |
void | set_loc_enumval (LONGEST enumval) |
CORE_ADDR | loc_physaddr () const |
void | set_loc_physaddr (CORE_ADDR physaddr) |
const char * | loc_physname () const |
void | set_loc_physname (const char *physname) |
dwarf2_locexpr_baton * | loc_dwarf_block () const |
void | set_loc_dwarf_block (dwarf2_locexpr_baton *dwarf_block) |
Public Attributes | |
union field_location | m_loc |
unsigned int | m_artificial: 1 |
__extension__ enum field_loc_kind | m_loc_kind: 3 |
unsigned int | m_bitsize: 28 |
struct type * | m_type |
const char * | m_name |
Definition at line 545 of file gdbtypes.h.
|
inline |
Definition at line 577 of file gdbtypes.h.
References m_bitsize.
Referenced by ada_is_any_packed_array_type(), ada_is_unconstrained_packed_array_type(), ada_template_to_fixed_record_type_1(), ada_type_of_array(), ada_value_primitive_field(), ada_value_print_array(), ada_value_ptr_subscript(), ada_value_slice(), ada_value_slice_from_ptr(), ada_value_subscript(), amd64_classify_aggregate_field(), amd64_has_unaligned_fields(), arm_return_in_memory(), type::bit_stride(), c_type_print_base_1(), c_type_print_base_struct_union(), check_types_equal(), compile_cplus_convert_struct_or_union_members(), compute_variant_fields_inner(), convert_field(), convert_struct_or_union(), copy_type_recursive(), cp_print_value_fields(), decode_packed_array_bitsize(), desc_bound_bitsize(), dwarf2_add_field(), expr::ada_funcall_operation::evaluate(), expr::array_operation::evaluate_struct_tuple(), fat_pntr_bounds_bitsize(), fat_pntr_data_bitsize(), find_struct_field(), gen_primitive_field(), m2_record_fields(), parse_symbol(), pascal_object_print_value_fields(), value::primitive_field(), print_array_type(), print_field_values(), read_one_struct_field(), recursive_dump_type(), recursively_update_array_bitsize(), resolve_dynamic_array_or_string_1(), resolve_dynamic_struct(), set_bitsize(), store_regs(), to_fixed_array_type(), pascal_language::type_print_base(), unpack_field_as_long(), unpack_value_field_as_long(), print_offset_data::update(), update_static_array_size(), val_print_packed_array_elements(), val_print_type_code_flags(), value_field_bitfield(), and value_subscript_packed().
|
inline |
Definition at line 567 of file gdbtypes.h.
References m_artificial.
Referenced by c_type_print_args(), c_type_print_base_struct_union(), check_types_equal(), compare_parameters(), compile_cplus_convert_func(), compile_cplus_convert_struct_or_union_members(), convert_field(), copy_type_recursive(), cp_type_print_method_args(), cplus_class_num_children(), cplus_describe_child(), dwarf2_add_member_fn(), dwarf2_compute_name(), gdbscm_field_artificial_p(), i386_windows_push_dummy_call(), read_subroutine_type(), rust_enum_variant(), rust_print_struct_def(), and set_is_artificial().
|
inline |
Definition at line 587 of file gdbtypes.h.
References m_bitsize.
Referenced by amd64_has_unaligned_fields(), c_type_print_base_struct_union(), cp_print_value_fields(), gen_primitive_field(), gen_struct_elt_for_reference(), m2_record_fields(), pascal_object_print_value_fields(), print_field_values(), pascal_language::type_print_base(), print_offset_data::update(), and value_struct_elt_for_reference().
|
inline |
Definition at line 593 of file gdbtypes.h.
References FIELD_LOC_KIND_PHYSADDR, FIELD_LOC_KIND_PHYSNAME, and m_loc_kind.
Referenced by aapcs_is_vfp_call_or_return_candidate_1(), amd64_classify_aggregate_field(), amd64_has_unaligned_fields(), arm_vfp_cprc_sub_candidate(), c_type_print_base_struct_union(), compile_cplus_convert_struct_or_union_members(), compute_struct_member(), convert_field(), cp_print_value_fields(), expr::array_operation::evaluate_struct_tuple(), gen_struct_elt_for_reference(), gen_struct_ref_recursive(), gen_trace_static_fields(), generate_vla_size(), gnuv3_pass_by_reference(), i386_16_byte_align_p(), is_dynamic_type_internal(), mips_n32n64_fp_arg_chunk_p(), pascal_object_print_value_fields(), pass_in_v_vfp_candidate(), ppc64_aggregate_candidate(), resolve_dynamic_struct(), resolve_dynamic_union(), rust_print_struct_def(), rust_underscore_fields(), struct_field_searcher::search(), type_align(), pascal_language::type_print_base(), print_offset_data::update(), rust_language::val_print_struct(), value_struct_element_index(), value_struct_elt_bitpos(), and value_struct_elt_for_reference().
|
inline |
Definition at line 611 of file gdbtypes.h.
References field_location::bitpos, FIELD_LOC_KIND_BITPOS, m_loc, and m_loc_kind.
Referenced by ada_aligned_value_addr(), ada_index_struct_field_1(), ada_search_struct_field(), ada_template_to_fixed_record_type_1(), ada_value_primitive_field(), amd64_classify_aggregate_field(), amd64_has_unaligned_fields(), riscv_struct_info::analyse_inner(), append_composite_type_field_aligned(), arm_return_in_memory(), c_type_print_base_1(), c_type_print_base_struct_union(), c_value_print_struct(), check_types_equal(), compile_cplus_convert_struct_or_union_members(), compute_variant_fields_inner(), convert_field(), convert_struct_or_union(), copy_type_recursive(), cp_find_class_member(), cp_print_value_fields(), desc_bound_bitpos(), dwarf2_add_field(), dynamic_array_type(), expr::array_operation::evaluate_struct_tuple(), fat_pntr_bounds_bitpos(), fat_pntr_data_bitpos(), find_struct_field(), gdbscm_field_bitpos(), gdbscm_field_bitsize(), gen_primitive_field(), gnuv2_baseclass_offset(), lookup_struct_elt(), m2_print_long_set(), m2_print_unbounded_array(), mips_n32n64_fp_arg_chunk_p(), mips_n32n64_return_value(), mips_o32_return_value(), pascal_is_string_type(), pascal_object_print_value_fields(), value::primitive_field(), print_field_values(), quirk_rust_enum(), read_one_struct_field(), recursive_dump_type(), resolve_dynamic_struct(), rust_composite_type(), struct_field_searcher::search(), sparc64_extract_floating_fields(), sparc64_store_floating_fields(), store_regs(), to_record_with_fixed_variant_part(), unpack_field_as_long(), unpack_value_field_as_long(), print_offset_data::update(), val_print_type_code_flags(), value_field_bitfield(), pascal_language::value_print_inner(), value_struct_elt_bitpos(), value_struct_elt_for_reference(), and vtable_address_point_offset().
|
inline |
Definition at line 659 of file gdbtypes.h.
References field_location::dwarf_block, FIELD_LOC_KIND_DWARF_BLOCK, m_loc, and m_loc_kind.
Referenced by check_types_equal(), copy_type_recursive(), gnuv3_baseclass_offset(), and resolve_dynamic_struct().
|
inline |
Definition at line 623 of file gdbtypes.h.
References field_location::enumval, FIELD_LOC_KIND_ENUMVAL, m_loc, and m_loc_kind.
Referenced by ada_atr_enum_val(), ada_discrete_type_high_bound(), ada_discrete_type_low_bound(), ada_identical_enum_types_p(), c_type_print_base_1(), check_types_equal(), compile_cplus_convert_enum(), expr::convert_char_literal(), convert_enum(), convert_field(), copy_type_recursive(), discrete_position(), enum_constant_from_type(), gdbscm_field_enumval(), generic_val_print_enum_1(), get_discrete_high_bound(), get_discrete_low_bound(), m2_enum(), print_enum_type(), print_optional_low_bound(), print_type_scalar(), quirk_rust_enum(), recursive_dump_type(), pascal_language::type_print_base(), and val_atr().
|
inline |
Definition at line 606 of file gdbtypes.h.
References m_loc_kind.
Referenced by riscv_struct_info::analyse_inner(), check_types_equal(), compile_cplus_convert_enum(), compile_cplus_convert_struct_or_union_members(), compute_variant_fields_inner(), convert_field(), copy_type_recursive(), enum_constant_from_type(), gen_static_field(), gnuv3_baseclass_offset(), is_dynamic_type_internal(), quirk_rust_enum(), resolve_dynamic_struct(), and value_static_field().
|
inline |
Definition at line 635 of file gdbtypes.h.
References FIELD_LOC_KIND_PHYSADDR, m_loc, m_loc_kind, and field_location::physaddr.
Referenced by check_types_equal(), compile_cplus_convert_struct_or_union_members(), copy_type_recursive(), gen_static_field(), and value_static_field().
|
inline |
Definition at line 647 of file gdbtypes.h.
References FIELD_LOC_KIND_PHYSNAME, m_loc, m_loc_kind, and field_location::physname.
Referenced by check_types_equal(), compile_cplus_convert_struct_or_union_members(), copy_type_recursive(), gen_static_field(), and value_static_field().
|
inline |
Definition at line 557 of file gdbtypes.h.
References m_name.
Referenced by gdb.printing.FlagEnumerationPrinter::__call__(), gdb.dap.varref.BaseReference::__init__(), gdb.disassembler.Disassembler::__init__(), gdb.printing.SubPrettyPrinter::__init__(), gdb.types.TypePrinter::__init__(), gdb.xmethod.XMethod::__init__(), gdb.xmethod.XMethodMatcher::__init__(), gdb.printing.PrettyPrinter::__init__(), ada_fixup_array_indexes_type(), ada_get_base_type(), ada_get_field_index(), ada_identical_enum_types_p(), ada_in_variant(), ada_index_struct_field_1(), ada_is_aligner_type(), ada_is_ignored_field(), ada_is_others_clause(), ada_is_parent_field(), ada_is_wrapper_field(), ada_print_scalar(), ada_search_struct_field(), ada_template_to_fixed_record_type_1(), ada_val_print_enum(), ada_varobj_describe_struct_child(), expr::add_struct_fields(), amd_dbgapi_register_type_to_gdb_type(), c_describe_child(), c_is_path_expr_parent(), c_type_print_base_1(), c_type_print_base_struct_union(), check_field(), check_types_equal(), compile_cplus_convert_enum(), compile_cplus_convert_struct_or_union_members(), completion_list_add_fields(), expr::convert_char_literal(), convert_enum(), convert_field(), convert_struct_or_union(), copy_type_recursive(), cp_print_class_member(), cp_print_value_fields(), cplus_describe_child(), dynamic_array_type(), enum_constant_from_type(), expr::array_operation::evaluate_struct_tuple(), f_language::f_type_print_base(), field_alignment(), field_name(), find_struct_field(), gccgo_string_p(), gdbscm_field_name(), gdbscm_type_field(), gdbscm_type_has_field_p(), gen_struct_elt_for_reference(), gen_struct_ref_recursive(), generic_val_print_enum_1(), is_dynamic_field(), lookup_struct_elt(), m2_enum(), m2_is_long_set(), m2_is_unbounded_array(), m2_record_fields(), pascal_is_string_type(), pascal_object_print_value_fields(), print_choices(), rust_language::print_enum(), print_enum_type(), print_field_values(), print_selected_record_field_types(), print_type_scalar(), print_variant_part(), process_structure_scope(), quirk_ada_thick_pointer_struct(), quirk_gcc_member_function_pointer(), quirk_rust_enum(), read_tilde_fields(), recursive_dump_type(), rust_compute_range(), rust_get_trait_object_pointer(), rust_internal_print_type(), rust_print_struct_def(), rust_range_type_p(), rust_slice_type_p(), rust_subscript(), rust_underscore_fields(), struct_field_searcher::search(), set_name(), store_regs(), template_to_static_fixed_type(), gdb.dap.varref.BaseReference::to_object(), pascal_language::type_print_base(), typy_getitem(), typy_has_key(), rust_language::val_print_struct(), val_print_type_code_flags(), f_language::value_print_inner(), value_struct_elt_for_reference(), and vb_match().
|
inline |
Definition at line 582 of file gdbtypes.h.
References bitsize(), and m_bitsize.
Referenced by ada_template_to_fixed_record_type_1(), ada_type_of_array(), append_flags_type_field(), coff_read_enum_type(), constrained_packed_array_type(), copy_type_recursive(), create_array_type_with_stride(), dwarf2_add_field(), make_gdb_type(), read_baseclasses(), read_cpp_abbrev(), read_enum_type(), read_one_struct_field(), recognize_bound_expression(), recursively_update_array_bitsize(), to_fixed_array_type(), to_record_with_fixed_variant_part(), and update_static_array_size().
|
inline |
Definition at line 572 of file gdbtypes.h.
References is_artificial(), and m_artificial.
Referenced by copy_type_recursive(), define_symbol(), dwarf2_add_field(), buildsym_compunit::finish_block_internal(), parse_symbol(), quirk_ada_thick_pointer(), quirk_rust_enum(), and read_subroutine_type().
|
inline |
Definition at line 617 of file gdbtypes.h.
References field_location::bitpos, FIELD_LOC_KIND_BITPOS, m_loc, and m_loc_kind.
Referenced by ada_template_to_fixed_record_type_1(), append_flags_type_field(), build_std_type_info_type(), copy_type_recursive(), dwarf2_add_field(), get_gdb_vtable_type(), handle_member_location(), make_gdb_type(), quirk_ada_thick_pointer(), quirk_rust_enum(), read_baseclasses(), read_cpp_abbrev(), read_one_struct_field(), recognize_bound_expression(), resolve_dynamic_struct(), and rust_composite_type().
|
inline |
Definition at line 665 of file gdbtypes.h.
References field_location::dwarf_block, FIELD_LOC_KIND_DWARF_BLOCK, m_loc, and m_loc_kind.
Referenced by copy_type_recursive(), and handle_member_location().
|
inline |
Definition at line 629 of file gdbtypes.h.
References field_location::enumval, FIELD_LOC_KIND_ENUMVAL, m_loc, and m_loc_kind.
Referenced by amd_dbgapi_register_type_to_gdb_type(), coff_read_enum_type(), copy_type_recursive(), create_enum(), make_gdb_type(), read_enum_type(), and update_enumeration_type_from_children().
|
inline |
Definition at line 641 of file gdbtypes.h.
References FIELD_LOC_KIND_PHYSADDR, m_loc, m_loc_kind, and field_location::physaddr.
Referenced by copy_type_recursive().
|
inline |
Definition at line 653 of file gdbtypes.h.
References FIELD_LOC_KIND_PHYSNAME, m_loc, m_loc_kind, and field_location::physname.
Referenced by copy_type_recursive(), dwarf2_add_field(), and read_one_struct_field().
|
inline |
Definition at line 562 of file gdbtypes.h.
References m_name, and name().
Referenced by ada_template_to_fixed_record_type_1(), amd_dbgapi_register_type_to_gdb_type(), append_flags_type_field(), build_std_type_info_type(), coff_read_enum_type(), copy_type_recursive(), create_enum(), define_symbol(), dwarf2_add_field(), get_gdb_vtable_type(), quirk_ada_thick_pointer(), quirk_rust_enum(), read_baseclasses(), read_cpp_abbrev(), read_enum_type(), read_one_struct_field(), rust_composite_type(), template_to_static_fixed_type(), to_record_with_fixed_variant_part(), and update_enumeration_type_from_children().
|
inline |
Definition at line 552 of file gdbtypes.h.
References m_type, and type().
Referenced by ada_fixup_array_indexes_type(), ada_template_to_fixed_record_type_1(), append_flags_type_field(), build_std_type_info_type(), copy_type_recursive(), create_set_type(), define_symbol(), dwarf2_add_field(), fake_method::fake_method(), buildsym_compunit::finish_block_internal(), get_gdb_vtable_type(), lookup_function_type_with_arguments(), parse_symbol(), quirk_ada_thick_pointer(), quirk_ada_thick_pointer_struct(), quirk_rust_enum(), read_baseclasses(), read_cpp_abbrev(), read_one_struct_field(), read_subroutine_type(), resolve_dynamic_struct(), resolve_dynamic_union(), rust_composite_type(), type::set_index_type(), template_to_static_fixed_type(), and to_record_with_fixed_variant_part().
|
inline |
Definition at line 547 of file gdbtypes.h.
References m_type.
Referenced by aapcs_is_vfp_call_or_return_candidate_1(), ada_aligned_type(), ada_aligned_value_addr(), ada_array_bound_from_type(), ada_fixup_array_indexes_type(), ada_get_base_type(), ada_index_struct_field_1(), ada_is_ignored_field(), ada_is_redundant_index_type_desc(), ada_is_unconstrained_packed_array_type(), ada_is_variant_part(), ada_parent_type(), ada_print_symbol_signature(), ada_search_struct_field(), ada_template_to_fixed_record_type_1(), ada_value_primitive_field(), ada_varobj_struct_elt(), expr::add_struct_fields(), alloc_rust_variant(), amd64_classify_aggregate_field(), amd64_has_unaligned_fields(), amd_dbgapi_register_type_to_gdb_type(), riscv_struct_info::analyse_inner(), arm_return_in_memory(), arm_vfp_cprc_sub_candidate(), build_std_type_info_type(), c_describe_child(), c_get_string(), c_type_print_args(), c_type_print_base_1(), c_type_print_base_struct_union(), c_value_print_struct(), call_function_by_hand_dummy(), check_types_equal(), compare_parameters(), compile_cplus_convert_func(), compile_cplus_convert_struct_or_union_members(), compute_struct_member(), compute_variant_fields_inner(), constrained_packed_array_type(), convert_field(), convert_func(), convert_struct_or_union(), copy_type_recursive(), cp_find_class_member(), cp_print_value_fields(), cp_type_print_method_args(), cplus_describe_child(), decode_packed_array_bitsize(), desc_bound_bitsize(), dwarf2_add_field(), dwarf2_add_member_fn(), dwarf2_compute_name(), dynamic_array_type(), eval_op_m2_high(), eval_op_m2_subscript(), expr::operation::evaluate_funcall(), expr::rust_structop::evaluate_funcall(), expr::array_operation::evaluate_struct_tuple(), f_language::f_type_print_base(), f_language::f_type_print_varspec_suffix(), fat_pntr_bounds_bitsize(), fat_pntr_data_bitsize(), find_oload_champ(), find_struct_field(), fp_register_arg_p(), gccgo_string_p(), gdbscm_field_type(), gen_primitive_field(), gen_static_field(), generate_vla_size(), get_baseclass_offset(), get_gdb_vtable_type(), get_long_set_bounds(), get_symbol_field_type(), gnuv2_baseclass_offset(), gnuv3_baseclass_offset(), gnuv3_dynamic_class(), gnuv3_find_method_in(), gnuv3_pass_by_reference(), i386_16_byte_align_p(), i386_darwin_arg_type_alignment(), i386_reg_struct_return_p(), i386_return_value(), i386_windows_push_dummy_call(), type::index_type(), iq2000_pass_8bytetype_by_address(), is_copy_or_move_constructor_type(), is_dynamic_field(), is_dynamic_type_internal(), is_float_or_hfa_type_recurse(), is_scalar_type_recursive(), lookup_struct_elt(), lookup_struct_elt_type(), m2_is_long_set(), m2_is_long_set_of_type(), m2_is_unbounded_array(), m2_long_set(), m2_print_long_set(), m2_print_unbounded_array(), m2_procedure(), m2_record_fields(), m2_unbounded_array(), m68k_svr4_return_value(), make_array_descriptor(), mips_eabi_return_value(), mips_n32n64_fp_arg_chunk_p(), mips_n32n64_return_value(), mips_o32_return_value(), mips_type_needs_double_align(), mn10300_type_align(), mn10300_use_struct_convention(), nds32_check_calling_use_fpr(), pascal_is_string_type(), pascal_object_print_value_fields(), pass_in_v_vfp_candidate(), ppc64_aggregate_candidate(), ppc64_sysv_abi_push_param(), value::primitive_field(), print_array_type(), rust_language::print_enum(), print_field_values(), pascal_language::print_func_args(), print_func_type(), print_go_string(), print_selected_record_field_types(), print_variant_clauses(), print_variant_clauses(), print_variant_part(), print_variant_part(), print_variant_part(), quirk_ada_thick_pointer(), quirk_ada_thick_pointer_struct(), quirk_gcc_member_function_pointer(), quirk_rust_enum(), rank_one_type_parm_set(), read_baseclasses(), read_fat_string_value(), read_one_struct_field(), recognize_bound_expression(), recursive_dump_type(), resolve_dynamic_struct(), resolve_dynamic_union(), riscv_print_one_register_info(), rust_composite_type(), rust_internal_print_type(), rust_print_struct_def(), rust_subscript(), struct_field_searcher::search(), set_type(), sh_treat_as_flt_p(), sh_use_struct_convention(), slot_alignment_is_next_even(), sparc64_16_byte_align_p(), sparc64_extract_floating_fields(), sparc64_store_floating_fields(), static_unwrap_type(), store_regs(), template_to_static_fixed_type(), to_fixed_array_type(), to_fixed_variant_branch_type(), to_record_with_fixed_variant_part(), type_align(), pascal_language::type_print_base(), types_equal(), unpack_field_as_long(), unpack_value_field_as_long(), print_offset_data::update(), v850_eight_byte_align_p(), v850_use_struct_convention(), val_print_type_code_flags(), value_field_bitfield(), f_language::value_print_inner(), pascal_language::value_print_inner(), value_static_field(), value_struct_elt_bitpos(), value_struct_elt_for_reference(), vb_match(), vtable_ptrdiff_type(), and yyparse().
unsigned int field::m_artificial |
For a function or member type, this is 1 if the argument is marked artificial. Artificial arguments should not be shown to the user. For TYPE_CODE_RANGE it is set if the specific bound is not defined.
Definition at line 678 of file gdbtypes.h.
Referenced by is_artificial(), and set_is_artificial().
unsigned int field::m_bitsize |
Size of this field, in bits, or zero if not packed. If non-zero in an array type, indicates the element size in bits (used only in Ada at the moment). For an unpacked field, the field's type's length says how many bytes the field occupies.
Definition at line 690 of file gdbtypes.h.
Referenced by bitsize(), is_packed(), and set_bitsize().
union field_location field::m_loc |
Definition at line 671 of file gdbtypes.h.
Referenced by loc_bitpos(), loc_dwarf_block(), loc_enumval(), loc_physaddr(), loc_physname(), set_loc_bitpos(), set_loc_dwarf_block(), set_loc_enumval(), set_loc_physaddr(), and set_loc_physname().
__extension__ enum field_loc_kind field::m_loc_kind |
Discriminant for union field_location.
Definition at line 682 of file gdbtypes.h.
Referenced by is_static(), loc_bitpos(), loc_dwarf_block(), loc_enumval(), loc_kind(), loc_physaddr(), loc_physname(), set_loc_bitpos(), set_loc_dwarf_block(), set_loc_enumval(), set_loc_physaddr(), and set_loc_physname().
const char* field::m_name |
Name of field, value or argument. NULL for range bounds, array domains, and member function arguments.
Definition at line 702 of file gdbtypes.h.
Referenced by name(), and set_name().
struct type* field::m_type |
In a struct or union type, type of this field.
Definition at line 696 of file gdbtypes.h.
Referenced by set_type(), and type().