ほんとだ、なんで8じゃないんだ?
char tmp[0];
の罠かと思ったけど違うし