我继承了使用fpx3
进行预处理的10K行Fortran代码。此时我应该说我没有太多的Fortran经验,这是我第一次处理具有预处理器的代码。
代码工作正常,但预处理运行时,会创建不保留行总数的辅助Fortran文件(例如,main.f90
创建t.main.f90
)。当然,原因是在预处理(IF-ELSE子句,预处理指令等)时会丢失一些代码。
这很好,除了当我在代码中遇到错误时,我从错误中得到的行号是指预编译的代码(例如,t.main.90
)而不是原始代码。 / p>
这不是一个主要问题,但对于几乎所有的bug我必须检查一行(比如t.main.f90
的第80行)并手动尝试找到原来的这一行(让我们说它最终是main.f90
的第92行。我试图通过告诉fpx3
对未使用的行进行评论而不是将其丢弃来试图找到解决方法,但我在fpx3
在线找不到太多信息。
最好的解决方法是什么?
P.S。:我不知道它是否重要,但我正在使用ifort
进行编译。
答案 0 :(得分:0)
尝试-fixed为.f90文件假定为-free(自由格式),并且已修复保留前几列和第6列中的延续。
如果右侧有数字,那么不是-132,而是-72或-80。不包括数字为"可编辑"码。我使用-132,所以你必须查找正确的开关。