「実際にはうまくデバッグされていない」という警告を削除するのWRITEに PRINT十分なものです。
約 20 の構文エラー呼び出しが、列挙型を引数として取るg95_error 新しいg95_syntax_errorサブルーチンへの呼び出しに変更されました。g95_statement
CALLステートメントをパーサーに 追加しました。これg95_match_actual_arglistには、サブルーチン呼び出しで可能な代替戻りラベルを変更できるようにするために、いくつかの変更が必要でした。J3 はこれらを取り除くべきでしたが、整数値を返す「サブルーチン」を通じて処理します。の直後に、ケース内のステートメントをCALL含むステートメントを生成し、バックエンドに整理させます。見たところ、比類のないステートメントはそれほど多くありません。に開始しました。 SELECTGOTOdecode_statementCOMMON
4月28日
Niels Jensen は、複数の g95_code 構造を持つステートメントを上書きするバグを発見しました。修理済み。
今日、キャサリン・ホルコムと固有関数について話しました。彼女は、Niels Jensen から送信されたパッチを適用して、intrinsic.c の些細な問題を修正しました。彼女はまた、他のマイナーな変更を行い、いくつかの商用コンパイラを比較およびテストする きちんとしたfortran ページへのリンクを送信しました。
4月27日
PRINT、 、READおよび WRITEステートメントについて、今夜 さらに作業を行いました。まだテストしていない暗黙のループを除いて、それらは機能しているようです。今夜の作業の多くは、コード構造を生成するのに役立つ関数を追加することでした。 おそらくヘッドg95_append_codeにコード構造のブロックを追加するのに役立ちます。NULL
g95_io_pointerは、式ノードを取り、ランタイム IO サブルーチンへのポインターを渡す適切なランタイム関数への呼び出しノードを生成する新しい関数です。現時点では非常に洗練されていません。複素数も派生型も処理できません。定数および非変数式の場合、中間ストアも生成する必要があります。
Katherine Holcomb さんは、組み込み関数とサブルーチンの名前が入力された、intrinsic.c のコピーを送信しました。彼女は、合計で 162 の関数/サブルーチン名があると述べています。見栄えがよく、正常にコンパイルされます。新しいintrinsic.cはソースページにあります。
Niels Jensen は昨日、Makefile を大幅にクリーンアップする (適用された) パッチと、arith.c のいくつかのテスト値を IEEE fp 制限に置き換えたパッチを送信しました。彼はまた、gmp ベースの arith.c を gcc のホスト算術エミュレーションを使用するものに変換する仕事を引き受けることも検討しています。
I/O ライブラリと浮動小数点エミュレーションについて、舞台裏で 2 つの議論が行われています。メーリング リストを作成することの優先度が高まっています。詳細については、こちらをご覧ください。
4月25日
今日はたくさんのメールがありますが、コードはそれほど多くありません。貢献ページを更新して、人々が取り組んでいるプロジェクトを反映させました。
Jos Bergervoet は、HP-UX 11 の下で HP RISC プロセッサ上でコンパイルが成功したことを報告するために書き込みました。
Niels Kristian Bech Jensen は、失敗を報告するために次のように書いています。
PRINT *, ‘Hello World.’
明らかにデバッグが必要です。私自身のコードでは、 WRITE(6,*)あらゆる場所でステートメントを使用する傾向がありますが、スタイルを変更してより単純なPRINT.
Katherine Holcomb は、固有の名前とサブルーチンの入力を終了し、現在、物事をチェックし、物事を少し整理していると書いています。
Toon Moene さんは、aが期待されるNULLエラー出力ルーチン内でポインタ を渡すことに関連する不可解な問題について書いてい ます。va_listこれは回避されました。
今日、他のコンパイラで g95 をコンパイルするのを少しいじりましたが、時間を無駄にしていることに気付きました.g95 を gcc バックエンドとリンクする場合は、gcc フロントエンドが利用可能です。