Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.
29376 Discussions

IVF 12.4.196 Doesn't "Build" All Necessary Files?

Nick2
New Contributor I
482 Views
This is a strange thing, I don't think I've seen it with IVF 11.

Basically, on a Win7 machine, I use a differencing utility to update any necessary.FOR files in my build folder. Then I build my Fortran solutions.

I've noticed with Debug builds, it will complain that such and such subroutine calling some other subroutine has an error because of mis-matched arguments (mainly, it complains that the array size of the arguments is different between the two subroutines, or something to that effect).

Then I force both the called and then the calling subroutine to be compiled, and after that IVF will compile a few more subroutines, and either give me another similar error, or successfully build the solution.

I've also caught a crash recently that points to a divide-by-zero exception on a IF(A.GT.1)THEN line...this was with a Release build.

This leads me to believe thatIVF is not properly picking up on which FOR files need to be built...has anyone else experienced this, and short of a rebuild - can I do anything else?
0 Kudos
1 Reply
Steven_L_Intel1
Employee
482 Views
First , the argument mismatch errors can happen if you change the source for as procedure that changes its interface and generated interface checking is enabled. The VS build system doesn't take generated interfaces into account when deciding on build order so if it recompiles the caller before recompiling the called routine, you can get such errors. If you do a "rebuild" rather than a "build", this would clear the generated modules but you probably would prefer a minimal build.

The zerodivide error is something else entirely, and would need more investigation.
0 Kudos
Reply