I have a C++ project in Visual Studio 2022, which creates a .dll which calls a function created by the MASM assembler. The assembler - ml64 - however does not consider a single .inc file, and so fails with a error LNK2019: unresolved external symbol error.
I have one file, Core.asm which links to V.inc which in turn links to V_Constants.inc. The files are linked together using include, so Core.asm has include V.inc, which in turn has include V_Constants.inc.
Initially this worked well, however when I changed Core.asm in a trivial way, everything stopped. I can empty the file to rule out any weird syntax errors and I get the same.
Changing the output to show what it is doing (as much as possible, by removing the /nologo command line) shows that the assembler is missing out V.inc, yet including everything else.
What could possibly stop ml64.exe from ignoring a file? Is it possible to force the assembly?
Interestingly if I rename V.inc I get a cannot open file: v.inc error. So it knows to include this file, yet it doesn't want to assemble it.