Fortran 固有の解析

ソースチェッカーでは、 次の問題を 検出できます。

次に、Fortran 固有の解析例を示します。

例 1: 未定義の関数結果

f1.f ファイルには、次の コードが含まれています。

1 subroutine foo(m)

2 integer, dimension(2,3) :: m

3 do i=1,3

4 print *,m(:,i)

5 end do

6 end

7 integer, dimension(3,2) :: n

8 do i=1,2

9 n(:,i) = i

10 end do

11 call foo(n)

12 ! shapes of argument #1 and dummy argument are different.

13 do i=1,2

14 print *,n(:,i)

15 end do

16 end

ソースコードの解析で次のメッセージが発行されます。

f1.f(11): エラー #12028: "FOO" の呼び出しで、実引数 1 の形状と仮引数 "M" の形状が一致しません。"FOO" はファイル:f1.f、行:1 で定義されています。