JPH11296366A - エラー検出装置及びエラー検出方法及び記録媒体 - Google Patents

エラー検出装置及びエラー検出方法及び記録媒体

Info

Publication number
JPH11296366A
JPH11296366A JP10094627A JP9462798A JPH11296366A JP H11296366 A JPH11296366 A JP H11296366A JP 10094627 A JP10094627 A JP 10094627A JP 9462798 A JP9462798 A JP 9462798A JP H11296366 A JPH11296366 A JP H11296366A
Authority
JP
Japan
Prior art keywords
violation
correction
program
rule
storage unit
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
Application number
JP10094627A
Other languages
English (en)
Inventor
Yasuhiro Yoshida
康弘 吉田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP10094627A priority Critical patent/JPH11296366A/ja
Publication of JPH11296366A publication Critical patent/JPH11296366A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Devices For Executing Special Programs (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】 【課題】 プログラム言語の規則違反を、利用者が修正
しなくても、自動的に修正可能なエラー検出装置、エラ
ー検出方法およびエラー検出用プログラムを記録した記
録媒体を提供する。 【解決手段】 プログラム言語の規則違反を検出する言
語解析手段21と、プログラム言語の規則違反に対して
修正規則を記憶しておく修正規則記憶部33と、該規則
違反が検出された場合に、修正規則記憶部33に記憶さ
れた違反の修正内容から、違反の修正方法を検索する違
反解析手段22と、該修正方法により、自動的にプログ
ラムを修正する違反修正手段23と、を有することを特
徴とするエラー検出装置。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、プログラム言語の
規則違反の内容を検出するシステムに関し、特に、言語
の規則違反を自動的に修正できるシステムに関するもの
である。
【0002】
【従来の技術】エラー検出装置は、プログラム言語の作
成を支援する装置などで作成したプログラムが、プログ
ラム言語規則に違反していないかを調べるために用いら
れている。
【0003】従来のエラー検出装置は、違反を検出する
システムである。言語規則と、プログラムを保存する記
憶装置と、言語規則とプログラムから違反を検出する解
析手段と、解析結果を表示する表示装置と、から構成さ
れている。記憶装置には、言語規則を予め登録してお
く。解析手段は、キーボードから指定されたプログラム
を、記憶装置に登録されている言語規則と比較して違反
が無いかを検索する。検索の結果得られた内容は、表示
装置に表示される。
【0004】特開昭61−150037号公報には、
「構文解析エラー情報出力方式」として、例えば、交換
サービス仕様記述言語等の構文解析の際に、構文エラー
が検出され、エラー回復処理を行なう場合、エラーの生
じた部分をスキップして、スキップした部分にマークを
付けて出力することにより、分かり易いエラー出力情報
を得ることができる方式が開示されている。
【0005】また、特開平2−81230号公報には、
「構文解析および言語処理システム」として、構文エラ
ーを検出した時、プログラムのインデンテーション(字
下げ、段付け)の状態に関する情報を利用して、エラー
から回復する方法が開示されている。
【0006】また、特開平5−73331号公報には、
「コンパイラのエラーメッセージ出力方式」として、エ
ラーメッセージの他に、構文規則も出力し、ソースプロ
グラムの修正を容易にする方式が開示されている。
【0007】また、特公平7−15691号公報には、
「自動翻訳装置」として、英語などの各国語で入力され
た入力文の解析処理において、係り先の決定時にエラー
が発生した場合、それをエラー検出部で検出し、エラー
処理部でそのエラーの発生した部分を、正常な構文に、
仮に対応付ける回復処理を行なって、解析処理を続行す
る装置が開示されている。
【0008】
【発明が解決しようとする課題】しかしながら、前述し
た従来技術には、次のような問題点があった。
【0009】第1の問題点は、違反が生じた場合、利用
者が違反の内容を見て、利用者自身の修正が必要にな
る、ということである。
【0010】その理由は、従来のエラー検出装置では、
違反の修正について何ら考慮されていないためである。
【0011】また、上述した各公報記載の技術において
も、プログラム言語の規則違反を検出し、これを利用者
の手を煩わすことなく、自動的に修正する技術に関して
は、開示がない。
【0012】[発明の目的]本発明は、プログラム言語
の規則違反を、利用者が修正しなくても、自動的に修正
可能なエラー検出装置、エラー検出方法およびエラー検
出用プログラムを記録した記録媒体を提供することを目
的とする。
【0013】
【課題を解決するための手段】本発明は、上記課題を解
決するための手段として、プログラム言語の規則違反を
検出する言語解析手段と、プログラム言語の規則違反に
対して修正規則を記憶しておく修正規則記憶部と、該規
則違反が検出された場合に、修正規則記憶部に記憶され
た違反の修正内容から、違反の修正方法を検索する違反
解析手段と、該修正方法により、自動的にプログラムを
修正する違反修正手段と、を有することを特徴とするエ
ラー検出装置を提供する。
【0014】また、前記違反の修正内容が、前記修正規
則記憶部に無かった場合、利用者に追加入力された修正
内容を元に、違反の修正を行い、入力された修正内容か
ら修正規則を登録する修正規則登録手段を有することを
特徴とするエラー検出装置でもある。
【0015】また、プログラム言語を使用するにあたり
必要な規則を記録している言語規則記憶部(31)と、
利用者が作成したプログラムを記憶しているプログラム
記憶部(32)と、修正規則を記憶している修正規則記
憶部(33)と、プログラム記憶部(32)から入力装
置(1)で指定されたプログラムの情報を取得し、言語
規則記憶部(31)に記憶されている規則を元に、プロ
グラムで使用されている言語の違反を解析する言語解析
手段(21)と、解析した結果、違反を検出した場合、
違反の内容とプログラムと修正規則記憶部(33)で記
憶されている修正規則を元に、違反の内容を解析し、修
正内容を解析する違反解析手段(22)と、解析した修
正内容をプログラムに反映し、プログラム記憶部(3
2)に記録する違反修正手段(23)と、修正内容を出
力装置(4)に出力する違反箇所出力手段(24)と、
を有することを特徴とするエラー検出装置でもある。
【0016】また、入力装置(1)と、プログラム制御
により動作するデータ処理装置(2)と、情報を記憶す
る記憶装置(3)と、出力装置(4)と、を有し、前記
記憶装置(3)は、プログラム言語の規則を、情報とし
てあらかじめ記憶している言語規則記憶部(31)と、
利用者が作成したプログラムを記憶しているプログラム
記憶部(32)と、プログラム言語の規則違反の修正方
法を、情報として、あらかじめ記憶している修正規則記
憶部(33)と、を含み、前記データ処理装置(2)
は、入力装置(1)から与えられたプログラム名に対す
るプログラムをプログラム記憶部(32)から取得し、
一致したプログラムに対して、言語規則記憶部(31)
に記憶された各種の言語規則に違反しているかどうかを
調べ、違反が検出されなかった場合は、そのプログラム
は、規則に違反していないと認識し、出力装置4に違反
していないことを出力し、一方、もし、違反が検出され
た場合には、どの言語規則に違反しているかを違反解析
手段(22)に通知する言語解析手段(21)と、言語
解析手段(21)が規則違反を検出したとき、通知され
る違反内容を元に、修正規則記憶部(33)から、違反
に対する修正内容を調べ、修正内容が検出されなかった
場合、違反箇所と違反内容を、出力装置(4)に表示
し、修正内容が検出された場合、違反箇所と修正内容
を、違反修正手段(23)に通知する違反解析手段(2
2)と、違反解析手段(22)から通知された修正内容
と、言語解析手段(21)で検出した違反箇所を元に、
プログラムに修正を加えるでもある。修正が終わったプ
ログラムは、プログラム記憶部(32)に記録する違反
修正手段(23)と、違反箇所、違反の内容、修正の終
了したプログラムを、出力装置(4)に出力する違反箇
所出力手段(24)と、を有することを特徴とするエラ
ー検出装置でもある。
【0017】また、プログラム言語の規則違反に対し
て、修正規則を記憶しておき、該規則違反が検出された
場合に、違反解析手段により、修正規則記憶部に記憶さ
れた違反の修正内容から、違反の修正方法を検索し、違
反修正手段により、自動的にプログラムを修正する、こ
とを特徴とするエラー検出方法でもある。
【0018】また、検出された違反内容に対応する修正
内容が、修正規則記憶部に登録されていない場合、利用
者に修正規則を入力させることで、修正内容を新規に登
録する、ことを特徴とするエラー検出方法でもある。
【0019】また、言語解析手段(21)により、入力
装置から入力されたプログラム名に該当するプログラム
を、プログラム記憶部(32)から取得するステップ
(A1);取得してきたプログラムで使用されている言
語に、言語規則記憶部(31)に記憶されている規則に
対する違反が、存在しないかを調べるステップ(A2及
びA3);言語規則記憶部(31)に記録されている言
語の規則に対する違反が存在しない場合、違反が存在し
ない旨を、出力装置(4)に表示するステップ(A
7);該違反が存在する場合は、違反の箇所と違反の内
容が、違反解析手段(22)に与えられ、違反解析手段
(22)は、言語解析手段(21)で調べた違反の内容
を受け取り、違反の修正内容が、修正規則記憶部(3
3)に記憶されているかを調べるステップ(A4および
A5);違反の修正内容が、修正規則記憶部(33)に
記憶されていた場合、違反の箇所と違反の修正内容を、
違反修正手段(23)に与え、違反の修正内容が、修正
規則記憶部(33)に記憶されていなかった場合、違反
解析手段(22)は、修正不能と判断し、違反箇所と違
反内容を、出力装置(4)に表示するステップ(A
9);次に、違反修正手段(23)は、違反解析手段
(22)で調べた修正内容と、言語解析手段(21)で
検出した違反箇所を受け取り、プログラムの修正箇所を
解析し、プログラムに修正を実施するステップ(A
6);修正実施後、修正を実施したプログラムをプログ
ラム記憶部(32)に記録し、違反箇所出力手段(2
4)は、修正したプログラムと、違反箇所、違反内容、
修正内容を、出力装置(4)に表示するステップ(A
8);を有することを特徴とするエラー検出方法でもあ
る。
【0020】また、違反の修正内容が修正規則記憶部
(33)に登録されていなかった場合、利用者に修正内
容を入力させるステップ(B1);入力した内容と違反
内容を関連付けた修正規則を作成し、修正規則記憶部
(33)に登録するステップ(B2);を有することを
特徴とするエラー検出方法でもある。
【0021】また、上記エラー検出方法を記述したコン
ピュータプログラムを格納したことを特徴とする記録媒
体でもある。
【0022】[作用]本発明によれば、言語の規則違反
に対して、修正規則を記憶しておき、解析することで、
自動的に違反箇所の修正に対応できる。この結果、利用
者の修正にかかる時間を軽減することができる。
【0023】すなわち、違反が生じ易く、修正に時間が
多く必要な言語の規則違反を、違反解析手段により、修
正規則記憶手段に記憶された違反の修正内容から、修正
方法を検索し、違反修正手段が、利用者を煩わすことな
くプログラムを修正することができる。
【0024】また、本発明によれば、検出された違反内
容に対応する修正内容が、修正規則記憶部に登録されて
いない場合、修正規則を追加することにより、対応する
ことができる。
【0025】すなわち、利用者に修正規則を入力させる
ことで、修正内容を登録するため、修正内容が登録され
ていない違反内容が生じたときでも、一度は、利用者が
入力しなければならないが、その後、同じ違反内容が生
じた場合、自動的に修正を実施できる。
【0026】更に詳述すれば、本発明は、プログラム言
語の規則違反の内容を検出するシステムにおいて、言語
の規則違反を自動的に修正できる構成を提供するもので
ある。
【0027】図1は、本発明の一実施例の構成図であ
る。図1において、言語規則記憶部31は、プログラム
言語を使用するにあたり必要な規則を記録している。
【0028】言語解析手段21は、プログラム記憶部3
2から入力装置1で指定されたプログラムの情報を取得
する。
【0029】言語解析手段21は、言語規則記憶部31
に記憶されている規則を元に、プログラムで使用されて
いる言語の違反を解析する。
【0030】解析した結果、違反が検出されると、違反
解析手段22は、違反の内容とプログラムと修正規則記
憶部33で記憶されている修正規則を元に、違反の内容
を解析し、修正内容を解析する。
【0031】違反修正手段23は、解析した修正内容を
プログラムに反映し、プログラム記憶部32に記録す
る。
【0032】違反箇所出力手段24は、修正内容を出力
装置4に出力する。
【0033】これにより、利用者は、言語の違反を修正
する必要がなくなる。
【0034】
【実施例】[構成の説明]図1を参照すると、本実施例
は、キーボード等の入力装置1と、プログラム制御によ
り動作するデータ処理装置2と、情報を記憶する記憶装
置3と、ディスプレイ装置や印刷装置等の出力装置4
と、を含んで構成される。
【0035】記憶装置3は、言語規則記憶部31と、プ
ログラム記憶部32と、修正規則記憶部33と、を備え
ている。
【0036】言語規則記憶部31は、プログラムの言語
の規則を、情報としてあらかじめ記憶している。
【0037】プログラム記憶部32は、利用者が作成し
たプログラムを記憶している。
【0038】修正規則記憶部33は、プログラム言語の
規則違反の修正方法を、情報として、あらかじめ記憶し
ている。
【0039】データ処理装置2は、言語解析手段21
と、違反解析手段22と、違反修正手段23と、違反箇
所出力手段24と、を備える。
【0040】言語解析手段21は、入力装置1から与え
られたプログラム名に対するプログラムをプログラム記
憶部32から取得し、一致したプログラムに対して、言
語規則記憶装置31に記憶された各種の言語規則と比べ
て違反しているかどうかを調べる。
【0041】違反が検出されなかった場合は、そのプロ
グラムは規則に違反していないと認識し、出力装置4に
違反していないことを出力する。一方、もし、違反が検
出された場合には、どの言語規則に違反しているかを違
反解析手段22に通知する。
【0042】違反解析手段22は、言語解析手段21が
規則違反を検出したとき、通知される違反内容を元に、
修正規則記憶部33から、違反に対する、修正内容を調
べる。
【0043】修正内容が検出されなかった場合、違反箇
所と違反内容を、出力装置4に表示する。修正内容が検
出された場合、違反箇所と修正内容を、違反修正手段2
3に通知する。
【0044】違反修正手段23は、違反解析手段22か
ら通知された修正内容と、言語解析で検出した違反箇所
を元に、プログラムに修正を加える。修正が終わったプ
ログラムは、プログラム記憶部32に記録する。
【0045】違反箇所出力手段24は、違反箇所、違反
の内容、修正の終了したプログラムを、出力装置4に出
力する。
【0046】[動作の説明]次に、図1の構成図及び図
2の動作を示すフローチャートを参照して、本実施例の
動作について詳細に説明する。
【0047】入力装置1から与えられたプログラム名
は、言語解析手段21に供給される。言語解析手段21
は、このプログラム名に該当するプログラムを、プログ
ラム記憶部32から取得する(図2のステップA1)。
【0048】取得してきたプログラムで使用されている
言語に、言語規則記憶部31に記憶されている規則に対
する違反が、存在しないかを調べる(ステップA2及び
A3)。
【0049】言語規則記憶部31に記録されている言語
の規則に対する違反が存在しない場合、違反が存在しな
い旨を、メッセージ等で出力装置4に表示する(ステッ
プA7)。
【0050】一方、言語規則記憶部31に記録されてい
る言語の規則に対する違反が存在する場合は、違反の箇
所と違反の内容が、違反解析手段22に与えられる。
【0051】次に、違反解析手段22は、言語解析手段
21で調べた違反の内容を受け取り、違反の修正内容
が、修正規則記憶部33に記憶さているかを調べる(ス
テップA4およびA5)。
【0052】違反の修正内容が、修正規則記憶部33に
記憶されていた場合、違反の箇所と違反の修正内容を違
反修正手段23に与える。一方、違反の修正内容が、修
正規則記憶部33に記憶されていなかった場合、違反解
析手段22は、修正不能と判断し、違反箇所と違反内容
を、出力装置4に表示する(ステップA9)。
【0053】次に、違反修正手段23は、違反解析手段
22で調べた修正内容と、言語解析手段21で検出した
違反箇所を受け取り、プログラムの修正箇所を解析し、
プログラムに修正を実施する(ステップA6)。
【0054】修正実施後、修正を実施したプログラムを
プログラム記憶部32に記録する。
【0055】次に、違反箇所出力手段24は、修正した
プログラムと、違反箇所、違反内容、修正内容を、出力
装置4に表示する(ステップA8)。
【0056】[具体的動作の説明]次に、図3に示す具
体例を用いて本実施例の動作を説明する。
【0057】図3に示すように、例えば、プログラム記
憶部32に、プログラム1が登録されている。今、入力
文字列" プログラム1" が、入力装置1から与えられた
とする。
【0058】言語解析処理21は、入力文字列をキーと
して、プログラム記憶部32を検索し,プログラムを読
み込む(ステップA1)。
【0059】読み込んだプログラムに対し、言語規則記
憶部31の最初の言語規則のキーワードは、"if"が記録
されているので、"if"を検索すると、プログラムの1行
目に存在しているので、"if"に関する規則の正誤を検証
する。
【0060】言語規則記憶部31の"if"の規則は、「直
後に"{" が存在する場合、対になる"}" が必要」となっ
ているので、検索された"if"には違反が存在すると判断
する(ステップA2およびA3)。
【0061】次に、違反解析手段22は、違反内容が"i
f"の規則の「直後に"{" が存在する場合、対になる"}"
が必要」となっているので、修正内容記憶部33に修正
内容が記録されているかを調べる。修正内容記憶部33
に対応する修正内容が記憶されているとすると、「"}"
をifの記述の最後に付加」が検出される(ステップA4
およびA5)。
【0062】次に、違反修正手段23は、検出された修
正内容が、「"}" をifの記述の最後に付加」なの
で、"}" を付加する箇所を、「ifの記述の最後」を元
に、プログラムを調べる。「ifの記述の最後」は、プロ
グラムの2行目となっているので、2行目と3行目の間
に"}" を挿入する(ステップA6)。
【0063】次に、修正箇所出力手段24は、修正後の
プログラムと、違反箇所、違反内容、修正内容を、出力
装置4に出力する(ステップA8)。
【0064】[他の実施例]次に、本発明の他の実施例
について図面を参照して詳細に説明する。
【0065】[構成の説明]図4は、本発明の他の実施
例の構成図である。図4を参照すると、本実施例は、デ
ータ処理装置5が、図1に示された実施例におけるデー
タ処理装置2の構成に加え、修正規則登録手段25を有
する点で異なる。
【0066】修正規則登録手段25は、違反の修正内容
を、利用者に追加入力された内容を元に、違反の修正を
行い、入力された内容を、新たな修正規則として登録す
る。本実施例では、修正規則登録手段25は、違反修正
手段23で、修正規則が記録されていなかった違反の修
正内容を、利用者が入力し、入力した内容から違反を修
正する。
【0067】[動作の説明]本実施例の動作を、図面を
参照して詳細に説明する。
【0068】図5は、本発明の他の実施例の動作を示す
フローチャートである。図5のステップA1〜A4、A
7およびA8で示される、本実施例における、言語解析
手段21、違反解析手段22、違反修正手段23および
違反箇所出力手段24の動作は、図1に示された実施例
の各手段21、22、23および24の動作と同一であ
るため、説明は省略する。
【0069】図1に示された実施例では、違反の修正内
容が修正規則記憶部33に登録されていなかった場合、
修正不能としていたが、本実施例では、このような場
合、利用者に修正内容を入力させる(ステップB1)。
【0070】入力した内容と違反内容を関連付けた修正
規則を作成し、修正規則記憶部33に登録する(ステッ
プB2)。
【0071】登録後、入力した内容を違反修正手段23
に通知する。違反修正手段23は、得られた修正内容か
らプログラムを修正する(ステップA6)。
【0072】[具体例の説明]次に、具体例について説
明する。図6のシステムで、”プログラム2”を選択
し、プログラムを取得する(ステップA1)。
【0073】取得したプログラムの違反を検索すると、
1行目に「ifの()内の条件が不正」の違反が検索さ
れる(ステップA2,A3)。
【0074】この違反内容の修正方法を検索すると、検
索は失敗する(ステップA4,A5)。
【0075】修正規則登録手段25は、利用者に違反箇
所および違反内容を提示し、修正内容の入力を促す。
【0076】すなわち、違反箇所の記述が、「if(X
1){」で、違反内容が「()内の条件が不正」とな
っており、修正規則記憶部33に修正内容が存在しない
場合、利用者に修正内容を入力させる。
【0077】そこで、利用者によって、「文字列の間に
条件記号を追加」と入力された場合(ステップB1)、
違反箇所の「if」と、違反内容「()内の条件が不
正」と、修正内容を関連付け、「ifの()内の条件が
不正の修正=文字列の間に条件記号を追加」記憶用の形
式にする。
【0078】記憶形式に加工した情報を、修正規則記憶
部33に登録する(ステップB2)。
【0079】登録後、修正内容の「文字列の間に条件記
号を追加」を、違反修正手段23に通知する。違反修正
手段23以降は、図1で示された実施例と同一のため、
説明は省略する。
【0080】本実施例では、修正内容の検索が失敗した
とき、利用者に修正方法を入力させることで、検索に失
敗した違反内容の修正と、修正内容の登録を実施する。
このため、登録されていない修正内容についても、以後
は修正可能となる。
【0081】本実施例は、検出された違反内容に対応す
る修正内容が、修正規則記憶部に登録されていない場
合、利用者に入力させることで、修正内容を登録するた
め、修正内容が登録されていない違反内容が生じたとき
でも、一度は、利用者が入力しなければならないが、そ
の後、同じ違反内容が生じた場合、自動的に修正を実施
できるという新たな効果を有する。
【0082】また、上述したエラー検出方法を記述した
コンピュータプログラムを格納したCD−ROM等の記
録媒体から、そのプログラムを、コンピュータにインス
トールすることにより、本発明は、容易に実施可能であ
る。
【0083】
【発明の効果】第1の効果は、プログラム言語の規則違
反に対して、修正規則を記憶しておき、解析すること
で、自動的に違反箇所の修正を実施できることである。
この結果、利用者の修正にかかる時間を軽減することが
できる。
【0084】その理由は、違反が生じ易く、修正に時間
が多く必要な言語の規則違反を、違反解析手段により、
違反規則記憶部に記憶された違反の修正内容から、修正
方法を検索し、違反修正手段が、利用者を煩わすことな
くプログラムを修正するためである。
【0085】第2の効果は、検出された違反内容に対応
する修正内容が、修正規則記憶部に登録されていない場
合、新規に修正規則を追加することにより、対応するこ
とができることである。その理由は、利用者に修正規則
を入力させることで、修正内容を登録するため、修正内
容が登録されていない違反内容が生じたときでも、一度
は、利用者が入力しなければならないが、その後、同じ
違反内容が生じた場合、自動的に修正を実施できるため
である。
【図面の簡単な説明】
【図1】本発明の実施例の構成図である。
【図2】本発明の実施例の動作を示すフローチャートで
ある。
【図3】本発明の実施例の具体例の説明図である。
【図4】本発明の他の実施例の構成図である。
【図5】本発明の他の実施例の動作を示すフローチャー
トである。
【図6】本発明の他の実施例の具体例の説明図である。
【符号の説明】
1 入力装置 2 データ処理装置 3 記憶装置 4 出力装置 21 言語解析手段 22 違反解析手段 23 違反修正手段 24 違反箇所出力手段 31 言語規則記憶部 32 プログラム記憶部 33 修正規則記憶部

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】 プログラム言語の規則違反を検出する言
    語解析手段と、 プログラム言語の規則違反に対して修正規則を記憶して
    おく修正規則記憶部と、 該規則違反が検出された場合に、修正規則記憶部に記憶
    された違反の修正内容から、違反の修正方法を検索する
    違反解析手段と、 該修正方法により、自動的にプログラムを修正する違反
    修正手段と、 を有することを特徴とするエラー検出装置。
  2. 【請求項2】 前記違反の修正内容が、前記修正規則記
    憶部に無かった場合、利用者に追加入力された修正内容
    を元に、違反の修正を行い、入力された修正内容から修
    正規則を登録する修正規則登録手段を有することを特徴
    とする請求項1記載のエラー検出装置。
  3. 【請求項3】 プログラム言語を使用するにあたり必要
    な規則を記録している言語規則記憶部(31)と、 利用者が作成したプログラムを記憶しているプログラム
    記憶部(32)と、 修正規則を記憶している修正規則記憶部(33)と、 プログラム記憶部(32)から入力装置(1)で指定さ
    れたプログラムの情報を取得し、言語規則記憶部(3
    1)に記憶されている規則を元に、プログラムで使用さ
    れている言語の違反を解析する言語解析手段(21)
    と、 解析した結果、違反を検出した場合、違反の内容とプロ
    グラムと修正規則記憶部(33)で記憶されている修正
    規則を元に、違反の内容を解析し、修正内容を解析する
    違反解析手段(22)と、 解析した修正内容をプログラムに反映し、プログラム記
    憶部(32)に記録する違反修正手段(23)と、 修正内容を出力装置(4)に出力する違反箇所出力手段
    (24)と、を有することを特徴とするエラー検出装
    置。
  4. 【請求項4】 入力装置(1)と、プログラム制御によ
    り動作するデータ処理装置(2)と、情報を記憶する記
    憶装置(3)と、出力装置(4)と、を有し、 前記記憶装置(3)は、 プログラム言語の規則を、情報としてあらかじめ記憶し
    ている言語規則記憶部(31)と、 利用者が作成したプログラムを記憶しているプログラム
    記憶部(32)と、 プログラム言語の規則違反の修正方法を、情報として、
    あらかじめ記憶している修正規則記憶部(33)と、を
    含み、 前記データ処理装置(2)は、 入力装置(1)から与えられたプログラム名に対するプ
    ログラムをプログラム記憶部(32)から取得し、一致
    したプログラムに対して、言語規則記憶部(31)に記
    憶された各種の言語規則に違反しているかどうかを調
    べ、違反が検出されなかった場合は、そのプログラム
    は、規則に違反していないと認識し、出力装置4に違反
    していないことを出力し、一方、もし、違反が検出され
    た場合には、どの言語規則に違反しているかを違反解析
    手段(22)に通知する言語解析手段(21)と、 言語解析手段(21)が規則違反を検出したとき、通知
    される違反内容を元に、修正規則記憶部(33)から、
    違反に対する修正内容を調べ、修正内容が検出されなか
    った場合、違反箇所と違反内容を、出力装置(4)に表
    示し、修正内容が検出された場合、違反箇所と修正内容
    を、違反修正手段(23)に通知する違反解析手段(2
    2)と、 違反解析手段(22)から通知された修正内容と、言語
    解析手段(21)で検出した違反箇所を元に、プログラ
    ムに修正を加える。修正が終わったプログラムは、プロ
    グラム記憶部(32)に記録する違反修正手段(23)
    と、 違反箇所、違反の内容、修正の終了したプログラムを、
    出力装置(4)に出力する違反箇所出力手段(24)
    と、を有することを特徴とするエラー検出装置。
  5. 【請求項5】 プログラム言語の規則違反に対して、修
    正規則を記憶しておき、該規則違反が検出された場合
    に、違反解析手段により、修正規則記憶部に記憶された
    違反の修正内容から、違反の修正方法を検索し、違反修
    正手段により、自動的にプログラムを修正する、ことを
    特徴とするエラー検出方法。
  6. 【請求項6】 検出された違反内容に対応する修正内容
    が、修正規則記憶部に登録されていない場合、 利用者に修正規則を入力させることで、修正内容を新規
    に登録する、ことを特徴とする請求項5記載のエラー検
    出方法。
  7. 【請求項7】 言語解析手段(21)により、入力装置
    から入力されたプログラム名に該当するプログラムを、
    プログラム記憶部(32)から取得するステップ(A
    1);取得してきたプログラムで使用されている言語
    に、言語規則記憶部(31)に記憶されている規則に対
    する違反が、存在しないかを調べるステップ(A2及び
    A3);言語規則記憶部(31)に記録されている言語
    の規則に対する違反が存在しない場合、違反が存在しな
    い旨を、出力装置(4)に表示するステップ(A7);
    該違反が存在する場合は、違反の箇所と違反の内容が、
    違反解析手段(22)に与えられ、違反解析手段(2
    2)は、言語解析手段(21)で調べた違反の内容を受
    け取り、違反の修正内容が、修正規則記憶部(33)に
    記憶されているかを調べるステップ(A4およびA
    5);違反の修正内容が、修正規則記憶部(33)に記
    憶されていた場合、違反の箇所と違反の修正内容を、違
    反修正手段(23)に与え、違反の修正内容が、修正規
    則記憶部(33)に記憶されていなかった場合、違反解
    析手段(22)は、修正不能と判断し、違反箇所と違反
    内容を、出力装置(4)に表示するステップ(A9);
    次に、違反修正手段(23)は、違反解析手段(22)
    で調べた修正内容と、言語解析手段(21)で検出した
    違反箇所を受け取り、プログラムの修正箇所を解析し、
    プログラムに修正を実施するステップ(A6);修正実
    施後、修正を実施したプログラムをプログラム記憶部
    (32)に記録し、違反箇所出力手段(24)は、修正
    したプログラムと、違反箇所、違反内容、修正内容を、
    出力装置(4)に表示するステップ(A8);を有する
    ことを特徴とするエラー検出方法。
  8. 【請求項8】 違反の修正内容が修正規則記憶部(3
    3)に登録されていなかった場合、利用者に修正内容を
    入力させるステップ(B1);入力した内容と違反内容
    を関連付けた修正規則を作成し、修正規則記憶部(3
    3)に登録するステップ(B2);を有することを特徴
    とする請求項7記載のエラー検出方法。
  9. 【請求項9】 請求項5〜8のいずれかに記載のエラー
    検出方法を記述したコンピュータプログラムを格納した
    ことを特徴とする記録媒体。
JP10094627A 1998-04-07 1998-04-07 エラー検出装置及びエラー検出方法及び記録媒体 Pending JPH11296366A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10094627A JPH11296366A (ja) 1998-04-07 1998-04-07 エラー検出装置及びエラー検出方法及び記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10094627A JPH11296366A (ja) 1998-04-07 1998-04-07 エラー検出装置及びエラー検出方法及び記録媒体

Publications (1)

Publication Number Publication Date
JPH11296366A true JPH11296366A (ja) 1999-10-29

Family

ID=14115508

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10094627A Pending JPH11296366A (ja) 1998-04-07 1998-04-07 エラー検出装置及びエラー検出方法及び記録媒体

Country Status (1)

Country Link
JP (1) JPH11296366A (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008020972A (ja) * 2006-07-11 2008-01-31 Hitachi Ltd ソフトウエア解析システム
JP2010067103A (ja) * 2008-09-12 2010-03-25 Nec Corp プログラムのエラー情報出力装置、エラー情報出力方法およびエラー情報出力プログラム
JP2010140407A (ja) * 2008-12-15 2010-06-24 Nomura Research Institute Ltd ソースコード検査装置
CN105005343A (zh) * 2014-04-23 2015-10-28 英飞凌科技奥地利有限公司 用于数字电压调节器控制器的基于规则的寄存器检查
JP2015197902A (ja) * 2014-04-03 2015-11-09 日本電信電話株式会社 オンラインビルドシステム、オンラインビルド方法およびオンラインビルドプログラム
JP2017045446A (ja) * 2015-08-25 2017-03-02 富士通株式会社 ソフトウェアプログラムを修復する方法、記憶媒体及びシステム
JP2018084939A (ja) * 2016-11-22 2018-05-31 富士通株式会社 修正支援プログラム、修正支援方法、修正支援装置、およびコンパイラ
JP2020126603A (ja) * 2019-02-05 2020-08-20 富士通株式会社 自動候補修正パッチ生成

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008020972A (ja) * 2006-07-11 2008-01-31 Hitachi Ltd ソフトウエア解析システム
JP2010067103A (ja) * 2008-09-12 2010-03-25 Nec Corp プログラムのエラー情報出力装置、エラー情報出力方法およびエラー情報出力プログラム
JP2010140407A (ja) * 2008-12-15 2010-06-24 Nomura Research Institute Ltd ソースコード検査装置
JP2015197902A (ja) * 2014-04-03 2015-11-09 日本電信電話株式会社 オンラインビルドシステム、オンラインビルド方法およびオンラインビルドプログラム
CN105005343A (zh) * 2014-04-23 2015-10-28 英飞凌科技奥地利有限公司 用于数字电压调节器控制器的基于规则的寄存器检查
US9990584B2 (en) 2014-04-23 2018-06-05 Infineon Technologies Austria Ag Rule-based register checking for digital voltage regulator controllers
JP2017045446A (ja) * 2015-08-25 2017-03-02 富士通株式会社 ソフトウェアプログラムを修復する方法、記憶媒体及びシステム
JP2018084939A (ja) * 2016-11-22 2018-05-31 富士通株式会社 修正支援プログラム、修正支援方法、修正支援装置、およびコンパイラ
US10402304B2 (en) 2016-11-22 2019-09-03 Fujitsu Limited Non-transitory computer-readable storage medium, correction support method and correction support device
JP2020126603A (ja) * 2019-02-05 2020-08-20 富士通株式会社 自動候補修正パッチ生成

Similar Documents

Publication Publication Date Title
US8219381B2 (en) Dictionary registration apparatus, dictionary registration method, and computer product
US10261884B2 (en) Method for correcting violation of source code and computer readable recording medium having program performing the same
JP4947861B2 (ja) 自然言語処理装置およびその制御方法ならびにプログラム
KR101507637B1 (ko) 오역의 검출을 지원하는 장치 및 방법
US20070033579A1 (en) System and method for searching for multiple types of errors in file following translation into a new natural language
JPH11296366A (ja) エラー検出装置及びエラー検出方法及び記録媒体
JPH11203298A (ja) 投稿文字情報事前チェック方法及び装置及び投稿文字情報事前チェックプログラムを格納した記憶媒体
JP2016057715A (ja) 図形式プログラム解析装置
US7379862B1 (en) Method and apparatus for analyzing and debugging natural language parses
JP3362036B2 (ja) 機械翻訳方法および装置
JPH1185536A (ja) 原始プログラムのエラー自動修正装置及び方法
JP3599734B2 (ja) 文章校正装置およびその方法
JP2776069B2 (ja) 文章検査装置
JP3555464B2 (ja) 文書添削支援装置及びそれに用いる文書添削支援方法並びにその制御プログラムを記録した記録媒体
JPH06324779A (ja) 情報処理装置
JPH06259467A (ja) 機械翻訳装置
JP2004206501A (ja) エラーメッセージ出力制御システムと方法およびコンパイラ
JPH076176A (ja) 機械翻訳装置
JP2902138B2 (ja) 誤読文字修正方法
JP3705825B2 (ja) 機械翻訳装置ならびにその装置を用いたテキスト区切り方法
JP2008262330A (ja) プログラム誤修正検知方法および装置
JP2004171397A (ja) 翻訳支援装置
JP3236868B2 (ja) 文書処理装置
JPH07200592A (ja) 文章処理装置
JPH09223143A (ja) 文書情報処理装置