装置番号が未定義の場合のエラー

gfortranでコンパイルしたFortranのコードを実行していて、

Fortran runtime error: Bad unit number in OPEN statement

というエラーになった。エラー発生箇所を調べると、どうやら

iuto = 6
write(iuto, *) ...

となるべきところが、

iuto = 6
write(ituo, *) ...

となっていたかららしい。単純なバグなのだが、コンパイラによってはこのままでも実行時エラーにならない。変数ituoが未定義のまま実行された場合、未定義変数の値は0となるらしく

write(0, *) ...

としてくれるため、こうすると標準エラー出力にwriteしてくれる。でも、gfortranでは残念ながらエラーになる。