Closed sinojelly closed 3 years ago
Maybe because the pointer is 8 bytes, not 4 bytes.
[ 95%] Building CXX object src/CMakeFiles/mockcpp.dir/JmpCode.cpp.obj In file included from D:\Develop\work\mockcpp\src\JmpCodeArch.h:25, from D:\Develop\work\mockcpp\src\JmpCode.cpp:22: D:\Develop\work\mockcpp\src\JmpCode.cpp: In constructor 'mockcpp::JmpCodeImpl::JmpCodeImpl(const void*, const void*)': D:\Develop\work\mockcpp\src\JmpCode.cpp:34:34: error: cast from 'const void*' to 'long unsigned int' loses precision [-fpermissive] SET_JMP_CODE(m_code, from, to); ^~ D:\Develop\work\mockcpp\src\JmpCodeX86.h:23:28: note: in definition of macro 'SET_JMP_CODE' (unsigned long)to - (unsigned long)from - sizeof(jmpCodeTemplate); \ ^~ D:\Develop\work\mockcpp\src\JmpCode.cpp:34:28: error: cast from 'const void*' to 'long unsigned int' loses precision [-fpermissive] SET_JMP_CODE(m_code, from, to); ^~~~ D:\Develop\work\mockcpp\src\JmpCodeX86.h:23:48: note: in definition of macro 'SET_JMP_CODE' (unsigned long)to - (unsigned long)from - sizeof(jmpCodeTemplate); \ ^~~~ make[2]: *** [src\CMakeFiles\mockcpp.dir\build.make:1160: src/CMakeFiles/mockcpp.dir/JmpCode.cpp.obj] Error 1 make[1]: *** [CMakeFiles\Makefile2:115: src/CMakeFiles/mockcpp.dir/all] Error 2
Maybe because the pointer is 8 bytes, not 4 bytes.