我正在编译一个已知可以ifort
使用 using编译的程序gfortran
。但是编译失败就行了
WRITE (11,1325) ((IFILE,FILENAME(IFILE)),IFILE=1,IFILES)
编译错误:
main_file.f:205.32:
WRITE (11,1325) ((IFILE,FILENAME(IFILE)),IFILE=1,IFILES)
1
Error: Expected PARAMETER symbol in complex constant at (1)
make: *** [main_file.o] Error 1
将此行更改为(注意删除“(”和“)”)
WRITE (11,1480) (IFILE,FILENAME(IFILE),IFILE=1,IFILES)
匹配下一行
1480 FORMAT (1X,I1,' ',A40)
解决了这个问题,但我想知道是否有人知道为什么英特尔编译器没有捕获这个错误。在这种情况下,似乎gfortran
哪个给出了正确的行为。我的编译标志是:
gfortran -fno-automatic -mcmodel=medium -O2 -ffast-math main_file.o -o main_file