我们有一个用Fortran 90编写的复杂程序,我只能找到Fortran 95编译器。不幸的是,我的访问权限和经验有限,但需要立即了解问题。
使用Fortran 95编译器(如gfortran ),Fortran 90代码是否总是正确编译?
发布于 2012-10-30 00:20:00
Fortran版本是向后兼容的,可能会出现故障。在Fortran95标准中,有一些非常(理所当然)模糊的结构最终被删除了:例如,从this page中删除
Fortran Fortran 95表示以下
90和FORTRAN 77功能已被删除:
但是除非你的代码使用这些(它不应该),否则你应该可以使用F95;否则,大多数F95编译器仍然会有一种模式,你可以用它来编译旧的代码,例如-std=legacy
。
发布于 2012-10-30 00:18:57
Fortran编译器( IBM除外)是向后兼容的。所以任何有效的F90代码都可以在F95编译器上编译。
IBM做事情的方式不同,它们似乎是向前兼容的。所以xlf
将编译77以上,而xlf90
将编译90/95,以此类推。
注意,always是一个很强势的词。这真的取决于你的编译器制造商。尽管有时对F2003/2008的支持参差不齐,但GNU Fortran或英特尔Fortran目前只有一个适用于所有Fortran风格的编译器。
https://stackoverflow.com/questions/13125468
复制相似问题