struct foo { int a, b; }; #define FOO (struct foo) { 0, 1 } int bar (struct foo *x) { printf ("%d %d\n", x->a, x->b); return 0; } struct foo baz = FOO; int main (void) { bar (& FOO); bar (& baz); }