forall 内の局所変数が漏れる
Intel fortran v.17, v.18 で以下のコードをコンパイルすると、一回目の forall で宣言した局所変数 i が、二回目以降の forall の中でなぜか生きていて、重複宣言だと言って叱られます。二回目以降で forall 内の integer :: を落とせば動きます。
一応、forall の外ではちゃんとスコープ外として扱われます。
intel fortran v.19 beta では直っていました。
エラー エラー #6418: この名前にはデータ型がすでに割り当てられています。 [I] D:\Projects\hello\Console6\Console6.f90 7
program forall implicit none integer :: m(100) forall(integer :: i = 1:100) m(i) = i**2 ! print *, i print *, m forall(integer :: i = 1:100) m(i) = i print *, m end program forall
Modern Fortran Explained (Numerical Mathematics and Scientific Computation)
- 作者: Michael Metcalf,John Reid,Malcolm Cohen
- 出版社/メーカー: Oxford University Press, U.S.A.
- 発売日: 2011/05/08
- メディア: ペーパーバック
- この商品を含むブログを見る
あいまいみー 8 (バンブーコミックス WINセレクション)
- 作者: ちょぼらうにょぽみ
- 出版社/メーカー: 竹書房
- 発売日: 2018/02/07
- メディア: コミック
- この商品を含むブログを見る
あいまいみー (1) (バンブーコミックス 4コマセレクション)
- 作者: ちょぼらうにょぽみ
- 出版社/メーカー: 竹書房
- 発売日: 2014/02/14
- メディア: Kindle版
- この商品を含むブログを見る