76 while (s >
name_buffer && (s[0] !=
'_' || s[-1] !=
'_'))
87 if (s[0] ==
'_' && s[1] ==
'_')
109 struct type *subtype;
137 int bounds_prefered_p)
139 if (!bounds_prefered_p)
161 struct type *target_type;
166 if (target_type == NULL)
227 if (bounds[*n] ==
'_')
233 char *bound = bounds + *n;
236 pend = strstr (bound,
"__");
238 *n += bound_len = strlen (bound);
241 bound_len = pend - bound;
254 const char *suffix,
struct ui_file *stream)
256 static char *name_buf = NULL;
257 static size_t name_buf_len = 0;
261 GROW_VECT (name_buf, name_buf_len, name_len + strlen (suffix) + 1);
262 strncpy (name_buf, name, name_len);
263 strcpy (name_buf + name_len, suffix);
282 int bounds_prefered_p)
285 struct type *base_type;
286 const char *subtype_info;
295 base_type = raw_type;
297 subtype_info = strstr (name,
"___XD");
298 if (subtype_info == NULL)
302 int prefix_len = subtype_info -
name;
307 bounds_str = strchr (subtype_info,
'_');
310 if (*subtype_info ==
'L')
321 if (*subtype_info ==
'U')
342 for (i = 0; i <
len; i++)
405 struct type *range_desc_type;
406 struct type *arr_type;
412 if (range_desc_type == NULL)
417 if (arr_type != type)
430 for (k = 0, arr_type = type;
454 show == 0 ? 0 : show - 1, level + 1, flags);
468 struct type *val_type)
549 struct type *outer_type,
struct ui_file *stream,
554 struct type *var_type, *par_type;
555 struct type *discr_type;
568 if (par_type != NULL)
577 outer_type, stream, show, level + 4,
584 stream, show, level + 4, flags);
598 struct ui_file *stream,
int show,
int level,
621 struct ui_file *stream,
int show,
int level,
631 for (i = fld0; i <= fld1; i += 1)
639 stream, show, level, flags);
651 stream, show - 1, level + 4, flags);
664 struct ui_file *stream,
int show,
int level,
669 stream, show, level, flags);
681 struct type *parent_type;
697 if (parent_name == NULL)
713 if (parent_type != NULL &&
ada_type_name (parent_type) == NULL)
715 stream, show, level, flags);
753 stream, show - 1, level + 12, flags);
758 level + 4,
"", level,
"");
778 if (name != NULL && name[0] !=
'\0')
784 for (i = 0; i <
len; i += 1)
821 struct ui_file *stream,
int show,
int level,
826 int is_var_decl = (varstring != NULL && varstring[0] !=
'\0');
924 _(
"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)
LONGEST get_int_var_value(char *name, int *flag)
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)
static void print_range_bound(struct type *type, char *bounds, int *n, struct ui_file *stream)
#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)
#define GROW_VECT(v, s, m)
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
void ada_fixup_array_indexes_type(struct type *index_desc_type)
#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 *)
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)
void wrap_here(char *indent)
static char * name_buffer
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)
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)
#define TYPE_TARGET_TYPE(thistype)
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)
char * ada_variant_discrim_name(struct type *type0)
DOUBLEST ada_delta(struct type *type)
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)
DOUBLEST ada_fixed_to_float(struct type *type, LONGEST x)
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
const ULONGEST const LONGEST len