Suppose I have a file test.f90
(free-form code) that includes some other file foo.h
(fixed code).
The two didn't work well together because they have different comment styles, so I put a preprocessor directive !DIR$ NOFREEFORM
at the top of the foo.h
source code, which tells Intel's Fortran Compiler ifort
to interpret that file as fixed-form source code.
Unfortunately, the rest of my code in test.f90
gets errors that indicate ifort
is interpreting it as fixed-form rather than free-form code.
I haven't rigorously checked, but is it possible that the preprocessor directive in foo.h
is causing ifort
to interpret the code in test.f90
as fixed-form? I didn't think this was possible because ifort
treats each included file as a separate compilation, rather than just copy-pasting the code.