在编译时使用Fortran函数强制进行强类型检查

时间:2019-05-23 19:46:02

标签: fortran

我正在帮助翻新Fortran中的旧代码库,该库具有函数/子例程的接口定义。

我面临的问题是其中一些接口与实际的函数定义不同步,并且编译器(silverfrost)在编译时无法捕获这些接口。这会导致运行时错误。

忽略我现在正在使用的特定编译器,Fortran是否有一种无需重复函数定义即可进行处理的方法?例如,在C#,Java等中,我可以声明一个函数并从项目中的其他位置调用它,并且编译器确保调用方和目标函数兼容。

GNU Fortran或Intel Fortran编译器是否使它不那么脆弱?

1 个答案:

答案 0 :(得分:4)

如果将过程放入MODULE中并使用MODULE,则编译器将检查是否使用正确的参数调用了过程。