単純にvoid *をintに代入する、なんて糞コードが
修正されずに残ってるものなのかな。

もしかしたらptrdiff_t相当の、ポインタの差ををintに代入してるのかも
と思ったけど、だったら出るエラーメッセージが違うだろうし。