我正在帮助翻新Fortran中的旧代码库,该库具有函数/子例程的接口定义。
我面临的问题是其中一些接口与实际的函数定义不同步,并且编译器(silverfrost)在编译时无法捕获这些接口。这会导致运行时错误。
忽略我现在正在使用的特定编译器,Fortran是否有一种无需重复函数定义即可进行处理的方法?例如,在C#,Java等中,我可以声明一个函数并从项目中的其他位置调用它,并且编译器确保调用方和目标函数兼容。
GNU Fortran或Intel Fortran编译器是否使它不那么脆弱?
答案 0 :(得分:4)
如果将过程放入MODULE中并使用MODULE,则编译器将检查是否使用正确的参数调用了过程。