По-видимому, компилятор считает их несвязанными типами, и поэтому требуется reinterpret_cast. Почему это правило?
требуется reinterpret_cast