t002.x has this code:
typedef unsigned short int Tal16ushort __attribute__ ((aligned (16))); struct S460 { unsigned long int __attribute__ ((packed)) a; Tal16ushort __attribute__ ((aligned)) b:((((13) - 1) & 15) + 1); unsigned short int c; };
BIGGEST_ALIGNMENT is 64 for sh64-elf. Does the ((aligned)) attribute apply to b, to the base type of b, or both to the base type of b and the base type of the current run of bits?
Currently, I see the record is 128-bit aligned, but the run of bits that b is allocated from is only 64 bit aligned; this doesn't make any sense.