JPH0337735A - 構造化プログラミングのチェック方式 - Google Patents
構造化プログラミングのチェック方式Info
- Publication number
- JPH0337735A JPH0337735A JP1172039A JP17203989A JPH0337735A JP H0337735 A JPH0337735 A JP H0337735A JP 1172039 A JP1172039 A JP 1172039A JP 17203989 A JP17203989 A JP 17203989A JP H0337735 A JPH0337735 A JP H0337735A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- source program
- written
- segment
- descriptor
- 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
Landscapes
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔発明の目的〕
(産業上の利用分野)
本発明はFORTRAN、C0BOLSC等の構造化プ
ログラミング言語により作成されたプログラムをチェッ
クする構造化プログラミングのチェック方式に関する。
ログラミング言語により作成されたプログラムをチェッ
クする構造化プログラミングのチェック方式に関する。
(従来の技術)
FORTRAN、C0BOLSC等の構造化プログラミ
ング言語により作成されたプログラムの正当性を評価す
る場合、通常、作成されたソースプログラムをコンパイ
ルしてオブジェクトプログラムを作成するときコンパイ
ラによって各命令を個別にチェックして文法上の誤りを
修正し、この後オブジェクトプログラムを実行してその
動作を確認してその良否を判断するようにしている。
ング言語により作成されたプログラムの正当性を評価す
る場合、通常、作成されたソースプログラムをコンパイ
ルしてオブジェクトプログラムを作成するときコンパイ
ラによって各命令を個別にチェックして文法上の誤りを
修正し、この後オブジェクトプログラムを実行してその
動作を確認してその良否を判断するようにしている。
(発明が解決しようとする課題)
しかしながら従来のプログラムチェック方法においては
、文法上の誤りはコンパイラ等によって検出することが
できるものの、各命令の実行手順の良否をチェックする
ことができないので、オブジェクトプログラムを実行さ
せなければ、実行手順の良否を判定することができない
という問題があった。
、文法上の誤りはコンパイラ等によって検出することが
できるものの、各命令の実行手順の良否をチェックする
ことができないので、オブジェクトプログラムを実行さ
せなければ、実行手順の良否を判定することができない
という問題があった。
特に、ファイルの人出力を行なうときに用いられるファ
イルオーブン、ファイルクローズ等の命令は1対1で対
応させなければならないが、これらの対応に誤りがある
場合、全く予期しない順序でプログラムが実行されてし
まい、後でプログラムを修正するときの作業が面倒にな
ってしまうという問題があった。
イルオーブン、ファイルクローズ等の命令は1対1で対
応させなければならないが、これらの対応に誤りがある
場合、全く予期しない順序でプログラムが実行されてし
まい、後でプログラムを修正するときの作業が面倒にな
ってしまうという問題があった。
本発明は上記の事情に鑑み、プログラムを構成する命令
対の良否をチェックすることができ、これによってデバ
ッグ作業を効率を高めることができる構造化プログラミ
ングのチェック方式を提供することを目的と−している
。
対の良否をチェックすることができ、これによってデバ
ッグ作業を効率を高めることができる構造化プログラミ
ングのチェック方式を提供することを目的と−している
。
(課題を解決するための手段)
上記の目的を達成するために本発明による構造化プログ
ラミングのチェック方式は、構造化プログラミング言語
によって記述されたソースプログラムを解析して対にな
る命令とプログラム中における前記命令の位置関係とを
抽出して解析テーブルを作成するソースプログラム解析
部と、このソースプログラム解析部によって作成された
解析テーブルを解析して対となる命令の位置関係が対応
しているかどうかをチェックする命令対応チェック部と
を備えたことを特徴としている。
ラミングのチェック方式は、構造化プログラミング言語
によって記述されたソースプログラムを解析して対にな
る命令とプログラム中における前記命令の位置関係とを
抽出して解析テーブルを作成するソースプログラム解析
部と、このソースプログラム解析部によって作成された
解析テーブルを解析して対となる命令の位置関係が対応
しているかどうかをチェックする命令対応チェック部と
を備えたことを特徴としている。
(作用)
上記の構成において、構造化プログラミング言語によっ
て記述されたソースプログラムが人力されれば、ソース
プログラム解析部はこのソースプログラムを解析して解
析テーブルを作威し、命令対応チェック部は前記ソース
プログラム解析部1によって作成された解析テーブルを
解析して対となる命令の位置関係が対応しているかどう
かをチェックする。
て記述されたソースプログラムが人力されれば、ソース
プログラム解析部はこのソースプログラムを解析して解
析テーブルを作威し、命令対応チェック部は前記ソース
プログラム解析部1によって作成された解析テーブルを
解析して対となる命令の位置関係が対応しているかどう
かをチェックする。
(実施例)
第1図は本発明による構造化プログラミングのチェック
方式の一実施例を示すブロック図である。
方式の一実施例を示すブロック図である。
この図に示す構造化プログラミングのチェック装置は、
ソースプログラム解析部1と、命令対応チェック部2と
を備えており、FORTRAN。
ソースプログラム解析部1と、命令対応チェック部2と
を備えており、FORTRAN。
C0BOL、C等の構造化プログラミング言語により作
成されたソースプログラムが入力されたとき、このソー
スプログラムを構成する各命令のうち、対になって使用
される命令が正しく対応しているかどうかをチェックし
てそのチェック結果を出力する。
成されたソースプログラムが入力されたとき、このソー
スプログラムを構成する各命令のうち、対になって使用
される命令が正しく対応しているかどうかをチェックし
てそのチェック結果を出力する。
ソースプログラム解析部lは入力されたソースプログラ
ムの各命令を解析する部分であり、ソースプログラムが
人力されたとき、このソースプログラムの各命令を解析
して第2図に示すようなフォーマットの解析テーブル3
を作威し、これを命令対応チェック部2に供給する。
ムの各命令を解析する部分であり、ソースプログラムが
人力されたとき、このソースプログラムの各命令を解析
して第2図に示すようなフォーマットの解析テーブル3
を作威し、これを命令対応チェック部2に供給する。
解析′テーブル3は各命令の解析内容を示す複数の記述
子4によって構成されており、各記述子4はセグメント
深さエリアと、セグメント番号エリアと、親セグメント
番号エリアと、構造種別エリアと、ソースプログラム番
号エリアと、命令リソースエリアと、命令種別エリアと
に区分されている。
子4によって構成されており、各記述子4はセグメント
深さエリアと、セグメント番号エリアと、親セグメント
番号エリアと、構造種別エリアと、ソースプログラム番
号エリアと、命令リソースエリアと、命令種別エリアと
に区分されている。
セグメント深さエリアは自記連子4の記述対象となる命
令が存在するセグメントの深さを示すデータを格納する
エリアであり、記述対象となる命令が存在するセグメン
トの深さが深くなる毎に、即ちセグメントが入れ子にな
る毎にデータの値が“1”ずつ増加する。
令が存在するセグメントの深さを示すデータを格納する
エリアであり、記述対象となる命令が存在するセグメン
トの深さが深くなる毎に、即ちセグメントが入れ子にな
る毎にデータの値が“1”ずつ増加する。
また、セグメント番号エリアは自記連子4の記述対象と
なる命令が存在するセグメントのシリアル番号を示すデ
ータを格納するエリアであり、新しいセグメントが検出
される毎にデータの値力(“1”ずつ増加する。なお、
セグメントの内側にセグメントが作成されているときに
もセグメント番号データの値が増加するが、内側のセグ
メントが終了したとき、元のセグメント番号データの値
に戻る。
なる命令が存在するセグメントのシリアル番号を示すデ
ータを格納するエリアであり、新しいセグメントが検出
される毎にデータの値力(“1”ずつ増加する。なお、
セグメントの内側にセグメントが作成されているときに
もセグメント番号データの値が増加するが、内側のセグ
メントが終了したとき、元のセグメント番号データの値
に戻る。
また、親セグメント番号エリアは記述対象となる命令の
セグメントを直接合むセグメントの番号を示すデータを
格納するエリアであり、親となるセグメントがあるとき
には親となるセグメントの番号が記述され、また親とな
るセグメントが無いとき(NULLのとき)には′−1
”という値が記述される。
セグメントを直接合むセグメントの番号を示すデータを
格納するエリアであり、親となるセグメントがあるとき
には親となるセグメントの番号が記述され、また親とな
るセグメントが無いとき(NULLのとき)には′−1
”という値が記述される。
また、構造種別エリアは構造体の種別を示すデータであ
り、メイン構造のとき1こは“會ain”と、またイフ
構造のときには“tr”と記述され、またNULLのと
きには −1“と記述される。
り、メイン構造のとき1こは“會ain”と、またイフ
構造のときには“tr”と記述され、またNULLのと
きには −1“と記述される。
また、ソースプログラム番号エリアは自記連子4の記述
対象となる命令のソースプログラム番号を格納するエリ
アであり、命令記述対象となる命令のソースプログラム
番号が格納される。
対象となる命令のソースプログラム番号を格納するエリ
アであり、命令記述対象となる命令のソースプログラム
番号が格納される。
また、命令リソースエリアは自記連子4の記述対象とな
る命令で使用する資源名を示すデータを格納するエリア
であり、同じ命令でも資源が異なれば違う資源名が、ま
た資源を使用しなければ“NULL”を示す“−1′が
記述される。
る命令で使用する資源名を示すデータを格納するエリア
であり、同じ命令でも資源が異なれば違う資源名が、ま
た資源を使用しなければ“NULL”を示す“−1′が
記述される。
例えば、C言語によって記述されたプログラムでは、フ
ァイルのオープン時にファイル名が資源名となり、クロ
ーズ時にこの資源名を指定してファイルをクローズする
ことになる。
ァイルのオープン時にファイル名が資源名となり、クロ
ーズ時にこの資源名を指定してファイルをクローズする
ことになる。
また、命令種別エリアは自記連子4の記述対象となる命
令の種類を示すデータを格納するエリアであり、各命令
の内容または“NULL”を示す“1”が記述される。
令の種類を示すデータを格納するエリアであり、各命令
の内容または“NULL”を示す“1”が記述される。
また、命令対応チェック部2は前記ソースプログラム解
析部1から解析テーブル3が出力されたとき、この解析
テーブル3をチェックして前記ソースプログラムを構成
する各命令のうち、対なって使用される命令が正しく対
応しているかどうかをチェックし、このチェック結果を
出力する。
析部1から解析テーブル3が出力されたとき、この解析
テーブル3をチェックして前記ソースプログラムを構成
する各命令のうち、対なって使用される命令が正しく対
応しているかどうかをチェックし、このチェック結果を
出力する。
次に、第3図および第4図に示すフローチャートを参照
しながらこの実施例の動作を説明する。
しながらこの実施例の動作を説明する。
まず、FORTRAN、C0BOL、C等の構造化プロ
グラミング言語により作成されたソースプログラム、例
えば第5図に示す如くC言語によって作成されたソース
プログラムが供給されれば、ソースプログラム解析部1
はこのソースプログラムの各行を1行単位で順次取り込
んで第6図に示すような解析テーブル3を作成し、これ
を命令対応チェック部2に供給する。
グラミング言語により作成されたソースプログラム、例
えば第5図に示す如くC言語によって作成されたソース
プログラムが供給されれば、ソースプログラム解析部1
はこのソースプログラムの各行を1行単位で順次取り込
んで第6図に示すような解析テーブル3を作成し、これ
を命令対応チェック部2に供給する。
命令対応チェック部2は前記解析テーブル3が供給され
たとき、第3図に示す如く解析テーブル3を構成してい
る各記述子4のうち、先頭にある記述子4を読み込むと
ともに(ステップ5TI)、この記述子4の命令種別エ
リアに’OP E N’という命令が記述されているか
どうかをチェックする(ステップ5T2)。
たとき、第3図に示す如く解析テーブル3を構成してい
る各記述子4のうち、先頭にある記述子4を読み込むと
ともに(ステップ5TI)、この記述子4の命令種別エ
リアに’OP E N’という命令が記述されているか
どうかをチェックする(ステップ5T2)。
そして、この記述子に“0PEN”という命令が記述さ
れていなければ、命令対応チェック部2は最初の処理に
戻り、“0PEN”という命令が記述された記述子4が
見つかるまで上述した処理を繰り返し行なう(ステップ
5T4)。
れていなければ、命令対応チェック部2は最初の処理に
戻り、“0PEN”という命令が記述された記述子4が
見つかるまで上述した処理を繰り返し行なう(ステップ
5T4)。
そして、“0PEN“という命令が記述された記述子4
が見つかったとき(ステップ5T2)、命令対応チェッ
ク部2は第4図に示すオーブン処理を開始する(ステッ
プ5T3)。
が見つかったとき(ステップ5T2)、命令対応チェッ
ク部2は第4図に示すオーブン処理を開始する(ステッ
プ5T3)。
この処理では、命令対応チェック部2は最初、前記解析
テーブル3の記述子4のうち、“0PEN°という命令
が記述された記述子4の次の記述子4を読み込み(ステ
ップ5TIO)、この記述子4の命令種別エリアにCL
O8E”という命令が記述されているかどうかをチェッ
クする(ステップ5TII)。
テーブル3の記述子4のうち、“0PEN°という命令
が記述された記述子4の次の記述子4を読み込み(ステ
ップ5TIO)、この記述子4の命令種別エリアにCL
O8E”という命令が記述されているかどうかをチェッ
クする(ステップ5TII)。
そして、今、読み出した記述子4の命令種別エリアに“
CLO3E“という命令が記述されていなければ、命令
対応チェック部2は今処理した記述子4の次の記述子4
を読出し同し処理を行なう(ステップ5T16)。
CLO3E“という命令が記述されていなければ、命令
対応チェック部2は今処理した記述子4の次の記述子4
を読出し同し処理を行なう(ステップ5T16)。
この後、“CLO3E”という命令が記述された記述子
4が見つかれば(ステップ5T11)、命令対応チェッ
ク部2は“0PEN”という命令が記述された前記記述
子4のセグメント番号エリアに記述されている値と、“
CLO5E”命令が記述された前記記述子4のセグメン
ト番号エリアに記述されている値とを比較し、これらの
値が一致しているかどうかをチェックする(ステップS
子 12)。
4が見つかれば(ステップ5T11)、命令対応チェッ
ク部2は“0PEN”という命令が記述された前記記述
子4のセグメント番号エリアに記述されている値と、“
CLO5E”命令が記述された前記記述子4のセグメン
ト番号エリアに記述されている値とを比較し、これらの
値が一致しているかどうかをチェックする(ステップS
子 12)。
そして、これらの各記述子4が、第6図に示す解析テー
ブル3のソースプログラムライン番号“4”の“0PE
N”命令と、ソースプログラムライン番号“9“の“C
LO3E”命令とのように互いのセグメント番号値が一
致している記述子であれば、命令対応チェック部2は“
QPEN”命令と’CLO5E”命令とが正しく対応し
ていると判定してこの判定結果を記憶する(ステップ5
T13)。
ブル3のソースプログラムライン番号“4”の“0PE
N”命令と、ソースプログラムライン番号“9“の“C
LO3E”命令とのように互いのセグメント番号値が一
致している記述子であれば、命令対応チェック部2は“
QPEN”命令と’CLO5E”命令とが正しく対応し
ていると判定してこの判定結果を記憶する(ステップ5
T13)。
また、前記各記述子4が、ソースプログラム番号“6”
の″0PEN’命令、ソースプログラムライン番号“1
1“の”CLO8E’命令のように互いのセグメント番
号データが一致していない記述子であければ、命令対応
チェック部2は“0PEN”命令と“CLOSE”命令
とが正しく対応していないと判定してこれらの各記述子
4の親セグメントエリアに記述されている値を取り込む
とともに、これらの親セグメント番号値が一致するまで
この動作を繰り返す。
の″0PEN’命令、ソースプログラムライン番号“1
1“の”CLO8E’命令のように互いのセグメント番
号データが一致していない記述子であければ、命令対応
チェック部2は“0PEN”命令と“CLOSE”命令
とが正しく対応していないと判定してこれらの各記述子
4の親セグメントエリアに記述されている値を取り込む
とともに、これらの親セグメント番号値が一致するまで
この動作を繰り返す。
そしてこれらの各記述子4が、ソースプログラム番号″
6”に対応する記述子4と、ソースプログラムライン番
号“11“に対応する記述子4のように、親セグメント
番号値が共に“2”になっている記述子であれば、命令
対応チェック部2は第2セグメントを共通セグメントと
判定しくステップ5T14)、この第2セグメントから
CLO3E”という命令が記述されている記述子4のセ
グメントエリアに記述されているセグメント“4”まで
の間に構造の抜はバスがあると判定し、これをエラーと
して記憶する(ステップ5T15) また、上述した処理を繰り返しても(ステップ5T16
)、”0PEN”命令が記述されている各記述子4のう
ち、今処理対象となっている記述子4の後に“CLOS
E”という命令が記述されている記述子4が見つからな
ければ(ステップ5T17)、命令対応チェック部2は
“CLOSE”なしエラーと判定してこの判定結果を記
憶する(ステップ5T18)。
6”に対応する記述子4と、ソースプログラムライン番
号“11“に対応する記述子4のように、親セグメント
番号値が共に“2”になっている記述子であれば、命令
対応チェック部2は第2セグメントを共通セグメントと
判定しくステップ5T14)、この第2セグメントから
CLO3E”という命令が記述されている記述子4のセ
グメントエリアに記述されているセグメント“4”まで
の間に構造の抜はバスがあると判定し、これをエラーと
して記憶する(ステップ5T15) また、上述した処理を繰り返しても(ステップ5T16
)、”0PEN”命令が記述されている各記述子4のう
ち、今処理対象となっている記述子4の後に“CLOS
E”という命令が記述されている記述子4が見つからな
ければ(ステップ5T17)、命令対応チェック部2は
“CLOSE”なしエラーと判定してこの判定結果を記
憶する(ステップ5T18)。
この後、命令対応チェック部2は第3図に示す処理に戻
り、他に’OP E N”命令と記述された記述子4が
残っているかどうかをチェックする。
り、他に’OP E N”命令と記述された記述子4が
残っているかどうかをチェックする。
そして、全ての“OP E N”命令に対して上述した
処理が終了したとき(ステップ5T4)、エラーの内容
を表示し、全ての動作を終了する(ステップ5T5)。
処理が終了したとき(ステップ5T4)、エラーの内容
を表示し、全ての動作を終了する(ステップ5T5)。
このようにこの実施例においては、ソースプログラムが
入力されたとき、このソースプログラムから解析テーブ
ル3を作成するとともに、この解析テーブル3に基づい
て“0PEN”命令が記述されているセグメント番号の
値と、“CLOSE”命令が記述されているセグメント
番号の値とが一致しているかどうかをチェックするよう
にしているので、“0PEN”命令と“CLOSE”命
令とが対応していないとき、これを検知してエラー表示
を行なうことができる。
入力されたとき、このソースプログラムから解析テーブ
ル3を作成するとともに、この解析テーブル3に基づい
て“0PEN”命令が記述されているセグメント番号の
値と、“CLOSE”命令が記述されているセグメント
番号の値とが一致しているかどうかをチェックするよう
にしているので、“0PEN”命令と“CLOSE”命
令とが対応していないとき、これを検知してエラー表示
を行なうことができる。
またこのとき、“CLOSE”命令が記述されているセ
グメントからこれら“0PEN”命令、“CLOSE”
命令の共通セグメントまでをエラーとして表示するよう
にしたので、第5図に示すソースプログラムが入力され
たとき、このソースプログラムのソースプログラムライ
ン番号“6”からソースプログラムライン番号111@
までの間にエラーがあることを表示することができる。
グメントからこれら“0PEN”命令、“CLOSE”
命令の共通セグメントまでをエラーとして表示するよう
にしたので、第5図に示すソースプログラムが入力され
たとき、このソースプログラムのソースプログラムライ
ン番号“6”からソースプログラムライン番号111@
までの間にエラーがあることを表示することができる。
そして、デバッグ作業を行なうとき、この表示に基づい
てソースプログラムライン番号“10”のイフ構造のT
IrEN側処理にのみ“CLOSE”命令があり、この
ソースプログラムライン番号“10°のELES側を実
行したとき、クローズ処理が行われないという誤りを容
易に発見することができる。
てソースプログラムライン番号“10”のイフ構造のT
IrEN側処理にのみ“CLOSE”命令があり、この
ソースプログラムライン番号“10°のELES側を実
行したとき、クローズ処理が行われないという誤りを容
易に発見することができる。
また上述した実施例においては、解析テーブル3を検索
して“0PEN“命令を検出し、この“0PEN”命令
に対応する“CLOSE”命令が有るかどうかをチェッ
クしてこれら0PEN”命令と、=CLOSE”命令と
が正しく対応しているかどうかをチェックするようにし
ているが、解析テーブル3を検索して“CLOSE”命
令を検出し、各“CLOSE”命令に対応する0PEN
”命令があるかどうかをチェックして、“0PEN”命
令と、“CLOSE“命令とが正しく対応しているかど
うかをチェックするようにしても良い。
して“0PEN“命令を検出し、この“0PEN”命令
に対応する“CLOSE”命令が有るかどうかをチェッ
クしてこれら0PEN”命令と、=CLOSE”命令と
が正しく対応しているかどうかをチェックするようにし
ているが、解析テーブル3を検索して“CLOSE”命
令を検出し、各“CLOSE”命令に対応する0PEN
”命令があるかどうかをチェックして、“0PEN”命
令と、“CLOSE“命令とが正しく対応しているかど
うかをチェックするようにしても良い。
また、解析テーブル3を検索して“READ“命令、“
WRITE“命令などのように“0PEN°命令と、“
CLOSE”命令との中間に位置する命令を検出し、こ
れら“READ”命令、”WRITE’命令の前後に0
PEN”命令と、“CLO5E”命令とが正しく配置さ
れているかどうかをチェックして”OP E N@命令
と、′CLO9E”命令とが正しく対応しているかどう
かをチェックするようにしても良い。
WRITE“命令などのように“0PEN°命令と、“
CLOSE”命令との中間に位置する命令を検出し、こ
れら“READ”命令、”WRITE’命令の前後に0
PEN”命令と、“CLO5E”命令とが正しく配置さ
れているかどうかをチェックして”OP E N@命令
と、′CLO9E”命令とが正しく対応しているかどう
かをチェックするようにしても良い。
また上述した実施例においては、ファイルに対する“0
PEN“命令と、“CLO9E”命令とを例にとって本
発明を説明したが、排他の指定および解除、タスクの起
動および停止、リリースの確保および開放などのように
対になる命令であれば、本発明を適用することができる
のは勿論である。
PEN“命令と、“CLO9E”命令とを例にとって本
発明を説明したが、排他の指定および解除、タスクの起
動および停止、リリースの確保および開放などのように
対になる命令であれば、本発明を適用することができる
のは勿論である。
以上説明したように本発明によれば、プログラムを構成
する命令対の良否をチェックすることができ、これによ
ってデバッグ作業を効率を高めることができる。
する命令対の良否をチェックすることができ、これによ
ってデバッグ作業を効率を高めることができる。
第1図は本発明による構造化プログラミングのチェック
方式の一実施例を示すブロック図、第2図は第1図に示
すソースプログラム解析部によって作成される解析テー
ブルの一例を示す模式図、第3図は同実施例のメイン動
作例を示すフローチャート、第4図は第3図に示すオー
プン処理ルーチンの具体例を示すフローチャート、第5
図は処理対象となるソースプログラムの一例を示す模式
図、第6図は第5図に示すソースプログラムを処理した
ときに得られる解析テーブルの一例を示す模式図である
。 1・・・ソースプログラム解析部 2・・・命令対応チェック部 3・・・解析テーブル 4・・・記述子
方式の一実施例を示すブロック図、第2図は第1図に示
すソースプログラム解析部によって作成される解析テー
ブルの一例を示す模式図、第3図は同実施例のメイン動
作例を示すフローチャート、第4図は第3図に示すオー
プン処理ルーチンの具体例を示すフローチャート、第5
図は処理対象となるソースプログラムの一例を示す模式
図、第6図は第5図に示すソースプログラムを処理した
ときに得られる解析テーブルの一例を示す模式図である
。 1・・・ソースプログラム解析部 2・・・命令対応チェック部 3・・・解析テーブル 4・・・記述子
Claims (1)
- (1)構造化プログラミング言語によって記述されたソ
ースプログラムを解析して対になる命令とプログラム中
における前記命令の位置関係とを抽出して解析テーブル
を作成するソースプログラム解析部と、 このソースプログラム解析部によって作成された解析テ
ーブルを解析して対となる命令の位置関係が対応してい
るかどうかをチェックする命令対応チェック部と、 を備えたことを特徴とする構造化プログラミングのチェ
ック方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1172039A JPH0337735A (ja) | 1989-07-05 | 1989-07-05 | 構造化プログラミングのチェック方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1172039A JPH0337735A (ja) | 1989-07-05 | 1989-07-05 | 構造化プログラミングのチェック方式 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0337735A true JPH0337735A (ja) | 1991-02-19 |
Family
ID=15934395
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1172039A Pending JPH0337735A (ja) | 1989-07-05 | 1989-07-05 | 構造化プログラミングのチェック方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0337735A (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2002207612A (ja) * | 2001-01-12 | 2002-07-26 | Hitachi Ltd | ログ解析方法及びその実施装置並びにその処理プログラムを記録した記録媒体 |
| US6681343B1 (en) | 1999-08-24 | 2004-01-20 | Nec Electronics Corporation | Debugging device and method as well as storage medium |
-
1989
- 1989-07-05 JP JP1172039A patent/JPH0337735A/ja active Pending
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6681343B1 (en) | 1999-08-24 | 2004-01-20 | Nec Electronics Corporation | Debugging device and method as well as storage medium |
| JP2002207612A (ja) * | 2001-01-12 | 2002-07-26 | Hitachi Ltd | ログ解析方法及びその実施装置並びにその処理プログラムを記録した記録媒体 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN101937396B (zh) | 软件程序中变量的不安全使用的检测方法 | |
| CN113434385A (zh) | 一种针对软件模型检查工具的测试用例自动生成方法和系统 | |
| CN115357492B (zh) | 一种用于Java软件的形式化验证方法及装置 | |
| JPH0337735A (ja) | 構造化プログラミングのチェック方式 | |
| EP2535813B1 (en) | Method and device for generating an alert during an analysis of performance of a computer application | |
| CN116680705A (zh) | 基于特征提取的Rust程序缺陷自动检测方法及系统 | |
| JPH10187461A (ja) | 言語処理方式 | |
| CN109582582A (zh) | 一种Web界面的自动化测试方法及系统 | |
| JPH1173328A (ja) | コーディング規約チェックシステム | |
| JP2004192139A (ja) | デバッグ装置、デバッグ方法および記録媒体 | |
| JP2002342129A (ja) | コーディングチェック方式 | |
| CN114610320B (zh) | 一种基于llvm的变量类型信息修复与比较方法及系统 | |
| JPH01177165A (ja) | 配列の定義/引用関係検査方式 | |
| JP2728504B2 (ja) | 入力命令文検査装置 | |
| JPH01155438A (ja) | コンパイラ試験方式 | |
| CN111984243A (zh) | 一种基于注解的通用安全检查及功能扩展方法及装置 | |
| JPH1031584A (ja) | ソフトウエアの検証自動化装置 | |
| JPH08179938A (ja) | 仕様書自動生成装置及び方法 | |
| CN116594687A (zh) | 一种c语言源代码跨平台移植系统及移植方法 | |
| JPS63273132A (ja) | プログラム開発支援システム | |
| JPH02211542A (ja) | モジュール管理情報算出方式 | |
| JPS63174130A (ja) | 値が未設定の変数名の検出方式 | |
| JPH01296347A (ja) | コンパイラのエラーメッセージ出力方式 | |
| JPS62118448A (ja) | 不定値参照の検出方式 | |
| JPH03121531A (ja) | ジョブ制御文処理方式 |