On 30/09/2016 08:19, Leon Mlakar wrote:
Having multiple VS versions is my problem?
Looks like it ... if Chis is right about the code origin, it could. Just took a quick look at xmemory0 header of VS20013 and yeah, it could have produced such code after preprocessing. Just how exactly it ended up in VS2005 build is anybody's guess.
Removing VS2013 ought to help, but make sure there are no files left lingering around. Better yet, do you have a possibility of setting up a virtual machine with with just VS2005 installed? Such clean environment would eliminate most variables.
Since you said that it compiles correctly in a new solution but not in your intended one, it has to be a project setting. Check your include paths (in particular, check the Command Line tab under C/C++ Compiler, which shows the inherited and expanded paths as well) and make sure that it's not pulling in anything from different VS versions. If your project is sometimes compiled with other versions of VS, then perhaps also check if someone has hard-coded the full path to a VS2013 or similar header file instead of using relative paths as normal. (This'd be unusual, but you never know.) This is less likely if you tested the old and new solutions on the same PC, but in case you did test them on different PCs or different VS versions, then also check the VC++ Directories in the Options and the INCLUDE environment variable (if it exists, which is rare).