当我尝试使用以下模块编译源代码时遇到问题:英特尔 Visual Fortran 编译器会显示运行时错误,说明
error#8169: 未声明指定的接口。[FUNCTION_TEMPLATE] 第 15 行
而 Portland Visual Fortran 编译器可以在不发出任何警告的情况下运行它。怎么了?
01 MODULE toolbox
02 IMPLICIT NONE
03 ABSTRACT INTERFACE
04 FUNCTION function_template(x) RESULT(y)
05 IMPLICIT NONE
06 REAL, DIMENSION(:) :: x
07 REAL, DIMENSION(SIZE(x)) :: y
08 END FUNCTION function_template
09
10 FUNCTION penalty_template(x,fvec_p,proc_p) RESULT(y)
11 IMPLICIT NONE
12 REAL, DIMENSION(:) :: x
13 REAL, DIMENSION(:), POINTER :: fvec_p
14 REAL :: y
15 PROCEDURE(function_template), POINTER :: proc_p
16 END FUNCTION penalty_template
17 END INTERFACE
18 CONTAINS
19 ...
20 END MODULE toolbox