少し助けが必要です:this siteによると、継続行の最大数に制限があります。gfortran継続行の最大数
私はこれをテストすることにしました。私はジャンボを書いたFUNCTION
ここでは17,146の継続行に分割されたステートメントで表現された巨大な代数式を計算します。
!test.f90 1.6 MB file
DOUBLE COMPLEX FUNCTION myfunction(a, b)
DOUBLE COMPLEX, INTENT(IN) :: a
DOUBLE COMPLEX, INTENT(IN) :: b
myfunction = gd0/16.d0)*a*b*((a+b)**2)*((32.d0*DCONJG(f(4)))+(12&
&8.d0*DCONJG(f(11)))+(160.d0*DCONJG(f(24)))+(64.d0*DCONJG(f(46)))+(32.d0*DCONJG(f(3)))+(256.d0*DCON&
&JG(f(10)))+(480.d0*DCONJG(f(23)))+(256.d0*DCONJG(f(45)))+(32.d0*DCONJG(g(9)))+(128.d0*DCONJG(f(&
&9)))+(480.d0*DCONJG(f(22)))+(384.d0*DCONJG(f(44)))+(96.d0*DCONJG(g(21)))+(160.d0*DCONJG(f(21)))+(2&
&56.d0*DCONJG(f(43)))+(64.d0*DCONJG(g(42)))+(64.d0*DCONJG(f(42)))+(64.d0*DCONJG(f(8)))+(192.d0*DCON&
& (64.d0*DCONJG(g(42)) ! and so on and so forth...
END FUNCTION
私はgfortran -c test.f90
で、この醜態をコンパイルし、それはエラーや警告なしで、5分後に11.4メガバイトtest.o
ファイルを返されました。私はそれを実行し、それは正しい結果を返しました。
gfortran
は最大継続行規則を遵守していないのはなぜですか?
-std = f95 -pedanticのようなオプションでも診断する必要はありません。 – tim18
@ tim18申し訳ありません。私はあなたが意味することを理解していません。私の質問はこのサイトには不適切だと言っていますか? – QuantumDot
彼は、[-pedanticオプション](https://gcc.gnu.org/onlinedocs/gfortran/Error-and-Warning-Options.html#Error-and-Warning-Options)でも警告が表示されないメッセージ。私は個人的には分かりません。 –