GDB (xrefs)
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
type Struct Reference

#include "gdbtypes.h"

Public Member Functions

type_code code () const
 
void set_code (type_code code)
 
const char * name () const
 
void set_name (const char *name)
 
ULONGEST length () const
 
void set_length (ULONGEST length)
 
unsigned int num_fields () const
 
void set_num_fields (unsigned int num_fields)
 
struct fieldfields () const
 
struct fieldfield (int idx) const
 
void set_fields (struct field *fields)
 
void alloc_fields (unsigned int nfields, bool init=true)
 
void copy_fields (struct type *src)
 
void copy_fields (std::vector< struct field > &src)
 
typeindex_type () const
 
struct typetarget_type () const
 
void set_target_type (struct type *target_type)
 
void set_index_type (type *index_type)
 
const type_instance_flags instance_flags () const
 
void set_instance_flags (type_instance_flags flags)
 
range_boundsbounds () const
 
void set_bounds (range_bounds *bounds)
 
ULONGEST bit_stride () const
 
bool is_unsigned () const
 
void set_is_unsigned (bool is_unsigned)
 
bool has_no_signedness () const
 
void set_has_no_signedness (bool has_no_signedness)
 
bool is_stub () const
 
void set_is_stub (bool is_stub)
 
bool target_is_stub () const
 
void set_target_is_stub (bool target_is_stub)
 
bool is_prototyped () const
 
void set_is_prototyped (bool is_prototyped)
 
bool has_varargs () const
 
void set_has_varargs (bool has_varargs)
 
bool is_vector () const
 
void set_is_vector (bool is_vector)
 
bool stub_is_supported () const
 
void set_stub_is_supported (bool stub_is_supported)
 
bool is_gnu_ifunc () const
 
void set_is_gnu_ifunc (bool is_gnu_ifunc)
 
bool is_fixed_instance () const
 
void set_is_fixed_instance (bool is_fixed_instance)
 
bool endianity_is_not_default () const
 
void set_endianity_is_not_default (bool endianity_is_not_default)
 
bool is_declared_class () const
 
void set_is_declared_class (bool is_declared_class) const
 
bool is_flag_enum () const
 
void set_is_flag_enum (bool is_flag_enum)
 
bool is_multi_dimensional () const
 
void set_is_multi_dimensional (bool value)
 
struct fixed_point_type_infofixed_point_info () const
 
void set_fixed_point_info (struct fixed_point_type_info *info) const
 
struct typefixed_point_type_base_type ()
 
const gdb_mpqfixed_point_scaling_factor ()
 
dynamic_propdyn_prop (dynamic_prop_node_kind kind) const
 
void add_dyn_prop (dynamic_prop_node_kind kind, dynamic_prop prop)
 
void remove_dyn_prop (dynamic_prop_node_kind kind)
 
bool is_objfile_owned () const
 
void set_owner (objfile *objfile)
 
void set_owner (gdbarch *arch)
 
struct objfileobjfile_owner () const
 
gdbarcharch_owner () const
 
gdbarcharch () const
 
bool bit_size_differs_p () const
 
unsigned short bit_size () const
 
unsigned short bit_offset () const
 
bool is_pointer_or_reference () const
 
bool is_string_like ()
 
bool is_array_like ()
 
enum language language () const
 

Public Attributes

struct typepointer_type
 
struct typereference_type
 
struct typervalue_reference_type
 
struct typechain
 
unsigned align_log2: TYPE_ALIGN_BITS
 
unsigned m_instance_flags: 9
 
ULONGEST m_length
 
struct main_typemain_type
 

Detailed Description

