ふとイヤなコードを思いつきました
main(){
char a[4];
char b[0x3fffffff];
char c[0x3fffffff];
char d[0x3fffffff];
char e[0x3fffffff];
int f = 0;
printf("%x %x %x %x\n", a[0],a[1],a[2],a[3]);
f = 0x12345678;
printf("%x %x %x %x\n", a[0],a[1],a[2],a[3]);
return &f;
}実行結果。
i@u ~/test> ./a.out 0 0 0 0 78 56 34 12
GCC3 とか最適化ありとかだとうまくいかない…ですがどうでもいいです。