すべてのサブルーチンで SAVE を前提とする Compaq コンパイラを使用して、Fortran 77 で以前に書かれた大きなソフトウェア パッケージがあるため、コード内に明示的な SAVE を持つサブルーチンはありません。
Linuxでgfortranを使用して動作させるには、再利用して変更する必要がありました。Gfortran は実際には f90 コンパイラですが、いくつかの最小限の変更と追加のフラグだけで動作しました。ただし、欠落している SAVE ステートメントに問題があります。一部の共通構造体は保存されていませんが、一部は保存されており、プラットフォーム (Windows/Linux) と gfortran のバージョンに依存しているようです。
フラグ -fno-automatic を試しましたが、一部の COMMON ブロックはまだ保存されていません。man ページにあるように、-fno-automatic は COMMON ブロックには影響しません。
gfortranを使用してすべてのサブルーチンでSAVEを強制するにはどうすればよいですか? すべてのサブルーチンを変更することは避けたいと思います。
ありがとうございました。