77 while (s >
name_buffer && (s[0] !=
'_' || s[-1] !=
'_'))
88 if (s[0] ==
'_' && s[1] ==
'_')
110 struct type *subtype;
138 int bounds_prefered_p)
140 if (!bounds_prefered_p)
162 struct type *target_type;
167 if (target_type == NULL)
228 if (bounds[*n] ==
'_')
234 const char *bound = bounds + *n;
237 pend = strstr (bound,
"__");
239 *n += bound_len = strlen (bound);
242 bound_len = pend - bound;
255 const char *suffix,
struct ui_file *stream)
277 int bounds_prefered_p)
280 struct type *base_type;
281 const char *subtype_info;
290 base_type = raw_type;
292 subtype_info = strstr (
name,
"___XD");
293 if (subtype_info == NULL)
297 int prefix_len = subtype_info -
name;
298 const char *bounds_str;
302 bounds_str = strchr (subtype_info,
'_');
305 if (*subtype_info ==
'L')
316 if (*subtype_info ==
'U')
337 for (i = 0; i < len; i++)
363 if (delta ==
nullptr)
391 struct type *elt_type = NULL;
408 struct type *range_desc_type;
409 struct type *arr_type;
415 if (range_desc_type == NULL)
420 if (arr_type !=
type)
433 for (k = 0, arr_type =
type;
457 ada_print_type (elt_type,
"", stream, show == 0 ? 0 : show - 1, level + 1,
475 struct type *val_type)
561 struct type *var_type, *par_type;
562 struct type *discr_type;
575 if (par_type != NULL)
584 outer_type, stream, show, level + 4,
591 stream, show, level + 4,
flags);
605 struct ui_file *stream,
int show,
int level,
628 struct ui_file *stream,
int show,
int level,
638 for (i = fld0; i <= fld1; i += 1)
646 stream, show, level,
flags);
658 stream, show - 1, level + 4,
flags);
671 struct ui_file *stream,
int show,
int level,
676 stream, show, level,
flags);
688 struct type *parent_type;
704 if (parent_name == NULL)
720 if (parent_type != NULL &&
ada_type_name (parent_type) == NULL)
722 stream, show, level,
flags);
760 stream, show - 1, level + 12,
flags);
765 level + 4,
"", level,
"");
786 if (
name != NULL &&
name[0] !=
'\0')
792 for (i = 0; i < len; i += 1)
831 struct ui_file *stream,
int show,
int level,
836 int is_var_decl = (varstring != NULL && varstring[0] !=
'\0');
934 _(
"array (?) of ? (<mal-formed descriptor>)"));
static void print_array_type(struct type *type, struct ui_file *stream, int show, int level, const struct type_print_options *flags)
static void print_range(struct type *type, struct ui_file *stream, int bounds_prefered_p)
std::string target_float_to_string(const gdb_byte *addr, const struct type *type, const char *format)
static void print_record_type(struct type *type0, struct ui_file *stream, int show, int level, const struct type_print_options *flags)
static void print_func_type(struct type *type, struct ui_file *stream, const char *name, const struct type_print_options *flags)
int ada_is_bogus_array_descriptor(struct type *type)
struct type * ada_parent_type(struct type *type)
#define TYPE_FIELD_NAME(thistype, n)
char * int_string(LONGEST val, int radix, int is_signed, int width, int use_c_format)
static void print_range_type(struct type *raw_type, struct ui_file *stream, int bounds_prefered_p)
#define TYPE_NAME(thistype)
char * plongest(LONGEST l)
const struct type_print_options type_print_raw_options
struct type * ada_variant_discrim_type(struct type *var_type, struct type *outer_type)
void ada_print_type(struct type *type0, const char *varstring, struct ui_file *stream, int show, int level, const struct type_print_options *flags)
static void print_dynamic_range_bound(struct type *type, const char *name, int name_len, const char *suffix, struct ui_file *stream)
struct type * ada_get_base_type(struct type *raw_type)
struct type * ada_coerce_to_simple_array_type(struct type *type)
static int type_is_full_subrange_of_target_type(struct type *type)
int ada_is_range_type_name(const char *name)
struct type * ada_check_typedef(struct type *type)
#define TYPE_FIELD_ENUMVAL(thistype, n)
#define TYPE_FIELD_TYPE(thistype, n)
mach_port_t kern_return_t mach_port_t msgports mach_port_t kern_return_t pid_t pid mach_port_t kern_return_t mach_port_t task mach_port_t kern_return_t int flags
bool get_int_var_value(const char *name, LONGEST &value)
struct value * ada_scaling_factor(struct type *type)
void ada_fixup_array_indexes_type(struct type *index_desc_type)
const gdb_byte * value_contents(struct value *value)
#define CATCH(EXCEPTION, MASK)
static void print_variant_part(struct type *type, int field_num, struct type *outer_type, struct ui_file *stream, int show, int level, const struct type_print_options *flags)
LONGEST ada_discrete_type_high_bound(struct type *type)
static void print_variant_clauses(struct type *type, int field_num, struct type *outer_type, struct ui_file *stream, int show, int level, const struct type_print_options *flags)
static void print_fixed_point_type(struct type *type, struct ui_file *stream)
void fprintf_filtered(struct ui_file *stream, const char *format,...)
ULONGEST ada_modulus(struct type *type)
int ada_is_tagged_type(struct type *type, int refok)
static void print_enum_type(struct type *type, struct ui_file *stream)
int ada_name_prefix_len(const char *name)
int ada_is_simple_array_type(struct type *type)
static char * decoded_type_name(struct type *type)
void fputs_filtered(const char *linebuffer, struct ui_file *stream)
static int print_record_field_types(struct type *, struct type *, struct ui_file *, int, int, const struct type_print_options *)
struct value * ada_delta(struct type *type)
static void print_unchecked_union_type(struct type *type, struct ui_file *stream, int show, int level, const struct type_print_options *flags)
struct type * ada_find_parallel_type(struct type *type, const char *suffix)
int ada_is_wrapper_field(struct type *type, int field_num)
void ada_print_typedef(struct type *type, struct symbol *new_symbol, struct ui_file *stream)
static struct symbol * new_symbol(struct die_info *, struct type *, struct dwarf2_cu *)
int ada_is_array_descriptor_type(struct type *type)
static char * name_buffer
int value_equal(struct value *arg1, struct value *arg2)
static int print_choices(struct type *type, int field_num, struct ui_file *stream, struct type *val_type)
#define TYPE_FIELD_BITSIZE(thistype, n)
int ada_is_constrained_packed_array_type(struct type *type)
void wrap_here(const char *indent)
int ada_scan_number(const char str[], int k, LONGEST *R, int *new_k)
LONGEST ada_discrete_type_low_bound(struct type *type)
int ada_is_fixed_point_type(struct type *type)
PTR xrealloc(PTR ptr, size_t size)
int ada_is_ignored_field(struct type *type, int field_num)
int ada_array_arity(struct type *type)
const char * ada_variant_discrim_name(struct type *type0)
#define TYPE_TARGET_TYPE(thistype)
static void print_range_bound(struct type *type, const char *bounds, int *n, struct ui_file *stream)
struct type * ada_aligned_type(struct type *type)
#define TYPE_CODE(thistype)
#define TYPE_INDEX_TYPE(type)
const char * ada_type_name(struct type *type)
void c_print_type(struct type *, const char *, struct ui_file *, int, int, const struct type_print_options *)
int ada_is_variant_part(struct type *type, int field_num)
#define TYPE_NFIELDS(thistype)
struct type * ada_array_element_type(struct type *type, int nindices)
int ada_is_modular_type(struct type *type)
const char * ada_enum_name(const char *name)
int is_dynamic_type(struct type *type)
int ada_is_aligner_type(struct type *type)
struct type * value_type(const struct value *value)
int ada_is_parent_field(struct type *type, int field_num)
#define TYPE_LENGTH(thistype)
void ada_print_scalar(struct type *, LONGEST, struct ui_file *)
static int print_selected_record_field_types(struct type *, struct type *, int, int, struct ui_file *, int, int, const struct type_print_options *)
static int name_buffer_len