> мы микроконтроллеры программируем. поскольку там на борту всего 0.5-1К
> RAM то эта RAM экономится жестко. соответственно всякие поля зачастую
> упаковываются в байты:
>
> struct something {
> uint8_t type;
> union {
> struct {
> unsigned flag1:1;
> unsigned field1:5;
> unsigned field2:2;
> };
>
> struct {
> unsigned bla:2;
> int ble:3;
> int bee:3;
> };
> };
> }
>
Офигеть. Анонимное объединение анонимных структур.
Так не покатит?
struct this_frigging_t whatthefsck = {FIRST_TYPE, { {.flag1 = 0,
.flag2 = 31, .flag3 = 2}}}