プリプロセッサがソース コードを処理している間にエラーが発生した場合は、ユーザーに表示するメッセージのテキストを返します。
このメッセージは、WARNING および ERRQ 指令に従って、他のコンパイラ メッセージと同じ方法で表示されます。また、ソース コード内でハイライト表示されます。
エラーを生成するためには、エラーとなったソース行をプリプロセッサが渡す必要があります。エラー メッセージは次の設定で渡されます。
resp-main | 17 |
resp-more | 重大度を示す値 |
1 | 情報 |
2 | 警告 |
3 | エラー |
4 | 重大なエラー |
値 | 重大度 |
---|---|
buffer | メッセージの内容。メッセージテキストが文字列 OFFSETnnn (大文字と小文字を区別) と 1 つの空白文字で始まる場合は、nnn で示すエラーの位置にはフラグがつけられています。nnn は 3 バイトの数値です。この文字列はメッセージの一部としては表示されません。 |
1 | 回復不能なエラー |
2 | 重大なエラー |
3 | エラー |
4 | 警告 |
5 | 情報 |
6 | フラグ カウント |
関数 resp-main=17 は 1 行以上のユーザーのソース行がプリプロセッサによってチェッカーに返されたときにのみ使用します。
エラー状態を処理する古い方法は今でも使用可能です。この方法では、プリプロセッサがエラー メッセージの実際の表示を行う必要があり、十分には統合されていません。このため、この方法はお勧めしません。
プリプロセッサがソース コードを処理している間にエラーが発生した場合は、エラーをコンパイラに通知することで、エラーを構文エラーとして扱うことができます。これを行う方法は 2 つあります。
resp-more の値は、エラーが検出された列番号を示します。この値は、エディターに制御が戻った際のカーソルの位置決定に使用されます。
また、上記の 2 つの処理のうちの 1 つに関連して、コンパイラにその内部エラー カウントを増加させることができます。これは、resp-main を 7 に設定し、resp-more でどのエラー カウントを増加させるかを指定することによって行います。resp-more の値は次のとおりです。
値 | 重大度 |
---|---|
1 | 回復不能なエラー |
2 | 重大なエラー |
3 | エラー |
4 | 警告 |
5 | 情報 |
6 | フラグ カウント |
回復不能なエラーのカウントを増加させると、コンパイラはただちに終了します。buffer の内容は無視されます。
コンパイラを終了させたり、エラー カウントを増加させる前に、ユーザー側にエラー メッセージを出力する処理を、プリプロセッサで実行する必要があります。このエラー メッセージは、リスト ファイルに挿入できる情報メッセージとは区別してください。