This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Another ms-bitfield question...
- From: Joern RENNECKE <joern dot rennecke at st dot com>
- To: gcc at gcc dot gnu dot org
- Date: Thu, 28 Apr 2005 18:26:45 +0100
- Subject: Another ms-bitfield question...
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.