The line
std::unique_ptr<PHYSFS_sint64> myBuf(new PHYSFS_sint64[PHYSFS_fileLength(myfile)]);
produces the warning
warning C4244: 'initializing' : conversion from 'PHYSFS_sint64' to 'unsigned int', possible loss of data
PHYSFS_sint64 is a typedef for singed long long
PHYSFS_fileLength returns a PHYSFS_sint64.
So I don't understand why the compiler tries to convert from signed long long to unsigned int when I just try to assign a signed long long to a signed long long?
When I explicitly type signed long long instead of PHYSFS_sint64 it still outputs the same warning
Am I being stupid right now? I don't get it