JPH0239331A - デバッグ文生成装置 - Google Patents
デバッグ文生成装置Info
- Publication number
- JPH0239331A JPH0239331A JP63190012A JP19001288A JPH0239331A JP H0239331 A JPH0239331 A JP H0239331A JP 63190012 A JP63190012 A JP 63190012A JP 19001288 A JP19001288 A JP 19001288A JP H0239331 A JPH0239331 A JP H0239331A
- Authority
- JP
- Japan
- Prior art keywords
- debug
- source program
- source
- statement
- program
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 abstract description 9
- 239000000284 extract Substances 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 6
- 238000007796 conventional method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、プログラム実行時にデバッグ情報を自動的に
出力するデバッグ文自動生成装置に関する。
出力するデバッグ文自動生成装置に関する。
本発明は、プログラムを実行させてデバッグを行うとき
にデバッグ情報を収集する手段において、コンパイル時
にデバッグオプションが指定された範囲内でデバッグ文
を作成することにより、プログラム実行時にデバッグ情
報を自動的に出力することができるようにしたものであ
る。
にデバッグ情報を収集する手段において、コンパイル時
にデバッグオプションが指定された範囲内でデバッグ文
を作成することにより、プログラム実行時にデバッグ情
報を自動的に出力することができるようにしたものであ
る。
プログラムを実行させてデバッグを行うときに、デバッ
グ情報を収集する従来方法としては、(1)ソースプロ
グラム中にデバッグ情報を収集する文を挿入する方法、 (2)デバッガでプログラムを中断させ、そのときにデ
バッグ情報を収集する方法 とがある。
グ情報を収集する従来方法としては、(1)ソースプロ
グラム中にデバッグ情報を収集する文を挿入する方法、 (2)デバッガでプログラムを中断させ、そのときにデ
バッグ情報を収集する方法 とがある。
このような従来方法のうち、(1)の方法では、文の挿
入に手間がかかるとともにソースを年修正する際にプロ
グラムのロジックを誤って破壊する欠点がある。また、
(2)の方法では、デバッガがサポートされてないコン
ピュータや、アドレスに基づくデバッグを行うデバッガ
でサポートされるコンピュータでは、高級言語の知識し
かない利用者にとってはデバッグ効率が著しく低下する
欠点がある。
入に手間がかかるとともにソースを年修正する際にプロ
グラムのロジックを誤って破壊する欠点がある。また、
(2)の方法では、デバッガがサポートされてないコン
ピュータや、アドレスに基づくデバッグを行うデバッガ
でサポートされるコンピュータでは、高級言語の知識し
かない利用者にとってはデバッグ効率が著しく低下する
欠点がある。
本発明はこのような欠点を除去するもので、プログラム
実行時にデバッグ情報を自動的に出力することができる
デバッグ文生成装置を提供することを目的とする。
実行時にデバッグ情報を自動的に出力することができる
デバッグ文生成装置を提供することを目的とする。
本発明は、デバッグ情報文が含まれるソースプログラム
を格納する格納手段と、与えられたデバッグオプション
を解析し、デバッグ情報文を収集するソースプログラム
の名前およびこのソースプログラム内のデバッグ情報文
を収集する開始位置および終了位置を示す行番号を抽出
するオプション読込手段と、このオプション読込手段で
抽出された名前に一致するソースプログラムを上記格納
手段から抽出するソース読込手段と、このソース読込手
段が抽出したソースプログラムが上記オプション読込手
段で抽出した行番号の間に存在するか否かをfIi認す
る行番号読込手段と、この行番号読込手段で確認された
ソースプログラムが実行文か否かを確認するデバッグ文
生成判定手段と、このデバッグ文生成判定手段で実行文
であることが確認されたソースプログラムに基づきデバ
ッグ情報文を生成するデバッグ情報文生成手段とを備え
たことを特徴とする。
を格納する格納手段と、与えられたデバッグオプション
を解析し、デバッグ情報文を収集するソースプログラム
の名前およびこのソースプログラム内のデバッグ情報文
を収集する開始位置および終了位置を示す行番号を抽出
するオプション読込手段と、このオプション読込手段で
抽出された名前に一致するソースプログラムを上記格納
手段から抽出するソース読込手段と、このソース読込手
段が抽出したソースプログラムが上記オプション読込手
段で抽出した行番号の間に存在するか否かをfIi認す
る行番号読込手段と、この行番号読込手段で確認された
ソースプログラムが実行文か否かを確認するデバッグ文
生成判定手段と、このデバッグ文生成判定手段で実行文
であることが確認されたソースプログラムに基づきデバ
ッグ情報文を生成するデバッグ情報文生成手段とを備え
たことを特徴とする。
当該プログラム名、デバッグ開始行番号、デバッグ終了
行番号のデバッグオプションを解析する。
行番号のデバッグオプションを解析する。
ソースプログラムがこのデバッグオプションと一致する
か否かを確認し、かつソースプログラムの文を読み込む
。デバッグオプションのデバッグ開始行番号とデバッグ
終了行番号に読み込んだソースプログラム文が該当する
か否かを確認する。その読み込んだソースプログラム文
が実行文か否かを判定する。実行文であった場合に、当
該文の変数の型にあったデバッグ情報文を生成する。
か否かを確認し、かつソースプログラムの文を読み込む
。デバッグオプションのデバッグ開始行番号とデバッグ
終了行番号に読み込んだソースプログラム文が該当する
か否かを確認する。その読み込んだソースプログラム文
が実行文か否かを判定する。実行文であった場合に、当
該文の変数の型にあったデバッグ情報文を生成する。
以下、本発明の一実施例を図面に基づき説明する。第1
図はこの実施例の構成を示すブロック構成図である。
図はこの実施例の構成を示すブロック構成図である。
この実施例は、第1図に示すように、プログラム名読込
処理手段1と、ソース読込処理手段2と、行番号読込処
理手段3と、デバッグ文生成判定処理手段4と、デバッ
グ文生成処理手段5と、オブジェクト生成処理手段6と
、ソースプログラム格納手段10とから成る。すなわち
、この実施例は、デバッグ情報文が含まれるソースプロ
グラムを格納する格納手段であるソースプログラム格納
手段10と、与えられたデバッグオプションを解析し、
デバッグ情報文を収集するソースプログラムの名前およ
びこのソースプログラム内のデバッグ情報文を収集する
開始位置および終了位置を示す行番号を抽出するオプシ
ョン読込手段であるプログラム名読込処理手段1と、こ
のオプション読込手段で抽出された名前に一致するソー
スプログラムを上記格納手段から抽出するソース読込手
段であるソース読込処理手段2と、このソース読込手段
が抽出したソースプログラムが上記オプション読込手段
で抽出した行番号の間に存在するか否かを確認する行番
号読込手段である行番号読込処理手段3と、この行番号
読込手段で確認されたソースプログラムが実行文か否か
を確認するデバッグ文生成判定手段であるデバッグ文生
成判定処理手段4と、このデバッグ文生成判定手段で実
行文であることが確認されたソースプログラムに基づき
デバッグ情報文を生成するデバッグ情報文生成手段であ
るデバッグ文生成処理手段5とを備える。
処理手段1と、ソース読込処理手段2と、行番号読込処
理手段3と、デバッグ文生成判定処理手段4と、デバッ
グ文生成処理手段5と、オブジェクト生成処理手段6と
、ソースプログラム格納手段10とから成る。すなわち
、この実施例は、デバッグ情報文が含まれるソースプロ
グラムを格納する格納手段であるソースプログラム格納
手段10と、与えられたデバッグオプションを解析し、
デバッグ情報文を収集するソースプログラムの名前およ
びこのソースプログラム内のデバッグ情報文を収集する
開始位置および終了位置を示す行番号を抽出するオプシ
ョン読込手段であるプログラム名読込処理手段1と、こ
のオプション読込手段で抽出された名前に一致するソー
スプログラムを上記格納手段から抽出するソース読込手
段であるソース読込処理手段2と、このソース読込手段
が抽出したソースプログラムが上記オプション読込手段
で抽出した行番号の間に存在するか否かを確認する行番
号読込手段である行番号読込処理手段3と、この行番号
読込手段で確認されたソースプログラムが実行文か否か
を確認するデバッグ文生成判定手段であるデバッグ文生
成判定処理手段4と、このデバッグ文生成判定手段で実
行文であることが確認されたソースプログラムに基づき
デバッグ情報文を生成するデバッグ情報文生成手段であ
るデバッグ文生成処理手段5とを備える。
第2図はこの実施例の動作を示すフロー図である。この
実施例の動作を第2図に基づき説明する。
実施例の動作を第2図に基づき説明する。
まず、プログラム名読込処理手段1は与えられたデバッ
グオプションを解析し、プログラム名、行番号1および
行番号2を抽出する(ステップS1)。これにつづき、
コンパイル処理が開始される。まず、ソース読込処理手
段2でソースプログラム文を読み込み、プログラム名読
込処理手段1で抽出したプログラム名と一致するか否か
を確認する(ステップS3)。次に、行番号読込処理手
段3で行番号1と行番号2との間に読み込んだソースプ
ログラム文が該当するか否かを確認する(ステップS3
)。この条件が一致した場合にデバッグ文生成判定処理
手段4でその文が実行文か否かの確認を行う(ステップ
S4)。実行文であった場合にデバッグ文生成処理手段
5で当該文の変数の型に適合したデバッグ情報文を自動
的に生成する(ステップS5)。オブジェクト生成処理
手段6で利用者がコーディングした文と同様に翻訳して
機械語を生成する(ステップ36)。人力するソースプ
ログラムがなくなるまでこの一連の処理が繰り返される
。
グオプションを解析し、プログラム名、行番号1および
行番号2を抽出する(ステップS1)。これにつづき、
コンパイル処理が開始される。まず、ソース読込処理手
段2でソースプログラム文を読み込み、プログラム名読
込処理手段1で抽出したプログラム名と一致するか否か
を確認する(ステップS3)。次に、行番号読込処理手
段3で行番号1と行番号2との間に読み込んだソースプ
ログラム文が該当するか否かを確認する(ステップS3
)。この条件が一致した場合にデバッグ文生成判定処理
手段4でその文が実行文か否かの確認を行う(ステップ
S4)。実行文であった場合にデバッグ文生成処理手段
5で当該文の変数の型に適合したデバッグ情報文を自動
的に生成する(ステップS5)。オブジェクト生成処理
手段6で利用者がコーディングした文と同様に翻訳して
機械語を生成する(ステップ36)。人力するソースプ
ログラムがなくなるまでこの一連の処理が繰り返される
。
第3図はソースプログラムとデバッグオプションとを指
定しコンパイルした結果のオブジェクトのソースプログ
ラムイメージでデバッグ情報文がうめ込まれた状態を示
す図である。
定しコンパイルした結果のオブジェクトのソースプログ
ラムイメージでデバッグ情報文がうめ込まれた状態を示
す図である。
たとえば、デバッグオプションの指定は−DB(プログ
ラム名、行番号1、行番号2)である。
ラム名、行番号1、行番号2)である。
ここで、プログラム名は、デバッグ情報を収集したいプ
ログラムの名前(たとえばC言梧では関数名)であり、
行番号1は、プログラム名で指定したプログラム内のデ
バッグ情報を収集する開始位置を指定するものでプログ
ラム内の第1行目からの相対行番号であり、行番号2は
デバッグ情報の収集を終了する行番号であり、前述の行
番号1に対応するものである。これをコンパイル時のオ
プションとして指定する。デバッグ情報収集文はこのデ
バッグオプションを指定しないと生成されない。第3図
では−DB(main 、 6.7)としてデバッグオ
プションが指定されている。これはプログラム名mai
nの6行目から7行目までのデバッグ情報を出力するこ
とを示す。第3図下方がデバッグオプションでコンパイ
ルした後のソースプログラムイメージである。矢印が示
しているところが行番号6および7にそれぞれ対応する
デバッグ情報文であり、 printf(“main:3a CD =%dl二%
dXXn 、a [i] 、i);を実行すると、 main:3 a Ci’) =Oi=0と表示され
、プログラム名mainの3行目のa (i)の値とi
の値が変数の型にあった書式(%dすなわち10進表示
)で表示される。7行目も同様に表示される。
ログラムの名前(たとえばC言梧では関数名)であり、
行番号1は、プログラム名で指定したプログラム内のデ
バッグ情報を収集する開始位置を指定するものでプログ
ラム内の第1行目からの相対行番号であり、行番号2は
デバッグ情報の収集を終了する行番号であり、前述の行
番号1に対応するものである。これをコンパイル時のオ
プションとして指定する。デバッグ情報収集文はこのデ
バッグオプションを指定しないと生成されない。第3図
では−DB(main 、 6.7)としてデバッグオ
プションが指定されている。これはプログラム名mai
nの6行目から7行目までのデバッグ情報を出力するこ
とを示す。第3図下方がデバッグオプションでコンパイ
ルした後のソースプログラムイメージである。矢印が示
しているところが行番号6および7にそれぞれ対応する
デバッグ情報文であり、 printf(“main:3a CD =%dl二%
dXXn 、a [i] 、i);を実行すると、 main:3 a Ci’) =Oi=0と表示され
、プログラム名mainの3行目のa (i)の値とi
の値が変数の型にあった書式(%dすなわち10進表示
)で表示される。7行目も同様に表示される。
本発明は、以上説明したように、コンパイル時のデバッ
グオプションを指定することで、デバッグ情報を容易に
収集できる効果が−ある。
グオプションを指定することで、デバッグ情報を容易に
収集できる効果が−ある。
第1図は本発明実施例の構成を示すブロック構成図。
第2図は本発明実施例の動作を示すフロー図。
第3図はソースプログラムとコンパイルしたソースプロ
グラムイメージとを示す対比図。 1・・・プログラム名読込処理手段、2・・・ソース読
込処理手段、3・・・行番号読込処理手段、4・・・デ
バッグ文生成判定処理手段、5・・・デバッグ文生成処
理手段、6・・・オブジェクト生成処理手段、10・・
・ソースプログラム格納手段。
グラムイメージとを示す対比図。 1・・・プログラム名読込処理手段、2・・・ソース読
込処理手段、3・・・行番号読込処理手段、4・・・デ
バッグ文生成判定処理手段、5・・・デバッグ文生成処
理手段、6・・・オブジェクト生成処理手段、10・・
・ソースプログラム格納手段。
Claims (1)
- 【特許請求の範囲】 1、デバッグ情報文が含まれるソースプログラムを格納
する格納手段(10)と、 与えられたデバッグオプションを解析し、デバッグ情報
文を収集するソースプログラムの名前およびこのソース
プログラム内のデバッグ情報文を収集する開始位置およ
び終了位置を示す行番号を抽出するオプション読込手段
(1)と、 このオプション読込手段で抽出された名前に一致するソ
ースプログラムを上記格納手段から抽出するソース読込
手段(2)と、 このソース読込手段が抽出したソースプログラムが上記
オプション読込手段で抽出した行番号の間に存在するか
否かを確認する行番号読込手段(3)と、 この行番号読込手段で確認されたソースプログラムが実
行文か否かを確認するデバッグ文生成判定手段(4)と
、 このデバッグ文生成判定手段で実行文であることが確認
されたソースプログラムに基づきデバッグ情報文を生成
するデバッグ情報文生成手段(5)と を備えたことを特徴とするデバッグ文生成装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63190012A JPH0239331A (ja) | 1988-07-29 | 1988-07-29 | デバッグ文生成装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63190012A JPH0239331A (ja) | 1988-07-29 | 1988-07-29 | デバッグ文生成装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0239331A true JPH0239331A (ja) | 1990-02-08 |
Family
ID=16250905
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP63190012A Pending JPH0239331A (ja) | 1988-07-29 | 1988-07-29 | デバッグ文生成装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0239331A (ja) |
-
1988
- 1988-07-29 JP JP63190012A patent/JPH0239331A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3380390B2 (ja) | デバッグ情報表示装置 | |
| JPH0736680A (ja) | 並列化プログラム開発支援装置 | |
| JPH0239331A (ja) | デバッグ文生成装置 | |
| US20040064301A1 (en) | Software development system, simulator, and recording medium | |
| JP4055197B2 (ja) | プログラムに含まれる手続きの解析装置 | |
| CN111367937B (zh) | 一种数据处理方法和装置 | |
| JP2956591B2 (ja) | ループ外への条件付き飛び出しがあるループの並列化方法及び装置 | |
| JPS59183441A (ja) | 拡張言語のデバツグ処理方式 | |
| JP2811804B2 (ja) | 変数出力範囲指定方式 | |
| JPH04540A (ja) | デバック装置 | |
| JPH02244341A (ja) | 実行サブルーチンデバツグ情報出力トレース方式 | |
| JPH01155438A (ja) | コンパイラ試験方式 | |
| JPH0566929A (ja) | コンパイラの再コンパイル時間の短縮方式 | |
| JPH0628165A (ja) | コーディング規則に基づくコード自動診断装置 | |
| JP2786689B2 (ja) | コンパイラ処理方法 | |
| JP3018783B2 (ja) | コンパイル方式 | |
| JPH1139155A (ja) | コンパイル時の情報収集による実行時性能の静的解析方法 | |
| JPH0439703B2 (ja) | ||
| JPH03268029A (ja) | 構文チェッカ | |
| JPH05341973A (ja) | プログラム解析装置 | |
| JPH01291329A (ja) | 高速コンパイル処理方式 | |
| JPH1185533A (ja) | マイクロコンピュータの品種別ツール自動生成装置およびそれに用いる品種別データ | |
| JP2001034482A (ja) | コンパイル装置、プログラム最適化装置、コンパイル処理方法及び記録媒体 | |
| JPH0231236A (ja) | コンパイラ | |
| JPH0477928A (ja) | 言語処理装置 |