struct X { int y, z; }; void ?{}(X *); void ?{}(X *, int, int); void ^?{}(X *); int f(int x) { static X a; static X b = { x, x }; static X c = b; }