実行時のエラー メッセージのフォーマット

実行時のエラーメッセージフォーマットを理解するために、この短いプログラム printsum.m を考えてみましょう。

     SET A=17
GO   SET B=21
     WRITE A+C

変数Cが定義されていないので、このプログラムを実行しようとすると、最後のステートメントはエラーを発生します。 もし $ETRAP="B" ならば、GT.Mは実行時のエラーメッセージを表示します:

$ mumps -run printsum
%GTM-E-UNDEF, Undefined local variable: C
At MUMPS source location GO+1^printsum
GTM>

GT.Mは、エラー(未定義のローカル変数)と、ルーチンのどこでエラーが発生したか( GO+1 )を通知します。 ランタイムシステムは、プロセスがダイレクトモードに入ったことを示す GTM> プロンプトが表示していることに、注意してください。 GT.M は、固有の特殊変数 $ECODE と$ZSTATUSの中に、実行時エラーの情報を置きます。

コンパイル時のエラーメッセージは、実行時に表示します。これは、その後実行時に報告されるエラーが残っている、間接参照とコンパイルとして書かれる(compile-as-written)機能で、エラーとなるためです。

GT.Mユーティリティは、ランタイムシステムの一部を使用するので、したがって、実行時エラーだけでなく、それら独自のエラーを発行することができます。

inserted by FC2 system