A `‘struct type’' describes a particular instance of a type, with some particular qualification.

Definition at line 950 of file gdbtypes.h.

Member Function Documentation

◆ add_dyn_prop()

void type::add_dyn_prop ( dynamic_prop_node_kind kind,
dynamic_prop prop )

Given a dynamic property PROP of a given KIND, add this dynamic property to this type.

This function assumes that this type is objfile-owned.

Definition at line 2891 of file gdbtypes.c.

References main_type::dyn_prop_list, is_objfile_owned(), dynamic_prop_list::next, objfile_owner(), dynamic_prop_list::prop, and dynamic_prop_list::prop_kind.

Referenced by add_variant_property(), alloc_rust_variant(), create_array_type_with_stride(), read_structure_type(), and set_die_type().

◆ alloc_fields()

void type::alloc_fields ( unsigned int nfields,
bool init = true )

◆ arch()

gdbarch * type::arch ( ) const

Definition at line 273 of file gdbtypes.c.

References arch(), objfile::arch(), arch_owner(), is_objfile_owned(), and objfile_owner().

Referenced by ada_value_print_num(), amd64_x32_none_init_abi(), append_flags_type_flag(), arch(), value::arch(), build_std_type_info_type(), c_get_string(), c_type_print_modifier(), c_value_print_ptr(), c_value_print_struct(), check_stub_method(), check_typedef(), compile_cplus_convert_func(), convert_func(), convert_type_basic(), copy_type_recursive(), cp_print_value_fields(), disassemble_dwarf_expression(), language_defn::emitchar(), rust_language::emitchar(), extract_typed_address(), f_language::f_type_print_base(), f_language::f_type_print_varspec_suffix(), find_function_addr(), fixed_point_binop(), float_type_from_length(), fortran_adjust_dynamic_array_base_address_hack(), fortran_array_offset_calculator::fortran_array_offset_calculator(), gdbpy_apply_val_pretty_printer(), gdbscm_apply_val_pretty_printer(), gdbscm_value_subscript(), generic_val_print_enum(), generic_val_print_func(), f_language::get_encoding(), get_gdb_vtable_type(), gnuv3_baseclass_offset(), gnuv3_get_typeid(), gnuv3_get_typename_from_type_info(), gnuv3_make_method_ptr(), gnuv3_method_ptr_size(), gnuv3_method_ptr_to_value(), gnuv3_print_method_ptr(), gnuv3_print_vtable(), gnuv3_rtti_type(), gnuv3_virtual_fn_field(), i386_mpx_info_bounds(), i386_mpx_set_bounds(), ia64_register_type(), lookup_array_range_type(), m32c_register_type(), make_pointer_type(), make_reference_type(), make_types(), print_formatted(), print_go_string(), print_ref_address(), print_scalar_formatted(), print_unpacked_pointer(), print_unpacked_pointer(), print_unpacked_pointer(), print_variable_at_address(), language_defn::printchar(), printf_floating(), printf_wide_c_string(), language_defn::printstr(), resolve_dynamic_range(), set_owner(), show_mask_address(), smash_to_memberptr_type(), smash_type(), store_typed_address(), type_align(), type_byte_order(), type_length_bits(), type_length_units(), val_print_string(), val_print_type_code_flags(), value_as_address(), value_assign(), value_bit_index(), value_cast(), value_pointer(), f_language::value_print_inner(), pascal_language::value_print_inner(), rust_language::value_print_inner(), value_subscripted_rvalue(), value_x_unop(), and varobj_value_get_print_value().

◆ arch_owner()

gdbarch * type::arch_owner ( ) const
inline

◆ bit_offset()

unsigned short type::bit_offset ( ) const
inline

◆ bit_size()

unsigned short type::bit_size ( ) const
inline

◆ bit_size_differs_p()

bool type::bit_size_differs_p ( ) const
inline

Return true if this is an integer type whose logical (bit) size differs from its storage size; false otherwise. Always return false for non-integer (i.e., non-TYPE_SPECIFIC_INT) types.

Definition at line 1408 of file gdbtypes.h.

References type_specific::bit_size, type_specific::int_stuff, length(), main_type::type_specific, main_type::type_specific_field, and TYPE_SPECIFIC_INT.

Referenced by pack_long(), pack_unsigned_long(), print_scalar_formatted(), recursive_dump_type(), unpack_long(), value_as_mpz(), and value_from_mpz().

◆ bit_stride()

ULONGEST type::bit_stride ( ) const
inline

◆ bounds()

range_bounds * type::bounds ( ) const
inline

Definition at line 1065 of file gdbtypes.h.

References main_type::bounds, bounds(), code(), main_type::flds_bnds, and index_type().

Referenced by ada_discrete_type_high_bound(), ada_discrete_type_low_bound(), ada_is_redundant_range_encoding(), ada_modulus(), ada_tasks_inferior_data_sniffer(), ada_type_of_array(), ada_unop_in_range(), expr::ada_aggregate_operation::assign_aggregate(), bit_stride(), bounds(), c_describe_child(), c_number_of_children(), c_type_print_varspec_suffix(), check_types_equal(), copy_type_recursive(), create_range_type(), create_range_type_with_stride(), expr::var_value_operation::evaluate_for_sizeof(), expr::subscript_operation::evaluate_for_sizeof(), f77_get_lowerbound(), f77_get_upperbound(), f_language::f_type_print_base(), f_language::f_type_print_varspec_suffix(), type_stack::follow_types(), fortran_adjust_dynamic_array_base_address_hack(), fortran_array_offset_calculator::fortran_array_offset_calculator(), fortran_associated(), gdbscm_type_range(), generate_vla_size(), get_discrete_high_bound(), get_discrete_low_bound(), get_long_set_bounds(), has_negatives(), has_static_range(), is_dynamic_type_internal(), m2_array(), m2_is_long_set_of_type(), m2_print_bounds(), m2_range(), pack_long(), parse_type(), print_range_bound(), print_scalar_formatted(), quirk_ada_thick_pointer(), read_subrange_type(), recursive_dump_type(), resolve_dynamic_range(), rewrite_array_type(), rust_internal_print_type(), set_bounds(), pascal_language::type_print_base(), pascal_language::type_print_varspec_prefix(), typy_range(), unpack_long(), update_static_array_size(), value_as_mpz(), value_cast(), value_from_mpz(), expr::fortran_undetermined::value_subarray(), and value_subscripted_rvalue().

◆ code()

type_code type::code ( ) const
inline

Definition at line 956 of file gdbtypes.h.

References main_type::code.

Referenced by aapcs_is_vfp_call_or_return_candidate_1(), aarch64_push_dummy_call(), aarch64_return_value(), aarch64_store_return_value(), aarch64_type_align(), ada_array_arity(), ada_array_bound(), ada_array_bound_from_type(), ada_array_element_type(), ada_array_length(), ada_atr_enum_rep(), ada_atr_enum_val(), ada_atr_size(), ada_check_typedef(), ada_coerce_ref(), ada_convert_actual(), ada_discrete_type_high_bound(), ada_discrete_type_low_bound(), ada_get_base_type(), ada_get_decoded_value(), ada_index_type(), ada_is_access_to_unconstrained_array(), ada_is_aligner_type(), ada_is_any_packed_array_type(), ada_is_array_descriptor_type(), ada_is_array_type(), ada_is_character_type(), ada_is_direct_array_type(), ada_is_dispatch_table_ptr_type(), ada_is_modular_type(), ada_is_redundant_range_encoding(), ada_is_simple_array_type(), ada_is_string_type(), ada_is_tag_type(), ada_is_unconstrained_packed_array_type(), ada_is_variant_part(), ada_lookup_struct_elt_type(), ada_parent_type(), ada_prefer_type(), ada_print_scalar(), ada_print_symbol_signature(), ada_print_type(), ada_promote_array_of_integrals(), ada_resolve_enum(), ada_tag_value_at_base_address(), ada_tasks_inferior_data_sniffer(), ada_template_to_fixed_record_type_1(), ada_ternop_slice(), ada_to_fixed_type(), ada_to_fixed_type_1(), ada_type_match(), ada_typedef_target_type(), ada_unop_atr(), ada_unop_in_range(), ada_val_print_ref(), ada_value_assign(), ada_value_binop(), ada_value_equal(), ada_value_is_changeable_p(), ada_value_print(), ada_value_print_inner(), ada_value_print_num(), ada_value_print_ptr(), ada_value_ptr_subscript(), ada_value_struct_elt(), ada_value_subscript(), ada_variant_discrim_name(), ada_varobj_describe_child(), ada_varobj_describe_simple_array_child(), ada_varobj_describe_struct_child(), ada_varobj_get_number_of_children(), ada_varobj_get_ptr_number_of_children(), ada_varobj_get_struct_number_of_children(), ada_varobj_get_value_of_variable(), ada_varobj_ind(), add_array_cv_type(), expr::add_struct_fields(), add_symbol_overload_list_adl_namespace(), address_of_variable(), adjust_value_for_child_access(), alpha_extract_return_value(), alpha_push_dummy_call(), alpha_return_value(), alpha_store_return_value(), amd64_classify(), amd64_classify_aggregate(), amd64_classify_aggregate_field(), amd64_has_unaligned_fields(), amd64_windows_passed_by_integer_register(), amd64_windows_passed_by_xmm_register(), amd64_windows_return_value(), riscv_struct_info::analyse_inner(), append_composite_type_field_aligned(), append_flags_type_field(), arc_return_value(), arc_type_align(), arm_extract_return_value(), arm_push_dummy_call(), arm_register_type(), arm_return_in_memory(), arm_return_value(), arm_store_return_value(), arm_type_align(), arm_vfp_cprc_sub_candidate(), expr::ada_aggregate_operation::assign_aggregate(), expr::assign_component(), avr_address_to_pointer(), avr_pointer_to_address(), base_types_equal_p(), binop_promote(), binop_types_user_defined_p(), bit_stride(), language_arch_info::bool_type(), bounds(), BP_MANIPULATION(), BP_MANIPULATION(), BP_MANIPULATION(), BP_MANIPULATION(), bpfinishpy_init(), build_fortran_types(), c_describe_child(), c_get_string(), c_is_path_expr_parent(), c_is_string_type_p(), c_number_of_children(), c_print_type_1(), c_print_typedef(), c_textual_element_type(), c_type_print_base_1(), c_type_print_base_struct_union(), c_type_print_varspec_prefix(), c_type_print_varspec_suffix(), c_value_of_variable(), c_value_print(), c_value_print_inner(), c_value_print_struct(), calc_f77_array_dims(), calculate_limited_array_length(), call_function_by_hand_dummy(), can_create_complex_type(), can_dereference(), can_use_hardware_watchpoint(), cast_into_complex(), check_typedef(), check_types_equal(), cimag_internal_fn(), class_or_union_p(), classify_type(), cleanup_undefined_types_1(), cleanup_undefined_types_noname(), coerce_array(), coerce_for_assign(), collection_list::collect_symbol(), compare_parameters(), compile_cplus_convert_reference(), compile_cplus_convert_struct_or_union(), complain_about_struct_wipeout(), expr::structop_base_operation::complete(), completion_list_add_fields(), complex_binop(), compute_struct_member(), compute_vtable_size(), constrained_packed_array_type(), expr::convert_char_literal(), convert_field(), convert_one_symbol(), convert_one_symbol(), convert_struct_or_union(), convert_type_basic(), convert_type_cplus_basic(), copy_type_recursive(), cp_is_vtbl_member(), cp_lookup_rtti_type(), cp_print_static_field(), cp_search_static_and_baseclasses(), cplus_describe_child(), cplus_number_of_children(), creal_internal_fn(), create_range_type(), create_value(), cris_return_value(), d_value_print_inner(), decode_constrained_packed_array(), decode_constrained_packed_array_type(), decode_packed_array_bitsize(), default_print_one_register_info(), default_register_reggroup_p(), define_symbol(), desc_base_type(), desc_bounds(), desc_bounds_type(), desc_index_type(), fortran_array_printer_impl::dimension_contents_eq(), discrete_position(), discrete_type_p(), expr::ada_var_value_operation::do_generate_ax(), expr::var_value_operation::do_generate_ax(), expr::var_msym_value_operation::do_generate_ax(), expr::repeat_operation::do_generate_ax(), python_xmethod_worker::do_get_result_type(), do_ppc_sysv_return_value(), dwarf2_add_member_fn(), dwarf2_compute_name(), dwarf2_get_symbol_read_needs(), dwarf_require_integral(), dynamic_array_type(), dynamic_template_type(), enum_constant_from_type(), equiv_types(), eval_multi_subscript(), eval_op_f_abs(), eval_op_f_allocated(), eval_op_f_array_size(), eval_op_f_ceil(), eval_op_f_cmplx(), eval_op_f_cmplx(), eval_op_f_cmplx(), eval_op_f_floor(), eval_op_f_kind(), eval_op_f_mod(), eval_op_f_modulo(), eval_op_f_rank(), eval_op_ind(), eval_op_m2_subscript(), eval_op_member(), eval_op_objc_msgcall(), eval_op_repeat(), eval_op_rust_complement(), eval_op_structop_ptr(), eval_op_subscript(), eval_op_var_msym_value(), expr::ada_binop_addsub_operation::evaluate(), expr::ada_var_value_operation::evaluate(), expr::ada_unop_ind_operation::evaluate(), expr::ada_funcall_operation::evaluate(), expr::ada_concat_operation::evaluate(), expr::c_string_operation::evaluate(), expr::opencl_structop_operation::evaluate(), expr::opencl_logical_binop_operation::evaluate(), expr::opencl_ternop_cond_operation::evaluate(), expr::var_value_operation::evaluate(), expr::unop_ind_base_operation::evaluate(), expr::adl_func_operation::evaluate(), expr::array_operation::evaluate(), expr::fortran_undetermined::evaluate(), expr::fortran_bound_2arg::evaluate(), expr::rust_struct_anon::evaluate(), expr::rust_structop::evaluate(), expr::fortran_bound_3arg::evaluate(), expr::var_value_operation::evaluate_for_sizeof(), expr::var_msym_value_operation::evaluate_for_sizeof(), expr::subscript_operation::evaluate_for_sizeof(), expr::unop_ind_base_operation::evaluate_for_sizeof(), expr::operation::evaluate_funcall(), expr::scope_operation::evaluate_funcall(), expr::var_value_operation::evaluate_funcall(), expr::structop_member_base::evaluate_funcall(), expr::rust_structop::evaluate_funcall(), expr::array_operation::evaluate_struct_tuple(), evaluate_subexp_do_call(), expr::var_value_operation::evaluate_with_coercion(), f77_get_dynamic_length_of_aggregate(), f_language::f_type_print_base(), f_language::f_type_print_varspec_prefix(), f_language::f_type_print_varspec_suffix(), dwarf_expr_context::fetch_result(), find_array_element_type(), find_function_addr(), find_gnu_ifunc_target_type(), find_overload_match(), find_size_for_pointer_math(), finish_command(), finish_fixed_point_type(), fixed_point_info(), fixed_point_type_base_type(), floatformat_from_type(), fortran_adjust_dynamic_array_base_address_hack(), fortran_array_offset_calculator::fortran_array_offset_calculator(), fortran_array_shape(), fortran_array_size(), fortran_associated(), fortran_ceil_operation(), fortran_floor_operation(), fortran_preserve_arg_pointer(), fortran_require_array(), fp_register_arg_p(), frv_push_dummy_call(), frv_return_value(), func_addr_to_tail_call_list(), gccgo_string_p(), gdbpy_convenience_variable(), gdbpy_create_lazy_string_object(), gdbscm_field_baseclass_p(), gdbscm_field_bitpos(), gdbscm_field_enumval(), gdbscm_type_code(), gdbscm_type_range(), gdbscm_type_tag(), gdbscm_value_call(), gdbscm_value_dynamic_type(), gdbscm_value_referenced_value(), gdbscm_value_subscript(), gdbscm_value_to_bool(), gdbscm_value_to_integer(), gdbscm_value_to_lazy_string(), gdbscm_value_to_real(), gen_address_of(), gen_aggregate_elt_ref(), gen_binop(), gen_cast(), gen_complement(), gen_deref(), gen_expr_binop_rest(), gen_fetch(), gen_logical_not(), gen_ptradd(), gen_ptrsub(), gen_struct_elt_for_reference(), gen_struct_ref(), gen_traced_pop(), gen_usual_arithmetic(), gen_usual_unary(), generate_register_struct(), generate_vla_size(), generic_val_print_ref(), generic_value_print(), get_base_type(), get_call_return_value(), get_decimal_float_return_value(), get_discrete_high_bound(), get_discrete_low_bound(), get_internalvar_integer(), get_long_set_bounds(), get_method_access_flag(), get_number_trailer(), get_out_value_type(), get_pointer_type_max(), get_regs_type(), get_return_value(), get_signed_type_minmax(), get_target_float_ops(), get_target_float_ops_kind(), get_ulongest(), get_unsigned_type_max(), gnuv2_value_rtti_type(), gnuv2_virtual_fn_field(), gnuv3_dynamic_class(), gnuv3_get_typeid(), gnuv3_get_vtable(), gnuv3_pass_by_reference(), gnuv3_print_vtable(), gnuv3_rtti_type(), gnuv3_virtual_fn_field(), h8300_extract_return_value(), h8300_use_struct_convention(), h8300h_extract_return_value(), h8300h_use_struct_convention(), has_negatives(), hppa32_push_dummy_call(), hppa32_return_value(), hppa64_floating_p(), hppa64_integral_or_pointer_p(), hppa64_push_dummy_call(), i386_16_byte_align_p(), i386_darwin_arg_type_alignment(), i386_extract_return_value(), i386_m128_p(), i386_reg_struct_return_p(), i386_return_value(), i386_store_return_value(), i386_type_align(), i386_windows_push_dummy_call(), i387_convert_register_p(), i387_register_to_value(), i387_value_to_register(), ia64_convert_register_p(), ia64_push_dummy_call(), ia64_register_reggroup_p(), ia64_struct_type_p(), ia64_use_struct_convention(), incomplete_type_hint(), indirect_pieced_value(), inspect_type(), install_new_value(), integer_type_p(), internal_type_self_type(), internal_type_vptr_basetype(), internal_type_vptr_fieldno(), python_xmethod_worker::invoke(), iq2000_address_to_pointer(), iq2000_pass_8bytetype_by_address(), iq2000_pointer_to_address(), iq2000_use_struct_convention(), is_array_like(), is_copy_or_move_constructor_type(), is_dynamic_field(), is_dynamic_type_internal(), is_fixed_point_type(), is_float_or_hfa_type_recurse(), is_floating_type(), is_integral_type(), is_intlike(), is_nocall_function(), is_pointer_or_reference(), is_scalar_type(), is_scalar_type_recursive(), f_language::is_string_type_p(), go_language::is_string_type_p(), unknown_language::is_string_type_p(), m2_language::is_string_type_p(), rust_language::is_string_type_p(), is_thick_pntr(), lesseq_defined_than(), linespec_parse_variable(), linux_dwarf2_omit_typedef_p(), lm32_extract_return_value(), lm32_return_value(), lookup_enum(), lookup_opencl_vector_type(), lookup_struct(), lookup_struct_elt(), lookup_struct_typedef(), lookup_symbol_aux(), lookup_template_type(), lookup_union(), loongarch_push_dummy_call(), loongarch_return_value(), lsscm_elt_type(), lsscm_safe_lazy_string_to_value(), lval_func_read(), lval_func_write(), m2_get_discrete_bounds(), m2_is_long_set(), m2_is_long_set_of_type(), m2_is_unbounded_array(), m2_print_array_contents(), m2_print_type(), m2_procedure(), m2_record_fields(), m32c_m16c_address_to_pointer(), m32c_m16c_pointer_to_address(), m32c_reg_arg_type(), m32c_return_by_passed_buf(), m32r_push_dummy_call(), m68hc11_return_value(), m68k_convert_register_p(), m68k_extract_return_value(), m68k_push_dummy_call(), m68k_reg_struct_return_p(), m68k_register_to_value(), m68k_return_value(), m68k_store_return_value(), m68k_svr4_extract_return_value(), m68k_svr4_return_value(), m68k_svr4_store_return_value(), m68k_value_to_register(), make_array_descriptor(), make_vector_type(), match_endianness(), mi_simple_type_p(), mips_convert_register_float_case_p(), mips_eabi_push_dummy_call(), mips_eabi_return_value(), mips_n32n64_fp_arg_chunk_p(), mips_n32n64_push_dummy_call(), mips_n32n64_return_value(), mips_o32_push_dummy_call(), mips_o32_return_value(), mips_o64_push_dummy_call(), mips_o64_return_value(), mips_register_reggroup_p(), mips_type_needs_double_align(), mn10300_extract_return_value(), mn10300_store_return_value(), mn10300_type_align(), mn10300_use_struct_convention(), msp430_push_dummy_call(), msp430_return_value(), rust_parser::name_to_operation(), nds32_check_calling_use_fpr(), new_symbol(), nios2_type_align(), numeric_type_p(), opencl_logical_not(), opencl_relop(), opencl_value_cast(), or1k_push_dummy_call(), or1k_return_value(), pack_long(), pack_unsigned_long(), package_name_p(), parse_procedure(), rust_parser::parse_struct_expr(), parse_symbol(), parse_type(), pascal_is_string_type(), pascal_object_is_vtbl_member(), pascal_object_print_static_field(), pass_in_v_vfp_candidate(), pass_in_x(), ppc64_aggregate_candidate(), ppc64_elfv2_abi_homogeneous_aggregate(), ppc64_sysv_abi_push_dummy_call(), ppc64_sysv_abi_push_freg(), ppc64_sysv_abi_push_param(), ppc64_sysv_abi_return_value(), ppc64_sysv_abi_return_value_base(), ppc_linux_return_value(), ppc_sysv_abi_push_dummy_call(), ppc_sysv_use_opencl_abi(), ppcnbsd_return_value(), print_array_type(), print_command_1(), print_formatted(), print_func_type(), print_optional_low_bound(), print_range(), print_range_bound(), print_range_type(), print_return_value(), print_scalar_formatted(), print_symbol(), f_language::print_type(), go_language::print_type(), opencl_language::print_type(), pascal_language::print_type(), print_type_scalar(), print_unpacked_pointer(), print_unpacked_pointer(), print_unpacked_pointer(), print_variable_at_address(), print_variant_clauses(), printf_c_string(), printf_floating(), process_coff_symbol(), ptrmath_type_p(), quirk_ada_thick_pointer(), quirk_ada_thick_pointer_struct(), quirk_gcc_member_function_pointer(), quirk_rust_enum(), rank_one_type(), rank_one_type_parm_array(), rank_one_type_parm_bool(), rank_one_type_parm_char(), rank_one_type_parm_complex(), rank_one_type_parm_enum(), rank_one_type_parm_float(), rank_one_type_parm_func(), rank_one_type_parm_int(), rank_one_type_parm_ptr(), rank_one_type_parm_range(), rank_one_type_parm_set(), rank_one_type_parm_struct(), read_alias(), read_base_type(), read_fat_string_value(), read_one_struct_field(), read_struct_type(), read_subrange_index_type(), read_tag_const_type(), read_tag_volatile_type(), read_type(), value::record_latest(), recursive_dump_type(), recursively_update_array_bitsize(), selftests::register_to_value_test(), expr::ada_char_operation::replace(), require_rvalue(), expr::ada_var_value_operation::resolve(), resolve_dynamic_array_or_string(), resolve_dynamic_array_or_string_1(), resolve_dynamic_range(), resolve_dynamic_struct(), resolve_dynamic_type_internal(), resolve_dynamic_union(), return_match(), rewrite_array_type(), riscv_arg_location(), riscv_call_arg_struct(), riscv_print_one_register_info(), riscv_push_dummy_call(), riscv_register_type(), riscv_type_align(), rl78_pointer_to_address(), rs6000_convert_register_p(), rs6000_lynx178_push_dummy_call(), rs6000_lynx178_return_value(), rs6000_push_dummy_call(), rs6000_register_to_value(), rs6000_return_value(), rust_chartype_p(), rust_get_trait_object_pointer(), rust_internal_print_type(), rust_print_struct_def(), rust_range_type_p(), rust_slice_type_p(), rust_subscript(), rust_tuple_type_p(), rust_u8_type_p(), rust_underscore_fields(), rx_push_dummy_call(), rx_return_value(), s12z_return_value(), s390_effective_inner_type(), s390_function_arg_float(), s390_function_arg_integer(), s390_function_arg_vector(), s390_push_dummy_call(), s390_register_return_value(), s390_return_value(), scalar_binop(), scalar_type_p(), struct_field_searcher::search(), sect_variable_value(), set_bounds(), set_code(), set_decnumber_context(), set_die_type(), set_fixed_point_info(), set_internalvar(), set_type_self_type(), set_type_vptr_basetype(), set_type_vptr_fieldno(), setting_cmd(), sh_push_dummy_call_fpu(), sh_push_dummy_call_nofpu(), sh_treat_as_flt_p(), sh_use_struct_convention(), finish_command_fsm::should_stop(), should_validate_memtags(), slot_alignment_is_next_even(), sparc32_extract_return_value(), sparc32_struct_return_from_sym(), sparc64_16_byte_align_p(), sparc64_complex_floating_p(), sparc64_extract_floating_fields(), sparc64_extract_return_value(), sparc64_floating_p(), sparc64_integral_or_pointer_p(), sparc64_store_floating_fields(), sparc64_store_return_value(), sparc64_structure_or_union_p(), sparc_arg_by_memory_p(), sparc_complex_floating_p(), sparc_floating_p(), sparc_integral_or_pointer_p(), sparc_structure_or_union_p(), sparc_structure_return_p(), store_regs(), stpy_convert_to_value(), stpy_lazy_string_elt_type(), strip_range_type(), struct_return_convention(), symbol_is_function_or_method(), symbol_to_info_string(), symbols_are_identical_enums(), target_float_format_length(), target_float_is_valid(), target_float_is_zero(), target_float_same_category_p(), target_float_same_format_p(), target_float_to_string(), template_to_static_fixed_type(), thin_data_pntr(), tic6x_arg_type_alignment(), tic6x_push_dummy_call(), tilegx_type_is_scalar(), to_fixed_range_type(), to_fixed_variant_branch_type(), to_static_fixed_type(), type_aggregate_p(), type_aggregate_p(), type_align(), type_is_full_subrange_of_target_type(), type_name_to_scope(), pascal_language::type_print_base(), pascal_language::type_print_func_varspec_suffix(), pascal_language::type_print_varspec_prefix(), pascal_language::type_print_varspec_suffix(), typecmp(), types_equal(), typy_fields(), typy_get_code(), typy_get_composite(), typy_get_tag(), typy_range(), typy_repr(), tyscm_get_composite(), ui_printf(), unop_user_defined_p(), unpack_long(), print_offset_data::update(), update_static_array_size(), update_watchpoint(), upgrade_type(), user_select_syms(), using_struct_return(), v850_type_is_scalar(), v850_use_struct_convention(), val_atr(), val_print_packed_array_elements(), val_print_scalar_type_p(), val_print_type_code_flags(), valprint_check_validity(), valpy_binop_throw(), valpy_call(), valpy_float(), valpy_get_dynamic_type(), valpy_getitem(), valpy_lazy_string(), valpy_long(), valpy_nonzero(), valpy_to_array(), value_actual_type(), value_addr(), value_aggregate_elt(), value_arg_coerce(), value_args_as_target_float(), value_as_address(), value_as_mpz(), value_assign(), value_binop(), value_cast(), value_cast_pointers(), value_cast_structs(), value_check_printable(), value_complement(), value_concat(), value_dynamic_cast(), value_equal(), value_equal_contents(), value_find_oload_method_list(), value_from_host_double(), value_from_mpz(), value_has_field(), value_imaginary_part(), value_ind(), value_less(), value_must_coerce_to_target(), value_neg(), value_one(), value_pos(), pascal_language::value_print(), value_print_array_elements(), f_language::value_print_inner(), go_language::value_print_inner(), m2_language::value_print_inner(), pascal_language::value_print_inner(), rust_language::value_print_inner(), value_ptrdiff(), value_real_part(), value_ref(), value_reinterpret_cast(), value_rtti_indirect_type(), value_slice(), ada_language::value_string(), value_struct_element_index(), value_struct_elt(), value_struct_elt_bitpos(), value_struct_elt_for_reference(), expr::fortran_undetermined::value_subarray(), value_subscript(), value_subscript_packed(), value_to_array(), value_vector_widen(), value_x_binop(), value_x_unop(), variant_field_index(), varobj_default_value_is_changeable_p(), varobj_editable_p(), vax_return_value(), vb_match(), vector_binop(), vector_relop(), vlscm_binop_gdbthrow(), vlscm_convert_typed_number(), fortran_array_walker< Impl >::walk_1(), whatis_exp(), x_command(), xstormy16_address_to_pointer(), xstormy16_pointer_to_address(), xstormy16_type_is_scalar(), xtensa_push_dummy_call(), xtensa_return_value(), yyparse(), and z80_return_value().

◆ copy_fields() [1/2]

void type::copy_fields ( std::vector< struct field > & src)

Definition at line 5934 of file gdbtypes.c.

References alloc_fields(), fields(), and size.

◆ copy_fields() [2/2]

void type::copy_fields ( struct type * src)

◆ dyn_prop()

dynamic_prop * type::dyn_prop ( dynamic_prop_node_kind kind) const

◆ endianity_is_not_default()

bool type::endianity_is_not_default ( ) const
inline

◆ field()

struct field & type::field ( int idx) const
inline

Definition at line 1012 of file gdbtypes.h.

References fields(), and num_fields().

Referenced by aapcs_is_vfp_call_or_return_candidate_1(), ada_aligned_type(), ada_aligned_value_addr(), ada_array_bound_from_type(), ada_atr_enum_val(), ada_discrete_type_high_bound(), ada_discrete_type_low_bound(), 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_any_packed_array_type(), ada_is_ignored_field(), ada_is_others_clause(), ada_is_parent_field(), ada_is_redundant_index_type_desc(), ada_is_unconstrained_packed_array_type(), ada_is_variant_part(), ada_is_wrapper_field(), ada_parent_type(), ada_print_scalar(), ada_print_symbol_signature(), ada_search_struct_field(), ada_template_to_fixed_record_type_1(), ada_type_of_array(), ada_val_print_enum(), ada_value_primitive_field(), ada_value_print_array(), ada_value_ptr_subscript(), ada_value_slice(), ada_value_slice_from_ptr(), ada_value_subscript(), ada_varobj_describe_struct_child(), 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(), append_composite_type_field_raw(), append_flags_type_field(), arm_return_in_memory(), arm_vfp_cprc_sub_candidate(), attach_fields_to_type(), bit_stride(), build_std_type_info_type(), c_describe_child(), c_get_string(), c_is_path_expr_parent(), 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_field(), check_types_equal(), coff_read_enum_type(), coff_read_struct_type(), compare_parameters(), compile_cplus_convert_enum(), compile_cplus_convert_func(), compile_cplus_convert_struct_or_union_members(), completion_list_add_fields(), compute_struct_member(), compute_variant_fields(), compute_variant_fields_inner(), compute_variant_fields_recurse(), constrained_packed_array_type(), expr::convert_char_literal(), convert_enum(), convert_field(), convert_func(), convert_struct_or_union(), copy_type_recursive(), cp_find_class_member(), cp_print_class_member(), cp_print_value_fields(), cplus_class_num_children(), cplus_describe_child(), create_array_type_with_stride(), create_enum(), create_set_type(), decode_packed_array_bitsize(), define_symbol(), desc_bound_bitpos(), desc_bound_bitsize(), discrete_position(), dwarf2_add_member_fn(), dwarf2_attach_fields_to_type(), dwarf2_compute_name(), dynamic_array_type(), enum_constant_from_type(), eval_op_m2_high(), eval_op_m2_subscript(), expr::ada_funcall_operation::evaluate(), 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(), fake_method::fake_method(), fat_pntr_bounds_bitpos(), fat_pntr_bounds_bitsize(), fat_pntr_data_bitpos(), fat_pntr_data_bitsize(), field_alignment(), field_name(), find_oload_champ(), find_struct_field(), buildsym_compunit::finish_block_internal(), fp_register_arg_p(), gccgo_string_p(), gdbscm_type_field(), gdbscm_type_has_field_p(), gdbscm_type_next_field_x(), gen_primitive_field(), gen_static_field(), gen_struct_elt_for_reference(), gen_struct_ref_recursive(), gen_trace_static_fields(), generate_vla_size(), generic_val_print_enum_1(), get_baseclass_offset(), get_discrete_high_bound(), get_discrete_low_bound(), 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(), 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_function_type_with_arguments(), lookup_struct_elt(), m2_enum(), 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(), parse_symbol(), 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(), print_choices(), rust_language::print_enum(), print_enum_type(), print_field_values(), pascal_language::print_func_args(), print_func_type(), print_go_string(), print_optional_low_bound(), print_selected_record_field_types(), print_type_scalar(), print_variant_clauses(), print_variant_clauses(), print_variant_part(), print_variant_part(), print_variant_part(), process_structure_scope(), quirk_ada_thick_pointer(), quirk_ada_thick_pointer_struct(), quirk_gcc_member_function_pointer(), quirk_rust_enum(), rank_one_type_parm_set(), read_enum_type(), read_fat_string_value(), read_subroutine_type(), read_tilde_fields(), recursive_dump_type(), recursively_update_array_bitsize(), resolve_dynamic_array_or_string_1(), resolve_dynamic_struct(), resolve_dynamic_union(), riscv_print_one_register_info(), rust_composite_type(), rust_compute_range(), rust_enum_variant(), 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(), s390_effective_inner_type(), struct_field_searcher::search(), set_index_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(), typy_getitem(), typy_has_key(), tyscm_field_smob_to_field(), unpack_field_as_long(), unpack_value_field_as_long(), print_offset_data::update(), update_static_array_size(), v850_eight_byte_align_p(), v850_use_struct_convention(), val_atr(), val_print_packed_array_elements(), rust_language::val_print_struct(), val_print_type_code_flags(), value_field_bitfield(), f_language::value_print_inner(), pascal_language::value_print_inner(), value_static_field(), value_struct_element_index(), value_struct_elt_bitpos(), value_struct_elt_for_reference(), value_subscript_packed(), vb_match(), vtable_address_point_offset(), vtable_ptrdiff_type(), and yyparse().

◆ fields()

struct field * type::fields ( ) const
inline

◆ fixed_point_info()

struct fixed_point_type_info & type::fixed_point_info ( ) const
inline

Assuming that THIS is a TYPE_CODE_FIXED_POINT, return a reference to this type's fixed_point_info.

Definition at line 1306 of file gdbtypes.h.

References code(), type_specific::fixed_point_info, and main_type::type_specific.

Referenced by copy_type_recursive(), finish_fixed_point_type(), and fixed_point_scaling_factor().

◆ fixed_point_scaling_factor()

const gdb_mpq & type::fixed_point_scaling_factor ( )

◆ fixed_point_type_base_type()

struct type * type::fixed_point_type_base_type ( )

Assuming that THIS is a TYPE_CODE_FIXED_POINT, return its base type.

In other words, this returns the type after having peeled all intermediate type layers (such as TYPE_CODE_RANGE, for instance). The TYPE_CODE of the type returned is guaranteed to be a TYPE_CODE_FIXED_POINT.

Definition at line 5873 of file gdbtypes.c.

References check_typedef(), code(), target_type(), and type.

Referenced by ada_value_print_inner(), fixed_point_scaling_factor(), generic_value_print(), and unpack_long().

◆ has_no_signedness()

bool type::has_no_signedness ( ) const
inline

◆ has_varargs()

bool type::has_varargs ( ) const
inline

◆ index_type()

type * type::index_type ( ) const
inline

Definition at line 1032 of file gdbtypes.h.

References field(), and field::type().

Referenced by ada_array_bound_from_type(), ada_array_length(), ada_index_type(), ada_is_redundant_index_type_desc(), ada_tasks_inferior_data_sniffer(), ada_value_ptr_subscript(), ada_value_slice(), ada_value_slice_from_ptr(), ada_varobj_describe_simple_array_child(), ada_varobj_get_array_number_of_children(), ada_varobj_simple_array_elt(), bounds(), compile_cplus_convert_array(), constrained_packed_array_type(), convert_array(), create_range_type(), create_range_type_with_stride(), create_static_range_type(), decode_type(), fortran_array_printer_impl::dimension_contents_eq(), empty_array(), expr::c_string_operation::evaluate(), expr::array_operation::evaluate(), expr::var_value_operation::evaluate_for_sizeof(), expr::subscript_operation::evaluate_for_sizeof(), fortran_adjust_dynamic_array_base_address_hack(), fortran_array_offset_calculator::fortran_array_offset_calculator(), fortran_array_shape(), fortran_array_size(), fortran_associated(), generate_vla_size(), get_array_bounds(), is_dynamic_type_internal(), is_scalar_type_recursive(), lookup_array_range_type(), m2_array(), m2_is_long_set(), m2_is_long_set_of_type(), m2_long_set(), m2_print_long_set(), m2_short_set(), print_array_type(), print_optional_low_bound(), read_array_type(), read_array_type(), read_range_type(), read_subrange_index_type(), read_tag_string_type(), recursively_update_array_bitsize(), resolve_dynamic_array_or_string_1(), rewrite_array_type(), rust_range(), fortran_array_printer_impl::start_dimension(), to_fixed_array_type(), pascal_language::type_print_base(), update_static_array_size(), val_print_packed_array_elements(), value_bit_index(), value_cast(), value_print_array_elements(), m2_language::value_print_inner(), pascal_language::value_print_inner(), value_slice(), expr::fortran_undetermined::value_subarray(), value_subscript(), value_subscript_packed(), and fortran_array_walker< Impl >::walk_1().

◆ instance_flags()

const type_instance_flags type::instance_flags ( ) const
inline

◆ is_array_like()

bool type::is_array_like ( )

Definition at line 5957 of file gdbtypes.c.

References code(), language_defn::is_array_like(), and language_def().

Referenced by typy_is_array_like(), and value_to_array().

◆ is_declared_class()

bool type::is_declared_class ( ) const
inline

◆ is_fixed_instance()

bool type::is_fixed_instance ( ) const
inline

◆ is_flag_enum()

bool type::is_flag_enum ( ) const
inline

Definition at line 1281 of file gdbtypes.h.

References main_type::m_flag_flag_enum.

Referenced by generic_val_print_enum_1(), and set_is_flag_enum().

◆ is_gnu_ifunc()

bool type::is_gnu_ifunc ( ) const
inline

◆ is_multi_dimensional()

bool type::is_multi_dimensional ( ) const
inline

Definition at line 1293 of file gdbtypes.h.

References main_type::m_multi_dimensional.

Referenced by update_static_array_size().

◆ is_objfile_owned()

bool type::is_objfile_owned ( ) const
inline

◆ is_pointer_or_reference()

bool type::is_pointer_or_reference ( ) const
inline

◆ is_prototyped()

bool type::is_prototyped ( ) const
inline

◆ is_string_like()

bool type::is_string_like ( )

Definition at line 5948 of file gdbtypes.c.

References language_defn::is_string_type_p(), and language_def().

Referenced by typy_is_string_like().

◆ is_stub()

bool type::is_stub ( ) const
inline

◆ is_unsigned()

bool type::is_unsigned ( ) const
inline

Definition at line 1100 of file gdbtypes.h.

References main_type::m_flag_unsigned.

Referenced by aarch64_push_dummy_call(), ada_is_modular_type(), ada_print_scalar(), ada_value_binop(), ada_value_print(), dwarf2_cu::addr_type(), alloc_rust_variant(), base_types_equal_p(), binop_promote(), check_types_equal(), check_valid_shift_count(), compile_cplus_convert_enum(), compile_cplus_convert_int(), convert_enum(), convert_int(), create_range_type(), create_value(), define_symbol(), expr::unop_extract_operation::do_generate_ax(), dwarf2_evaluate_property(), expr::opencl_ternop_cond_operation::evaluate(), dwarf_expr_context::execute_stack_op(), fixed_point_binop(), gdbscm_value_to_integer(), gdbscm_value_to_real(), gen_binop(), gen_bitfield_ref(), gen_conversion(), gen_extend(), gen_sign_extend(), generate_register_struct(), generic_val_print_fixed_point(), generic_value_print_char(), get_discrete_high_bound(), get_discrete_low_bound(), get_signed_type_minmax(), get_unsigned_type_max(), has_negatives(), lookup_opencl_vector_type(), loongarch_push_dummy_call(), loongarch_return_value(), m2_get_discrete_bounds(), max_of_type(), min_of_type(), mips_n32n64_push_dummy_call(), ppc64_sysv_abi_return_value_base(), print_scalar_formatted(), print_type_scalar(), promotion_type(), push_kind_type(), rank_one_type_parm_char(), rank_one_type_parm_int(), read_enumeration_type(), read_subrange_type(), recursive_dump_type(), riscv_return_value(), rust_chartype_p(), rust_u8_type_p(), s390_handle_arg(), s390_register_return_value(), set_is_unsigned(), type_wider_than(), typy_is_signed(), unpack_bits_as_long(), unpack_long(), valpy_long(), value_args_as_target_float(), value_as_mpz(), value_assign(), value_cast(), value_cast_to_fixed_point(), value_from_mpz(), rust_language::value_print_inner(), value_to_gdb_mpq(), vector_binop(), vector_relop(), vlscm_convert_typed_number(), and vlscm_integer_fits_p().

◆ is_vector()

bool type::is_vector ( ) const
inline

Definition at line 1186 of file gdbtypes.h.

References main_type::m_flag_vector.

Referenced by aapcs_is_vfp_call_or_return_candidate_1(), aarch64_type_align(), amd64_windows_return_value(), arm_return_in_memory(), arm_type_align(), arm_vfp_cprc_sub_candidate(), BP_MANIPULATION(), c_print_type_1(), c_type_print_varspec_suffix(), check_types_equal(), coerce_array(), compile_cplus_convert_array(), convert_array(), default_print_one_register_info(), default_register_reggroup_p(), do_ppc_sysv_return_value(), expr::opencl_structop_operation::evaluate(), expr::opencl_logical_binop_operation::evaluate(), expr::opencl_ternop_cond_operation::evaluate(), expr::var_value_operation::evaluate_with_coercion(), i386_16_byte_align_p(), i386_darwin_arg_type_alignment(), i386_m128_p(), ia64_register_reggroup_p(), lookup_opencl_vector_type(), m68k_reg_struct_return_p(), make_gdb_type(), mips_register_reggroup_p(), opencl_logical_not(), opencl_relop(), opencl_value_cast(), pass_in_v_vfp_candidate(), ppc64_aggregate_candidate(), ppc64_elfv2_abi_homogeneous_aggregate(), ppc64_sysv_abi_push_dummy_call(), ppc64_sysv_abi_push_param(), ppc64_sysv_abi_return_value(), ppc64_sysv_abi_return_value_base(), ppc_linux_return_value(), ppc_sysv_abi_push_dummy_call(), ppcnbsd_return_value(), opencl_language::print_type(), ptrmath_type_p(), read_type(), recursive_dump_type(), riscv_print_one_register_info(), riscv_type_align(), rs6000_lynx178_return_value(), rs6000_return_value(), s390_function_arg_vector(), s390_return_value(), set_is_vector(), sparc_arg_by_memory_p(), sparc_structure_return_p(), typy_array_1(), tyscm_array_1(), value_arg_coerce(), value_binop(), value_cast(), value_complement(), value_must_coerce_to_target(), value_neg(), value_one(), value_pos(), value_vector_widen(), vector_binop(), and vector_relop().

◆ language()

enum language type::language ( ) const
inline

Definition at line 1446 of file gdbtypes.h.

References main_type::m_lang.

Referenced by value_to_array().

◆ length()

ULONGEST type::length ( ) const
inline

Definition at line 983 of file gdbtypes.h.

References m_length.

Referenced by aapcs_is_vfp_call_or_return_candidate_1(), aarch64_pseudo_read_value_1(), aarch64_push_dummy_call(), aarch64_return_in_memory(), aarch64_store_return_value(), aarch64_type_align(), ada_atr_size(), ada_exception_message_1(), ada_print_type(), ada_printchar(), ada_printstr(), ada_promote_array_of_integrals(), ada_template_to_fixed_record_type_1(), ada_to_fixed_type_1(), ada_type_match(), ada_val_print_string(), ada_value_assign(), ada_value_equal(), ada_value_primitive_packed_val(), ada_value_print(), ada_value_print_inner(), ada_value_print_ptr(), ada_value_slice_from_ptr(), dwarf2_cu::addr_type(), address_from_register(), address_to_signed_pointer(), value::allocate_contents(), value::allocate_optimized_out(), alpha_convert_register_p(), alpha_extract_return_value(), alpha_push_dummy_call(), alpha_register_to_value(), alpha_return_value(), alpha_store_return_value(), alpha_value_to_register(), amd64_classify(), amd64_classify_aggregate(), amd64_classify_aggregate_field(), amd64_get_longjmp_target(), amd64_has_unaligned_fields(), amd64_pseudo_register_read_value(), amd64_push_arguments(), amd64_return_value(), amd64_windows_adjust_args_passed_by_pointer(), amd64_windows_passed_by_integer_register(), amd64_windows_passed_by_xmm_register(), amd64_windows_push_arguments(), amd64_windows_return_value(), amd64_windows_store_arg_in_reg(), append_composite_type_field_aligned(), append_flags_type_field(), arc_extract_return_value(), arc_return_value(), arc_store_return_value(), arc_type_align(), arm_extract_return_value(), arm_push_dummy_call(), arm_return_in_memory(), arm_store_return_value(), arm_type_align(), arm_vfp_cprc_sub_candidate(), avr_address_to_pointer(), avr_pointer_to_address(), avr_push_dummy_call(), base_types_equal_p(), bfin_extract_return_value(), bfin_push_dummy_call(), bfin_return_value(), bfin_store_return_value(), binop_promote(), bit_size_differs_p(), value::bits_available(), BP_MANIPULATION(), BP_MANIPULATION(), BP_MANIPULATION(), BP_MANIPULATION(), bpf_extract_return_value(), bpf_return_value(), bpf_store_return_value(), build_std_type_info_type(), c_get_string(), c_is_string_type_p(), c_number_of_children(), c_textual_element_type(), c_type_print_base_struct_union(), c_value_print(), c_value_print_array(), calculate_limited_array_length(), call_function_by_hand_dummy(), can_use_hardware_watchpoint(), procfs_target::can_use_hw_breakpoint(), cast_into_complex(), ppc_linux_nat_target::check_condition(), check_type_length_before_alloc(), check_typedef(), check_types_equal(), coerce_for_assign(), coerce_pieced_ref(), coerce_unspec_val_to_type(), collection_list::collect_symbol(), decimal_float_ops::compare(), compile_cplus_convert_enum(), compile_cplus_convert_float(), compile_cplus_convert_int(), compile_cplus_convert_struct_or_union(), compile_cplus_convert_struct_or_union_members(), compile_object_load(), compute_variant_fields_inner(), value::contents_all_raw(), value::contents_bits_eq(), value::contents_eq(), value::contents_for_printing(), value::contents_for_printing(), value::contents_raw(), convert_buffer_and_type_to_value(), convert_enum(), convert_escape(), convert_float(), convert_int(), convert_struct_or_union(), convert_ucn(), readable_regcache::cooked_read_value(), value::copy(), fortran_array_repacker_base_impl::copy_element_to_dest(), copy_type(), copy_type_recursive(), cp_find_class_member(), cp_lookup_transparent_type_loop(), cp_print_class_member(), cp_print_value(), create_array_type_with_stride(), create_range_type(), create_value(), cris_extract_return_value(), cris_return_value(), cris_store_return_value(), csky_push_dummy_call(), csky_return_value(), darwin_current_sos(), darwin_load_image_infos(), darwin_read_exec_load_addr_from_dyld(), darwin_solib_read_all_image_info_addr(), dbx_lookup_type(), decimal_from_number(), decimal_to_number(), decode_constrained_packed_array(), default_auxv_parse(), default_print_one_register_info(), default_value_from_register(), define_symbol(), desc_bound_bitsize(), desc_bounds(), do_examine(), expr::unop_sizeof_operation::do_generate_ax(), do_ppc_sysv_return_value(), dump_value_to_file(), dwarf2_add_field(), dwarf2_compute_name(), dwarf2_const_value_attr(), dwarf2_evaluate_loc_desc_full(), dwarf2_evaluate_property(), dwarf2_init_complex_target_type(), dynamic_array_type(), dynamic_cast_check_1(), elf_gnu_ifunc_resolve_by_got(), elf_locate_base(), elf_rel_plt_read(), emit_numeric_character(), encode_actions_1(), ensure_lval(), eval_op_f_kind(), expr::ada_string_operation::evaluate(), expr::c_string_operation::evaluate(), expr::opencl_ternop_cond_operation::evaluate(), expr::unop_extract_operation::evaluate(), expr::array_operation::evaluate(), expr::fortran_structop_operation::evaluate(), expr::rust_aggregate_operation::evaluate(), expr::var_msym_value_operation::evaluate_for_sizeof(), expr::subscript_operation::evaluate_for_sizeof(), expr::unop_ind_base_operation::evaluate_for_sizeof(), expr::array_operation::evaluate_struct_tuple(), evaluate_subexp_for_sizeof_base(), dwarf_expr_context::execute_stack_op(), ext_lang_print_insn(), f77_get_dynamic_length_of_aggregate(), fat_pntr_bounds_bitsize(), fat_pntr_data_bitsize(), fbsd_get_siginfo_type(), fbsd_get_thread_local_address(), fetch_const_value_from_synthetic_pointer(), value::fetch_lazy_memory(), dwarf_expr_context::fetch_result(), find_function_addr(), print_offset_data::finish(), float_type_from_length(), fortran_argument_convert(), fortran_array_shape(), fortran_associated(), fortran_bounds_all_dims(), frame_register_unwind(), value::from_component_bitsize(), decimal_float_ops::from_string(), frv_extract_return_value(), frv_push_dummy_call(), frv_store_return_value(), ft32_extract_return_value(), ft32_pointer_to_address(), ft32_return_value(), ft32_store_return_value(), gccgo_string_p(), gdbpy_apply_val_pretty_printer(), gdbpy_create_lazy_string_object(), gdbpy_extract_lazy_string(), gdbscm_apply_val_pretty_printer(), gdbscm_type_sizeof(), gdbscm_value_to_bytevector(), gdbscm_value_to_lazy_string(), gdbscm_value_to_string(), gen_conversion(), gen_extend(), gen_fetch(), gen_ptrdiff(), gen_scale(), gen_sign_extend(), gen_trace_static_fields(), gen_traced_pop(), generate_register_struct(), generic_auxv_parse(), generic_emit_char(), generic_printstr(), generic_val_print_array(), generic_val_print_fixed_point(), generic_val_print_ref(), get_decimal_float_return_value(), get_discrete_high_bound(), get_discrete_low_bound(), f_language::get_encoding(), get_gdb_vtable_type(), get_pointer_type_max(), get_running_thread_id(), get_signed_type(), get_signed_type_minmax(), get_unsigned_type(), get_unsigned_type_max(), gnuv2_baseclass_offset(), gnuv2_value_rtti_type(), gnuv3_baseclass_offset(), gnuv3_decode_method_ptr(), gnuv3_find_method_in(), gnuv3_make_method_ptr(), gnuv3_method_ptr_size(), gnuv3_method_ptr_to_value(), gnuv3_print_method_ptr(), gnuv3_rtti_type(), h8300_extract_return_value(), h8300_push_dummy_call(), h8300_store_return_value(), h8300_use_struct_convention(), h8300h_extract_return_value(), h8300h_return_value(), h8300h_store_return_value(), h8300h_use_struct_convention(), hppa32_push_dummy_call(), hppa32_return_value(), hppa64_floating_p(), hppa64_integral_or_pointer_p(), hppa64_push_dummy_call(), hppa64_return_value(), i386_16_byte_align_p(), i386_convert_register_p(), i386_darwin_arg_type_alignment(), i386_darwin_push_dummy_call(), i386_extract_return_value(), i386_m128_p(), i386_mpx_info_bounds(), i386_mpx_set_bounds(), i386_pseudo_register_read_into_value(), i386_pseudo_register_write(), i386_reg_struct_return_p(), i386_register_to_value(), i386_return_value(), i386_stap_adjust_register(), i386_store_return_value(), i386_type_align(), i386_value_to_register(), ia64_extract_return_value(), ia64_push_dummy_call(), ia64_store_return_value(), ia64_use_struct_convention(), indirect_pieced_value(), infcall_suspend_state::infcall_suspend_state(), info_scope_command(), infpy_thread_from_thread_handle(), init_complex_type(), init_regcache_descr(), iq2000_address_to_pointer(), iq2000_extract_return_value(), iq2000_pass_8bytetype_by_address(), iq2000_pointer_to_address(), iq2000_push_dummy_call(), iq2000_store_return_value(), iq2000_use_struct_convention(), is_float_or_hfa_type_recurse(), m2_language::is_string_type_p(), jit_read_code_entry(), jit_read_descriptor(), ada_language::language_arch_info(), rust_language::language_arch_info(), ld_so_xfer_auxv(), linux_get_siginfo_data(), linux_get_siginfo_type_with_fields(), linux_make_mappings_callback(), linux_make_mappings_corefile_notes(), list_arg_or_local(), lm32_extract_return_value(), lm32_return_value(), lm32_store_return_value(), lookup_opencl_vector_type(), loongarch_push_dummy_call(), loongarch_return_value(), lval_func_check_synthetic_pointer(), lval_func_read(), lval_func_write(), m2_array(), m2_get_discrete_bounds(), m2_print_array_contents(), m32c_cat_read(), m32c_cat_write(), m32c_find_part(), m32c_m16c_address_to_pointer(), m32c_m16c_pointer_to_address(), m32c_part_read(), m32c_push_dummy_call(), m32c_r3r2r1r0_read(), m32c_r3r2r1r0_write(), m32c_return_value(), m32r_extract_return_value(), m32r_push_dummy_call(), m32r_return_value(), m32r_store_return_value(), m68hc11_extract_return_value(), m68hc11_push_dummy_call(), m68hc11_return_value(), m68hc11_store_return_value(), m68k_extract_return_value(), m68k_push_dummy_call(), m68k_reg_struct_return_p(), m68k_return_value(), m68k_store_return_value(), m68k_svr4_return_value(), m68kbsd_fpreg_offset(), make_pointer_type(), make_qualified_type(), make_reference_type(), match_endianness(), max_of_type(), mep_extract_return_value(), mep_return_value(), mep_store_return_value(), mep_use_struct_convention(), microblaze_extract_return_value(), microblaze_stabs_argument_has_addr(), microblaze_store_return_value(), min_of_type(), mips_convert_register_float_case_p(), mips_convert_register_gpreg_case_p(), mips_eabi_push_dummy_call(), mips_eabi_return_value(), mips_integer_to_address(), mips_n32n64_fp_arg_chunk_p(), mips_n32n64_push_dummy_call(), mips_n32n64_return_value(), mips_o32_push_dummy_call(), mips_o32_return_value(), mips_o64_push_dummy_call(), mips_o64_return_value(), mips_pseudo_register_type(), mips_register_to_value(), mips_type_needs_double_align(), mips_value_to_register(), mn10300_extract_return_value(), mn10300_store_return_value(), mn10300_type_align(), mn10300_use_struct_convention(), moxie_extract_return_value(), moxie_return_value(), moxie_store_return_value(), msp430_push_dummy_call(), msp430_return_value(), nbsd_get_siginfo_type(), nds32_extract_return_value(), nds32_push_dummy_call(), nds32_return_value(), nds32_store_return_value(), nios2_extract_return_value(), nios2_push_dummy_call(), nios2_return_value(), nios2_store_return_value(), nios2_type_align(), open_symbol_file_object(), opencl_logical_not(), or1k_push_dummy_call(), or1k_return_value(), pack_long(), pack_unsigned_long(), parse_and_eval_type(), parse_find_args(), parse_symbol(), pascal_is_string_type(), pascal_object_print_value(), pass_in_v_vfp_candidate(), pass_in_x(), pass_in_x_or_stack(), pass_on_stack(), patch_type(), ppc64_aggregate_candidate(), ppc64_elfv2_abi_homogeneous_aggregate(), ppc64_sysv_abi_push_dummy_call(), ppc64_sysv_abi_push_freg(), ppc64_sysv_abi_push_param(), ppc64_sysv_abi_return_value(), ppc64_sysv_abi_return_value_base(), ppc_linux_return_value(), ppc_sysv_abi_push_dummy_call(), ppcnbsd_return_value(), ppscm_print_string_repr(), value::primitive_field(), print_children(), rust_language::print_enum(), print_formatted(), print_frame_args(), print_go_string(), print_scalar_formatted(), print_string_repr(), print_symbol(), print_type_fixed_point(), print_unpacked_pointer(), printf_c_string(), printf_wide_c_string(), f_language::printstr(), pascal_language::printstr(), process_coff_symbol(), processInt(), procfs_address_to_host_pointer(), promotion_type(), pyuw_sniffer(), quirk_ada_thick_pointer(), quirk_rust_enum(), rank_one_type_parm_char(), rank_one_type_parm_float(), rank_one_type_parm_int(), read_array_type(), read_base_type(), read_enumeration_type(), read_frame_arg(), read_member_functions(), read_memory_typed_address(), read_one_struct_field(), read_structure_type(), read_subrange_type(), read_tag_pointer_type(), language_defn::read_var_value(), recognize_bound_expression(), value::record_latest(), recursive_dump_type(), selftests::register_to_value_test(), replace_type(), reserve_stack_space(), resolve_dynamic_struct(), resolve_dynamic_union(), infcall_suspend_state::restore(), riscv_arg_location(), riscv_call_arg_struct(), riscv_print_one_register_info(), riscv_register_type(), riscv_return_value(), riscv_type_align(), rl78_address_to_pointer(), rl78_pointer_to_address(), rl78_push_dummy_call(), rl78_return_value(), rs6000_convert_register_p(), rs6000_lynx178_push_dummy_call(), rs6000_lynx178_return_value(), rs6000_push_dummy_call(), rs6000_return_value(), rust_chartype_p(), rust_composite_type(), rust_range(), rust_subscript(), rust_u8_type_p(), rw_pieced_value(), rx_push_dummy_call(), rx_return_value(), s12z_extract_return_value(), s12z_return_value(), s390_effective_inner_type(), s390_function_arg_float(), s390_function_arg_integer(), s390_function_arg_vector(), s390_handle_arg(), s390_register_return_value(), s390_return_value(), s390_unwind_pseudo_register(), s390_value_from_register(), safe_parse_type(), scalar_binop(), struct_field_searcher::search(), search_struct_method(), set_decnumber_context(), value::set_enclosing_type(), set_internalvar_component(), set_length(), set_length_in_type_chain(), value::set_limited_array_length(), setting_cmd(), sh_extract_return_value_fpu(), sh_extract_return_value_nofpu(), sh_push_dummy_call_fpu(), sh_push_dummy_call_nofpu(), sh_store_return_value_fpu(), sh_store_return_value_nofpu(), sh_use_struct_convention(), sh_use_struct_convention_nofpu(), siginfo_value_read(), siginfo_value_write(), signed_pointer_to_address(), slot_alignment_is_next_even(), sparc32_extract_return_value(), sparc32_push_dummy_code(), sparc32_return_value(), sparc32_stabs_argument_has_addr(), sparc32_store_arguments(), sparc32_store_return_value(), sparc32_struct_return_from_sym(), sparc64_16_byte_align_p(), sparc64_complex_floating_p(), sparc64_extract_floating_fields(), sparc64_extract_return_value(), sparc64_floating_p(), sparc64_integral_or_pointer_p(), sparc64_return_value(), sparc64_store_arguments(), sparc64_store_floating_fields(), sparc64_store_return_value(), sparc_arg_by_memory_p(), sparc_complex_floating_p(), sparc_floating_p(), sparc_integral_or_pointer_p(), sparc_structure_return_p(), stap_modify_semaphore(), store_regs(), svr4_auxv_parse(), target_float_convert(), target_float_format_length(), target_float_same_format_p(), tic6x_arg_type_alignment(), tic6x_extract_return_value(), tic6x_push_dummy_call(), tic6x_return_value(), tic6x_store_return_value(), tilegx_extract_return_value(), tilegx_store_return_value(), tilegx_use_struct_convention(), to_fixed_array_type(), to_fixed_range_type(), to_record_with_fixed_variant_part(), decimal_float_ops::to_string(), mpfr_float_ops::to_target(), host_float_ops< T >::to_target(), type_length_bits(), type_length_units(), pascal_language::type_print_varspec_prefix(), type_wider_than(), typy_get_sizeof(), ui_printf(), unop_promote(), value::unpack_bitfield(), unpack_bits_as_long(), unpack_long(), unsigned_address_to_pointer(), unsigned_pointer_to_address(), unwind_infopy_add_saved_register(), print_offset_data::update(), update_static_array_size(), v850_eight_byte_align_p(), v850_extract_return_value(), v850_store_return_value(), v850_use_struct_convention(), val_print_packed_array_elements(), val_print_string(), valprint_check_validity(), valpy_lazy_string(), valpy_string(), value_addr(), value_arg_coerce(), value_args_as_target_float(), value_assign(), value_assign_to_component(), value_cast(), value_coerce_to_target(), value_complement(), value_cstring(), value_cstring(), value_equal(), value_equal_contents(), value_from_contents(), value_from_contents_and_address(), value_from_register(), value_full_object(), value_imaginary_part(), value_less(), value_literal_complex(), value_logical_not(), value_neg(), value_of_dwarf_reg_entry(), value_one(), value_pointer(), value_print_array_elements(), f_language::value_print_inner(), m2_language::value_print_inner(), pascal_language::value_print_inner(), rust_language::value_print_inner(), value_print_scalar_formatted(), value_ptrdiff(), value_slice(), value_strcmp(), value_string(), value_string(), expr::fortran_undetermined::value_subarray(), value_tag_from_contents_and_address(), value_vector_widen(), vax_return_value(), vector_binop(), vector_relop(), vlscm_convert_bytevector(), vlscm_integer_fits_p(), windows_get_siginfo_type(), windows_get_tlb_type(), write_constant_as_bytes(), xstormy16_address_to_pointer(), xstormy16_extract_return_value(), xstormy16_pointer_to_address(), xstormy16_store_return_value(), xstormy16_use_struct_convention(), xtensa_extract_return_value(), xtensa_push_dummy_call(), xtensa_return_value(), xtensa_store_return_value(), yyparse(), and z80_return_value().

◆ name()

const char * type::name ( ) const
inline

Definition at line 968 of file gdbtypes.h.

References main_type::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_array_element_type(), ada_check_typedef(), ada_fixup_array_indexes_type(), ada_get_field_index(), ada_is_dispatch_table_ptr_type(), ada_is_exception_sym(), ada_is_interface_tag(), ada_is_redundant_range_encoding(), ada_is_system_address_type(), ada_prefer_type(), ada_resolve_enum(), ada_template_to_fixed_record_type_1(), ada_type_name(), expr::add_struct_fields(), add_symbol_overload_list_adl_namespace(), add_undefined_type(), language_arch_info::type_and_symbol::alloc_type_symbol(), c_is_path_expr_parent(), c_print_type_1(), c_textual_element_type(), c_type_print_base_1(), c_type_print_base_struct_union(), c_type_print_varspec_prefix(), c_type_print_varspec_suffix(), c_value_print(), call_function_by_hand_dummy(), check_type_length_before_alloc(), check_typedef(), check_types_equal(), class_types_same_p(), classify_type(), compile_cplus_convert_enum(), compile_cplus_convert_float(), compile_cplus_convert_int(), compile_cplus_convert_namespace(), compile_cplus_convert_struct_or_union(), compile_cplus_convert_typedef(), complain_about_struct_wipeout(), convert_float(), convert_int(), copy_type_recursive(), cp_find_type_baseclass_by_name(), cp_is_vtbl_ptr_type(), cp_lookup_bare_symbol(), cp_lookup_nested_symbol(), cp_print_class_member(), cp_print_value(), cp_print_value_fields(), d_lookup_symbol(), define_symbol(), determine_prefix(), register_dump::dump(), dwarf2_add_field(), dwarf2_init_complex_target_type(), enum_constant_from_type(), eval_multi_subscript(), eval_op_m2_subscript(), eval_op_subscript(), expr::rust_struct_anon::evaluate(), expr::rust_structop::evaluate(), expr::scope_operation::evaluate_funcall(), expr::rust_structop::evaluate_funcall(), f_language::f_type_print_base(), f_language::f_type_print_varspec_prefix(), f_language::f_type_print_varspec_suffix(), find_methods(), find_overload_match(), find_size_for_pointer_math(), gccgo_string_p(), gdb_mangle_name(), gdbscm_type_name(), gdbscm_type_tag(), gen_expr_binop_rest(), gen_fetch(), gen_maybe_namespace_elt(), gen_namespace_elt(), gen_struct_ref(), init_complex_type(), inspect_type(), rust_language::is_string_type_p(), lookup_template_type(), m2_enum(), m2_long_set(), m2_record_fields(), m2_type_name(), m2_typedef(), make_gdb_type(), compile_cplus_instance::new_scope(), new_symbol(), parse_symbol(), parse_type(), pascal_object_is_vtbl_ptr_type(), pascal_object_print_value(), pascal_object_print_value_fields(), patch_type(), print_array_type(), rust_language::print_enum(), print_range(), print_range_type(), print_symbol(), f_language::print_type(), opencl_language::print_type(), m2_language::print_typedef(), process_coff_symbol(), process_structure_scope(), quirk_ada_thick_pointer(), quirk_rust_enum(), rank_one_type(), rank_one_type_parm_int(), read_base_type(), read_baseclasses(), read_cpp_abbrev(), read_namespace(), read_tilde_fields(), recursive_dump_type(), resolve_dynamic_array_or_string_1(), resolve_dynamic_range(), riscv_register_type(), rust_inclusive_range_type_p(), rust_internal_print_type(), rust_print_struct_def(), rust_range_type_p(), rust_slice_type_p(), rust_subscript(), rust_tuple_type_p(), rust_val_print_slice(), struct_field_searcher::search(), search_struct_field(), set_name(), sixg_string_p(), to_fixed_array_type(), to_fixed_range_type(), gdb.dap.varref.BaseReference::to_object(), type_name_or_error(), pascal_language::type_print_base(), pascal_language::type_print_varspec_prefix(), pascal_language::type_print_varspec_suffix(), types_equal(), typy_get_name(), typy_get_tag(), typy_legacy_template_argument(), user_select_syms(), rust_language::val_print_struct(), value_args_as_target_float(), value_cast(), value_cast_structs(), value_cast_to_fixed_point(), value_full_object(), value_maybe_namespace_elt(), value_namespace_elt(), pascal_language::value_print(), rust_language::value_print_inner(), vb_match(), print_c_tdesc::visit(), print_c_tdesc::visit(), print_c_tdesc::visit(), xget_renaming_scope(), and yyparse().

◆ num_fields()

unsigned int type::num_fields ( ) const
inline

Definition at line 994 of file gdbtypes.h.

References main_type::m_nfields.

Referenced by aapcs_is_vfp_call_or_return_candidate_1(), ada_atr_enum_val(), ada_discrete_type_high_bound(), ada_fixup_array_indexes_type(), ada_get_base_type(), ada_get_field_index(), ada_identical_enum_types_p(), ada_index_struct_field_1(), ada_is_aligner_type(), ada_is_ignored_field(), ada_is_redundant_index_type_desc(), ada_parent_type(), ada_print_symbol_signature(), ada_resolve_enum(), ada_search_struct_field(), ada_template_to_fixed_record_type_1(), ada_varobj_describe_struct_child(), ada_varobj_get_struct_number_of_children(), ada_which_variant_applies(), expr::add_struct_fields(), alloc_rust_variant(), amd64_classify_aggregate(), amd64_classify_aggregate_field(), amd64_has_unaligned_fields(), riscv_struct_info::analyse_inner(), append_composite_type_field_aligned(), append_composite_type_field_raw(), append_flags_type_field(), arm_return_in_memory(), arm_vfp_cprc_sub_candidate(), c_get_string(), c_is_path_expr_parent(), c_number_of_children(), c_type_print_args(), c_type_print_base_1(), c_type_print_base_struct_union(), call_function_by_hand_dummy(), check_field(), check_types_equal(), compare_parameters(), compile_cplus_convert_enum(), compile_cplus_convert_func(), compile_cplus_convert_struct_or_union_members(), completion_list_add_fields(), compute_struct_member(), compute_variant_fields(), expr::convert_char_literal(), convert_enum(), convert_func(), convert_struct_or_union(), copy_fields(), copy_type_recursive(), cp_find_class_member(), cp_print_value_fields(), cp_type_print_method_args(), cplus_class_num_children(), desc_arity(), discrete_position(), dwarf2_add_member_fn(), dwarf2_compute_name(), dynamic_array_type(), enum_constant_from_type(), expr::rust_struct_anon::evaluate(), expr::rust_structop::evaluate_funcall(), expr::array_operation::evaluate_struct_tuple(), f_language::f_type_print_base(), f_language::f_type_print_varspec_suffix(), field(), find_oload_champ(), find_struct_field(), buildsym_compunit::finish_block_internal(), fp_register_arg_p(), gccgo_string_p(), gdbscm_type_field(), gdbscm_type_fields(), gdbscm_type_has_field_p(), gdbscm_type_next_field_x(), gdbscm_type_num_fields(), gen_struct_elt_for_reference(), gen_struct_ref_recursive(), gen_trace_static_fields(), generate_vla_size(), generic_val_print_enum_1(), get_discrete_high_bound(), get_discrete_low_bound(), get_long_set_bounds(), gnuv2_baseclass_offset(), 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(), iq2000_pass_8bytetype_by_address(), is_copy_or_move_constructor_type(), is_dynamic_type_internal(), is_float_or_hfa_type_recurse(), is_scalar_type_recursive(), lookup_struct_elt(), m2_enum(), m2_is_long_set(), m2_is_long_set_of_type(), m2_is_unbounded_array(), m2_long_set(), m2_print_bounds(), m2_print_long_set(), m2_procedure(), m2_record_fields(), m68k_svr4_return_value(), 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(), rust_parser::name_to_operation(), nds32_check_calling_use_fpr(), need_access_label_p(), parse_symbol(), pascal_is_string_type(), pascal_object_print_value_fields(), pass_in_v_vfp_candidate(), ppc64_aggregate_candidate(), ppc64_sysv_abi_push_param(), print_array_type(), print_cplus_stuff(), rust_language::print_enum(), print_enum_type(), print_field_values(), pascal_language::print_func_args(), print_func_type(), print_record_field_types(), print_type_scalar(), print_unchecked_union_type(), print_variant_clauses(), process_structure_scope(), quirk_ada_thick_pointer_struct(), quirk_gcc_member_function_pointer(), quirk_rust_enum(), read_tag_ptr_to_member_type(), read_tilde_fields(), recursive_dump_type(), resolve_dynamic_struct(), resolve_dynamic_union(), riscv_print_one_register_info(), riscv_push_dummy_call(), rust_compute_range(), rust_empty_enum_p(), rust_enum_variant(), rust_get_trait_object_pointer(), rust_internal_print_type(), rust_print_struct_def(), rust_range_type_p(), rust_slice_type_p(), rust_subscript(), rust_tuple_struct_type_p(), rust_underscore_fields(), rx_push_dummy_call(), s390_effective_inner_type(), s390_push_dummy_call(), struct_field_searcher::search(), set_num_fields(), sh_treat_as_flt_p(), sh_use_struct_convention(), sh_use_struct_convention_nofpu(), sixg_string_p(), slot_alignment_is_next_even(), sparc64_16_byte_align_p(), sparc64_extract_floating_fields(), sparc64_store_floating_fields(), store_regs(), symbols_are_identical_enums(), template_to_static_fixed_type(), to_fixed_array_type(), to_record_with_fixed_variant_part(), type_align(), pascal_language::type_print_base(), types_equal(), typy_getitem(), typy_has_key(), typy_iterator_iternext(), typy_length(), v850_eight_byte_align_p(), v850_use_struct_convention(), val_atr(), rust_language::val_print_struct(), val_print_type_code_flags(), f_language::value_print_inner(), value_struct_elt_bitpos(), value_struct_elt_for_reference(), and variant_field_index().

◆ objfile_owner()

struct objfile * type::objfile_owner ( ) const
inline

◆ remove_dyn_prop()

void type::remove_dyn_prop ( dynamic_prop_node_kind kind)

Remove dynamic property of kind KIND from this type, if it exists.

Definition at line 2909 of file gdbtypes.c.

References main_type::dyn_prop_list, dynamic_prop_list::next, and dynamic_prop_list::prop_kind.

Referenced by resolve_dynamic_array_or_string_1(), resolve_dynamic_type_internal(), and set_internalvar().

◆ set_bounds()

void type::set_bounds ( range_bounds * bounds)
inline

◆ set_code()

void type::set_code ( type_code code)
inline

◆ set_endianity_is_not_default()

void type::set_endianity_is_not_default ( bool endianity_is_not_default)
inline

◆ set_fields()

void type::set_fields ( struct field * fields)
inline

◆ set_fixed_point_info()

void type::set_fixed_point_info ( struct fixed_point_type_info * info) const
inline

Assuming that THIS is a TYPE_CODE_FIXED_POINT, set this type's fixed_point_info to INFO.

Definition at line 1317 of file gdbtypes.h.

References code(), type_specific::fixed_point_info, and main_type::type_specific.

Referenced by allocate_fixed_point_type_info().

◆ set_has_no_signedness()

void type::set_has_no_signedness ( bool has_no_signedness)
inline

◆ set_has_varargs()

void type::set_has_varargs ( bool has_varargs)
inline

◆ set_index_type()

void type::set_index_type ( type * index_type)
inline

Definition at line 1047 of file gdbtypes.h.

References field(), and field::set_type().

Referenced by create_array_type_with_stride(), and quirk_ada_thick_pointer().

◆ set_instance_flags()

void type::set_instance_flags ( type_instance_flags flags)
inline

◆ set_is_declared_class()

void type::set_is_declared_class ( bool is_declared_class) const
inline

◆ set_is_fixed_instance()

void type::set_is_fixed_instance ( bool is_fixed_instance)
inline

◆ set_is_flag_enum()

void type::set_is_flag_enum ( bool is_flag_enum)
inline

Definition at line 1286 of file gdbtypes.h.

References is_flag_enum(), and main_type::m_flag_flag_enum.

Referenced by update_enumeration_type_from_children().

◆ set_is_gnu_ifunc()

void type::set_is_gnu_ifunc ( bool is_gnu_ifunc)
inline

Definition at line 1221 of file gdbtypes.h.

References is_gnu_ifunc(), and main_type::m_flag_gnu_ifunc.

Referenced by create_gdbtypes_data().

◆ set_is_multi_dimensional()

void type::set_is_multi_dimensional ( bool value)
inline

Definition at line 1298 of file gdbtypes.h.

References main_type::m_multi_dimensional, and value.

Referenced by read_array_type().

◆ set_is_prototyped()

void type::set_is_prototyped ( bool is_prototyped)
inline

◆ set_is_stub()

void type::set_is_stub ( bool is_stub)
inline

◆ set_is_unsigned()

void type::set_is_unsigned ( bool is_unsigned)
inline

◆ set_is_vector()

void type::set_is_vector ( bool is_vector)
inline

◆ set_length()

void type::set_length ( ULONGEST length)
inline

◆ set_name()

void type::set_name ( const char * name)
inline

◆ set_num_fields()

void type::set_num_fields ( unsigned int num_fields)
inline

◆ set_owner() [1/2]

void type::set_owner ( gdbarch * arch)
inline

◆ set_owner() [2/2]

void type::set_owner ( objfile * objfile)
inline

◆ set_stub_is_supported()

void type::set_stub_is_supported ( bool stub_is_supported)
inline

Definition at line 1206 of file gdbtypes.h.

References main_type::m_flag_stub_supported, and stub_is_supported().

Referenced by read_structure_type().

◆ set_target_is_stub()

void type::set_target_is_stub ( bool target_is_stub)
inline

◆ set_target_type()

void type::set_target_type ( struct type * target_type)
inline

◆ stub_is_supported()

bool type::stub_is_supported ( ) const
inline

Definition at line 1201 of file gdbtypes.h.

References main_type::m_flag_stub_supported.

Referenced by recursive_dump_type(), and set_stub_is_supported().

◆ target_is_stub()

bool type::target_is_stub ( ) const
inline

Definition at line 1144 of file gdbtypes.h.

References main_type::m_flag_target_stub.

Referenced by check_typedef(), recursive_dump_type(), and set_target_is_stub().

◆ target_type()

struct type * type::target_type ( ) const
inline

Definition at line 1037 of file gdbtypes.h.

References main_type::m_target_type.

Referenced by aapcs_is_vfp_call_or_return_candidate_1(), ada_array_arity(), ada_array_bound_from_type(), ada_array_element_type(), ada_array_length(), ada_atr_enum_rep(), ada_atr_enum_val(), ada_atr_size(), ada_convert_actual(), ada_get_base_type(), ada_index_type(), ada_is_array_type(), ada_is_dispatch_table_ptr_type(), ada_is_redundant_index_type_desc(), ada_is_simple_array_type(), ada_is_tag_type(), ada_is_unconstrained_packed_array_type(), ada_is_variant_part(), ada_lookup_struct_elt_type(), ada_parent_type(), ada_print_scalar(), ada_print_symbol_signature(), ada_print_type(), ada_promote_array_of_integrals(), ada_tasks_inferior_data_sniffer(), ada_template_to_fixed_record_type_1(), ada_ternop_slice(), ada_type_match(), ada_typedef_target_type(), ada_val_print_ref(), ada_val_print_string(), ada_value_is_changeable_p(), ada_value_print(), ada_value_print_num(), ada_value_print_ptr(), ada_value_ptr_subscript(), ada_value_slice(), ada_value_slice_from_ptr(), ada_value_struct_elt(), ada_value_subscript(), ada_variant_discrim_name(), ada_varobj_describe_simple_array_child(), ada_varobj_get_ptr_number_of_children(), ada_varobj_ind(), ada_varobj_simple_array_elt(), add_array_cv_type(), add_symbol_overload_list_adl_namespace(), adjust_value_for_child_access(), amd64_classify_aggregate(), amd64_windows_return_value(), arm_push_dummy_call(), arm_vfp_cprc_sub_candidate(), avr_address_to_pointer(), avr_pointer_to_address(), binop_types_user_defined_p(), bpfinishpy_init(), c_describe_child(), c_get_string(), c_is_string_type_p(), c_textual_element_type(), c_type_print_base_1(), c_type_print_base_struct_union(), c_type_print_varspec_prefix(), c_type_print_varspec_suffix(), c_value_of_variable(), c_value_print(), c_value_print_array(), c_value_print_ptr(), calc_f77_array_dims(), call_function_by_hand_dummy(), can_create_complex_type(), can_dereference(), cast_into_complex(), check_stub_method(), check_typedef(), check_types_equal(), classify_type(), coerce_for_assign(), coerce_ref(), compile_cplus_convert_array(), compile_cplus_convert_complex(), compile_cplus_convert_func(), compile_cplus_convert_memberptr(), compile_cplus_convert_pointer(), compile_cplus_convert_reference(), expr::structop_base_operation::complete(), constrained_packed_array_type(), convert_array(), convert_complex(), convert_func(), convert_pointer(), copy_type_recursive(), cp_is_vtbl_member(), cp_lookup_bare_symbol(), cp_print_static_field(), create_value(), d_lookup_symbol(), decode_packed_array_bitsize(), desc_base_type(), desc_bounds(), desc_bounds_type(), desc_data_target_type(), fortran_array_printer_impl::dimension_contents_eq(), discrete_position(), expr::ada_var_value_operation::do_generate_ax(), do_ppc_sysv_return_value(), dwarf2_add_member_fn(), dwarf2_compute_name(), dynamic_array_type(), elf_gnu_ifunc_resolver_return_stop(), empty_array(), eval_op_f_kind(), eval_op_ind(), eval_op_m2_subscript(), eval_op_member(), eval_op_objc_msgcall(), eval_op_structop_ptr(), eval_op_subscript(), expr::ada_binop_addsub_operation::evaluate(), expr::ada_var_value_operation::evaluate(), expr::ada_unop_ind_operation::evaluate(), expr::ada_funcall_operation::evaluate(), expr::ada_concat_operation::evaluate(), expr::c_string_operation::evaluate(), expr::opencl_ternop_cond_operation::evaluate(), expr::unop_ind_base_operation::evaluate(), expr::array_operation::evaluate(), expr::fortran_undetermined::evaluate(), expr::subscript_operation::evaluate_for_sizeof(), expr::unop_ind_base_operation::evaluate_for_sizeof(), expr::operation::evaluate_funcall(), expr::structop_member_base::evaluate_funcall(), expr::rust_structop::evaluate_funcall(), evaluate_subexp_do_call(), evaluate_subexp_for_address_base(), evaluate_subexp_for_sizeof_base(), expr::var_value_operation::evaluate_with_coercion(), f77_get_dynamic_length_of_aggregate(), f_language::f_type_print_base(), f_language::f_type_print_varspec_prefix(), f_language::f_type_print_varspec_suffix(), fetch_const_value_from_synthetic_pointer(), find_array_element_type(), find_function_addr(), find_gnu_ifunc_target_type(), find_size_for_pointer_math(), finish_command(), fixed_point_type_base_type(), fortran_adjust_dynamic_array_base_address_hack(), fortran_array_offset_calculator::fortran_array_offset_calculator(), fortran_array_shape(), fortran_array_size(), fortran_associated(), fortran_bounds_all_dims(), fortran_bounds_for_dimension(), frv_push_dummy_call(), gccgo_string_p(), gdbscm_type_target(), gdbscm_value_dynamic_type(), gdbscm_value_to_lazy_string(), gen_deref(), gen_ptrdiff(), gen_scale(), gen_traced_pop(), gen_usual_unary(), generate_vla_size(), generic_val_print_array(), generic_val_print_ref(), generic_value_print(), generic_value_print_ptr(), get_base_type(), get_discrete_high_bound(), get_discrete_low_bound(), get_out_value_type(), get_regs_type(), get_return_value(), get_target_type(), gnuv2_virtual_fn_field(), gnuv3_get_typeid(), gnuv3_method_ptr_to_value(), gnuv3_pass_by_reference(), hppa64_push_dummy_call(), i386_16_byte_align_p(), i386_windows_push_dummy_call(), ia64_push_dummy_call(), incomplete_type_hint(), indirect_synthetic_pointer(), init_complex_type(), init_pointer_type(), inspect_type(), integer_type_p(), iq2000_address_to_pointer(), iq2000_pass_8bytetype_by_address(), iq2000_pointer_to_address(), is_copy_or_move_constructor_type(), is_dynamic_type_internal(), is_fixed_point_type(), is_float_or_hfa_type_recurse(), is_integral_or_integral_reference(), is_scalar_type_recursive(), f_language::is_string_type_p(), unknown_language::is_string_type_p(), m2_language::is_string_type_p(), rust_language::is_string_type_p(), lookup_opencl_vector_type(), lookup_struct_elt(), lookup_symbol_aux(), loongarch_push_dummy_call(), lsscm_elt_type(), lsscm_safe_lazy_string_to_value(), lval_func_check_synthetic_pointer(), lval_func_read(), lval_func_write(), m2_array(), m2_pointer(), m2_print_bounds(), m2_print_unbounded_array(), m2_procedure(), m2_range(), m2_ref(), m2_typedef(), m2_unbounded_array(), m32c_m16c_address_to_pointer(), m32c_m16c_pointer_to_address(), m68k_reg_struct_return_p(), make_vector_type(), mi_simple_type_p(), numeric_type_p(), opencl_logical_not(), opencl_value_cast(), parse_procedure(), parse_type(), pascal_is_string_type(), pascal_object_is_vtbl_member(), pass_in_v_vfp_candidate(), patch_type(), ppc64_aggregate_candidate(), ppc64_sysv_abi_push_dummy_call(), ppc64_sysv_abi_push_param(), ppc64_sysv_abi_return_value(), ppc_sysv_abi_push_dummy_call(), ppc_sysv_use_opencl_abi(), print_array_type(), print_func_type(), print_go_string(), print_optional_low_bound(), print_range(), print_range_type(), f_language::print_type(), go_language::print_type(), print_type_scalar(), print_unpacked_pointer(), print_variable_at_address(), print_variant_clauses(), process_coff_symbol(), ptrmath_type_p(), quirk_ada_thick_pointer(), quirk_ada_thick_pointer_struct(), quirk_gcc_member_function_pointer(), rank_one_type(), rank_one_type_parm_array(), rank_one_type_parm_func(), rank_one_type_parm_ptr(), read_enumeration_type(), read_fat_string_value(), read_tag_pointer_type(), read_tag_ptr_to_member_type(), read_tag_reference_type(), read_typedef(), readjust_indirect_value_type(), recursive_dump_type(), recursively_update_array_bitsize(), resolve_dynamic_array_or_string(), resolve_dynamic_array_or_string_1(), resolve_dynamic_range(), resolve_dynamic_type_internal(), rewrite_array_type(), riscv_push_dummy_call(), rl78_pointer_to_address(), rust_internal_print_type(), rust_slice_to_array(), rust_subscript(), rust_val_print_slice(), s390_push_dummy_call(), set_target_type(), finish_command_fsm::should_stop(), slot_alignment_is_next_even(), sparc32_struct_return_from_sym(), sparc64_16_byte_align_p(), sparc_arg_by_memory_p(), sparc_structure_return_p(), stpy_convert_to_value(), stpy_lazy_string_elt_type(), strip_range_type(), template_to_static_fixed_type(), to_fixed_array_type(), to_fixed_range_type(), to_fixed_variant_branch_type(), type_align(), type_is_full_subrange_of_target_type(), pascal_language::type_print_base(), pascal_language::type_print_func_varspec_suffix(), pascal_language::type_print_varspec_prefix(), pascal_language::type_print_varspec_suffix(), typecmp(), types_equal(), typy_get_composite(), typy_target(), typy_template_argument(), tyscm_get_composite(), unop_user_defined_p(), update_static_array_size(), v850_use_struct_convention(), val_atr(), val_print_packed_array_elements(), val_print_scalar_type_p(), valpy_get_dynamic_type(), valpy_lazy_string(), value_actual_type(), value_addr(), value_arg_coerce(), value_cast(), value_cast_pointers(), value_coerce_array(), value_complement(), value_concat(), value_dynamic_cast(), value_has_field(), value_imaginary_part(), value_ind(), value_literal_complex(), value_neg(), value_of_dwarf_reg_entry(), value_one(), pascal_language::value_print(), value_print_array_elements(), f_language::value_print_inner(), m2_language::value_print_inner(), pascal_language::value_print_inner(), rust_language::value_print_inner(), value_ptrdiff(), value_real_part(), value_reinterpret_cast(), value_rtti_indirect_type(), value_slice(), value_struct_elt_for_reference(), expr::fortran_undetermined::value_subarray(), value_subscript(), value_subscript_packed(), value_subscripted_rvalue(), value_vector_widen(), value_x_binop(), value_x_unop(), vb_match(), vector_binop(), vector_relop(), fortran_array_walker< Impl >::walk_1(), whatis_exp(), xstormy16_address_to_pointer(), xstormy16_pointer_to_address(), and yyparse().

Member Data Documentation

◆ align_log2

unsigned type::align_log2

The alignment for this type. Zero means that the alignment was not specified in the debug info. Note that this is stored in a funny way: as the log base 2 (plus 1) of the alignment; so a value of 1 means the alignment is 1, and a value of 9 means the alignment is 256.

Definition at line 1479 of file gdbtypes.h.

Referenced by set_type_align(), and type_raw_align().

◆ chain

struct type* type::chain

Variant chain. This points to a type that differs from this one only in qualifiers and length. Currently, the possible qualifiers are const, volatile, code-space, data-space, and address class. The length may differ only when one of the address class flags are set. The variants are linked in a circular ring and share MAIN_TYPE.

Definition at line 1471 of file gdbtypes.h.

Referenced by make_pointer_type(), make_reference_type(), and replace_type().

◆ m_instance_flags

unsigned type::m_instance_flags

Flags specific to this instance of the type, indicating where on the ring we are.

For TYPE_CODE_TYPEDEF the flags of the typedef type should be binary or-ed with the target type, with a special case for address class and space class. For example if this typedef does not specify any new qualifiers, TYPE_INSTANCE_FLAGS is 0 and the instance flags are completely inherited from the target type. No qualifiers can be cleared by the typedef. See also check_typedef.

Definition at line 1491 of file gdbtypes.h.

Referenced by instance_flags(), and set_instance_flags().

◆ m_length

ULONGEST type::m_length

Length of storage for a value of this type. The value is the expression in host bytes of what sizeof(type) would return. This size includes padding. For example, an i386 extended-precision floating point value really only occupies ten bytes, but most ABI's declare its size to be 12 bytes, to preserve alignment. A ‘struct type’ representing such a floating-point type would have a ‘length’ value of 12, even though the last two bytes are unused.

Since this field is expressed in host bytes, its value is appropriate to pass to memcpy and such (it is assumed that GDB itself always runs on an 8-bits addressable architecture). However, when using it for target address arithmetic (e.g. adding it to a target address), the type_length_units function should be used in order to get the length expressed in target addressable memory units.

Definition at line 1509 of file gdbtypes.h.

Referenced by length(), and set_length().

◆ main_type

struct main_type* type::main_type

Core type, shared by a group of qualified types.

Definition at line 1513 of file gdbtypes.h.

Referenced by copy_type(), copy_type_recursive(), and quirk_ada_thick_pointer().

◆ pointer_type

struct type* type::pointer_type

Type that is a pointer to this type. NULL if no such pointer-to type is known yet. The debugger may add the address of such a type if it has to construct one later.

Definition at line 1454 of file gdbtypes.h.

Referenced by fortran_associated(), rust_get_trait_object_pointer(), and x_command().

◆ reference_type

struct type* type::reference_type

C++: also need a reference type.

Definition at line 1458 of file gdbtypes.h.

◆ rvalue_reference_type

struct type* type::rvalue_reference_type

A C++ rvalue reference type added in C++11.

Definition at line 1462 of file gdbtypes.h.


The documentation for this struct was generated from the following files: