GDB (xrefs)
|
#include "hashtab.h"
#include "gdbsupport/array-view.h"
#include "gdbsupport/gdb-hashtab.h"
#include "gdbsupport/gdb_optional.h"
#include "gdbsupport/offset-type.h"
#include "gdbsupport/enum-flags.h"
#include "gdbsupport/underlying.h"
#include "gdbsupport/print-utils.h"
#include "gdbsupport/function-view.h"
#include "dwarf2.h"
#include "gdbsupport/gdb_obstack.h"
#include "gmp-utils.h"
#include "frame-info.h"
#include "type-codes.def"
Go to the source code of this file.
Classes | |
struct | discriminant_range |
struct | variant |
struct | variant_part |
union | dynamic_prop_data |
struct | dynamic_prop |
struct | dynamic_prop_list |
union | type_owner |
union | field_location |
struct | field |
struct | range_bounds |
union | type_specific |
struct | main_type |
struct | type |
struct | fn_fieldlist |
struct | fn_field |
struct | decl_field |
struct | cplus_struct_type |
struct | rank |
struct | gnat_aux_type |
struct | func_type |
struct | call_site_target |
union | call_site_parameter_u |
struct | call_site_parameter |
struct | call_site |
struct | call_site::target |
struct | fixed_point_type_info |
struct | builtin_type |
struct | objfile_type |
struct | struct_elt |
Macros | |
#define | B_SET(a, x) ((a)[(x)>>3] |= (1 << ((x)&7))) |
#define | B_CLR(a, x) ((a)[(x)>>3] &= ~(1 << ((x)&7))) |
#define | B_TST(a, x) ((a)[(x)>>3] & (1 << ((x)&7))) |
#define | B_TYPE unsigned char |
#define | B_BYTES(x) ( 1 + ((x)>>3) ) |
#define | B_CLRALL(a, x) memset ((a), 0, B_BYTES(x)) |
#define | OP(X) X, |
#define | TYPE_NOTTEXT(t) (((t)->instance_flags ()) & TYPE_INSTANCE_FLAG_NOTTEXT) |
#define | TYPE_CONST(t) ((((t)->instance_flags ()) & TYPE_INSTANCE_FLAG_CONST) != 0) |
#define | TYPE_VOLATILE(t) ((((t)->instance_flags ()) & TYPE_INSTANCE_FLAG_VOLATILE) != 0) |
#define | TYPE_RESTRICT(t) ((((t)->instance_flags ()) & TYPE_INSTANCE_FLAG_RESTRICT) != 0) |
#define | TYPE_ATOMIC(t) ((((t)->instance_flags ()) & TYPE_INSTANCE_FLAG_ATOMIC) != 0) |
#define | TYPE_IS_REFERENCE(t) ((t)->code () == TYPE_CODE_REF || (t)->code () == TYPE_CODE_RVALUE_REF) |
#define | TYPE_IS_ALLOCATABLE(t) ((t)->dyn_prop (DYN_PROP_ALLOCATED) != NULL) |
#define | TYPE_HAS_VARIANT_PARTS(t) ((t)->dyn_prop (DYN_PROP_VARIANT_PARTS) != nullptr) |
#define | TYPE_HAS_DYNAMIC_LENGTH(t) ((t)->dyn_prop (DYN_PROP_BYTE_SIZE) != nullptr) |
#define | TYPE_CODE_SPACE(t) ((((t)->instance_flags ()) & TYPE_INSTANCE_FLAG_CODE_SPACE) != 0) |
#define | TYPE_DATA_SPACE(t) ((((t)->instance_flags ()) & TYPE_INSTANCE_FLAG_DATA_SPACE) != 0) |
#define | TYPE_ADDRESS_CLASS_1(t) |
#define | TYPE_ADDRESS_CLASS_2(t) |
#define | TYPE_INSTANCE_FLAG_ADDRESS_CLASS_ALL (TYPE_INSTANCE_FLAG_ADDRESS_CLASS_1 | TYPE_INSTANCE_FLAG_ADDRESS_CLASS_2) |
#define | TYPE_ADDRESS_CLASS_ALL(t) |
#define | TYPE_ALIGN_BITS 8 |
#define | VOFFSET_STATIC 1 |
#define | INIT_CPLUS_SPECIFIC(type) |
#define | ALLOCATE_CPLUS_STRUCT_TYPE(type) allocate_cplus_struct_type (type) |
#define | HAVE_CPLUS_STRUCT(type) |
#define | INIT_NONE_SPECIFIC(type) |
#define | INIT_GNAT_SPECIFIC(type) |
#define | ALLOCATE_GNAT_AUX_TYPE(type) allocate_gnat_aux_type (type) |
#define | HAVE_GNAT_AUX_INFO(type) (TYPE_SPECIFIC_FIELD (type) == TYPE_SPECIFIC_GNAT_STUFF) |
#define | ADA_TYPE_P(type) |
#define | INIT_FUNC_SPECIFIC(type) |
#define | INIT_FIXED_POINT_SPECIFIC(type) |
#define | TYPE_MAIN_TYPE(thistype) (thistype)->main_type |
#define | TYPE_POINTER_TYPE(thistype) (thistype)->pointer_type |
#define | TYPE_REFERENCE_TYPE(thistype) (thistype)->reference_type |
#define | TYPE_RVALUE_REFERENCE_TYPE(thistype) (thistype)->rvalue_reference_type |
#define | TYPE_CHAIN(thistype) (thistype)->chain |
#define | TYPE_RAW_ALIGN(thistype) type_raw_align (thistype) |
#define | TYPE_DATA_LOCATION(thistype) ((thistype)->dyn_prop (DYN_PROP_DATA_LOCATION)) |
#define | TYPE_DATA_LOCATION_BATON(thistype) TYPE_DATA_LOCATION (thistype)->data.baton |
#define | TYPE_DATA_LOCATION_ADDR(thistype) (TYPE_DATA_LOCATION (thistype)->const_val ()) |
#define | TYPE_DATA_LOCATION_KIND(thistype) (TYPE_DATA_LOCATION (thistype)->kind ()) |
#define | TYPE_DYNAMIC_LENGTH(thistype) ((thistype)->dyn_prop (DYN_PROP_BYTE_SIZE)) |
#define | TYPE_ALLOCATED_PROP(thistype) ((thistype)->dyn_prop (DYN_PROP_ALLOCATED)) |
#define | TYPE_ASSOCIATED_PROP(thistype) ((thistype)->dyn_prop (DYN_PROP_ASSOCIATED)) |
#define | TYPE_RANK_PROP(thistype) ((thistype)->dyn_prop (DYN_PROP_RANK)) |
#define | TYPE_SELF_TYPE(thistype) internal_type_self_type (thistype) |
#define | TYPE_VPTR_FIELDNO(thistype) internal_type_vptr_fieldno (thistype) |
#define | TYPE_VPTR_BASETYPE(thistype) internal_type_vptr_basetype (thistype) |
#define | TYPE_NFN_FIELDS(thistype) TYPE_CPLUS_SPECIFIC(thistype)->nfn_fields |
#define | TYPE_SPECIFIC_FIELD(thistype) TYPE_MAIN_TYPE(thistype)->type_specific_field |
#define | TYPE_CPLUS_SPECIFIC(thistype) |
#define | TYPE_RAW_CPLUS_SPECIFIC(thistype) TYPE_MAIN_TYPE(thistype)->type_specific.cplus_stuff |
#define | TYPE_CPLUS_CALLING_CONVENTION(thistype) TYPE_MAIN_TYPE(thistype)->type_specific.cplus_stuff->calling_convention |
#define | TYPE_FLOATFORMAT(thistype) TYPE_MAIN_TYPE(thistype)->type_specific.floatformat |
#define | TYPE_GNAT_SPECIFIC(thistype) TYPE_MAIN_TYPE(thistype)->type_specific.gnat_stuff |
#define | TYPE_DESCRIPTIVE_TYPE(thistype) TYPE_GNAT_SPECIFIC(thistype)->descriptive_type |
#define | TYPE_CALLING_CONVENTION(thistype) TYPE_MAIN_TYPE(thistype)->type_specific.func_stuff->calling_convention |
#define | TYPE_NO_RETURN(thistype) TYPE_MAIN_TYPE(thistype)->type_specific.func_stuff->is_noreturn |
#define | TYPE_TAIL_CALL_LIST(thistype) TYPE_MAIN_TYPE(thistype)->type_specific.func_stuff->tail_call_list |
#define | TYPE_BASECLASS(thistype, index) ((thistype)->field (index).type ()) |
#define | TYPE_N_BASECLASSES(thistype) TYPE_CPLUS_SPECIFIC(thistype)->n_baseclasses |
#define | TYPE_BASECLASS_NAME(thistype, index) (thistype->field (index).name ()) |
#define | TYPE_BASECLASS_BITPOS(thistype, index) (thistype->field (index).loc_bitpos ()) |
#define | BASETYPE_VIA_PUBLIC(thistype, index) ((!TYPE_FIELD_PRIVATE(thistype, index)) && (!TYPE_FIELD_PROTECTED(thistype, index))) |
#define | TYPE_CPLUS_DYNAMIC(thistype) TYPE_CPLUS_SPECIFIC (thistype)->is_dynamic |
#define | BASETYPE_VIA_VIRTUAL(thistype, index) |
#define | FIELD_ARTIFICIAL(thisfld) ((thisfld).artificial) |
#define | FIELD_BITSIZE(thisfld) ((thisfld).bitsize) |
#define | TYPE_FIELD_ARTIFICIAL(thistype, n) FIELD_ARTIFICIAL((thistype)->field (n)) |
#define | TYPE_FIELD_BITSIZE(thistype, n) FIELD_BITSIZE((thistype)->field (n)) |
#define | TYPE_FIELD_PACKED(thistype, n) (FIELD_BITSIZE((thistype)->field (n))!=0) |
#define | TYPE_FIELD_PRIVATE_BITS(thistype) TYPE_CPLUS_SPECIFIC(thistype)->private_field_bits |
#define | TYPE_FIELD_PROTECTED_BITS(thistype) TYPE_CPLUS_SPECIFIC(thistype)->protected_field_bits |
#define | TYPE_FIELD_IGNORE_BITS(thistype) TYPE_CPLUS_SPECIFIC(thistype)->ignore_field_bits |
#define | TYPE_FIELD_VIRTUAL_BITS(thistype) TYPE_CPLUS_SPECIFIC(thistype)->virtual_field_bits |
#define | SET_TYPE_FIELD_PRIVATE(thistype, n) B_SET (TYPE_CPLUS_SPECIFIC(thistype)->private_field_bits, (n)) |
#define | SET_TYPE_FIELD_PROTECTED(thistype, n) B_SET (TYPE_CPLUS_SPECIFIC(thistype)->protected_field_bits, (n)) |
#define | SET_TYPE_FIELD_IGNORE(thistype, n) B_SET (TYPE_CPLUS_SPECIFIC(thistype)->ignore_field_bits, (n)) |
#define | SET_TYPE_FIELD_VIRTUAL(thistype, n) B_SET (TYPE_CPLUS_SPECIFIC(thistype)->virtual_field_bits, (n)) |
#define | TYPE_FIELD_PRIVATE(thistype, n) |
#define | TYPE_FIELD_PROTECTED(thistype, n) |
#define | TYPE_FIELD_IGNORE(thistype, n) |
#define | TYPE_FIELD_VIRTUAL(thistype, n) |
#define | TYPE_FN_FIELDLISTS(thistype) TYPE_CPLUS_SPECIFIC(thistype)->fn_fieldlists |
#define | TYPE_FN_FIELDLIST(thistype, n) TYPE_CPLUS_SPECIFIC(thistype)->fn_fieldlists[n] |
#define | TYPE_FN_FIELDLIST1(thistype, n) TYPE_CPLUS_SPECIFIC(thistype)->fn_fieldlists[n].fn_fields |
#define | TYPE_FN_FIELDLIST_NAME(thistype, n) TYPE_CPLUS_SPECIFIC(thistype)->fn_fieldlists[n].name |
#define | TYPE_FN_FIELDLIST_LENGTH(thistype, n) TYPE_CPLUS_SPECIFIC(thistype)->fn_fieldlists[n].length |
#define | TYPE_N_TEMPLATE_ARGUMENTS(thistype) TYPE_CPLUS_SPECIFIC (thistype)->n_template_arguments |
#define | TYPE_TEMPLATE_ARGUMENTS(thistype) TYPE_CPLUS_SPECIFIC (thistype)->template_arguments |
#define | TYPE_TEMPLATE_ARGUMENT(thistype, n) TYPE_CPLUS_SPECIFIC (thistype)->template_arguments[n] |
#define | TYPE_FN_FIELD(thisfn, n) (thisfn)[n] |
#define | TYPE_FN_FIELD_PHYSNAME(thisfn, n) (thisfn)[n].physname |
#define | TYPE_FN_FIELD_TYPE(thisfn, n) (thisfn)[n].type |
#define | TYPE_FN_FIELD_ARGS(thisfn, n) (((thisfn)[n].type)->fields ()) |
#define | TYPE_FN_FIELD_CONST(thisfn, n) ((thisfn)[n].is_const) |
#define | TYPE_FN_FIELD_VOLATILE(thisfn, n) ((thisfn)[n].is_volatile) |
#define | TYPE_FN_FIELD_PRIVATE(thisfn, n) ((thisfn)[n].is_private) |
#define | TYPE_FN_FIELD_PROTECTED(thisfn, n) ((thisfn)[n].is_protected) |
#define | TYPE_FN_FIELD_ARTIFICIAL(thisfn, n) ((thisfn)[n].is_artificial) |
#define | TYPE_FN_FIELD_STUB(thisfn, n) ((thisfn)[n].is_stub) |
#define | TYPE_FN_FIELD_CONSTRUCTOR(thisfn, n) ((thisfn)[n].is_constructor) |
#define | TYPE_FN_FIELD_FCONTEXT(thisfn, n) ((thisfn)[n].fcontext) |
#define | TYPE_FN_FIELD_VOFFSET(thisfn, n) ((thisfn)[n].voffset-2) |
#define | TYPE_FN_FIELD_VIRTUAL_P(thisfn, n) ((thisfn)[n].voffset > 1) |
#define | TYPE_FN_FIELD_STATIC_P(thisfn, n) ((thisfn)[n].voffset == VOFFSET_STATIC) |
#define | TYPE_FN_FIELD_DEFAULTED(thisfn, n) ((thisfn)[n].defaulted) |
#define | TYPE_FN_FIELD_DELETED(thisfn, n) ((thisfn)[n].is_deleted) |
#define | TYPE_TYPEDEF_FIELD_ARRAY(thistype) TYPE_CPLUS_SPECIFIC (thistype)->typedef_field |
#define | TYPE_TYPEDEF_FIELD(thistype, n) TYPE_CPLUS_SPECIFIC (thistype)->typedef_field[n] |
#define | TYPE_TYPEDEF_FIELD_NAME(thistype, n) TYPE_TYPEDEF_FIELD (thistype, n).name |
#define | TYPE_TYPEDEF_FIELD_TYPE(thistype, n) TYPE_TYPEDEF_FIELD (thistype, n).type |
#define | TYPE_TYPEDEF_FIELD_COUNT(thistype) TYPE_CPLUS_SPECIFIC (thistype)->typedef_field_count |
#define | TYPE_TYPEDEF_FIELD_PROTECTED(thistype, n) TYPE_TYPEDEF_FIELD (thistype, n).is_protected |
#define | TYPE_TYPEDEF_FIELD_PRIVATE(thistype, n) TYPE_TYPEDEF_FIELD (thistype, n).is_private |
#define | TYPE_NESTED_TYPES_ARRAY(thistype) TYPE_CPLUS_SPECIFIC (thistype)->nested_types |
#define | TYPE_NESTED_TYPES_FIELD(thistype, n) TYPE_CPLUS_SPECIFIC (thistype)->nested_types[n] |
#define | TYPE_NESTED_TYPES_FIELD_NAME(thistype, n) TYPE_NESTED_TYPES_FIELD (thistype, n).name |
#define | TYPE_NESTED_TYPES_FIELD_TYPE(thistype, n) TYPE_NESTED_TYPES_FIELD (thistype, n).type |
#define | TYPE_NESTED_TYPES_COUNT(thistype) TYPE_CPLUS_SPECIFIC (thistype)->nested_types_count |
#define | TYPE_NESTED_TYPES_FIELD_PROTECTED(thistype, n) TYPE_NESTED_TYPES_FIELD (thistype, n).is_protected |
#define | TYPE_NESTED_TYPES_FIELD_PRIVATE(thistype, n) TYPE_NESTED_TYPES_FIELD (thistype, n).is_private |
#define | TYPE_IS_OPAQUE(thistype) |
#define | TYPE_SAFE_NAME(type) (type->name () != nullptr ? type->name () : _("<unnamed type>")) |
#define | TYPE_ERROR_NAME(type) (type->name () ? type->name () : _("<error type>")) |
#define | TYPE_ALLOC(t, size) |
#define | TYPE_ZALLOC(t, size) (memset (TYPE_ALLOC (t, size), 0, size)) |
#define | REFERENCE_CONVERSION_RVALUE 1 |
#define | REFERENCE_CONVERSION_CONST_LVALUE 2 |
#define | CV_CONVERSION_CONST 1 |
#define | CV_CONVERSION_VOLATILE 2 |
Typedefs | |
typedef std::vector< rank > | badness_vector |
Functions | |
DEFINE_OFFSET_TYPE (cu_offset, unsigned int) | |
DEFINE_OFFSET_TYPE (sect_offset, uint64_t) | |
static char * | sect_offset_str (sect_offset offset) |
DEF_ENUM_FLAGS_TYPE (enum type_instance_flag_value, type_instance_flags) | |
bool | operator== (const dynamic_prop &l, const dynamic_prop &r) |
static bool | operator!= (const dynamic_prop &l, const dynamic_prop &r) |
bool | operator== (const range_bounds &l, const range_bounds &r) |
static bool | operator!= (const range_bounds &l, const range_bounds &r) |
void | allocate_cplus_struct_type (struct type *) |
void | allocate_gnat_aux_type (struct type *) |
unsigned | type_raw_align (struct type *) |
unsigned | type_align (struct type *) |
bool | set_type_align (struct type *, ULONGEST) |
struct type * | internal_type_self_type (struct type *) |
void | set_type_self_type (struct type *, struct type *) |
int | internal_type_vptr_fieldno (struct type *) |
void | set_type_vptr_fieldno (struct type *, int) |
struct type * | internal_type_vptr_basetype (struct type *) |
void | set_type_vptr_basetype (struct type *, struct type *) |
const struct floatformat * | floatformat_from_type (const struct type *type) |
const struct builtin_type * | builtin_type (struct gdbarch *gdbarch) |
const struct objfile_type * | objfile_type (struct objfile *objfile) |
struct type * | alloc_type (struct objfile *) |
struct type * | alloc_type_arch (struct gdbarch *) |
struct type * | alloc_type_copy (const struct type *) |
struct type * | get_target_type (struct type *type) |
unsigned int | type_length_units (struct type *type) |
struct type * | init_type (struct objfile *, enum type_code, int, const char *) |
struct type * | init_integer_type (struct objfile *, int, int, const char *) |
struct type * | init_character_type (struct objfile *, int, int, const char *) |
struct type * | init_boolean_type (struct objfile *, int, int, const char *) |
struct type * | init_float_type (struct objfile *, int, const char *, const struct floatformat **, enum bfd_endian=BFD_ENDIAN_UNKNOWN) |
struct type * | init_decfloat_type (struct objfile *, int, const char *) |
bool | can_create_complex_type (struct type *) |
struct type * | init_complex_type (const char *, struct type *) |
struct type * | init_pointer_type (struct objfile *, int, const char *, struct type *) |
struct type * | init_fixed_point_type (struct objfile *, int, int, const char *) |
struct type * | arch_type (struct gdbarch *, enum type_code, int, const char *) |
struct type * | arch_integer_type (struct gdbarch *, int, int, const char *) |
struct type * | arch_character_type (struct gdbarch *, int, int, const char *) |
struct type * | arch_boolean_type (struct gdbarch *, int, int, const char *) |
struct type * | arch_float_type (struct gdbarch *, int, const char *, const struct floatformat **) |
struct type * | arch_decfloat_type (struct gdbarch *, int, const char *) |
struct type * | arch_pointer_type (struct gdbarch *, int, const char *, struct type *) |
struct type * | arch_composite_type (struct gdbarch *gdbarch, const char *name, enum type_code code) |
void | append_composite_type_field (struct type *t, const char *name, struct type *field) |
void | append_composite_type_field_aligned (struct type *t, const char *name, struct type *field, int alignment) |
struct field * | append_composite_type_field_raw (struct type *t, const char *name, struct type *field) |
struct type * | arch_flags_type (struct gdbarch *gdbarch, const char *name, int bit) |
void | append_flags_type_field (struct type *type, int start_bitpos, int nr_bits, struct type *field_type, const char *name) |
void | append_flags_type_flag (struct type *type, int bitpos, const char *name) |
void | make_vector_type (struct type *array_type) |
struct type * | init_vector_type (struct type *elt_type, int n) |
struct type * | lookup_reference_type (struct type *, enum type_code) |
struct type * | lookup_lvalue_reference_type (struct type *) |
struct type * | lookup_rvalue_reference_type (struct type *) |
struct type * | make_reference_type (struct type *, struct type **, enum type_code) |
struct type * | make_cv_type (int, int, struct type *, struct type **) |
struct type * | make_restrict_type (struct type *) |
struct type * | make_unqualified_type (struct type *) |
struct type * | make_atomic_type (struct type *) |
void | replace_type (struct type *, struct type *) |
type_instance_flags | address_space_name_to_type_instance_flags (struct gdbarch *, const char *) |
const char * | address_space_type_instance_flags_to_name (struct gdbarch *, type_instance_flags) |
struct type * | make_type_with_address_space (struct type *type, type_instance_flags space_identifier) |
struct type * | lookup_memberptr_type (struct type *, struct type *) |
struct type * | lookup_methodptr_type (struct type *) |
void | smash_to_method_type (struct type *type, struct type *self_type, struct type *to_type, struct field *args, int nargs, int varargs) |
void | smash_to_memberptr_type (struct type *, struct type *, struct type *) |
void | smash_to_methodptr_type (struct type *, struct type *) |
struct type * | allocate_stub_method (struct type *) |
const char * | type_name_or_error (struct type *type) |
struct_elt | lookup_struct_elt (struct type *, const char *, int) |
struct type * | lookup_struct_elt_type (struct type *, const char *, int) |
struct type * | make_pointer_type (struct type *, struct type **) |
struct type * | lookup_pointer_type (struct type *) |
struct type * | make_function_type (struct type *, struct type **) |
struct type * | lookup_function_type (struct type *) |
struct type * | lookup_function_type_with_arguments (struct type *, int, struct type **) |
struct type * | create_static_range_type (struct type *, struct type *, LONGEST, LONGEST) |
struct type * | create_array_type_with_stride (struct type *, struct type *, struct type *, struct dynamic_prop *, unsigned int) |
struct type * | create_range_type (struct type *, struct type *, const struct dynamic_prop *, const struct dynamic_prop *, LONGEST) |
struct type * | create_range_type_with_stride (struct type *result_type, struct type *index_type, const struct dynamic_prop *low_bound, const struct dynamic_prop *high_bound, LONGEST bias, const struct dynamic_prop *stride, bool byte_stride_p) |
struct type * | create_array_type (struct type *, struct type *, struct type *) |
struct type * | lookup_array_range_type (struct type *, LONGEST, LONGEST) |
struct type * | create_string_type (struct type *, struct type *, struct type *) |
struct type * | lookup_string_range_type (struct type *, LONGEST, LONGEST) |
struct type * | create_set_type (struct type *, struct type *) |
struct type * | lookup_unsigned_typename (const struct language_defn *, const char *) |
struct type * | lookup_signed_typename (const struct language_defn *, const char *) |
ULONGEST | get_unsigned_type_max (struct type *) |
void | get_signed_type_minmax (struct type *, LONGEST *, LONGEST *) |
CORE_ADDR | get_pointer_type_max (struct type *) |
struct type * | resolve_dynamic_type (struct type *type, gdb::array_view< const gdb_byte > valaddr, CORE_ADDR addr) |
int | is_dynamic_type (struct type *type) |
struct type * | check_typedef (struct type *) |
void | check_stub_method_group (struct type *, int) |
char * | gdb_mangle_name (struct type *, int, int) |
struct type * | lookup_typename (const struct language_defn *, const char *, const struct block *, int) |
struct type * | lookup_template_type (const char *, struct type *, const struct block *) |
int | get_vptr_fieldno (struct type *, struct type **) |
bool | get_discrete_bounds (struct type *type, LONGEST *lowp, LONGEST *highp) |
gdb::optional< LONGEST > | get_discrete_low_bound (struct type *type) |
gdb::optional< LONGEST > | get_discrete_high_bound (struct type *type) |
bool | get_array_bounds (struct type *type, LONGEST *low_bound, LONGEST *high_bound) |
gdb::optional< LONGEST > | discrete_position (struct type *type, LONGEST val) |
int | class_types_same_p (const struct type *, const struct type *) |
int | is_ancestor (struct type *, struct type *) |
int | is_public_ancestor (struct type *, struct type *) |
int | is_unique_ancestor (struct type *, struct value *) |
struct rank | sum_ranks (struct rank a, struct rank b) |
int | compare_ranks (struct rank a, struct rank b) |
int | compare_badness (const badness_vector &, const badness_vector &) |
badness_vector | rank_function (gdb::array_view< type * > parms, gdb::array_view< value * > args) |
struct rank | rank_one_type (struct type *, struct type *, struct value *) |
void | recursive_dump_type (struct type *, int) |
int | field_is_static (struct field *) |
void | print_scalar_formatted (const gdb_byte *, struct type *, const struct value_print_options *, int, struct ui_file *) |
int | can_dereference (struct type *) |
int | is_integral_type (struct type *) |
int | is_floating_type (struct type *) |
int | is_scalar_type (struct type *type) |
int | is_scalar_type_recursive (struct type *) |
int | class_or_union_p (const struct type *) |
void | maintenance_print_type (const char *, int) |
htab_up | create_copied_types_hash () |
struct type * | copy_type_recursive (struct type *type, htab_t copied_types) |
struct type * | copy_type (const struct type *type) |
bool | types_equal (struct type *, struct type *) |
bool | types_deeply_equal (struct type *, struct type *) |
int | type_not_allocated (const struct type *type) |
int | type_not_associated (const struct type *type) |
bool | is_fixed_point_type (struct type *type) |
void | allocate_fixed_point_type_info (struct type *type) |
enum bfd_endian | type_byte_order (const struct type *type) |
bool | is_nocall_function (const struct type *type) |
Variables | |
const struct cplus_struct_type | cplus_struct_default |
const struct gnat_aux_type | gnat_aux_default |
const struct floatformat * | floatformats_ieee_half [BFD_ENDIAN_UNKNOWN] |
const struct floatformat * | floatformats_ieee_single [BFD_ENDIAN_UNKNOWN] |
const struct floatformat * | floatformats_ieee_double [BFD_ENDIAN_UNKNOWN] |
const struct floatformat * | floatformats_ieee_quad [BFD_ENDIAN_UNKNOWN] |
const struct floatformat * | floatformats_ieee_double_littlebyte_bigword [BFD_ENDIAN_UNKNOWN] |
const struct floatformat * | floatformats_i387_ext [BFD_ENDIAN_UNKNOWN] |
const struct floatformat * | floatformats_m68881_ext [BFD_ENDIAN_UNKNOWN] |
const struct floatformat * | floatformats_arm_ext [BFD_ENDIAN_UNKNOWN] |
const struct floatformat * | floatformats_ia64_spill [BFD_ENDIAN_UNKNOWN] |
const struct floatformat * | floatformats_vax_f [BFD_ENDIAN_UNKNOWN] |
const struct floatformat * | floatformats_vax_d [BFD_ENDIAN_UNKNOWN] |
const struct floatformat * | floatformats_ibm_long_double [BFD_ENDIAN_UNKNOWN] |
const struct floatformat * | floatformats_bfloat16 [BFD_ENDIAN_UNKNOWN] |
const struct rank | LENGTH_MISMATCH_BADNESS |
const struct rank | TOO_FEW_PARAMS_BADNESS |
const struct rank | INCOMPATIBLE_TYPE_BADNESS |
const struct rank | EXACT_MATCH_BADNESS |
const struct rank | INTEGER_PROMOTION_BADNESS |
const struct rank | FLOAT_PROMOTION_BADNESS |
const struct rank | BASE_PTR_CONVERSION_BADNESS |
const struct rank | INTEGER_CONVERSION_BADNESS |
const struct rank | FLOAT_CONVERSION_BADNESS |
const struct rank | INT_FLOAT_CONVERSION_BADNESS |
const struct rank | VOID_PTR_CONVERSION_BADNESS |
const struct rank | BOOL_CONVERSION_BADNESS |
const struct rank | BASE_CONVERSION_BADNESS |
const struct rank | REFERENCE_CONVERSION_BADNESS |
const struct rank | REFERENCE_SEE_THROUGH_BADNESS |
const struct rank | NULL_POINTER_CONVERSION |
const struct rank | CV_CONVERSION_BADNESS |
const struct rank | NS_POINTER_CONVERSION_BADNESS |
const struct rank | NS_INTEGER_POINTER_CONVERSION_BADNESS |
unsigned int | overload_debug |
#define ADA_TYPE_P | ( | type | ) |
True if TYPE is known to be an Ada type of some kind.
Definition at line 2009 of file gdbtypes.h.
#define ALLOCATE_CPLUS_STRUCT_TYPE | ( | type | ) | allocate_cplus_struct_type (type) |
Definition at line 1985 of file gdbtypes.h.
#define ALLOCATE_GNAT_AUX_TYPE | ( | type | ) | allocate_gnat_aux_type (type) |
Definition at line 2002 of file gdbtypes.h.
#define B_BYTES | ( | x | ) | ( 1 + ((x)>>3) ) |
Definition at line 92 of file gdbtypes.h.
#define B_CLR | ( | a, | |
x | |||
) | ((a)[(x)>>3] &= ~(1 << ((x)&7))) |
Definition at line 89 of file gdbtypes.h.
#define B_CLRALL | ( | a, | |
x | |||
) | memset ((a), 0, B_BYTES(x)) |
Definition at line 93 of file gdbtypes.h.
#define B_SET | ( | a, | |
x | |||
) | ((a)[(x)>>3] |= (1 << ((x)&7))) |
Definition at line 88 of file gdbtypes.h.
#define B_TST | ( | a, | |
x | |||
) | ((a)[(x)>>3] & (1 << ((x)&7))) |
Definition at line 90 of file gdbtypes.h.
#define B_TYPE unsigned char |
Definition at line 91 of file gdbtypes.h.
#define BASETYPE_VIA_PUBLIC | ( | thistype, | |
index | |||
) | ((!TYPE_FIELD_PRIVATE(thistype, index)) && (!TYPE_FIELD_PROTECTED(thistype, index))) |
Definition at line 2111 of file gdbtypes.h.
#define BASETYPE_VIA_VIRTUAL | ( | thistype, | |
index | |||
) |
Definition at line 2115 of file gdbtypes.h.
#define CV_CONVERSION_CONST 1 |
Definition at line 2762 of file gdbtypes.h.
#define CV_CONVERSION_VOLATILE 2 |
Definition at line 2763 of file gdbtypes.h.
#define FIELD_ARTIFICIAL | ( | thisfld | ) | ((thisfld).artificial) |
Definition at line 2119 of file gdbtypes.h.
#define FIELD_BITSIZE | ( | thisfld | ) | ((thisfld).bitsize) |
Definition at line 2120 of file gdbtypes.h.
#define HAVE_CPLUS_STRUCT | ( | type | ) |
Definition at line 1987 of file gdbtypes.h.
#define HAVE_GNAT_AUX_INFO | ( | type | ) | (TYPE_SPECIFIC_FIELD (type) == TYPE_SPECIFIC_GNAT_STUFF) |
A macro that returns non-zero if the type-specific data should be read as "gnat-stuff".
Definition at line 2005 of file gdbtypes.h.
#define INIT_CPLUS_SPECIFIC | ( | type | ) |
Definition at line 1980 of file gdbtypes.h.
#define INIT_FIXED_POINT_SPECIFIC | ( | type | ) |
Definition at line 2023 of file gdbtypes.h.
#define INIT_FUNC_SPECIFIC | ( | type | ) |
Definition at line 2014 of file gdbtypes.h.
#define INIT_GNAT_SPECIFIC | ( | type | ) |
Definition at line 1999 of file gdbtypes.h.
#define INIT_NONE_SPECIFIC | ( | type | ) |
Definition at line 1991 of file gdbtypes.h.
Definition at line 102 of file gdbtypes.h.
#define REFERENCE_CONVERSION_CONST_LVALUE 2 |
Conversion to const lvalue reference.
Definition at line 2755 of file gdbtypes.h.
#define REFERENCE_CONVERSION_RVALUE 1 |
Conversion to rvalue reference.
Definition at line 2753 of file gdbtypes.h.
#define SET_TYPE_FIELD_IGNORE | ( | thistype, | |
n | |||
) | B_SET (TYPE_CPLUS_SPECIFIC(thistype)->ignore_field_bits, (n)) |
Definition at line 2138 of file gdbtypes.h.
#define SET_TYPE_FIELD_PRIVATE | ( | thistype, | |
n | |||
) | B_SET (TYPE_CPLUS_SPECIFIC(thistype)->private_field_bits, (n)) |
Definition at line 2134 of file gdbtypes.h.
#define SET_TYPE_FIELD_PROTECTED | ( | thistype, | |
n | |||
) | B_SET (TYPE_CPLUS_SPECIFIC(thistype)->protected_field_bits, (n)) |
Definition at line 2136 of file gdbtypes.h.
#define SET_TYPE_FIELD_VIRTUAL | ( | thistype, | |
n | |||
) | B_SET (TYPE_CPLUS_SPECIFIC(thistype)->virtual_field_bits, (n)) |
Definition at line 2140 of file gdbtypes.h.
#define TYPE_ADDRESS_CLASS_1 | ( | t | ) |
Address class flags. Some environments provide for pointers whose size is different from that of a normal pointer or address types where the bits are interpreted differently than normal addresses. The TYPE_INSTANCE_FLAG_ADDRESS_CLASS_n flags may be used in target specific ways to represent these different types of address classes.
Definition at line 203 of file gdbtypes.h.
#define TYPE_ADDRESS_CLASS_2 | ( | t | ) |
Definition at line 205 of file gdbtypes.h.
#define TYPE_ADDRESS_CLASS_ALL | ( | t | ) |
Definition at line 209 of file gdbtypes.h.
#define TYPE_ALIGN_BITS 8 |
Number of bits allocated for alignment.
Definition at line 916 of file gdbtypes.h.
#define TYPE_ALLOC | ( | t, | |
size | |||
) |
Definition at line 2406 of file gdbtypes.h.
#define TYPE_ALLOCATED_PROP | ( | thistype | ) | ((thistype)->dyn_prop (DYN_PROP_ALLOCATED)) |
Definition at line 2065 of file gdbtypes.h.
#define TYPE_ASSOCIATED_PROP | ( | thistype | ) | ((thistype)->dyn_prop (DYN_PROP_ASSOCIATED)) |
Definition at line 2067 of file gdbtypes.h.
#define TYPE_ATOMIC | ( | t | ) | ((((t)->instance_flags ()) & TYPE_INSTANCE_FLAG_ATOMIC) != 0) |
Atomic type. If this is set, the corresponding type has an _Atomic modifier.
Definition at line 151 of file gdbtypes.h.
Definition at line 2107 of file gdbtypes.h.
#define TYPE_BASECLASS_BITPOS | ( | thistype, | |
index | |||
) | (thistype->field (index).loc_bitpos ()) |
Definition at line 2110 of file gdbtypes.h.
Definition at line 2109 of file gdbtypes.h.
#define TYPE_CALLING_CONVENTION | ( | thistype | ) | TYPE_MAIN_TYPE(thistype)->type_specific.func_stuff->calling_convention |
Definition at line 2104 of file gdbtypes.h.
#define TYPE_CHAIN | ( | thistype | ) | (thistype)->chain |
Definition at line 2031 of file gdbtypes.h.
#define TYPE_CODE_SPACE | ( | t | ) | ((((t)->instance_flags ()) & TYPE_INSTANCE_FLAG_CODE_SPACE) != 0) |
Instruction-space delimited type. This is for Harvard architectures which have separate instruction and data address spaces (and perhaps others).
GDB usually defines a flat address space that is a superset of the architecture's two (or more) address spaces, but this is an extension of the architecture's model.
If TYPE_INSTANCE_FLAG_CODE_SPACE is set, an object of the corresponding type resides in instruction memory, even if its address (in the extended flat address space) does not reflect this.
Similarly, if TYPE_INSTANCE_FLAG_DATA_SPACE is set, then an object of the corresponding type resides in the data memory space, even if this is not indicated by its (flat address space) address.
If neither flag is set, the default space for functions / methods is instruction space, and for data objects is data memory.
Definition at line 190 of file gdbtypes.h.
#define TYPE_CONST | ( | t | ) | ((((t)->instance_flags ()) & TYPE_INSTANCE_FLAG_CONST) != 0) |
Constant type. If this is set, the corresponding type has a const modifier.
Definition at line 134 of file gdbtypes.h.
#define TYPE_CPLUS_CALLING_CONVENTION | ( | thistype | ) | TYPE_MAIN_TYPE(thistype)->type_specific.cplus_stuff->calling_convention |
Definition at line 2099 of file gdbtypes.h.
#define TYPE_CPLUS_DYNAMIC | ( | thistype | ) | TYPE_CPLUS_SPECIFIC (thistype)->is_dynamic |
Definition at line 2113 of file gdbtypes.h.
#define TYPE_CPLUS_SPECIFIC | ( | thistype | ) |
Definition at line 2094 of file gdbtypes.h.
#define TYPE_DATA_LOCATION | ( | thistype | ) | ((thistype)->dyn_prop (DYN_PROP_DATA_LOCATION)) |
Definition at line 2053 of file gdbtypes.h.
#define TYPE_DATA_LOCATION_ADDR | ( | thistype | ) | (TYPE_DATA_LOCATION (thistype)->const_val ()) |
Definition at line 2057 of file gdbtypes.h.
#define TYPE_DATA_LOCATION_BATON | ( | thistype | ) | TYPE_DATA_LOCATION (thistype)->data.baton |
Definition at line 2055 of file gdbtypes.h.
#define TYPE_DATA_LOCATION_KIND | ( | thistype | ) | (TYPE_DATA_LOCATION (thistype)->kind ()) |
Definition at line 2059 of file gdbtypes.h.
#define TYPE_DATA_SPACE | ( | t | ) | ((((t)->instance_flags ()) & TYPE_INSTANCE_FLAG_DATA_SPACE) != 0) |
Definition at line 193 of file gdbtypes.h.
#define TYPE_DESCRIPTIVE_TYPE | ( | thistype | ) | TYPE_GNAT_SPECIFIC(thistype)->descriptive_type |
Definition at line 2103 of file gdbtypes.h.
#define TYPE_DYNAMIC_LENGTH | ( | thistype | ) | ((thistype)->dyn_prop (DYN_PROP_BYTE_SIZE)) |
Definition at line 2061 of file gdbtypes.h.
A helper macro that returns the name of an error type. If the type has a name, it is used; otherwise, a default is used.
Definition at line 2234 of file gdbtypes.h.
#define TYPE_FIELD_ARTIFICIAL | ( | thistype, | |
n | |||
) | FIELD_ARTIFICIAL((thistype)->field (n)) |
Definition at line 2122 of file gdbtypes.h.
#define TYPE_FIELD_BITSIZE | ( | thistype, | |
n | |||
) | FIELD_BITSIZE((thistype)->field (n)) |
Definition at line 2123 of file gdbtypes.h.
#define TYPE_FIELD_IGNORE | ( | thistype, | |
n | |||
) |
Definition at line 2148 of file gdbtypes.h.
#define TYPE_FIELD_IGNORE_BITS | ( | thistype | ) | TYPE_CPLUS_SPECIFIC(thistype)->ignore_field_bits |
Definition at line 2130 of file gdbtypes.h.
#define TYPE_FIELD_PACKED | ( | thistype, | |
n | |||
) | (FIELD_BITSIZE((thistype)->field (n))!=0) |
Definition at line 2124 of file gdbtypes.h.
#define TYPE_FIELD_PRIVATE | ( | thistype, | |
n | |||
) |
Definition at line 2142 of file gdbtypes.h.
#define TYPE_FIELD_PRIVATE_BITS | ( | thistype | ) | TYPE_CPLUS_SPECIFIC(thistype)->private_field_bits |
Definition at line 2126 of file gdbtypes.h.
#define TYPE_FIELD_PROTECTED | ( | thistype, | |
n | |||
) |
Definition at line 2145 of file gdbtypes.h.
#define TYPE_FIELD_PROTECTED_BITS | ( | thistype | ) | TYPE_CPLUS_SPECIFIC(thistype)->protected_field_bits |
Definition at line 2128 of file gdbtypes.h.
#define TYPE_FIELD_VIRTUAL | ( | thistype, | |
n | |||
) |
Definition at line 2151 of file gdbtypes.h.
#define TYPE_FIELD_VIRTUAL_BITS | ( | thistype | ) | TYPE_CPLUS_SPECIFIC(thistype)->virtual_field_bits |
Definition at line 2132 of file gdbtypes.h.
#define TYPE_FLOATFORMAT | ( | thistype | ) | TYPE_MAIN_TYPE(thistype)->type_specific.floatformat |
Definition at line 2101 of file gdbtypes.h.
#define TYPE_FN_FIELD | ( | thisfn, | |
n | |||
) | (thisfn)[n] |
Definition at line 2168 of file gdbtypes.h.
#define TYPE_FN_FIELD_ARGS | ( | thisfn, | |
n | |||
) | (((thisfn)[n].type)->fields ()) |
Definition at line 2171 of file gdbtypes.h.
#define TYPE_FN_FIELD_ARTIFICIAL | ( | thisfn, | |
n | |||
) | ((thisfn)[n].is_artificial) |
Definition at line 2176 of file gdbtypes.h.
#define TYPE_FN_FIELD_CONST | ( | thisfn, | |
n | |||
) | ((thisfn)[n].is_const) |
Definition at line 2172 of file gdbtypes.h.
#define TYPE_FN_FIELD_CONSTRUCTOR | ( | thisfn, | |
n | |||
) | ((thisfn)[n].is_constructor) |
Definition at line 2178 of file gdbtypes.h.
#define TYPE_FN_FIELD_DEFAULTED | ( | thisfn, | |
n | |||
) | ((thisfn)[n].defaulted) |
Definition at line 2183 of file gdbtypes.h.
#define TYPE_FN_FIELD_DELETED | ( | thisfn, | |
n | |||
) | ((thisfn)[n].is_deleted) |
Definition at line 2184 of file gdbtypes.h.
#define TYPE_FN_FIELD_FCONTEXT | ( | thisfn, | |
n | |||
) | ((thisfn)[n].fcontext) |
Definition at line 2179 of file gdbtypes.h.
#define TYPE_FN_FIELD_PHYSNAME | ( | thisfn, | |
n | |||
) | (thisfn)[n].physname |
Definition at line 2169 of file gdbtypes.h.
#define TYPE_FN_FIELD_PRIVATE | ( | thisfn, | |
n | |||
) | ((thisfn)[n].is_private) |
Definition at line 2174 of file gdbtypes.h.
#define TYPE_FN_FIELD_PROTECTED | ( | thisfn, | |
n | |||
) | ((thisfn)[n].is_protected) |
Definition at line 2175 of file gdbtypes.h.
#define TYPE_FN_FIELD_STATIC_P | ( | thisfn, | |
n | |||
) | ((thisfn)[n].voffset == VOFFSET_STATIC) |
Definition at line 2182 of file gdbtypes.h.
#define TYPE_FN_FIELD_STUB | ( | thisfn, | |
n | |||
) | ((thisfn)[n].is_stub) |
Definition at line 2177 of file gdbtypes.h.
#define TYPE_FN_FIELD_TYPE | ( | thisfn, | |
n | |||
) | (thisfn)[n].type |
Definition at line 2170 of file gdbtypes.h.
#define TYPE_FN_FIELD_VIRTUAL_P | ( | thisfn, | |
n | |||
) | ((thisfn)[n].voffset > 1) |
Definition at line 2181 of file gdbtypes.h.
#define TYPE_FN_FIELD_VOFFSET | ( | thisfn, | |
n | |||
) | ((thisfn)[n].voffset-2) |
Definition at line 2180 of file gdbtypes.h.
#define TYPE_FN_FIELD_VOLATILE | ( | thisfn, | |
n | |||
) | ((thisfn)[n].is_volatile) |
Definition at line 2173 of file gdbtypes.h.
#define TYPE_FN_FIELDLIST | ( | thistype, | |
n | |||
) | TYPE_CPLUS_SPECIFIC(thistype)->fn_fieldlists[n] |
Definition at line 2156 of file gdbtypes.h.
#define TYPE_FN_FIELDLIST1 | ( | thistype, | |
n | |||
) | TYPE_CPLUS_SPECIFIC(thistype)->fn_fieldlists[n].fn_fields |
Definition at line 2157 of file gdbtypes.h.
#define TYPE_FN_FIELDLIST_LENGTH | ( | thistype, | |
n | |||
) | TYPE_CPLUS_SPECIFIC(thistype)->fn_fieldlists[n].length |
Definition at line 2159 of file gdbtypes.h.
#define TYPE_FN_FIELDLIST_NAME | ( | thistype, | |
n | |||
) | TYPE_CPLUS_SPECIFIC(thistype)->fn_fieldlists[n].name |
Definition at line 2158 of file gdbtypes.h.
#define TYPE_FN_FIELDLISTS | ( | thistype | ) | TYPE_CPLUS_SPECIFIC(thistype)->fn_fieldlists |
Definition at line 2155 of file gdbtypes.h.
#define TYPE_GNAT_SPECIFIC | ( | thistype | ) | TYPE_MAIN_TYPE(thistype)->type_specific.gnat_stuff |
Definition at line 2102 of file gdbtypes.h.
#define TYPE_HAS_DYNAMIC_LENGTH | ( | t | ) | ((t)->dyn_prop (DYN_PROP_BYTE_SIZE) != nullptr) |
True if this type has a dynamic length.
Definition at line 168 of file gdbtypes.h.
#define TYPE_HAS_VARIANT_PARTS | ( | t | ) | ((t)->dyn_prop (DYN_PROP_VARIANT_PARTS) != nullptr) |
True if this type has variant parts.
Definition at line 164 of file gdbtypes.h.
#define TYPE_INSTANCE_FLAG_ADDRESS_CLASS_ALL (TYPE_INSTANCE_FLAG_ADDRESS_CLASS_1 | TYPE_INSTANCE_FLAG_ADDRESS_CLASS_2) |
Definition at line 207 of file gdbtypes.h.
#define TYPE_IS_ALLOCATABLE | ( | t | ) | ((t)->dyn_prop (DYN_PROP_ALLOCATED) != NULL) |
True if this type is allocatable.
Definition at line 160 of file gdbtypes.h.
#define TYPE_IS_OPAQUE | ( | thistype | ) |
Definition at line 2217 of file gdbtypes.h.
#define TYPE_IS_REFERENCE | ( | t | ) | ((t)->code () == TYPE_CODE_REF || (t)->code () == TYPE_CODE_RVALUE_REF) |
True if this type represents either an lvalue or lvalue reference type.
Definition at line 156 of file gdbtypes.h.
#define TYPE_MAIN_TYPE | ( | thistype | ) | (thistype)->main_type |
Definition at line 2027 of file gdbtypes.h.
#define TYPE_N_BASECLASSES | ( | thistype | ) | TYPE_CPLUS_SPECIFIC(thistype)->n_baseclasses |
Definition at line 2108 of file gdbtypes.h.
#define TYPE_N_TEMPLATE_ARGUMENTS | ( | thistype | ) | TYPE_CPLUS_SPECIFIC (thistype)->n_template_arguments |
Definition at line 2161 of file gdbtypes.h.
#define TYPE_NESTED_TYPES_ARRAY | ( | thistype | ) | TYPE_CPLUS_SPECIFIC (thistype)->nested_types |
Definition at line 2202 of file gdbtypes.h.
#define TYPE_NESTED_TYPES_COUNT | ( | thistype | ) | TYPE_CPLUS_SPECIFIC (thistype)->nested_types_count |
Definition at line 2210 of file gdbtypes.h.
#define TYPE_NESTED_TYPES_FIELD | ( | thistype, | |
n | |||
) | TYPE_CPLUS_SPECIFIC (thistype)->nested_types[n] |
Definition at line 2204 of file gdbtypes.h.
#define TYPE_NESTED_TYPES_FIELD_NAME | ( | thistype, | |
n | |||
) | TYPE_NESTED_TYPES_FIELD (thistype, n).name |
Definition at line 2206 of file gdbtypes.h.
#define TYPE_NESTED_TYPES_FIELD_PRIVATE | ( | thistype, | |
n | |||
) | TYPE_NESTED_TYPES_FIELD (thistype, n).is_private |
Definition at line 2214 of file gdbtypes.h.
#define TYPE_NESTED_TYPES_FIELD_PROTECTED | ( | thistype, | |
n | |||
) | TYPE_NESTED_TYPES_FIELD (thistype, n).is_protected |
Definition at line 2212 of file gdbtypes.h.
#define TYPE_NESTED_TYPES_FIELD_TYPE | ( | thistype, | |
n | |||
) | TYPE_NESTED_TYPES_FIELD (thistype, n).type |
Definition at line 2208 of file gdbtypes.h.
#define TYPE_NFN_FIELDS | ( | thistype | ) | TYPE_CPLUS_SPECIFIC(thistype)->nfn_fields |
Definition at line 2086 of file gdbtypes.h.
#define TYPE_NO_RETURN | ( | thistype | ) | TYPE_MAIN_TYPE(thistype)->type_specific.func_stuff->is_noreturn |
Definition at line 2105 of file gdbtypes.h.
#define TYPE_NOTTEXT | ( | t | ) | (((t)->instance_flags ()) & TYPE_INSTANCE_FLAG_NOTTEXT) |
Not textual. By default, GDB treats all single byte integers as characters (or elements of strings) unless this flag is set.
Definition at line 129 of file gdbtypes.h.
#define TYPE_POINTER_TYPE | ( | thistype | ) | (thistype)->pointer_type |
Definition at line 2028 of file gdbtypes.h.
#define TYPE_RANK_PROP | ( | thistype | ) | ((thistype)->dyn_prop (DYN_PROP_RANK)) |
Definition at line 2069 of file gdbtypes.h.
#define TYPE_RAW_ALIGN | ( | thistype | ) | type_raw_align (thistype) |
Return the alignment of the type in target addressable memory units, or 0 if no alignment was specified.
Definition at line 2035 of file gdbtypes.h.
#define TYPE_RAW_CPLUS_SPECIFIC | ( | thistype | ) | TYPE_MAIN_TYPE(thistype)->type_specific.cplus_stuff |
Definition at line 2098 of file gdbtypes.h.
#define TYPE_REFERENCE_TYPE | ( | thistype | ) | (thistype)->reference_type |
Definition at line 2029 of file gdbtypes.h.
#define TYPE_RESTRICT | ( | t | ) | ((((t)->instance_flags ()) & TYPE_INSTANCE_FLAG_RESTRICT) != 0) |
Restrict type. If this is set, the corresponding type has a restrict modifier.
Definition at line 145 of file gdbtypes.h.
#define TYPE_RVALUE_REFERENCE_TYPE | ( | thistype | ) | (thistype)->rvalue_reference_type |
Definition at line 2030 of file gdbtypes.h.
A helper macro that returns the name of a type or "unnamed type" if the type has no name.
Definition at line 2228 of file gdbtypes.h.
#define TYPE_SELF_TYPE | ( | thistype | ) | internal_type_self_type (thistype) |
Definition at line 2074 of file gdbtypes.h.
#define TYPE_SPECIFIC_FIELD | ( | thistype | ) | TYPE_MAIN_TYPE(thistype)->type_specific_field |
Definition at line 2087 of file gdbtypes.h.
#define TYPE_TAIL_CALL_LIST | ( | thistype | ) | TYPE_MAIN_TYPE(thistype)->type_specific.func_stuff->tail_call_list |
Definition at line 2106 of file gdbtypes.h.
#define TYPE_TEMPLATE_ARGUMENT | ( | thistype, | |
n | |||
) | TYPE_CPLUS_SPECIFIC (thistype)->template_arguments[n] |
Definition at line 2165 of file gdbtypes.h.
#define TYPE_TEMPLATE_ARGUMENTS | ( | thistype | ) | TYPE_CPLUS_SPECIFIC (thistype)->template_arguments |
Definition at line 2163 of file gdbtypes.h.
#define TYPE_TYPEDEF_FIELD | ( | thistype, | |
n | |||
) | TYPE_CPLUS_SPECIFIC (thistype)->typedef_field[n] |
Definition at line 2189 of file gdbtypes.h.
#define TYPE_TYPEDEF_FIELD_ARRAY | ( | thistype | ) | TYPE_CPLUS_SPECIFIC (thistype)->typedef_field |
Definition at line 2187 of file gdbtypes.h.
#define TYPE_TYPEDEF_FIELD_COUNT | ( | thistype | ) | TYPE_CPLUS_SPECIFIC (thistype)->typedef_field_count |
Definition at line 2195 of file gdbtypes.h.
#define TYPE_TYPEDEF_FIELD_NAME | ( | thistype, | |
n | |||
) | TYPE_TYPEDEF_FIELD (thistype, n).name |
Definition at line 2191 of file gdbtypes.h.
#define TYPE_TYPEDEF_FIELD_PRIVATE | ( | thistype, | |
n | |||
) | TYPE_TYPEDEF_FIELD (thistype, n).is_private |
Definition at line 2199 of file gdbtypes.h.
#define TYPE_TYPEDEF_FIELD_PROTECTED | ( | thistype, | |
n | |||
) | TYPE_TYPEDEF_FIELD (thistype, n).is_protected |
Definition at line 2197 of file gdbtypes.h.
#define TYPE_TYPEDEF_FIELD_TYPE | ( | thistype, | |
n | |||
) | TYPE_TYPEDEF_FIELD (thistype, n).type |
Definition at line 2193 of file gdbtypes.h.
#define TYPE_VOLATILE | ( | t | ) | ((((t)->instance_flags ()) & TYPE_INSTANCE_FLAG_VOLATILE) != 0) |
Volatile type. If this is set, the corresponding type has a volatile modifier.
Definition at line 139 of file gdbtypes.h.
#define TYPE_VPTR_BASETYPE | ( | thistype | ) | internal_type_vptr_basetype (thistype) |
Definition at line 2084 of file gdbtypes.h.
#define TYPE_VPTR_FIELDNO | ( | thistype | ) | internal_type_vptr_fieldno (thistype) |
Definition at line 2083 of file gdbtypes.h.
#define TYPE_ZALLOC | ( | t, | |
size | |||
) | (memset (TYPE_ALLOC (t, size), 0, size)) |
Definition at line 2415 of file gdbtypes.h.
#define VOFFSET_STATIC 1 |
Definition at line 1548 of file gdbtypes.h.
typedef std::vector<rank> badness_vector |
Used for ranking a function for overload resolution.
Definition at line 1710 of file gdbtypes.h.
Definition at line 1756 of file gdbtypes.h.
enum dynamic_prop_kind |
Enumerator | |
---|---|
PROP_UNDEFINED | |
PROP_CONST | |
PROP_ADDR_OFFSET | |
PROP_LOCEXPR | |
PROP_LOCLIST | |
PROP_VARIANT_PARTS | |
PROP_TYPE | |
PROP_VARIABLE_NAME |
Definition at line 290 of file gdbtypes.h.
Define a type's dynamic property node kind.
Enumerator | |
---|---|
DYN_PROP_DATA_LOCATION | |
DYN_PROP_ALLOCATED | |
DYN_PROP_ASSOCIATED | |
DYN_PROP_BYTE_STRIDE | |
DYN_PROP_VARIANT_PARTS | |
DYN_PROP_RANK | |
DYN_PROP_BYTE_SIZE |
Definition at line 447 of file gdbtypes.h.
enum field_loc_kind |
Determine which field of the union main_type.fields[x].loc is used.
Enumerator | |
---|---|
FIELD_LOC_KIND_BITPOS | bitpos |
FIELD_LOC_KIND_ENUMVAL | enumval |
FIELD_LOC_KIND_PHYSADDR | physaddr |
FIELD_LOC_KIND_PHYSNAME | physname |
FIELD_LOC_KIND_DWARF_BLOCK |
Definition at line 491 of file gdbtypes.h.
enum type_code |
Different kinds of data types are distinguished by the ‘code’ field.
Enumerator | |
---|---|
TYPE_CODE_UNDEF | Not used; catches errors |
Definition at line 98 of file gdbtypes.h.
enum type_instance_flag_value : unsigned |
Some bits for the type's instance_flags word. See the macros below for documentation on each bit.
Definition at line 111 of file gdbtypes.h.
enum type_specific_kind |
A discriminant to determine which field in the main_type.type_specific union is being used, if any.
For types such as TYPE_CODE_FLT, the use of this discriminant is really redundant, as we know from the type code which field is going to be used. As such, it would be possible to reduce the size of this enum in order to save a bit or two for other fields of struct main_type. But, since we still have extra room , and for the sake of clarity and consistency, we treat all fields of the union the same way.
Enumerator | |
---|---|
TYPE_SPECIFIC_NONE | |
TYPE_SPECIFIC_CPLUS_STUFF | |
TYPE_SPECIFIC_GNAT_STUFF | |
TYPE_SPECIFIC_FLOATFORMAT | |
TYPE_SPECIFIC_FUNC | |
TYPE_SPECIFIC_SELF_TYPE | |
TYPE_SPECIFIC_INT | |
TYPE_SPECIFIC_FIXED_POINT |
Definition at line 511 of file gdbtypes.h.
type_instance_flags address_space_name_to_type_instance_flags | ( | struct gdbarch * | gdbarch, |
const char * | space_identifier | ||
) |
Definition at line 588 of file gdbtypes.c.
References gdbarch_address_class_name_to_type_flags(), gdbarch_address_class_name_to_type_flags_p(), TYPE_INSTANCE_FLAG_CODE_SPACE, and TYPE_INSTANCE_FLAG_DATA_SPACE.
Referenced by type_stack::insert().
const char * address_space_type_instance_flags_to_name | ( | struct gdbarch * | gdbarch, |
type_instance_flags | space_flag | ||
) |
Definition at line 611 of file gdbtypes.c.
References gdbarch_address_class_type_flags_to_name(), gdbarch_address_class_type_flags_to_name_p(), TYPE_INSTANCE_FLAG_ADDRESS_CLASS_ALL, TYPE_INSTANCE_FLAG_CODE_SPACE, and TYPE_INSTANCE_FLAG_DATA_SPACE.
Referenced by c_type_print_modifier().
Definition at line 181 of file gdbtypes.c.
References objfile::objfile_obstack, OBJSTAT, type::set_code(), type::set_owner(), TYPE_CHAIN, TYPE_CODE_UNDEF, and TYPE_MAIN_TYPE.
Referenced by alloc_type_copy(), coff_alloc_type(), dbx_alloc_type(), dwarf2_add_member_fn(), init_type(), new_type(), quirk_ada_thick_pointer(), quirk_gcc_member_function_pointer(), read_enum_type(), read_enumeration_type(), read_forward_type(), read_func_kind_type(), read_structure_type(), and read_tag_ptr_to_member_type().
Definition at line 208 of file gdbtypes.c.
References GDBARCH_OBSTACK_ZALLOC, type::set_code(), type::set_owner(), TYPE_CHAIN, TYPE_CODE_UNDEF, and TYPE_MAIN_TYPE.
Referenced by alloc_type_copy(), arch_type(), check_typedef(), and copy_type_recursive().
Definition at line 234 of file gdbtypes.c.
References alloc_type(), alloc_type_arch(), type::arch_owner(), type::is_objfile_owned(), and type::objfile_owner().
Referenced by ada_template_to_fixed_record_type_1(), ada_type_of_array(), allocate_stub_method(), constrained_packed_array_type(), copy_type(), create_array_type_with_stride(), create_range_type(), create_set_type(), empty_record(), init_complex_type(), lookup_memberptr_type(), lookup_methodptr_type(), make_function_type(), make_pointer_type(), make_reference_type(), rust_composite_type(), template_to_static_fixed_type(), to_fixed_array_type(), to_fixed_range_type(), and to_record_with_fixed_variant_part().
void allocate_cplus_struct_type | ( | struct type * | type | ) |
Definition at line 3338 of file gdbtypes.c.
References cplus_struct_default, HAVE_CPLUS_STRUCT, set_type_vptr_fieldno(), TYPE_ALLOC, TYPE_RAW_CPLUS_SPECIFIC, TYPE_SPECIFIC_CPLUS_STUFF, and TYPE_SPECIFIC_FIELD.
void allocate_fixed_point_type_info | ( | struct type * | type | ) |
Definition at line 6089 of file gdbtypes.c.
References fixed_point_objfile_key, registry< T >::get(), type::is_objfile_owned(), type::objfile_owner(), and type::set_fixed_point_info().
void allocate_gnat_aux_type | ( | struct type * | type | ) |
Definition at line 3359 of file gdbtypes.c.
References gnat_aux_default, TYPE_ALLOC, TYPE_GNAT_SPECIFIC, TYPE_SPECIFIC_FIELD, and TYPE_SPECIFIC_GNAT_STUFF.
Definition at line 871 of file gdbtypes.c.
References alloc_type_copy(), type::set_code(), type::set_is_stub(), type::set_length(), and type::set_target_type().
Referenced by read_type().
Definition at line 6065 of file gdbtypes.c.
References append_composite_type_field_aligned(), and name.
Referenced by aarch64_vnb_type(), aarch64_vnd_type(), aarch64_vnh_type(), aarch64_vnq_type(), aarch64_vns_type(), aarch64_vnv_type(), arm_neon_double_type(), arm_neon_quad_type(), csky_vector_type(), fbsd_get_siginfo_type(), i386_bnd_type(), i386_mmx_type(), i386_ymm_type(), i386_zmm_type(), linux_get_siginfo_type_with_fields(), make_gdb_type(), nbsd_get_siginfo_type(), riscv_fpreg_d_type(), rs6000_builtin_type_vec128(), rs6000_builtin_type_vec64(), selftests::unpack::unpack_field_as_long_tests(), windows_get_siginfo_type(), and windows_get_tlb_type().
void append_composite_type_field_aligned | ( | struct type * | t, |
const char * | name, | ||
struct type * | field, | ||
int | alignment | ||
) |
Definition at line 6025 of file gdbtypes.c.
References append_composite_type_field_raw(), type::code(), f(), type::length(), field::loc_bitpos(), name, type::num_fields(), and type::set_length().
Referenced by append_composite_type_field(), linux_get_siginfo_type_with_fields(), selftests::unpack::unpack_field_as_long_tests(), windows_get_siginfo_type(), and windows_get_tlb_type().
struct field * append_composite_type_field_raw | ( | struct type * | t, |
const char * | name, | ||
struct type * | field | ||
) |
Definition at line 6006 of file gdbtypes.c.
References f(), type::field(), type::fields(), name, type::num_fields(), type::set_fields(), and type::set_num_fields().
Referenced by append_composite_type_field_aligned(), and make_gdb_type().
void append_flags_type_field | ( | struct type * | type, |
int | start_bitpos, | ||
int | nr_bits, | ||
struct type * | field_type, | ||
const char * | name | ||
) |
Definition at line 5954 of file gdbtypes.c.
References type::code(), type::field(), type::length(), name, type::num_fields(), field::set_loc_bitpos(), field::set_name(), type::set_num_fields(), field::set_type(), and TYPE_FIELD_BITSIZE.
Referenced by append_flags_type_flag(), and make_gdb_type().
void append_flags_type_flag | ( | struct type * | type, |
int | bitpos, | ||
const char * | name | ||
) |
Definition at line 5978 of file gdbtypes.c.
References append_flags_type_field(), type::arch(), builtin_type::builtin_bool, and name.
Referenced by BP_MANIPULATION(), rl78_psw_type(), sparc64_ccr_type(), sparc64_fprs_type(), sparc64_fsr_type(), sparc64_pstate_type(), sparc_fsr_type(), and sparc_psr_type().
struct type * arch_boolean_type | ( | struct gdbarch * | gdbarch, |
int | bit, | ||
int | unsigned_p, | ||
const char * | name | ||
) |
Definition at line 5870 of file gdbtypes.c.
References arch_type(), bit, name, and type::set_is_unsigned().
Referenced by build_d_types(), build_fortran_types(), build_go_types(), build_m2_types(), create_gdbtypes_data(), opencl_language::language_arch_info(), and rust_language::language_arch_info().
struct type * arch_character_type | ( | struct gdbarch * | gdbarch, |
int | bit, | ||
int | unsigned_p, | ||
const char * | name | ||
) |
Definition at line 5853 of file gdbtypes.c.
References arch_type(), bit, name, and type::set_is_unsigned().
Referenced by build_d_types(), build_go_types(), build_m2_types(), create_gdbtypes_data(), ada_language::language_arch_info(), and rust_language::language_arch_info().
struct type * arch_composite_type | ( | struct gdbarch * | gdbarch, |
const char * | name, | ||
enum type_code | code | ||
) |
Definition at line 5989 of file gdbtypes.c.
References arch_type(), code, INIT_CPLUS_SPECIFIC, name, and type::set_name().
Referenced by aarch64_vnb_type(), aarch64_vnd_type(), aarch64_vnh_type(), aarch64_vnq_type(), aarch64_vns_type(), aarch64_vnv_type(), arm_neon_double_type(), arm_neon_quad_type(), csky_vector_type(), fbsd_get_siginfo_type(), i386_bnd_type(), i386_mmx_type(), i386_ymm_type(), i386_zmm_type(), linux_get_siginfo_type_with_fields(), make_gdb_type(), nbsd_get_siginfo_type(), riscv_fpreg_d_type(), rs6000_builtin_type_vec128(), rs6000_builtin_type_vec64(), selftests::unpack::unpack_field_as_long_tests(), windows_get_siginfo_type(), and windows_get_tlb_type().
Definition at line 5906 of file gdbtypes.c.
References arch_type(), bit, and name.
Referenced by create_gdbtypes_data().
Definition at line 5935 of file gdbtypes.c.
References arch_type(), bit, name, type::set_fields(), type::set_is_unsigned(), type::set_num_fields(), and TYPE_ZALLOC.
Referenced by BP_MANIPULATION(), make_gdb_type(), rl78_psw_type(), sparc64_ccr_type(), sparc64_fprs_type(), sparc64_fsr_type(), sparc64_pstate_type(), sparc_fsr_type(), and sparc_psr_type().
struct type * arch_float_type | ( | struct gdbarch * | gdbarch, |
int | bit, | ||
const char * | name, | ||
const struct floatformat ** | floatformats | ||
) |
Definition at line 5888 of file gdbtypes.c.
References arch_type(), bit, gdbarch_byte_order(), name, TYPE_FLOATFORMAT, and verify_floatformat().
Referenced by arm_ext_type(), build_d_types(), build_fortran_types(), build_go_types(), build_m2_types(), create_gdbtypes_data(), csky_register_type(), ia64_ext_type(), ada_language::language_arch_info(), opencl_language::language_arch_info(), rust_language::language_arch_info(), m68881_ext_type(), make_gdb_type(), nds32_pseudo_register_type(), rs6000_builtin_type_vec128(), and sh_littlebyte_bigword_type().
struct type * arch_integer_type | ( | struct gdbarch * | gdbarch, |
int | bit, | ||
int | unsigned_p, | ||
const char * | name | ||
) |
Definition at line 5836 of file gdbtypes.c.
References arch_type(), bit, name, and type::set_is_unsigned().
Referenced by dwarf_expr_context::address_type(), build_d_types(), build_fortran_types(), build_go_types(), build_m2_types(), create_gdbtypes_data(), fbsd_get_siginfo_type(), get_gdb_vtable_type(), ada_language::language_arch_info(), opencl_language::language_arch_info(), rust_language::language_arch_info(), linux_get_siginfo_type_with_fields(), linux_make_mappings_corefile_notes(), make_types(), rl78_gdbarch_init(), windows_get_siginfo_type(), windows_get_tlb_type(), and xtensa_register_type().
struct type * arch_pointer_type | ( | struct gdbarch * | gdbarch, |
int | bit, | ||
const char * | name, | ||
struct type * | target_type | ||
) |
Definition at line 5920 of file gdbtypes.c.
References arch_type(), bit, name, type::set_is_unsigned(), type::set_target_type(), and type::target_type().
Referenced by avr_gdbarch_init(), ft32_gdbarch_init(), make_types(), rl78_gdbarch_init(), windows_get_siginfo_type(), windows_get_tlb_type(), and z80_gdbarch_init().
Definition at line 5815 of file gdbtypes.c.
References alloc_type_arch(), bit, code, gdbarch_obstack_strdup(), name, type::set_length(), type::set_name(), and set_type_code().
Referenced by arch_boolean_type(), arch_character_type(), arch_composite_type(), arch_decfloat_type(), arch_flags_type(), arch_float_type(), arch_integer_type(), arch_pointer_type(), avr_gdbarch_init(), build_d_types(), build_fortran_types(), build_go_types(), build_std_type_info_type(), create_enum(), create_gdbtypes_data(), fbsd_get_siginfo_type(), finalize_symtab(), ft32_gdbarch_init(), get_gdb_vtable_type(), ada_language::language_arch_info(), opencl_language::language_arch_info(), linux_get_siginfo_type_with_fields(), make_gdb_type(), make_types(), nbsd_get_siginfo_type(), rl78_gdbarch_init(), windows_get_tlb_type(), and z80_gdbarch_init().
const struct builtin_type * builtin_type | ( | struct gdbarch * | gdbarch | ) |
Return the type table for the specified architecture.
Definition at line 6301 of file gdbtypes.c.
References create_gdbtypes_data(), gdbtypes_data, registry< T >::get(), and registry< T >::set().
bool can_create_complex_type | ( | struct type * | target_type | ) |
Definition at line 3556 of file gdbtypes.c.
References type::code(), and type::target_type().
Referenced by complex_binop(), and init_complex_type().
int can_dereference | ( | struct type * | t | ) |
Definition at line 3760 of file gdbtypes.c.
References check_typedef(), type::code(), and type::target_type().
Referenced by print_value_flags().
void check_stub_method_group | ( | struct type * | type, |
int | method_id | ||
) |
Definition at line 3322 of file gdbtypes.c.
References check_stub_method(), f(), TYPE_FN_FIELD_STUB, TYPE_FN_FIELDLIST1, and TYPE_FN_FIELDLIST_LENGTH.
Referenced by find_method_list(), gnuv3_find_method_in(), search_struct_method(), and value_struct_elt_for_reference().
Definition at line 3010 of file gdbtypes.c.
References alloc_type_arch(), type::arch(), check_typedef(), type::code(), currently_reading_symtab, type::instance_flags(), type::is_stub(), type::length(), lookup_symbol(), lookup_transparent_type(), make_qualified_type(), name, type::name(), type::objfile_owner(), opaque_type_resolution, type::set_length(), type::set_target_is_stub(), type::set_target_type(), STRUCT_DOMAIN, stub_noname_complaint(), block_symbol::symbol, type::target_is_stub(), type::target_type(), symbol::type(), TYPE_INSTANCE_FLAG_ADDRESS_CLASS_ALL, TYPE_INSTANCE_FLAG_CODE_SPACE, TYPE_INSTANCE_FLAG_DATA_SPACE, TYPE_IS_OPAQUE, and update_static_array_size().
Referenced by aapcs_is_vfp_call_or_return_candidate_1(), aarch64_push_dummy_call(), aarch64_return_in_memory(), aarch64_type_align(), ada_array_bound(), ada_array_bound_from_type(), ada_array_length(), ada_check_typedef(), ada_get_field_index(), ada_is_redundant_index_type_desc(), ada_tasks_inferior_data_sniffer(), ada_val_print_ref(), ada_value_ptr_subscript(), expr::add_struct_fields(), add_symbol_overload_list_adl_namespace(), adjust_value_for_child_access(), allocate_value_lazy(), alpha_push_dummy_call(), amd64_classify_aggregate(), amd64_classify_aggregate_field(), amd64_has_unaligned_fields(), riscv_struct_info::analyse_inner(), arc_type_align(), arm_push_dummy_call(), arm_return_in_memory(), arm_type_align(), arm_vfp_abi_for_function(), arm_vfp_cprc_sub_candidate(), expr::ada_aggregate_operation::assign_aggregate(), expr::assign_component(), avr_push_dummy_call(), bfin_push_dummy_call(), binop_promote(), binop_types_user_defined_p(), BP_MANIPULATION(), bpfinishpy_init(), c_get_string(), c_is_string_type_p(), c_print_type_1(), c_print_typedef(), c_textual_element_type(), c_type_print_base_1(), c_value_of_variable(), c_value_print(), c_value_print_array(), c_value_print_inner(), c_value_print_ptr(), c_value_print_struct(), call_function_by_hand_dummy(), can_dereference(), can_use_hardware_watchpoint(), ppc_linux_nat_target::check_condition(), check_field(), check_parameter_typelist(), check_typedef(), check_types_equal(), cimag_internal_fn(), classify_inner_name(), classify_type(), coerce_array(), coerce_pieced_ref(), coerce_ref(), coerce_ref_if_computed(), collection_list::collect_symbol(), common_val_print(), compile_cplus_convert_typedef(), compile_object_load(), expr::structop_base_operation::complete(), complex_binop(), compute_struct_member(), compute_vtable_size(), constrained_packed_array_type(), expr::convert_char_literal(), compile_c_instance::convert_type(), cp_find_class_member(), cp_find_type_baseclass_by_name(), cp_lookup_bare_symbol(), cp_lookup_nested_symbol(), cp_lookup_nested_symbol_1(), cp_lookup_rtti_type(), cp_print_static_field(), cp_print_value(), cp_print_value_fields(), creal_internal_fn(), create_range_type(), create_value(), csky_push_dummy_call(), d_lookup_nested_symbol(), d_lookup_symbol(), d_value_print_inner(), decode_constrained_packed_array_type(), fortran_array_printer_impl::dimension_contents_eq(), distance_to_ancestor(), python_xmethod_worker::do_get_result_type(), do_ppc_sysv_return_value(), dwarf2_evaluate_property(), dynamic_array_type(), encode_actions_1(), entry_data_value_coerce_ref(), eval_multi_subscript(), eval_op_f_allocated(), eval_op_f_rank(), eval_op_ind(), eval_op_m2_high(), eval_op_m2_subscript(), eval_op_member(), eval_op_objc_msgcall(), eval_op_repeat(), eval_op_subscript(), 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::unop_ind_base_operation::evaluate(), expr::array_operation::evaluate(), expr::fortran_undetermined::evaluate(), expr::fortran_bound_2arg::evaluate(), expr::fortran_bound_3arg::evaluate(), expr::subscript_operation::evaluate_for_sizeof(), expr::unop_ind_base_operation::evaluate_for_sizeof(), expr::structop_member_base::evaluate_funcall(), expr::array_operation::evaluate_struct_tuple(), 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(), fake_method::fake_method(), dwarf_expr_context::fetch_result(), find_function_addr(), find_gnu_ifunc_target_type(), find_method(), find_method_list(), find_methods(), find_overload_match(), find_parallel_type_by_descriptive_type(), find_size_for_pointer_math(), find_symbol_in_baseclass(), finish_command(), fixed_point_binop(), type::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(), fortran_require_array(), fp_register_arg_p(), frv_push_dummy_call(), gccgo_string_p(), gdbpy_create_lazy_string_object(), gdbscm_type_sizeof(), gdbscm_type_strip_typedefs(), gdbscm_value_call(), gdbscm_value_dynamic_type(), gdbscm_value_referenced_value(), gdbscm_value_subscript(), gdbscm_value_to_bool(), gdbscm_value_to_bytevector(), gdbscm_value_to_integer(), gdbscm_value_to_lazy_string(), gdbscm_value_to_real(), gen_bitfield_ref(), gen_cast(), gen_deref(), gen_expr_binop_rest(), gen_int_literal(), gen_struct_ref(), gen_struct_ref_recursive(), gen_trace_static_fields(), gen_traced_pop(), gen_usual_arithmetic(), gen_var_ref(), expr::operation::generate_ax(), generate_register_struct(), generate_vla_size(), generic_val_print_array(), generic_val_print_ref(), generic_value_print(), generic_value_print_bool(), generic_value_print_char(), generic_value_print_memberptr(), generic_value_print_ptr(), get_baseclass_offset(), get_discrete_high_bound(), get_discrete_low_bound(), get_internalvar_integer(), get_out_value_type(), get_pointer_type_max(), get_regs_type(), get_return_value(), get_signed_type_minmax(), get_symbol_field_type(), get_target_type(), get_type(), get_unsigned_type_max(), get_value_at(), get_vptr_fieldno(), gnuv2_baseclass_offset(), gnuv2_value_rtti_type(), gnuv2_virtual_fn_field(), gnuv3_dynamic_class(), gnuv3_get_typeid(), gnuv3_get_vtable(), gnuv3_method_ptr_to_value(), gnuv3_pass_by_reference(), gnuv3_print_vtable(), gnuv3_rtti_type(), gnuv3_virtual_fn_field(), go_classify_struct_type(), hppa32_push_dummy_call(), i386_16_byte_align_p(), i386_darwin_arg_type_alignment(), i386_reg_struct_return_p(), i386_return_value(), i386_type_align(), i386_windows_push_dummy_call(), ia64_push_dummy_call(), indirect_pieced_value(), info_scope_command(), inspect_type(), internal_type_vptr_basetype(), internal_type_vptr_fieldno(), python_xmethod_worker::invoke(), is_copy_or_move_constructor_type(), is_dynamic_type_internal(), is_fixed_point_type(), is_float_or_hfa_type_recurse(), is_floating_type(), is_floating_value(), is_integral_or_integral_reference(), is_integral_type(), is_scalar_type(), is_scalar_type_recursive(), f_language::is_string_type_p(), go_language::is_string_type_p(), auto_or_unknown_language::is_string_type_p(), m2_language::is_string_type_p(), rust_language::is_string_type_p(), is_unique_ancestor_worker(), list_arg_or_local(), list_args_or_locals(), lookup_function_type_with_arguments(), 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_get_discrete_bounds(), m2_print_array_contents(), m2_print_long_set(), m2_print_type(), m2_print_unbounded_array(), m68k_reg_struct_return_p(), m68k_svr4_return_value(), mi_print_value_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_o64_push_dummy_call(), mn10300_type_align(), mn10300_use_struct_convention(), msp430_push_dummy_call(), nds32_check_calling_use_fpr(), nios2_push_dummy_call(), nios2_type_align(), opencl_component_ref(), opencl_logical_not(), opencl_relop(), opencl_value_cast(), or1k_push_dummy_call(), pack_long(), pack_unsigned_long(), pascal_object_print_static_field(), pascal_object_print_value(), pascal_object_print_value_fields(), pass_in_v_vfp_candidate(), 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(), rust_language::print_enum(), print_formatted(), print_one_vtable(), print_return_value(), print_symbol(), go_language::print_type(), opencl_language::print_type(), pascal_language::print_type(), print_type_scalar(), f_language::print_typedef(), m2_language::print_typedef(), pascal_language::print_typedef(), rust_language::print_typedef(), print_unpacked_pointer(), print_variable_at_address(), print_variable_or_computed(), pascal_language::printstr(), ptrmath_type_p(), py_print_type(), py_print_value(), rank_one_type(), read_enumeration_type(), read_frame_register_value(), read_one_struct_field(), read_subrange_type(), read_tag_ptr_to_member_type(), language_defn::read_var_value(), require_rvalue(), resolve_dynamic_array_or_string(), resolve_dynamic_array_or_string_1(), resolve_dynamic_struct(), resolve_dynamic_type(), resolve_dynamic_type_internal(), resolve_dynamic_union(), return_command(), riscv_push_dummy_call(), riscv_return_value(), riscv_type_align(), rs6000_lynx178_push_dummy_call(), rs6000_push_dummy_call(), rust_get_trait_object_pointer(), rust_internal_print_type(), rust_subscript(), rust_val_print_slice(), rx_push_dummy_call(), s390_effective_inner_type(), s390_handle_arg(), s390_push_dummy_call(), s390_return_value(), s390_value_from_register(), scalar_binop(), struct_field_searcher::search(), search_struct_method(), set_internalvar(), set_type_vptr_basetype(), set_type_vptr_fieldno(), setting_cmd(), sh_is_renesas_calling_convention(), finish_command_fsm::should_stop(), slot_alignment_is_next_even(), sparc32_struct_return_from_sym(), sparc64_16_byte_align_p(), sparc64_extract_floating_fields(), sparc64_store_floating_fields(), sparc_arg_by_memory_p(), sparc_structure_return_p(), store_regs(), stpy_convert_to_value(), stpy_lazy_string_elt_type(), tic6x_arg_type_alignment(), tic6x_push_dummy_call(), tic6x_return_value(), tlb_value_read(), type_align(), type_name_or_error(), pascal_language::type_print_base(), type_to_type_object(), typecmp(), types_equal(), typy_fields_items(), typy_get_composite(), typy_get_sizeof(), typy_strip_typedefs(), typy_template_argument(), tyscm_get_composite(), unop_promote(), unop_user_defined_p(), unpack_bits_as_long(), unpack_long(), print_offset_data::update(), update_static_array_size(), update_watchpoint(), v850_eight_byte_align_p(), val_print_packed_array_elements(), val_print_scalar_type_p(), rust_language::val_print_struct(), valprint_check_validity(), valpy_binop_throw(), valpy_call(), valpy_float(), valpy_get_dynamic_type(), valpy_getitem(), valpy_lazy_string(), valpy_long(), valpy_nonzero(), valpy_referenced_value(), value_actual_type(), value_addr(), value_arg_coerce(), value_args_as_target_float(), value_assign(), value_assign_to_component(), value_binop(), value_cast(), value_cast_pointers(), value_cast_structs(), value_coerce_array(), value_coerce_to_target(), value_complement(), value_concat(), value_contents_eq(), value_dynamic_cast(), value_equal(), value_equal_contents(), value_fetch_lazy_memory(), value_fetch_lazy_register(), value_find_oload_method_list(), value_from_contents_and_address(), value_from_pointer(), value_from_register(), value_has_field(), value_imaginary_part(), value_in(), value_ind(), value_less(), value_logical_not(), value_must_coerce_to_target(), value_neg(), value_of_dwarf_reg_entry(), value_one(), value_pos(), value_primitive_field(), rust_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_print_scalar_formatted(), value_ptradd(), value_ptrdiff(), value_real_part(), value_ref(), value_reinterpret_cast(), value_rtti_indirect_type(), value_rtti_type(), value_slice(), value_struct_element_index(), value_struct_elt(), value_struct_elt_bitpos(), value_struct_elt_for_reference(), expr::fortran_undetermined::value_subarray(), value_subscript(), value_subscripted_rvalue(), value_to_gdb_mpq(), value_vector_widen(), value_x_binop(), value_x_unop(), varobj_get_value_type(), vector_binop(), vector_relop(), vlscm_binop_gdbthrow(), vlscm_convert_bytevector(), fortran_array_walker< Impl >::walk_1(), language_defn::watch_location_expression(), ada_language::watch_location_expression(), rust_language::watch_location_expression(), whatis_exp(), xtensa_push_dummy_call(), and yyparse().
int class_or_union_p | ( | const struct type * | t | ) |
Definition at line 3865 of file gdbtypes.c.
References type::code().
Referenced by call_function_by_hand_dummy(), and get_call_return_value().
Definition at line 3876 of file gdbtypes.c.
References type::name(), and TYPE_MAIN_TYPE.
Referenced by distance_to_ancestor(), dynamic_cast_check_1(), dynamic_cast_check_2(), is_copy_or_move_constructor_type(), is_unique_ancestor_worker(), and value_dynamic_cast().
int compare_badness | ( | const badness_vector & | a, |
const badness_vector & | b | ||
) |
Definition at line 4094 of file gdbtypes.c.
References compare_ranks(), and INVALID_CONVERSION.
Referenced by find_oload_champ(), and find_overload_match().
Definition at line 4066 of file gdbtypes.c.
References rank::rank, and rank::subrank.
Referenced by classify_oload_match(), compare_badness(), and compare_parameters().
Definition at line 5790 of file gdbtypes.c.
References alloc_type_copy(), type::arch_owner(), copy_dynamic_prop_list(), main_type::dyn_prop_list, gdbarch_obstack(), type::instance_flags(), type::is_objfile_owned(), type::length(), type::main_type, new_type(), objfile::objfile_obstack, type::objfile_owner(), type::set_instance_flags(), type::set_length(), and TYPE_MAIN_TYPE.
Referenced by ada_to_fixed_type_1(), add_array_cv_type(), resolve_dynamic_array_or_string(), resolve_dynamic_array_or_string_1(), resolve_dynamic_range(), resolve_dynamic_struct(), resolve_dynamic_type_internal(), resolve_dynamic_union(), and rewrite_array_type().
Definition at line 5634 of file gdbtypes.c.
References alloc_type_arch(), type::arch(), type::arch_owner(), type::bounds(), type::code(), copy_dynamic_prop_list(), copy_type_recursive(), main_type::dyn_prop_list, type::field(), FIELD_LOC_KIND_BITPOS, FIELD_LOC_KIND_DWARF_BLOCK, FIELD_LOC_KIND_ENUMVAL, FIELD_LOC_KIND_PHYSADDR, FIELD_LOC_KIND_PHYSNAME, type::fixed_point_info(), gdbarch_obstack(), INIT_CPLUS_SPECIFIC, INIT_FIXED_POINT_SPECIFIC, INIT_FUNC_SPECIFIC, INIT_GNAT_SPECIFIC, type::instance_flags(), type::is_objfile_owned(), type::length(), field::loc_bitpos(), field::loc_dwarf_block(), field::loc_enumval(), field::loc_kind(), field::loc_physaddr(), field::loc_physname(), type::main_type, field::name(), type::name(), new_type(), type::num_fields(), fixed_point_type_info::scaling_factor, type::set_bounds(), type::set_fields(), type::set_instance_flags(), type::set_length(), field::set_loc_bitpos(), field::set_loc_dwarf_block(), field::set_loc_enumval(), field::set_loc_physaddr(), field::set_loc_physname(), field::set_name(), type::set_name(), type::set_owner(), type::set_target_type(), field::set_type(), set_type_self_type(), type::target_type(), field::type(), TYPE_ALLOC, TYPE_CALLING_CONVENTION, TYPE_FIELD_ARTIFICIAL, TYPE_FIELD_BITSIZE, TYPE_FLOATFORMAT, TYPE_MAIN_TYPE, TYPE_NO_RETURN, TYPE_SELF_TYPE, TYPE_SPECIFIC_CPLUS_STUFF, TYPE_SPECIFIC_FIELD, TYPE_SPECIFIC_FIXED_POINT, TYPE_SPECIFIC_FLOATFORMAT, TYPE_SPECIFIC_FUNC, TYPE_SPECIFIC_GNAT_STUFF, TYPE_SPECIFIC_INT, TYPE_SPECIFIC_NONE, TYPE_SPECIFIC_SELF_TYPE, TYPE_TAIL_CALL_LIST, and TYPE_ZALLOC.
Referenced by copy_type_recursive(), create_copied_type_recursive(), typy_deleter::operator()(), preserve_one_internalvar(), preserve_one_value(), preserve_one_varobj(), and tyscm_copy_type_recursive().
struct type * create_array_type | ( | struct type * | result_type, |
struct type * | element_type, | ||
struct type * | range_type | ||
) |
Definition at line 1422 of file gdbtypes.c.
References create_array_type_with_stride().
Referenced by ada_type_of_array(), constrained_packed_array_type(), create_string_type(), decode_type(), define_symbol(), empty_array(), fortran_array_shape(), fortran_bounds_all_dims(), lookup_array_range_type(), read_array_type(), to_fixed_array_type(), upgrade_type(), value_cast(), value_slice(), expr::fortran_undetermined::value_subarray(), and yyparse().
struct type * create_array_type_with_stride | ( | struct type * | result_type, |
struct type * | element_type, | ||
struct type * | range_type, | ||
struct dynamic_prop * | byte_stride_prop, | ||
unsigned int | bit_stride | ||
) |
Definition at line 1368 of file gdbtypes.c.
References type::add_dyn_prop(), alloc_type_copy(), type::bit_stride(), dynamic_prop::const_val(), DYN_PROP_BYTE_STRIDE, dynamic_prop::kind(), type::length(), PROP_CONST, type::set_code(), type::set_fields(), type::set_index_type(), type::set_length(), type::set_num_fields(), type::set_target_is_stub(), type::set_target_type(), TYPE_FIELD_BITSIZE, TYPE_ZALLOC, and update_static_array_size().
Referenced by ada_value_slice(), ada_value_slice_from_ptr(), create_array_type(), read_array_type(), and resolve_dynamic_array_or_string_1().
htab_up create_copied_types_hash | ( | ) |
Definition at line 5596 of file gdbtypes.c.
References type_pair_eq(), type_pair_hash(), xcalloc(), and xfree().
Referenced by create_copied_type_recursive(), tyscm_deleter::operator()(), typy_deleter::operator()(), and preserve_values().
struct type * create_range_type | ( | struct type * | result_type, |
struct type * | index_type, | ||
const struct dynamic_prop * | low_bound, | ||
const struct dynamic_prop * | high_bound, | ||
LONGEST | bias | ||
) |
Definition at line 931 of file gdbtypes.c.
References alloc_type_copy(), range_bounds::bias, type::bounds(), check_typedef(), type::code(), dynamic_prop::const_val(), type::endianity_is_not_default(), range_bounds::high, type::index_type(), type::is_stub(), type::is_unsigned(), dynamic_prop::kind(), type::length(), range_bounds::low, PROP_CONST, type::set_bounds(), type::set_code(), dynamic_prop::set_const_val(), type::set_endianity_is_not_default(), type::set_is_unsigned(), type::set_length(), type::set_target_is_stub(), type::set_target_type(), range_bounds::stride, and TYPE_ZALLOC.
Referenced by create_range_type_with_stride(), create_static_range_type(), read_subrange_type(), and read_tag_string_type().
struct type * create_range_type_with_stride | ( | struct type * | result_type, |
struct type * | index_type, | ||
const struct dynamic_prop * | low_bound, | ||
const struct dynamic_prop * | high_bound, | ||
LONGEST | bias, | ||
const struct dynamic_prop * | stride, | ||
bool | byte_stride_p | ||
) |
Definition at line 994 of file gdbtypes.c.
References type::bounds(), create_range_type(), range_bounds::flag_is_byte_stride, type::index_type(), and range_bounds::stride.
Referenced by read_subrange_type(), resolve_dynamic_range(), and expr::fortran_undetermined::value_subarray().
Definition at line 1485 of file gdbtypes.c.
References alloc_type_copy(), type::field(), get_discrete_bounds(), type::is_stub(), type::set_code(), type::set_fields(), type::set_is_unsigned(), type::set_length(), type::set_num_fields(), field::set_type(), and TYPE_ZALLOC.
Referenced by read_set_type(), and read_type().
struct type * create_static_range_type | ( | struct type * | result_type, |
struct type * | index_type, | ||
LONGEST | low_bound, | ||
LONGEST | high_bound | ||
) |
Definition at line 1025 of file gdbtypes.c.
References create_range_type(), and dynamic_prop::set_const_val().
Referenced by ada_type_of_array(), ada_value_slice(), ada_value_slice_from_ptr(), decode_type(), define_symbol(), empty_array(), fortran_array_shape(), fortran_bounds_all_dims(), lookup_array_range_type(), quirk_ada_thick_pointer(), read_array_type(), read_range_type(), read_tag_string_type(), to_fixed_range_type(), upgrade_type(), value_cast(), value_slice(), and yyparse().
struct type * create_string_type | ( | struct type * | result_type, |
struct type * | string_char_type, | ||
struct type * | range_type | ||
) |
Definition at line 1461 of file gdbtypes.c.
References create_array_type(), and type::set_code().
Referenced by read_tag_string_type().
DEF_ENUM_FLAGS_TYPE | ( | enum | type_instance_flag_value, |
type_instance_flags | |||
) |
DEFINE_OFFSET_TYPE | ( | cu_offset | , |
unsigned int | |||
) |
Offset relative to the start of its containing CU (compilation unit).
DEFINE_OFFSET_TYPE | ( | sect_offset | , |
uint64_t | |||
) |
Offset relative to the start of its .debug_info or .debug_types section.
gdb::optional< LONGEST > discrete_position | ( | struct type * | type, |
LONGEST | val | ||
) |
Definition at line 1256 of file gdbtypes.c.
References type::code(), type::field(), field::loc_enumval(), type::num_fields(), and type::target_type().
Referenced by ada_value_slice(), ada_value_slice_from_ptr(), get_discrete_high_bound(), get_discrete_low_bound(), and pos_atr().
int field_is_static | ( | struct field * | f | ) |
Definition at line 5048 of file gdbtypes.c.
References f(), FIELD_LOC_KIND_PHYSADDR, and FIELD_LOC_KIND_PHYSNAME.
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(), convert_field(), cp_find_class_member(), 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(), s390_effective_inner_type(), 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().
const struct floatformat * floatformat_from_type | ( | const struct type * | type | ) |
Definition at line 3416 of file gdbtypes.c.
References type::code(), and TYPE_FLOATFORMAT.
Referenced by mpfr_float_ops::from_target(), host_float_ops< T >::from_target(), mpfr_float_ops::gdb_mpfr::gdb_mpfr(), get_target_float_ops_kind(), target_float_format_length(), target_float_is_valid(), target_float_is_zero(), target_float_same_format_p(), target_float_to_string(), host_float_ops< T >::to_string(), mpfr_float_ops::to_string(), mpfr_float_ops::to_target(), and host_float_ops< T >::to_target().
char * gdb_mangle_name | ( | struct type * | type, |
int | method_id, | ||
int | signature_id | ||
) |
Definition at line 663 of file symtab.c.
References f(), field_name(), fn_field::is_const, fn_field::is_constructor, is_constructor_name(), is_destructor_name(), is_operator_name(), fn_field::is_volatile, type::name(), fn_field::physname, TYPE_FN_FIELD_PHYSNAME, TYPE_FN_FIELDLIST1, TYPE_FN_FIELDLIST_NAME, and xmalloc().
Referenced by c_type_print_base_struct_union(), and check_stub_method().
bool get_array_bounds | ( | struct type * | type, |
LONGEST * | low_bound, | ||
LONGEST * | high_bound | ||
) |
Definition at line 1220 of file gdbtypes.c.
References get_discrete_bounds(), and type::index_type().
Referenced by ada_promote_array_of_integrals(), ada_same_array_size_p(), ada_varobj_get_array_number_of_children(), c_type_print_varspec_suffix(), c_value_print_array(), compile_cplus_convert_array(), convert_array(), expr::opencl_ternop_cond_operation::evaluate(), gdbpy_create_lazy_string_object(), gdbscm_value_to_lazy_string(), generic_val_print_array(), rust_language::is_string_type_p(), lookup_opencl_vector_type(), lval_func_read(), lval_func_write(), opencl_component_ref(), opencl_logical_not(), ppc64_aggregate_candidate(), print_optional_low_bound(), rust_internal_print_type(), rust_subscript(), update_static_array_size(), valpy_lazy_string(), value_complement(), value_concat(), value_neg(), value_one(), value_print_array_elements(), pascal_language::value_print_inner(), rust_language::value_print_inner(), value_vector_widen(), vector_binop(), and vector_relop().
bool get_discrete_bounds | ( | struct type * | type, |
LONGEST * | lowp, | ||
LONGEST * | highp | ||
) |
Definition at line 1201 of file gdbtypes.c.
References get_discrete_high_bound(), and get_discrete_low_bound().
Referenced by ada_value_ptr_subscript(), c_get_string(), constrained_packed_array_type(), create_set_type(), fortran_array_printer_impl::dimension_contents_eq(), expr::c_string_operation::evaluate(), expr::array_operation::evaluate(), fortran_adjust_dynamic_array_base_address_hack(), fortran_array_offset_calculator::fortran_array_offset_calculator(), fortran_array_shape(), fortran_array_size(), fortran_associated(), get_array_bounds(), is_scalar_type_recursive(), m2_get_discrete_bounds(), m2_print_long_set(), recursively_update_array_bitsize(), update_static_array_size(), val_print_packed_array_elements(), value_bit_index(), value_cast(), m2_language::value_print_inner(), pascal_language::value_print_inner(), value_slice(), value_subscript_packed(), and fortran_array_walker< Impl >::walk_1().
gdb::optional< LONGEST > get_discrete_high_bound | ( | struct type * | type | ) |
Definition at line 1125 of file gdbtypes.c.
References type::bounds(), check_typedef(), type::code(), dynamic_prop::const_val(), discrete_position(), type::field(), range_bounds::high, type::is_unsigned(), dynamic_prop::kind(), type::length(), field::loc_enumval(), type::num_fields(), PROP_CONST, and type::target_type().
Referenced by get_discrete_bounds(), and value_subscript().
gdb::optional< LONGEST > get_discrete_low_bound | ( | struct type * | type | ) |
Definition at line 1054 of file gdbtypes.c.
References type::bounds(), check_typedef(), type::code(), dynamic_prop::const_val(), discrete_position(), type::field(), type::is_unsigned(), dynamic_prop::kind(), type::length(), field::loc_enumval(), range_bounds::low, type::num_fields(), PROP_CONST, type::set_is_unsigned(), and type::target_type().
Referenced by get_discrete_bounds(), and value_subscript().
CORE_ADDR get_pointer_type_max | ( | struct type * | type | ) |
Definition at line 1942 of file gdbtypes.c.
References check_typedef(), type::code(), and type::length().
Referenced by vlscm_convert_typed_number().
void get_signed_type_minmax | ( | struct type * | type, |
LONGEST * | min, | ||
LONGEST * | max | ||
) |
Definition at line 1926 of file gdbtypes.c.
References check_typedef(), type::code(), type::is_unsigned(), and type::length().
Referenced by vlscm_convert_typed_number(), and vlscm_integer_fits_p().
This returns the target type (or NULL) of TYPE, also skipping past typedefs.
Definition at line 265 of file gdbtypes.c.
References check_typedef(), and type::target_type().
Referenced by adjust_value_for_child_access(), c_describe_child(), c_number_of_children(), and varobj_get_value_type().
ULONGEST get_unsigned_type_max | ( | struct type * | type | ) |
Definition at line 1909 of file gdbtypes.c.
References check_typedef(), type::code(), type::is_unsigned(), and type::length().
Referenced by vlscm_convert_typed_number(), and vlscm_integer_fits_p().
Definition at line 2024 of file gdbtypes.c.
References check_typedef(), get_vptr_fieldno(), type::objfile_owner(), set_type_vptr_basetype(), set_type_vptr_fieldno(), TYPE_BASECLASS, TYPE_N_BASECLASSES, TYPE_VPTR_BASETYPE, and TYPE_VPTR_FIELDNO.
Referenced by c_type_print_base_struct_union(), cp_print_value_fields(), cplus_class_num_children(), cplus_describe_child(), get_vptr_fieldno(), gnuv2_value_rtti_type(), and gnuv2_virtual_fn_field().
struct type * init_boolean_type | ( | struct objfile * | objfile, |
int | bit, | ||
int | unsigned_p, | ||
const char * | name | ||
) |
Definition at line 3497 of file gdbtypes.c.
References bit, init_type(), name, type::set_is_unsigned(), TYPE_MAIN_TYPE, TYPE_SPECIFIC_FIELD, and TYPE_SPECIFIC_INT.
Referenced by read_base_type(), read_sun_builtin_type(), and rs6000_builtin_type().
struct type * init_character_type | ( | struct objfile * | objfile, |
int | bit, | ||
int | unsigned_p, | ||
const char * | name | ||
) |
Definition at line 3480 of file gdbtypes.c.
References bit, init_type(), name, and type::set_is_unsigned().
Referenced by read_base_type(), and rs6000_builtin_type().
Definition at line 3566 of file gdbtypes.c.
References alloc_type_copy(), can_create_complex_type(), type::length(), name, type::name(), type::set_length(), type::set_name(), type::set_target_type(), set_type_code(), type::target_type(), TYPE_ALLOC, and TYPE_MAIN_TYPE.
Referenced by basic_type(), build_d_types(), build_fortran_types(), build_go_types(), complex_binop(), create_gdbtypes_data(), parse_number(), read_base_type(), read_range_type(), read_sun_floating_type(), rs6000_builtin_type(), and yyparse().
Definition at line 3545 of file gdbtypes.c.
References bit, init_type(), and name.
Referenced by read_base_type().
struct type * init_fixed_point_type | ( | struct objfile * | objfile, |
int | bit, | ||
int | unsigned_p, | ||
const char * | name | ||
) |
Definition at line 3620 of file gdbtypes.c.
References bit, init_type(), name, and type::set_is_unsigned().
Referenced by read_base_type().
struct type * init_float_type | ( | struct objfile * | objfile, |
int | bit, | ||
const char * | name, | ||
const struct floatformat ** | floatformats, | ||
enum | bfd_endian = BFD_ENDIAN_UNKNOWN |
||
) |
Definition at line 3521 of file gdbtypes.c.
References objfile::arch(), bit, gdbarch_byte_order(), init_type(), name, TYPE_FLOATFORMAT, and verify_floatformat().
Referenced by basic_type(), ctf_init_float_type(), dbx_init_float_type(), dwarf2_init_float_type(), objfile_type(), and rs6000_builtin_type().
struct type * init_integer_type | ( | struct objfile * | objfile, |
int | bit, | ||
int | unsigned_p, | ||
const char * | name | ||
) |
Definition at line 3459 of file gdbtypes.c.
References bit, init_type(), name, type::set_is_unsigned(), TYPE_MAIN_TYPE, TYPE_SPECIFIC_FIELD, and TYPE_SPECIFIC_INT.
Referenced by basic_type(), dwarf2_init_integer_type(), objfile_type(), read_base_type(), read_range_type(), read_sun_builtin_type(), and rs6000_builtin_type().
struct type * init_pointer_type | ( | struct objfile * | objfile, |
int | bit, | ||
const char * | name, | ||
struct type * | target_type | ||
) |
Definition at line 3603 of file gdbtypes.c.
References bit, init_type(), name, type::set_is_unsigned(), type::set_target_type(), and type::target_type().
Referenced by basic_type(), objfile_type(), and read_base_type().
Helper function to construct objfile-owned types.
Definition at line 3430 of file gdbtypes.c.
References alloc_type(), bit, code, name, type::set_length(), type::set_name(), and set_type_code().
Referenced by basic_type(), build_error_marker_type(), cross_ref(), ctf_init_float_type(), dbx_init_float_type(), dwarf2_init_float_type(), fixup_go_packaging(), init_boolean_type(), init_character_type(), init_decfloat_type(), init_fixed_point_type(), init_float_type(), init_integer_type(), init_nodebug_var_type(), init_pointer_type(), objfile_type(), parse_type(), quirk_rust_enum(), read_base_type(), read_module_type(), read_namespace_type(), read_range_type(), read_sun_builtin_type(), read_typedef(), read_typedef_type(), read_unspecified_type(), and rs6000_builtin_type().
Definition at line 1540 of file gdbtypes.c.
References lookup_array_range_type(), and make_vector_type().
Referenced by aarch64_vnv_type(), arm_neon_double_type(), arm_neon_quad_type(), create_value(), csky_vector_type(), fbsd_get_siginfo_type(), i386_mmx_type(), i386_ymm_type(), i386_zmm_type(), linux_get_siginfo_type_with_fields(), make_gdb_type(), nbsd_get_siginfo_type(), rs6000_builtin_type_vec128(), rs6000_builtin_type_vec64(), and sdata_make_value().
Definition at line 1556 of file gdbtypes.c.
References type::code(), TYPE_MAIN_TYPE, TYPE_SPECIFIC_FIELD, TYPE_SPECIFIC_FUNC, TYPE_SPECIFIC_NONE, and TYPE_SPECIFIC_SELF_TYPE.
Definition at line 1989 of file gdbtypes.c.
References check_typedef(), type::code(), TYPE_RAW_CPLUS_SPECIFIC, TYPE_SPECIFIC_CPLUS_STUFF, and TYPE_SPECIFIC_FIELD.
int internal_type_vptr_fieldno | ( | struct type * | type | ) |
Definition at line 1962 of file gdbtypes.c.
References check_typedef(), type::code(), HAVE_CPLUS_STRUCT, and TYPE_RAW_CPLUS_SPECIFIC.
Definition at line 3936 of file gdbtypes.c.
References distance_to_ancestor().
Referenced by value_dynamic_cast().
int is_dynamic_type | ( | struct type * | type | ) |
Predicate if the type has dynamic values, which are not resolved yet. See the caveat in 'resolve_dynamic_type' to understand a scenario where an apparently-resolved type may still be considered "dynamic".
Definition at line 2187 of file gdbtypes.c.
References is_dynamic_type_internal().
Referenced by ada_is_redundant_range_encoding(), ada_value_primitive_packed_val(), ada_varobj_get_array_number_of_children(), constrained_packed_array_type(), eval_op_ind(), expr::fortran_undetermined::evaluate(), expr::fortran_structop_operation::evaluate(), expr::var_value_operation::evaluate_for_sizeof(), expr::unop_ind_base_operation::evaluate_for_sizeof(), generate_c_for_for_one_variable(), print_array_type(), language_defn::read_var_value(), type_is_full_subrange_of_target_type(), typy_get_dynamic(), value_subscripted_rvalue(), and fortran_array_walker< Impl >::walk_1().
bool is_fixed_point_type | ( | struct type * | type | ) |
Definition at line 6116 of file gdbtypes.c.
References check_typedef(), code, type::code(), and type::target_type().
Referenced by aarch64_push_dummy_call(), ada_print_type(), ada_value_print_inner(), arm_extract_return_value(), binop_promote(), fixed_point_binop(), generic_value_print(), is_integral_type(), is_scalar_type(), ppc64_sysv_abi_return_value_base(), print_scalar_formatted(), riscv_return_value(), scalar_binop(), unpack_long(), value_cast(), value_cast_to_fixed_point(), value_less(), value_neg(), and value_to_gdb_mpq().
int is_floating_type | ( | struct type * | t | ) |
Definition at line 3787 of file gdbtypes.c.
References check_typedef(), and type::code().
Referenced by is_floating_value(), promotion_type(), scalar_binop(), value_args_as_target_float(), value_cast(), value_cast_to_fixed_point(), value_neg(), value_one(), and value_to_gdb_mpq().
int is_integral_type | ( | struct type * | t | ) |
Definition at line 3772 of file gdbtypes.c.
References check_typedef(), type::code(), and is_fixed_point_type().
Referenced by ada_binop_exp(), ada_promote_array_of_integrals(), binop_promote(), coerce_for_assign(), eval_binop_assign_modify(), eval_op_binary(), gen_expr_binop_rest(), is_integral_or_integral_reference(), opencl_relop(), riscv_call_arg_struct(), scalar_binop(), unop_promote(), valpy_binop_throw(), valpy_long(), valpy_nonzero(), value_args_as_target_float(), value_binop(), value_cast_to_fixed_point(), value_complement(), value_equal(), value_less(), value_neg(), value_one(), value_pos(), value_to_gdb_mpq(), vlscm_binop_gdbthrow(), vlscm_convert_typed_number(), vlscm_convert_typed_value_from_scheme(), and yyparse().
bool is_nocall_function | ( | const struct type * | type | ) |
Definition at line 4038 of file gdbtypes.c.
References type::code(), and TYPE_CALLING_CONVENTION.
Referenced by call_function_by_hand_dummy(), get_return_value(), and return_command().
Definition at line 3945 of file gdbtypes.c.
References distance_to_ancestor().
Referenced by value_dynamic_cast().
int is_scalar_type | ( | struct type * | type | ) |
Definition at line 3799 of file gdbtypes.c.
References check_typedef(), type::code(), and is_fixed_point_type().
Referenced by ada_value_assign(), ada_value_primitive_packed_val(), expr::unop_extract_operation::do_generate_ax(), is_scalar_type_recursive(), stap_parse_register_operand(), typy_is_scalar(), typy_is_signed(), value_assign_to_component(), and value_from_component_bitsize().
int is_scalar_type_recursive | ( | struct type * | t | ) |
Definition at line 3824 of file gdbtypes.c.
References check_typedef(), type::code(), type::field(), get_discrete_bounds(), type::index_type(), is_scalar_type(), is_scalar_type_recursive(), type::num_fields(), type::target_type(), and field::type().
Referenced by can_use_hardware_watchpoint(), and is_scalar_type_recursive().
Definition at line 4005 of file gdbtypes.c.
References is_unique_ancestor_worker(), value_address(), value_contents_for_printing(), value_embedded_offset(), and value_type().
Referenced by value_dynamic_cast().
struct type * lookup_array_range_type | ( | struct type * | element_type, |
LONGEST | low_bound, | ||
LONGEST | high_bound | ||
) |
Definition at line 1431 of file gdbtypes.c.
References type::arch_owner(), builtin_type::builtin_int, objfile_type::builtin_int, create_array_type(), create_static_range_type(), type::index_type(), type::is_objfile_owned(), and type::objfile_owner().
Referenced by allocate_repeat_value(), expr::repeat_operation::do_generate_ax(), dynamic_array_type(), eval_op_rust_array(), expr::ada_string_operation::evaluate(), type_stack::follow_types(), gdbscm_value_to_lazy_string(), get_gdb_vtable_type(), init_vector_type(), lookup_string_range_type(), lsscm_safe_lazy_string_to_value(), rust_parser::parse_array_type(), rust_val_print_slice(), sh_sh4_build_float_register_type(), stpy_convert_to_value(), typy_array_1(), tyscm_array_1(), valpy_lazy_string(), value_array(), value_concat(), value_cstring(), vlscm_convert_bytevector(), and windows_get_siginfo_type().
Definition at line 539 of file gdbtypes.c.
References make_function_type().
Referenced by create_gdbtypes_data(), decode_type(), define_symbol(), eval_op_objc_msgcall(), finalize_symtab(), find_function_in_inferior(), type_stack::follow_types(), make_types(), parse_procedure(), parse_symbol(), patch_block_stabs(), process_coff_symbol(), read_subroutine_type(), upgrade_type(), and yyparse().
struct type * lookup_function_type_with_arguments | ( | struct type * | type, |
int | nparams, | ||
struct type ** | param_types | ||
) |
Definition at line 549 of file gdbtypes.c.
References check_typedef(), code, type::field(), make_function_type(), type::set_fields(), type::set_has_varargs(), type::set_is_prototyped(), type::set_num_fields(), field::set_type(), and TYPE_ZALLOC.
Referenced by type_stack::follow_types(), and rust_parser::parse_function_type().
Definition at line 490 of file gdbtypes.c.
References lookup_reference_type().
Referenced by expr::decltype_operation::evaluate(), type_stack::follow_types(), gdbscm_type_reference(), gdbscm_value_dynamic_type(), typy_lookup_type(), typy_reference(), valpy_get_dynamic_type(), valpy_getitem(), and yyparse().
Definition at line 843 of file gdbtypes.c.
References alloc_type_copy(), and smash_to_memberptr_type().
Referenced by read_tag_ptr_to_member_type(), and value_struct_elt_for_reference().
Definition at line 855 of file gdbtypes.c.
References alloc_type_copy(), and smash_to_methodptr_type().
Referenced by read_tag_ptr_to_member_type(), and value_struct_elt_for_reference().
Definition at line 402 of file gdbtypes.c.
References make_pointer_type().
Referenced by aarch64_push_dummy_call(), aarch64_stap_parse_special_token(), ada_get_tsd_from_tag(), ada_tag_value_at_base_address(), ada_type_of_array(), ada_val_print_ref(), ada_value_ptr_subscript(), ada_varobj_ind(), dwarf2_cu::addr_type(), address_of_variable(), alpha_push_dummy_call(), arm_stap_parse_special_token(), call_function_by_hand_dummy(), check_stub_method(), compile_object_run(), create_gdbtypes_data(), decode_type(), define_symbol(), desc_bounds(), python_xmethod_worker::do_get_arg_types(), python_xmethod_worker::do_get_result_type(), do_module_cleanup(), eval_op_member(), eval_op_objc_msgcall(), expr::ada_unop_ind_operation::evaluate(), expr::var_value_operation::evaluate_for_address(), expr::var_msym_value_operation::evaluate_for_address(), expr::unop_memval_operation::evaluate_for_address(), expr::unop_memval_type_operation::evaluate_for_address(), expr::structop_base_operation::evaluate_funcall(), expr::structop_member_base::evaluate_funcall(), evaluate_subexp_for_address_base(), expr::var_value_operation::evaluate_with_coercion(), fbsd_get_siginfo_type(), find_function_in_inferior(), type_stack::follow_types(), gdbscm_type_pointer(), gdbscm_value_dynamic_type(), gen_address_of(), gen_usual_unary(), ravenscar_thread_target::get_fpu_state(), gnuv2_virtual_fn_field(), gnuv3_baseclass_offset(), gnuv3_get_virtual_fn(), gnuv3_get_vtable(), gnuv3_method_ptr_to_value(), i386_stap_parse_special_token_three_arg_disp(), i386_stap_parse_special_token_triplet(), python_xmethod_worker::invoke(), ada_language::language_arch_info(), linux_get_siginfo_type_with_fields(), nbsd_get_siginfo_type(), rust_parser::parse_function_type(), rust_parser::parse_pointer_type(), rust_parser::parse_slice_type(), ppc64_sysv_get_return_buf_addr(), quirk_ada_thick_pointer(), quirk_ada_thick_pointer_struct(), read_pointer_type(), read_tag_pointer_type(), language_defn::read_var_value(), resolve_dynamic_struct(), rust_get_trait_object_pointer(), rust_slice_type(), sect_variable_value(), sparc32_store_arguments(), sparc64_store_arguments(), stap_parse_register_operand(), thin_data_pntr(), typy_lookup_type(), typy_pointer(), upgrade_type(), valpy_get_dynamic_type(), valpy_getitem(), value_addr(), value_arg_coerce(), value_coerce_array(), value_coerce_function(), value_fn_field(), value_nsstring(), value_reinterpret_cast(), value_rtti_indirect_type(), value_struct_elt_for_reference(), windows_get_tlb_type(), x_command(), and yyparse().
Definition at line 482 of file gdbtypes.c.
References make_reference_type().
Referenced by python_xmethod_worker::do_get_result_type(), python_xmethod_worker::invoke(), lookup_lvalue_reference_type(), lookup_rvalue_reference_type(), read_tag_reference_type(), value_ref(), and value_rtti_indirect_type().
Definition at line 498 of file gdbtypes.c.
References lookup_reference_type().
Referenced by type_stack::follow_types(), typy_lookup_type(), and valpy_getitem().
struct type * lookup_signed_typename | ( | const struct language_defn * | language, |
const char * | name | ||
) |
Definition at line 1730 of file gdbtypes.c.
References lookup_typename(), and name.
Referenced by binop_promote(), and yyparse().
struct type * lookup_string_range_type | ( | struct type * | string_char_type, |
LONGEST | low_bound, | ||
LONGEST | high_bound | ||
) |
Definition at line 1473 of file gdbtypes.c.
References lookup_array_range_type(), and type::set_code().
Referenced by value_string().
struct_elt lookup_struct_elt | ( | struct type * | type, |
const char * | name, | ||
int | noerr | ||
) |
Definition at line 1838 of file gdbtypes.c.
References check_typedef(), type::code(), type::field(), struct_elt::field, field::loc_bitpos(), lookup_struct_elt(), name, field::name(), type::num_fields(), struct_elt::offset, strcmp_iw(), type::target_type(), field::type(), TYPE_BASECLASS, TYPE_N_BASECLASSES, and type_to_string().
Referenced by fbsd_fetch_rtld_offsets(), lookup_struct_elt(), and lookup_struct_elt_type().
Definition at line 1897 of file gdbtypes.c.
References struct_elt::field, lookup_struct_elt(), name, and field::type().
Referenced by ada_is_bogus_array_descriptor(), desc_bounds_type(), desc_data_target_type(), desc_index_type(), expr::fortran_structop_operation::evaluate(), is_thick_pntr(), yylex(), and yyparse().
struct type * lookup_template_type | ( | const char * | name, |
struct type * | type, | ||
const struct block * | block | ||
) |
Definition at line 1809 of file gdbtypes.c.
References type::code(), lookup_symbol(), name, type::name(), block_symbol::symbol, symbol::type(), and VAR_DOMAIN.
Referenced by yyparse().
struct type * lookup_typename | ( | const struct language_defn * | language, |
const char * | name, | ||
const struct block * | block, | ||
int | noerr | ||
) |
Definition at line 1702 of file gdbtypes.c.
References symbol::aclass(), LOC_TYPEDEF, lookup_symbol_in_language(), name, block_symbol::symbol, symbol::type(), and VAR_DOMAIN.
Referenced by cp_lookup_symbol_imports_or_template(), expr::c_string_operation::evaluate(), python_xmethod_worker::invoke(), lookup_signed_typename(), lookup_unsigned_typename(), printf_wide_c_string(), rust_parser::rust_lookup_type(), typy_lookup_typename(), tyscm_lookup_typename(), ui_printf(), yylex(), and yyparse().
struct type * lookup_unsigned_typename | ( | const struct language_defn * | language, |
const char * | name | ||
) |
Definition at line 1719 of file gdbtypes.c.
References lookup_typename(), and name.
Referenced by binop_promote(), and yyparse().
void maintenance_print_type | ( | const char * | type_name, |
int | from_tty | ||
) |
Definition at line 703 of file typeprint.c.
References evaluate_type(), parse_expression(), recursive_dump_type(), and value_type().
Definition at line 783 of file gdbtypes.c.
References type::instance_flags(), make_qualified_type(), and TYPE_INSTANCE_FLAG_ATOMIC.
Referenced by type_stack::follow_types(), and read_tag_atomic_type().
Definition at line 714 of file gdbtypes.c.
References type::instance_flags(), make_qualified_type(), type::objfile_owner(), TYPE_INSTANCE_FLAG_CONST, and TYPE_INSTANCE_FLAG_VOLATILE.
Referenced by add_array_cv_type(), build_std_type_info_type(), c_type_print_args(), create_value(), python_xmethod_worker::do_get_arg_types(), type_stack::follow_types(), gdbscm_type_const(), gdbscm_type_unqualified(), gdbscm_type_volatile(), gnuv3_get_typeid(), rust_language::language_arch_info(), make_cv_value(), read_const_type(), read_subroutine_type(), read_tag_const_type(), read_tag_volatile_type(), read_type(), read_volatile_type(), typy_const(), typy_lookup_type(), typy_unqualified(), typy_volatile(), and value_rtti_indirect_type().
Definition at line 509 of file gdbtypes.c.
References alloc_type_copy(), INIT_FUNC_SPECIFIC, type::set_code(), type::set_length(), type::set_target_type(), and smash_type().
Referenced by avr_gdbarch_init(), ft32_gdbarch_init(), lookup_function_type(), lookup_function_type_with_arguments(), read_type(), and z80_gdbarch_init().
Definition at line 341 of file gdbtypes.c.
References alloc_type_copy(), type::arch(), type::chain, gdbarch_ptr_bit(), type::length(), type::set_code(), type::set_is_unsigned(), type::set_length(), type::set_target_type(), smash_type(), TYPE_CHAIN, and TYPE_POINTER_TYPE.
Referenced by build_std_type_info_type(), compute_exception(), gnuv3_get_typeid(), lookup_pointer_type(), parse_symbol(), and read_type().
Definition at line 414 of file gdbtypes.c.
References alloc_type_copy(), type::arch(), type::chain, gdbarch_ptr_bit(), type::length(), type::set_code(), type::set_length(), type::set_target_type(), smash_type(), TYPE_CHAIN, TYPE_REFERENCE_TYPE, and TYPE_RVALUE_REFERENCE_TYPE.
Referenced by lookup_reference_type(), and read_type().
Definition at line 759 of file gdbtypes.c.
References type::instance_flags(), make_qualified_type(), and TYPE_INSTANCE_FLAG_RESTRICT.
Referenced by type_stack::follow_types(), read_restrict_type(), and read_tag_restrict_type().
struct type * make_type_with_address_space | ( | struct type * | type, |
type_instance_flags | space_identifier | ||
) |
Definition at line 689 of file gdbtypes.c.
References type::instance_flags(), make_qualified_type(), TYPE_INSTANCE_FLAG_ADDRESS_CLASS_ALL, TYPE_INSTANCE_FLAG_CODE_SPACE, and TYPE_INSTANCE_FLAG_DATA_SPACE.
Referenced by type_stack::follow_types(), get_gdb_vtable_type(), and read_tag_pointer_type().
Definition at line 770 of file gdbtypes.c.
References type::instance_flags(), make_qualified_type(), TYPE_INSTANCE_FLAG_CONST, TYPE_INSTANCE_FLAG_RESTRICT, and TYPE_INSTANCE_FLAG_VOLATILE.
Referenced by compile_cplus_convert_qualified(), and convert_qualified().
void make_vector_type | ( | struct type * | array_type | ) |
Definition at line 1517 of file gdbtypes.c.
References type::code(), flags, type::instance_flags(), make_qualified_type(), type::set_is_vector(), type::set_target_type(), type::target_type(), and TYPE_INSTANCE_FLAG_NOTTEXT.
Referenced by init_vector_type(), read_array_type(), read_type(), typy_array_1(), tyscm_array_1(), and vlscm_convert_bytevector().
const struct objfile_type * objfile_type | ( | struct objfile * | objfile | ) |
Return the type table for the specified objfile.
Definition at line 6320 of file gdbtypes.c.
References objfile::arch(), objfile_type::builtin_char, objfile_type::builtin_core_addr, objfile_type::builtin_double, objfile_type::builtin_error, objfile_type::builtin_float, objfile_type::builtin_int, objfile_type::builtin_long, objfile_type::builtin_long_double, objfile_type::builtin_long_long, objfile_type::builtin_short, objfile_type::builtin_signed_char, objfile_type::builtin_unsigned_char, objfile_type::builtin_unsigned_int, objfile_type::builtin_unsigned_long, objfile_type::builtin_unsigned_long_long, objfile_type::builtin_unsigned_short, objfile_type::builtin_void, gdbarch_addr_bit(), gdbarch_char_signed(), gdbarch_double_bit(), gdbarch_double_format(), gdbarch_float_bit(), gdbarch_float_format(), gdbarch_int_bit(), gdbarch_long_bit(), gdbarch_long_double_bit(), gdbarch_long_double_format(), gdbarch_long_long_bit(), gdbarch_short_bit(), registry< T >::get(), init_float_type(), init_integer_type(), init_nodebug_var_type(), init_pointer_type(), init_type(), objfile_type::nodebug_data_symbol, objfile_type::nodebug_got_plt_symbol, objfile_type::nodebug_text_gnu_ifunc_symbol, objfile_type::nodebug_text_symbol, objfile_type::nodebug_tls_symbol, objfile_type::nodebug_unknown_symbol, objfile::objfile_obstack, objfile_type_data, registry< T >::set(), type::set_has_no_signedness(), and type::set_is_gnu_ifunc().
|
inlinestatic |
Definition at line 441 of file gdbtypes.h.
|
inlinestatic |
Definition at line 730 of file gdbtypes.h.
bool operator== | ( | const dynamic_prop & | l, |
const dynamic_prop & | r | ||
) |
Definition at line 887 of file gdbtypes.c.
References dynamic_prop::baton(), dynamic_prop::const_val(), dynamic_prop::kind(), dynamic_prop::original_type(), PROP_ADDR_OFFSET, PROP_CONST, PROP_LOCEXPR, PROP_LOCLIST, PROP_TYPE, PROP_UNDEFINED, PROP_VARIANT_PARTS, and dynamic_prop::variant_parts().
bool operator== | ( | const range_bounds & | l, |
const range_bounds & | r | ||
) |
Definition at line 914 of file gdbtypes.c.
References FIELD_EQ.
void print_scalar_formatted | ( | const gdb_byte * | valaddr, |
struct type * | type, | ||
const struct value_print_options * | options, | ||
int | size, | ||
struct ui_file * | stream | ||
) |
Definition at line 367 of file printcmd.c.
References type::arch(), range_bounds::bias, type::bit_size_differs_p(), type::bounds(), builtin_type::builtin_true_char, builtin_type::builtin_true_unsigned_char, type::code(), float_type_from_length(), value_print_options::format, gdbarch_addr_bit(), is_fixed_point_type(), type::is_unsigned(), type::length(), print_address(), print_binary_chars(), print_decimal_chars(), print_floating(), print_hex_chars(), print_octal_chars(), size, store_signed_integer(), type_byte_order(), unpack_long(), value_from_longest(), and value_print().
Referenced by mi_cmd_data_read_memory(), mips_print_fp_register(), and value_print_scalar_formatted().
badness_vector rank_function | ( | gdb::array_view< type * > | parms, |
gdb::array_view< value * > | args | ||
) |
Definition at line 4158 of file gdbtypes.c.
References EXACT_MATCH_BADNESS, LENGTH_MISMATCH_BADNESS, rank_one_type(), TOO_FEW_PARAMS_BADNESS, and value_type().
Referenced by find_oload_champ().
Definition at line 4899 of file gdbtypes.c.
References check_typedef(), type::code(), CV_CONVERSION_BADNESS, CV_CONVERSION_CONST, CV_CONVERSION_VOLATILE, EXACT_MATCH_BADNESS, gdb_printf(), gdb_stderr, if(), INCOMPATIBLE_TYPE_BADNESS, type::name(), not_lval, overload_debug, 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(), REFERENCE_CONVERSION_BADNESS, REFERENCE_CONVERSION_CONST_LVALUE, REFERENCE_CONVERSION_RVALUE, REFERENCE_SEE_THROUGH_BADNESS, rank::subrank, sum_ranks(), type::target_type(), TYPE_CONST, TYPE_IS_REFERENCE, TYPE_VOLATILE, types_equal(), and VALUE_LVAL.
Referenced by compare_parameters(), rank_function(), rank_one_type(), rank_one_type_parm_array(), rank_one_type_parm_func(), rank_one_type_parm_ptr(), and rank_one_type_parm_set().
void recursive_dump_type | ( | struct type * | type, |
int | spaces | ||
) |
Definition at line 5235 of file gdbtypes.c.
References type::arch_owner(), type::bit_offset(), type::bit_size(), type::bit_size_differs_p(), type::bounds(), type::code(), dont_print_type_obstack, dump_dynamic_prop(), type::endianity_is_not_default(), type::field(), type::fields(), gdb_printf(), gdb_puts(), type::has_no_signedness(), type::has_varargs(), HAVE_CPLUS_STRUCT, range_bounds::high, type::instance_flags(), type::is_fixed_instance(), type::is_objfile_owned(), type::is_prototyped(), type::is_stub(), type::is_unsigned(), type::is_vector(), type::length(), field::loc_bitpos(), field::loc_enumval(), range_bounds::low, name, field::name(), type::name(), type::num_fields(), type::objfile_owner(), print_cplus_stuff(), print_fixed_point_type_info(), print_gnat_stuff(), recursive_dump_type(), type::stub_is_supported(), type::target_is_stub(), type::target_type(), field::type(), TYPE_ADDRESS_CLASS_1, TYPE_ADDRESS_CLASS_2, TYPE_ALLOCATED_PROP, TYPE_ASSOCIATED_PROP, TYPE_ATOMIC, TYPE_CALLING_CONVENTION, TYPE_CHAIN, TYPE_CODE_SPACE, TYPE_CODE_UNDEF, TYPE_CONST, TYPE_CPLUS_SPECIFIC, TYPE_DATA_SPACE, TYPE_FIELD_BITSIZE, TYPE_FLOATFORMAT, TYPE_GNAT_SPECIFIC, TYPE_NFN_FIELDS, TYPE_NOTTEXT, TYPE_POINTER_TYPE, TYPE_REFERENCE_TYPE, TYPE_RESTRICT, TYPE_SELF_TYPE, TYPE_SPECIFIC_CPLUS_STUFF, TYPE_SPECIFIC_FIELD, TYPE_SPECIFIC_FIXED_POINT, TYPE_SPECIFIC_FLOATFORMAT, TYPE_SPECIFIC_FUNC, TYPE_SPECIFIC_GNAT_STUFF, TYPE_SPECIFIC_INT, TYPE_SPECIFIC_SELF_TYPE, and TYPE_VOLATILE.
Referenced by dump_fn_fieldlists(), maintenance_print_type(), print_args(), print_cplus_stuff(), print_gnat_stuff(), and recursive_dump_type().
Definition at line 802 of file gdbtypes.c.
References type::chain, type::instance_flags(), type::length(), type::objfile_owner(), type::set_length(), TYPE_ADDRESS_CLASS_ALL, TYPE_CHAIN, and TYPE_MAIN_TYPE.
Referenced by cleanup_undefined_types_1(), cleanup_undefined_types_noname(), and read_type().
struct type * resolve_dynamic_type | ( | struct type * | type, |
gdb::array_view< const gdb_byte > | valaddr, | ||
CORE_ADDR | addr | ||
) |
Resolve all dynamic values of a type e.g. array bounds to static values. ADDR specifies the location of the variable the type is bound to. If TYPE has no dynamic properties return TYPE; otherwise a new type with static properties is returned.
For an array type, if the element type is dynamic, then that will not be resolved. This is done because each individual element may have a different type when resolved (depending on the contents of memory). In this situation, 'is_dynamic_type' will still return true for the return value of this function.
Definition at line 2906 of file gdbtypes.c.
References property_addr_info::addr, check_typedef(), resolve_dynamic_type_internal(), and property_addr_info::valaddr.
Referenced by ada_discrete_type_high_bound(), ada_discrete_type_low_bound(), ada_value_primitive_packed_val(), ada_value_print_inner(), decode_constrained_packed_array(), expr::fortran_structop_operation::evaluate(), expr::rust_struct_anon::evaluate(), expr::rust_structop::evaluate(), rust_language::print_enum(), language_defn::read_var_value(), readjust_indirect_value_type(), value_from_contents_and_address(), value_subscripted_rvalue(), value_tag_from_contents_and_address(), and fortran_array_walker< Impl >::walk_1().
|
inlinestatic |
Definition at line 81 of file gdbtypes.h.
Referenced by die_info::addr_base(), dwarf2_per_objfile::age_comp_units(), build_error_marker_type(), create_cus_hash_table(), create_debug_type_hash_table(), create_dwo_cu_reader(), cutu_reader::cutu_reader(), dump_die_shallow(), dwarf2_add_member_fn(), dwarf2_fetch_constant_bytes(), dwarf2_fetch_die_loc_sect_off(), dwarf2_find_containing_comp_unit(), dwarf2_physname(), dwarf2_string_attr(), error_check_comp_unit_head(), finish_fixed_point_type(), follow_die_offset(), follow_die_ref(), follow_die_sig(), get_alignment(), get_DW_AT_signature_type(), get_dwarf2_rational_constant(), get_dwarf2_unsigned_rational_constant(), get_signatured_type(), die_info::gnu_ranges_base(), handle_variant(), handle_variant_part(), inherit_abstract_dies(), lookup_die_type(), lookup_dwo_cutu(), maybe_set_alignment(), peek_die_abbrev(), prepare_one_comp_unit(), process_full_comp_unit(), process_queue(), process_structure_scope(), read_addrmap_from_aranges(), read_alias(), read_array_type(), read_call_site_scope(), read_common_block(), read_comp_units_from_section(), read_cutu_die_from_dwo(), read_func_scope(), read_import_statement(), read_str_index(), read_subrange_type(), read_tag_pointer_type(), read_typedef(), die_info::rnglists_base(), and set_die_type().
bool set_type_align | ( | struct type * | type, |
ULONGEST | align | ||
) |
Set the alignment of the type. The alignment must be a power of
Definition at line 3737 of file gdbtypes.c.
References type::align_log2, and TYPE_ALIGN_BITS.
Referenced by maybe_set_alignment(), read_array_type(), read_enum_type(), read_enumeration_type(), read_func_kind_type(), read_pointer_type(), read_structure_type(), and read_tag_pointer_type().
Definition at line 1582 of file gdbtypes.c.
References type::code(), INIT_FUNC_SPECIFIC, TYPE_MAIN_TYPE, TYPE_SPECIFIC_FIELD, TYPE_SPECIFIC_FUNC, TYPE_SPECIFIC_NONE, and TYPE_SPECIFIC_SELF_TYPE.
Referenced by copy_type_recursive(), read_member_functions(), smash_to_memberptr_type(), smash_to_method_type(), and smash_to_methodptr_type().
Definition at line 2001 of file gdbtypes.c.
References ALLOCATE_CPLUS_STRUCT_TYPE, check_typedef(), type::code(), HAVE_CPLUS_STRUCT, and TYPE_RAW_CPLUS_SPECIFIC.
Referenced by get_vptr_fieldno(), process_structure_scope(), and read_tilde_fields().
void set_type_vptr_fieldno | ( | struct type * | type, |
int | fieldno | ||
) |
Definition at line 1975 of file gdbtypes.c.
References ALLOCATE_CPLUS_STRUCT_TYPE, check_typedef(), type::code(), HAVE_CPLUS_STRUCT, and TYPE_RAW_CPLUS_SPECIFIC.
Referenced by allocate_cplus_struct_type(), get_vptr_fieldno(), process_structure_scope(), and read_tilde_fields().
Definition at line 1616 of file gdbtypes.c.
References type::arch(), gdbarch_ptr_bit(), type::set_code(), type::set_length(), type::set_target_type(), set_type_self_type(), and smash_type().
Referenced by lookup_memberptr_type(), and read_type().
void smash_to_method_type | ( | struct type * | type, |
struct type * | self_type, | ||
struct type * | to_type, | ||
struct field * | args, | ||
int | nargs, | ||
int | varargs | ||
) |
Definition at line 1652 of file gdbtypes.c.
References type::set_code(), type::set_fields(), type::set_has_varargs(), type::set_length(), type::set_num_fields(), type::set_target_type(), set_type_self_type(), and smash_type().
Referenced by check_stub_method(), dwarf2_add_member_fn(), quirk_gcc_member_function_pointer(), read_tag_ptr_to_member_type(), and read_type().
Definition at line 1635 of file gdbtypes.c.
References cplus_method_ptr_size(), type::set_code(), type::set_length(), type::set_target_type(), set_type_self_type(), smash_type(), and TYPE_SELF_TYPE.
Referenced by lookup_methodptr_type(), and quirk_gcc_member_function_pointer().
Definition at line 4052 of file gdbtypes.c.
References rank::rank, and rank::subrank.
Referenced by rank_one_type(), rank_one_type_parm_ptr(), and rank_one_type_parm_struct().
unsigned type_align | ( | struct type * | type | ) |
Return the alignment of the type in target addressable memory units. Return 0 if the alignment cannot be determined; but note that this makes an effort to compute the alignment even it it was not specified in the debug info.
Definition at line 3645 of file gdbtypes.c.
References type::arch(), check_typedef(), type::code(), type::field(), field_is_static(), gdbarch_type_align(), type::num_fields(), type::target_type(), field::type(), type_align(), type_length_units(), and type_raw_align().
Referenced by amd64_has_unaligned_fields(), arm_push_dummy_call(), eval_op_alignof(), jit_read_code_entry(), loongarch_push_dummy_call(), m68k_reg_struct_return_p(), nds32_push_dummy_call(), pass_on_stack(), quirk_ada_thick_pointer(), riscv_arg_location(), rust_composite_type(), set_gdbarch_type_align(), type_align(), and typy_get_alignof().
enum bfd_endian type_byte_order | ( | const struct type * | type | ) |
When the type includes explicit byte ordering, return that. Otherwise, the byte ordering from gdbarch_byte_order for the type's arch is returned.
Definition at line 4018 of file gdbtypes.c.
References type::arch(), type::endianity_is_not_default(), and gdbarch_byte_order().
Referenced by ada_val_print_string(), ada_value_assign(), ada_value_binop(), ada_value_primitive_packed_val(), address_to_signed_pointer(), c_get_string(), c_value_print_array(), cp_print_class_member(), darwin_current_sos(), decode_constrained_packed_array(), default_print_one_register_info(), default_value_from_register(), fixed_point_binop(), generic_emit_char(), generic_printstr(), generic_val_print_fixed_point(), f_language::get_encoding(), gnuv3_make_method_ptr(), match_endianness(), modify_field(), pack_long(), pack_unsigned_long(), ppc64_sysv_abi_return_value_base(), print_scalar_formatted(), pascal_language::printstr(), printstr(), processInt(), language_defn::read_var_value(), riscv_print_one_register_info(), riscv_return_value(), rw_pieced_value(), scalar_binop(), signed_pointer_to_address(), solib_svr4_r_ldsomap(), solib_svr4_r_next(), stap_modify_semaphore(), target_float_same_format_p(), unpack_bits_as_long(), unpack_long(), unpack_value_bitfield(), unsigned_address_to_pointer(), unsigned_pointer_to_address(), val_print_string(), value_assign_to_component(), value_bit_index(), value_cast(), value_cast_to_fixed_point(), value_contents_copy_raw_bitwise(), value_from_component_bitsize(), value_pointer(), pascal_language::value_print_inner(), and value_to_gdb_mpq().
unsigned int type_length_units | ( | struct type * | type | ) |
Definition at line 280 of file gdbtypes.c.
References type::arch(), gdbarch_addressable_memory_unit_size(), and type::length().
Referenced by find_size_for_pointer_math(), fortran_adjust_dynamic_array_base_address_hack(), fortran_array_offset_calculator::fortran_array_offset_calculator(), fortran_associated(), read_frame_register_value(), type_align(), value_array(), value_assign(), value_fetch_lazy_memory(), value_fetch_lazy_register(), value_from_component(), value_primitive_field(), value_ptrdiff(), value_repeat(), value_slice(), and value_subscripted_rvalue().
const char * type_name_or_error | ( | struct type * | type | ) |
Definition at line 1678 of file gdbtypes.c.
References check_typedef(), name, type::name(), objfile_name(), and type::objfile_owner().
Referenced by cp_lookup_nested_symbol(), d_lookup_nested_symbol(), and destructor_name_p().
int type_not_allocated | ( | const struct type * | type | ) |
Definition at line 4479 of file gdbtypes.c.
References dynamic_prop::const_val(), dynamic_prop::kind(), PROP_CONST, and TYPE_ALLOCATED_PROP.
Referenced by eval_op_f_allocated(), expr::var_value_operation::evaluate_for_sizeof(), f_language::f_type_print_varspec_suffix(), fortran_adjust_dynamic_array_base_address_hack(), fortran_array_shape(), fortran_array_size(), update_static_array_size(), valprint_check_validity(), value_check_printable(), value_slice(), expr::fortran_undetermined::value_subarray(), and value_subscripted_rvalue().
int type_not_associated | ( | const struct type * | type | ) |
Definition at line 4491 of file gdbtypes.c.
References dynamic_prop::const_val(), dynamic_prop::kind(), PROP_CONST, and TYPE_ASSOCIATED_PROP.
Referenced by expr::var_value_operation::evaluate_for_sizeof(), f_language::f_type_print_varspec_suffix(), fortran_adjust_dynamic_array_base_address_hack(), fortran_array_shape(), fortran_array_size(), fortran_associated(), update_static_array_size(), valprint_check_validity(), value_check_printable(), value_slice(), expr::fortran_undetermined::value_subarray(), and value_subscripted_rvalue().
unsigned type_raw_align | ( | struct type * | type | ) |
Return the alignment of the type in target addressable memory units, or 0 if no alignment was specified.
Definition at line 3635 of file gdbtypes.c.
References type::align_log2.
Referenced by type_align().
Definition at line 4460 of file gdbtypes.c.
References check_types_worklist(), type_equality_entry::type1, and type_equality_entry::type2.
Referenced by compile_object_load(), get_out_value_type(), typy_richcompare(), tyscm_equal_p_type_smob(), and value_cast().
Definition at line 4232 of file gdbtypes.c.
References check_typedef(), type::code(), type::field(), type::name(), type::num_fields(), type::target_type(), field::type(), and types_equal().
Referenced by python_xmethod_worker::do_get_result_type(), eq_typedef_field(), get_baseclass_offset(), python_xmethod_worker::invoke(), compile_cplus_instance::new_scope(), rank_one_type(), rank_one_type_parm_ptr(), rust_range(), types_equal(), value_concat(), value_has_field(), and value_struct_elt_bitpos().
|
extern |
Badness of converting derived to base class.
Definition at line 71 of file gdbtypes.c.
Referenced by rank_one_type_parm_struct().
|
extern |
Badness of converting a derived class pointer to a base class pointer.
Definition at line 64 of file gdbtypes.c.
Referenced by rank_one_type_parm_ptr().
|
extern |
Badness of conversion to boolean.
Definition at line 70 of file gdbtypes.c.
Referenced by rank_one_type_parm_bool().
|
extern |
The default value of TYPE_CPLUS_SPECIFIC(T) points to this shared static structure.
Definition at line 3335 of file gdbtypes.c.
Referenced by allocate_cplus_struct_type().
|
extern |
Badness of cv-conversion. Subrank is a flag describing the conversions being done.
Definition at line 65 of file gdbtypes.c.
Referenced by rank_one_type(), and rank_one_type_parm_ptr().
|
extern |
Badness of an exact match.
Definition at line 60 of file gdbtypes.c.
Referenced by compare_parameters(), rank_function(), rank_one_type(), rank_one_type_parm_bool(), rank_one_type_parm_char(), rank_one_type_parm_complex(), rank_one_type_parm_float(), rank_one_type_parm_int(), and rank_one_type_parm_ptr().
|
extern |
Badness of floating conversion.
Definition at line 67 of file gdbtypes.c.
Referenced by rank_one_type_parm_float().
|
extern |
Badness of floating promotion.
Definition at line 63 of file gdbtypes.c.
Referenced by rank_one_type_parm_complex(), and rank_one_type_parm_float().
|
extern |
Definition at line 107 of file gdbtypes.c.
Referenced by arm_ext_type(), and make_gdb_type().
|
extern |
Definition at line 127 of file gdbtypes.c.
Referenced by i386_gdbarch_init(), make_gdb_type(), and verify_gdbarch().
|
extern |
Definition at line 99 of file gdbtypes.c.
Referenced by i386_gdbarch_init(), ia64_gdbarch_init(), and make_gdb_type().
|
extern |
Definition at line 111 of file gdbtypes.c.
|
extern |
Definition at line 123 of file gdbtypes.c.
Referenced by do_ppc_sysv_return_value(), mips_gdbarch_init(), ppc64_sysv_abi_push_freg(), ppc64_sysv_abi_return_value_base(), ppc_floatformat_for_type(), ppc_linux_init_abi(), and ppc_sysv_abi_push_dummy_call().
|
extern |
Definition at line 87 of file gdbtypes.c.
Referenced by aarch64_gdbarch_init(), arc_gdbarch_init(), arm_gdbarch_init(), build_go_types(), csky_gdbarch_init(), csky_register_type(), hppa_linux_init_abi(), hppabsd_init_abi(), iq2000_gdbarch_init(), opencl_language::language_arch_info(), rust_language::language_arch_info(), m68hc11_gdbarch_init(), m68k_gdbarch_init(), make_gdb_type(), msp430_gdbarch_init(), nios2_gdbarch_init(), or1k_gdbarch_init(), ppcfbsd_init_abi(), ppcobsd_init_abi(), rl78_gdbarch_init(), rs6000_builtin_type(), rx_gdbarch_init(), sparc32nbsd_init_abi(), tic6x_gdbarch_init(), and verify_gdbarch().
|
extern |
Definition at line 95 of file gdbtypes.c.
Referenced by arm_gdbarch_init(), and sh_littlebyte_bigword_type().
|
extern |
Definition at line 79 of file gdbtypes.c.
Referenced by opencl_language::language_arch_info(), make_gdb_type(), and verify_gdbarch().
|
extern |
Definition at line 91 of file gdbtypes.c.
Referenced by aarch64_gdbarch_init(), hppa_gdbarch_init(), i386_floatformat_for_type(), ia64_openvms_init_abi(), loongarch_gdbarch_init(), mips64obsd_init_abi(), mips_linux_init_abi(), ppc64_elfv2_abi_homogeneous_aggregate(), ppc64_sysv_abi_push_param(), ppc64_sysv_abi_return_value_base(), ppc_floatformat_for_type(), ppc_linux_init_abi(), ppc_sysv_abi_push_dummy_call(), riscv_gdbarch_init(), rs6000_builtin_type_vec128(), s390_gdbarch_init(), and sparc32_gdbarch_init().
|
extern |
Definition at line 83 of file gdbtypes.c.
Referenced by aarch64_gdbarch_init(), arc_gdbarch_init(), arm_gdbarch_init(), avr_gdbarch_init(), BP_MANIPULATION(), build_go_types(), csky_gdbarch_init(), iq2000_gdbarch_init(), opencl_language::language_arch_info(), rust_language::language_arch_info(), m68hc11_gdbarch_init(), make_gdb_type(), msp430_gdbarch_init(), nds32_pseudo_register_type(), nios2_gdbarch_init(), or1k_gdbarch_init(), rl78_gdbarch_init(), rs6000_builtin_type(), rx_gdbarch_init(), sh_gdbarch_init(), tic6x_gdbarch_init(), verify_gdbarch(), and z80_gdbarch_init().
|
extern |
Definition at line 103 of file gdbtypes.c.
Referenced by m68881_ext_type(), and m68k_gdbarch_init().
|
extern |
Definition at line 119 of file gdbtypes.c.
Referenced by vax_gdbarch_init().
|
extern |
Definition at line 115 of file gdbtypes.c.
Referenced by vax_gdbarch_init().
|
extern |
Definition at line 3351 of file gdbtypes.c.
Referenced by allocate_gnat_aux_type().
|
extern |
Badness if no conversion among types.
Definition at line 58 of file gdbtypes.c.
Referenced by classify_oload_match(), 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(), and rank_one_type_parm_struct().
|
extern |
Badness of integer<->floating conversions.
Definition at line 68 of file gdbtypes.c.
Referenced by rank_one_type_parm_char(), rank_one_type_parm_enum(), rank_one_type_parm_float(), rank_one_type_parm_int(), and rank_one_type_parm_range().
|
extern |
Badness of integral conversion.
Definition at line 66 of file gdbtypes.c.
Referenced by rank_one_type_parm_char(), rank_one_type_parm_enum(), rank_one_type_parm_int(), and rank_one_type_parm_range().
|
extern |
Badness of integral promotion.
Definition at line 62 of file gdbtypes.c.
Referenced by rank_one_type_parm_char(), and rank_one_type_parm_int().
|
extern |
Badness if parameter list length doesn't match arg list length.
Definition at line 55 of file gdbtypes.c.
Referenced by rank_function().
|
extern |
Badness of converting a (non-zero) integer constant to a pointer.
Definition at line 76 of file gdbtypes.c.
Referenced by rank_one_type_parm_ptr().
|
extern |
Converting a pointer to an int is usually OK.
Definition at line 75 of file gdbtypes.c.
Referenced by classify_oload_match(), and rank_one_type_parm_int().
|
extern |
Badness of converting integer 0 to NULL pointer.
|
extern |
Definition at line 138 of file gdbtypes.c.
Referenced by find_oload_champ(), and rank_one_type().
|
extern |
Badness of converting from non-reference to reference. Subrank is the type of reference conversion being done.
Definition at line 72 of file gdbtypes.c.
Referenced by rank_one_type().
|
extern |
Definition at line 73 of file gdbtypes.c.
Referenced by rank_one_type().
|
extern |
Dummy badness value for nonexistent parameter positions.
Definition at line 57 of file gdbtypes.c.
Referenced by rank_function().
|
extern |
Badness of conversion of pointer to void pointer.
Definition at line 69 of file gdbtypes.c.
Referenced by rank_one_type_parm_ptr().