Files
codeql/cpp/ql/test/library-tests/abi/packed.c
2018-08-02 17:53:23 +01:00

22 lines
684 B
C

struct stru {
union {
int i;
char s[6];
} __attribute__((packed));
};
void f(void)
{
char test1[((int)sizeof(int)) - 5]; // 4 - 5 = -1 error
char test2[((int)sizeof(int)) - 4]; // 4 - 4 = 0
char test3[((int)sizeof(int)) - 3]; // 4 - 3 = 1
char test4[((int)sizeof(struct stru)) - 7]; // 6 - 7 = -1 error
char test5[((int)sizeof(struct stru)) - 6]; // 6 - 6 = 0
char test6[((int)sizeof(struct stru)) - 5]; // 6 - 5 = 1
char test7[9 - ((int)sizeof(struct stru))]; // 9 - 6 = 3
char test8[8 - ((int)sizeof(struct stru))]; // 8 - 6 = 2
char test9[7 - ((int)sizeof(struct stru))]; // 7 - 6 = 1
}