rosenberg: handle bit fields better
[smatch.git] / validation / enum-bitwise.c
blobfcdb8d7a06de132cd92446248440cc944158dafc
1 #define __bitwise __attribute__((bitwise))
2 #define __force __attribute__((force))
4 typedef long long __bitwise bits;
6 enum r {
7 RZ = (__force bits) 0,
8 RO = (__force bits) 1,
9 RM = (__force bits) -1,
12 _Static_assert([typeof(RZ)] == [bits], "RZ");
13 _Static_assert([typeof(RO)] == [bits], "RO");
14 _Static_assert([typeof(RM)] == [bits], "RM");
15 _Static_assert(sizeof(enum r) == sizeof(bits), "bits");
18 * check-name: enum-bitwise