struct bitfield size check is missing

struct s2 { char a; int b:10; short c:18;} s2;

short c:18; is invalid on darwin-x86 because 18 exceeds size of short. clang does not flag this as an error.