blob: 436d8c5518b454f7f580b37910ea84995acd06dc [file] [log] [blame]
/* { dg-do run } */
/* { dg-require-effective-target size32plus } */
/* { dg-options "-fstrict-volatile-bitfields" } */
extern void abort (void);
#pragma pack(1)
volatile struct S0 {
signed a : 7;
unsigned b : 28; /* b can't be fetched with an aligned 32-bit access, */
/* but it certainly can be fetched with an unaligned access */
} g = {0,0xfffffff};
int main() {
unsigned b = g.b;
if (b != 0xfffffff)
abort ();
return 0;
}