20000802-1.c   [plain text]


struct foo {
  char a[3];
  char b;
  char c;
};

struct foo bs;
int x;
char y[3];

void bar(void)
{
    memcpy(bs.a, y, 3);
    bs.a[1] = ((x ? &bs.b : &bs.c) - (char *)&bs) - 2;
}