私はDEC BASIC、A.K.Aを含むいくつかのプロジェクトを引き継ぎようとしています。 VAX BASIC、A.K.A.アルファBASIC。私は本当にここで経験を持つ人に遭遇したいと思っています。私はVAX/Alpha BASICのユーザーマニュアルを通り抜けましたが、共有可能なコードをデバッグする方法を理解することはできません。OpenVMS用のAlpha BASICのデバッグ
共有可能なコードを作成、コンパイル、リンクすることはできますが、共有可能なコードを参照するコードはデバッグできますが、共有可能なコードはデバッグできません。どんな助けでも大歓迎です。
私はコンパイルとリンクするために使用していますコマンドは次のとおりです。2つのオプションファイルの
$ BASIC/DEBUG/NOOPTIMIZE COMPARE_DATES_TEST.BAS,COMPARE_DATES.BAS
$ LINK/SHAREABLE/DEBUG COMPARE_DATES.OBJ,COMPARE_DATES_SUB/OPT
$ LINK/DEBUG COMPARE_DATES_TEST,COMPARE_DATES_MAIN/OPT
$ RUN COMPARE_DATES_TEST
内容は以下のとおりです。
$ type COMPARE_DATES_SUB.OPT
! COMPARE_DATES_SUB.OPT
SYMBOL_VECTOR=(COMPARE_DATES=PROCEDURE)
$ type COMPARE_DATES_MAIN.OPT
! COMPARE_DATES_MAIN.OPT
COMPARE_DATES/SHAREABLE
私の共有可能なコードはバグがありますが、私はしないでください
コメントのためにあまりにも長い— SRC: module COMPARE_DATES_TEST$MAIN -scroll-source————————————————————————————
1: EXTERNAL INTEGER FUNCTION COMPARE_DATES(STRING,STRING)
2: DECLARE STRING A$, B$
3: A$ = "01-APR-18"
4: B$ = "15-MAY-2017"
5:
-> 6: PRINT COMPARE_DATES(A$, B$)
7: END
— OUT -output———————————————————————————————————————————————————————————————————
stepped to COMPARE_DATES_TEST$MAIN\COMPARE_DATES_TEST$MAIN\%LINE 3
stepped to COMPARE_DATES_TEST$MAIN\COMPARE_DATES_TEST$MAIN\%LINE 4
stepped to COMPARE_DATES_TEST$MAIN\COMPARE_DATES_TEST$MAIN\%LINE 6
%BAS-F-SUBOUTRAN, Subscript out of range
-BAS-I-FROFUN, In external function COMPARE_DATES
-BAS-I-FROMOD, In module COMPARE_DATES_TEST
break on unhandled exception preceding 18446744071563830960
— PROMPT -error-program-prompt——————————————————————————————————————————————————
%DEBUG-I-SOURCESCOPE, source lines not available for %PC in scope number 0
Displaying source for 6\%PC
DBG>
デフォルトでは、共有可能イメージは 'Sys $ Share:'から読み込まれます。ファイルが置かれている場所ですか、またはローカルのデバッグイメージを指す論理名を作成していますか? (Ref 5.4節[こちら](http://h41379.www4.hpe.com/doc/84final/4538/4538pro_011.html)) – HABO
私は論理的な "DEFINE COMPARE_DATES DRIVE:[FOLDER] COMPARE_DATES.EXE"を追加しました –
デバッガは通常、ブレークポイントで停止したときにソースコードを表示します。ここでは "未処理の例外"です。しかし、デバッガはソースを見つけることができないと報告します。通常、デバッガは正しいです。 – user2116290