unsigned int things_printed = 0;
unsigned len;
struct type *elttype, *index_type;
- unsigned eltlen;
unsigned long bitsize = TYPE_FIELD_BITSIZE (type, 0);
struct value *mark = value_mark ();
LONGEST low = 0;
elttype = TYPE_TARGET_TYPE (type);
- eltlen = TYPE_LENGTH (check_typedef (elttype));
index_type = TYPE_INDEX_TYPE (type);
{
(i * bitsize) / HOST_CHAR_BIT,
(i * bitsize) % HOST_CHAR_BIT,
bitsize, elttype);
+ if (TYPE_LENGTH (check_typedef (value_type (v0)))
+ != TYPE_LENGTH (check_typedef (value_type (v1))))
+ break;
if (!value_contents_eq (v0, value_embedded_offset (v0),
v1, value_embedded_offset (v1),
- eltlen))
+ TYPE_LENGTH (check_typedef (value_type (v0)))))
break;
}
offset_aligned = offset + ada_aligned_value_addr (type, valaddr) - valaddr;
type = printable_val_type (type, valaddr + offset_aligned);
+ type = resolve_dynamic_type (type, valaddr + offset_aligned,
+ address + offset_aligned);
switch (TYPE_CODE (type))
{