Thanks for your replies.
On Microsoft Visual studio Developer Community site this I got as the reply on the same issue:
-------------------------------------------
Solution by Lars Wood29. 9. 2017 01:42:00
The reason this happens is that Microsoft changed the format of the debug information created when building a .obj file in this release and so if you have .asm files, for example, that were built with an old version of masm, for example, or if these object files or likewise were built with the old format using some other tool presumably and in any event are part of a library then the linker generates this error. so for example if this file, in the example below, is built with an older masm and the object file then becomes part of a library, when the library is linked into an .exe or .dll file you get the link error (but not before you link into a .dll or .exe).
..\masm611\bin\ml /Zi /Zf /Zd /coff /c /Fo "%(Filename)"_dbg_info.obj "%(FullPath)"
by removing switches that create .obj debug info the problem goes away. Reassemble, rebuild the library and re-link application.
..\masm611\bin\ml /coff /c /Fo "%(Filename)"_no_dbg_info.obj "%(FullPath)"
In summary, the problem is the old debug info format that goes into a .obj file is not compatible with the new .obj debug info format. The .obj files with the incompatible debug format lurk inside library files. The problem only presents itself when the library file is linked into an application. The solution is to rebuild the .obj file and then relink the library and then link the application into a .exe or .dll etc. If you are linking against an old library file an incompatible .obj may be lurking within it. Either update to the most resent library files or if the library files are your own rebuild with up to date compiler or assembler generating the new .obj debug info format. If you are using an old assembler simply turning off the switches that build the .obj with the incompatible debug information will fix the problem. No error or warning is given until you link the library containing the incompatible .obj debug into a .dll or .exe file. The problem is in the .obj files with bad debug info, disabling debug info generation when building the .obj with the older compiler or assembler also solves the problem. I doubt that Microsoft will change or fix this (the complexity required is not worth it) since it would mean they would need to support two .obj debug info formats, i.e. the old format and the new format. Note the linker when generating the error at .dll or .exe link time tells the name of the offending .obj file lurking within a problem library.
------------------------------------------------------------------------------------
The VS 2017 Preview suppose to solve this, but still It looks like a new debug format is in use since VS 2017.3 I guess.
Regards