1struct foo {
2  char a[3];
3  char b;
4  char c;
5};
6
7struct foo bs;
8int x;
9char y[3];
10
11void bar(void)
12{
13    memcpy(bs.a, y, 3);
14    bs.a[1] = ((x ? &bs.b : &bs.c) - (char *)&bs) - 2;
15}
16