#include "test2.h" struct a { int a; int b; }; void f(const struct a a[2]) { struct a _a[2]; if (!go) { _a[0].a = 5; _a[0].b = 6; _a[1].a = 7; _a[1].b = 8; a = _a; } print(*(struct foo*)&a[0]); print(*(struct foo*)&a[1]); } int main(void) { struct a a[2] = { { 1, 2 }, { 3, 4 } }; f(a); return 0; }