modernc.org/ccgo/v3@v3.16.14/lib/testdata/gcc-9.1.0/gcc/testsuite/gcc.c-torture/execute/bitfld-2.c (about) 1 /* Test whether bit field boundaries aren't advanced if bit field type 2 has alignment large enough. */ 3 extern void abort (void); 4 extern void exit (int); 5 6 struct A { 7 unsigned short a : 5; 8 unsigned short b : 5; 9 unsigned short c : 6; 10 }; 11 12 struct B { 13 unsigned short a : 5; 14 unsigned short b : 3; 15 unsigned short c : 8; 16 }; 17 18 int main () 19 { 20 /* If short is not at least 16 bits wide, don't test anything. */ 21 if ((unsigned short) 65521 != 65521) 22 exit (0); 23 24 if (sizeof (struct A) != sizeof (struct B)) 25 abort (); 26 27 exit (0); 28 }