我想用gfortran編譯一些舊的fortran77程序,並獲得可分配數組的錯誤。 如果我定義F90風格的數組,如:fortran 77和gfortran中的可分配數組
REAL*8,allocatable::somearray(:)
一切都很好,但在那些舊的程序數組定義爲:
REAL*8 somearray[ALLOCATABLE](:)
造成gfortran錯誤輸出:
REAL*8,allocatable::somearray[ALLOCATABLE](:)
1
Fatal Error: Coarrays disabled at (1), use -fcoarray= to enable
我真的希望避免將整個程序重寫爲f90風格,所以,請你告訴我,有沒有辦法強制gfortran編譯它? 非常感謝。
Allocatable數組是Fortran 90的一個特性。您顯示的代碼中導致錯誤的語法既不是Fortran 77,也不是Fortran 90. – IanH
這完全是非標準的,我甚至不會調用Fortran。 –
gfortran認爲[]表示聯合陣列,這是f90或f95特徵。但我根本不使用聯合數組。有沒有辦法強制gfortran只使用f77語法? 所有這些程序都使用f77標準,並使用未知編譯器編譯。他們都像我上面描述的那樣使用數組定義。 – iMisanthrope