int i; char *d="";
main(){
i++[realloc(d,i+1)]=getc();
}

これって、未定義動作ですか?