声明定义R-1-1-12强制

禁止位域基类型大小不一致或跨越基类型边界

位域基类型大小不一致或跨越基类型边界
test.c
1struct Foo
2{
3 unsigned char a : 6;
4 unsigned short b : 2;
禁止位域基类型大小不一致或跨越基类型边界 [gjb8114-r-1-1-12]
5};
6
7struct Bar
8{
9 unsigned short a : 14;
10 unsigned short b : 4;
禁止位域基类型大小不一致或跨越基类型边界 [gjb8114-r-1-1-12]
11};
位定义的变量未跨越类型长度
test.c
1struct Foo
2{
3 unsigned char a : 6;
4 unsigned char b : 2;
5};
6
7struct Bar
8{
9 unsigned short a : 14;
10 unsigned short _reserved : 2;
11 unsigned short b : 14;
12};