I'm trying to port some code from x86 to x64. It's a rather large code base and has survived from Visual Studio 2010. I recently ported it to Visual Studio 2019 and it build and operates fine but when I change to x64 atlcore.h refuses to compile and complains of redefinition issues and return types not matching even when they do. Anyone understand why changing to x64 would cause this to change?
I get errors such as:
Error (active) E0120 return value type does not match the function type C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\atlmfc\include\atlcore.h 290
Error (active) E0144 a value of type "HINSTANCE" cannot be used to initialize an entity of type "HINSTANCE" C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\atlmfc\include\atlcore.h 407
Error (active) E0311 cannot overload functions distinguished by return type alone C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\atlmfc\include\atlcore.h 447