#include <stdint.h> | |
#include <stdio.h> | |
#include <inttypes.h> | |
#pragma pack(1) | |
struct s { | |
int : 28; | |
unsigned : 17; | |
unsigned a : 25; | |
} b; | |
volatile int32_t c; | |
int32_t x; | |
void d() { | |
if (8 < b.a) | |
x = c; | |
} | |
int main() { | |
int32_t val_3; | |
int32_t val_2; | |
uint32_t val_1; | |
val_1 = 2097152; | |
val_2 = 0; | |
val_3 = 0; | |
x = val_3; | |
c = val_2; | |
b.a = val_1; | |
d(); | |
printf("b.a = %u\n", b.a); | |
printf("c = %" PRIi32 "\n", c); | |
printf("x = %" PRIi32 "\n", x); | |
return 0; | |
} |