JPS63245738A - Automatic correcting system for data item with undefined program - Google Patents
Automatic correcting system for data item with undefined programInfo
- Publication number
- JPS63245738A JPS63245738A JP62081540A JP8154087A JPS63245738A JP S63245738 A JPS63245738 A JP S63245738A JP 62081540 A JP62081540 A JP 62081540A JP 8154087 A JP8154087 A JP 8154087A JP S63245738 A JPS63245738 A JP S63245738A
- Authority
- JP
- Japan
- Prior art keywords
- text
- error
- data
- corrected
- 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
- 238000012545 processing Methods 0.000 claims description 44
- 238000012937 correction Methods 0.000 claims description 22
- 238000000034 method Methods 0.000 claims description 7
- 239000000284 extract Substances 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明はプログラム未定義データ項目の自動修正方式、
特にコンパイラによるソースプログラムの解析時におけ
るプログラム未定義データ項目の自動修正方式に関する
。[Detailed Description of the Invention] [Industrial Application Field] The present invention provides an automatic correction method for program undefined data items;
In particular, it relates to a method for automatically correcting program undefined data items when a source program is analyzed by a compiler.
従来、コンパイラがソースプログラムを解析する場合、
コンパイラはコンパイラが持つ予約語およびソースプロ
グラムで宣言されたデータ定義項目をもとに文法チェッ
クを行い、それ以外に出現された項目は未定義項目とし
てメツセージを出力している。そこで操作者はそれがつ
づりミス等である場合でも見頃にそのメツセージをチェ
ックして、ソースプログラムを再修正し、再度”コンパ
イルを行なっている。Traditionally, when a compiler analyzes a source program,
The compiler performs a syntax check based on reserved words owned by the compiler and data definition items declared in the source program, and outputs messages regarding items that appear other than those as undefined items. Therefore, even if the message is a misspelling, the operator checks the message at the peak of the season, re-corrects the source program, and compiles it again.
上述した従来の方式では、単純なミス(つづりミス等)
であっても何度も同じ作業を行なう必要があり、デバッ
グ作業において効率や操作性が悪いという問題点を有し
ている。With the conventional method described above, simple mistakes (such as misspellings)
Even so, it is necessary to perform the same work over and over again, and there is a problem in that efficiency and operability are poor in debugging work.
本発明の目的は、ソースプログラムの解析において、項
目中の一部の文字のミスと考えられるものは類似の予約
語またはデータ定義項目に自動修正することにより、効
率化されたデバッグ作業が行なえるプログラム未定義デ
ータ項目の自動修正方式を提供することにある。An object of the present invention is to automatically correct some characters in an item that are considered to be incorrect when analyzing a source program to a similar reserved word or data definition item, thereby making debugging work more efficient. The object of the present invention is to provide an automatic correction method for program-undefined data items.
本発明のプログラム未定義データ項目の自動修正方式は
、プログラム解析処理において、プログラムの未定義項
目を取りだす構文解析処理手段と、この構文解析処理手
段から取り出されたプログラム未定義項目をシステム用
語と定義したデータエリア名とから最適値を取出すエラ
ー修正処理手段と、このエラー修正処理手段から取出し
た最適値をテキスト中に入替えるテキスト入替え手段と
、このテキスト入替え手段により入替えられたソースプ
ログラムのエラー状態を解析するエラー状態判別処理手
段とを有して構成される。The automatic correction method for program undefined data items of the present invention includes a syntax analysis processing means for extracting undefined items of the program in program analysis processing, and defining the program undefined items extracted from the syntax analysis processing means as system terms. an error correction processing means for extracting an optimum value from the data area name, a text replacement means for replacing the optimum value extracted from the error correction processing means in a text, and an error state of the source program replaced by the text replacement means. and an error state determination processing means for analyzing the error state.
次に、本発明について図面を参照して説明する。 Next, the present invention will be explained with reference to the drawings.
第1図は本発明の一実施例の構成図である。図において
、外部記憶装置としてテキスト格納ファイル11.シス
テム用語格納ファイル12.エラーテキスト格納ファイ
ル13.データエリア名格納ファイル14.修正テキス
ト格納ファイル15゜修正不可テキスト格納ファイル1
6および修正済ソースプログラムテキストファイル17
を有している。また処理装置として、構文解析処理装置
21、エラー状態判別処理装置22.プログラムデータ
エリア名格納処理装置23.エラーテキスト格納処理装
置24.構文エラー修正処理装置25゜データ定義エラ
ー修正処理装置26.テキスト入替え処理装置27およ
び終了処理装置28を有して構成されている。FIG. 1 is a block diagram of an embodiment of the present invention. In the figure, a text storage file 11. is used as an external storage device. System terminology storage file 12. Error text storage file 13. Data area name storage file 14. Modified text storage file 15゜Uneditable text storage file 1
6 and modified source program text file 17
have. Further, as processing devices, a syntax analysis processing device 21, an error state determination processing device 22. Program data area name storage processing device 23. Error text storage processing device 24. Syntax error correction processing device 25° Data definition error correction processing device 26. It is configured to include a text replacement processing device 27 and an end processing device 28.
以上の構成において、テキスト格納ファイル11は読込
まれたソーステキストプログラム10を一時格納するフ
ァイルであり、自動修正されたテキスト行によってテキ
ストを修正する際の元データとしてこのファイルに格納
されたテキストデータが使用され、修正されたテキスト
データは修正済ソースプログラムテキスト格納ファイル
17に格納される。システム用語格納ファイル12はコ
ンパイラが持つ予約語およびシステムで定めた用語が格
納されるファイルである。エラーテキスト格納ファイル
13はエラーのあったテキスト行およびエラー内容が格
納されるファイルであり、修正はこのデータに対して行
なわれる。データエリア名格納ファイル14はソースプ
ログラムにより定義されているデータエリア名を格納す
るファイルであり、エラーのあったテキストを修正する
際に参照される。修正テキスト格納ファイル15には修
正処理によって修正されたテキストが格納される。修正
不可テキスト格納ファイル16には修正処理を行なおう
としたが修正不可と判定されたテキスト行が格納される
。また、構文解析処理装置21はソースプログラムの文
法上のチェックを行ないエラーテキストをエラー状態判
別処理装置22に送ると共に、プログラムで定義された
データエリア名をプログラムデータエリア名格納処理装
置23を介してデータエリア名格納ファイル14に格納
させる。エラー状態判別処理装置22は送られて来たエ
ラーテキストからエラー行ならびにその詳細内容を調べ
、エラーテキスト格納処理装置24を介してそれらの情
報をエラーテキスト格納ファイルに格納させると共に、
エラーテキストが既に本発明により処理された修正済ソ
ーステキストであるかどうかの判別を行ない、修正済で
あるならば終了処理装置28を介して修正前エラーの詳
細および修正箇所、修正内容、さらに修正後のエラー情
報等を解析結果リスト30として出力させる。構文エラ
ー修正処理装置25はエラーテキスト格納ファイル13
に格納されたエラー情報としてシステム用語格納ファイ
ル12の内容とのパターンマツチングを行ない、指定さ
れた判別率から修正可能かを判断し、修正可能であれば
エラー箇所をシステム用語に基づいて修正を行なう装置
である。データ定義エラー修正処理装置26は構文エラ
ー修正処理装置25によって修正できなかったエラー箇
所について、データエリア名格納ファイル14に登録さ
れているデータエリア名とでパターンマツチングを行な
い、指定された判別率から修正可能かを判断し、修正可
能であればエラー個所をデータエリア名に基づいて修正
を行なう装置である。テキスト入替え処理装置27はテ
キスト格納ファイル11に格納されたソースプログラム
に、修正されたテキスト行により変更を加え、修正済テ
キストとして修正済ソースプログラムテキスト格納ファ
イル17に格納する装置である。In the above configuration, the text storage file 11 is a file that temporarily stores the loaded source text program 10, and the text data stored in this file is used as the original data when correcting the text using automatically corrected text lines. The used and modified text data is stored in the modified source program text storage file 17. The system terminology storage file 12 is a file in which reserved words possessed by the compiler and terms defined by the system are stored. The error text storage file 13 is a file in which text lines with errors and error contents are stored, and corrections are made to this data. The data area name storage file 14 is a file that stores data area names defined by the source program, and is referenced when correcting text with an error. The modified text storage file 15 stores text modified by the modification process. The unmodifiable text storage file 16 stores text lines for which modification processing was attempted but were determined to be unmodifiable. Furthermore, the syntax analysis processing device 21 performs a grammatical check on the source program and sends the error text to the error state determination processing device 22, and also sends the data area name defined in the program via the program data area name storage processing device 23. It is stored in the data area name storage file 14. The error state determination processing device 22 examines the error line and its detailed contents from the sent error text, stores the information in an error text storage file via the error text storage processing device 24, and
It is determined whether the error text is a corrected source text that has already been processed by the present invention, and if it has been corrected, the details of the error before correction, the correction location, the correction content, and further correction are performed via the final processing device 28. Subsequent error information and the like are output as an analysis result list 30. The syntax error correction processing device 25 uses the error text storage file 13
Pattern matching is performed with the contents of the system terminology storage file 12 as error information stored in the system terminology, and it is determined whether correction is possible based on the specified discrimination rate.If correctable, the error location is corrected based on the system terminology. It is a device that performs The data definition error correction processing device 26 performs pattern matching on the error portions that could not be corrected by the syntax error correction processing device 25 with the data area names registered in the data area name storage file 14, and achieves a specified discrimination rate. This device determines whether the error can be corrected based on the data area name, and if it is correctable, corrects the error location based on the data area name. The text replacement processing device 27 is a device that changes the source program stored in the text storage file 11 by using modified text lines, and stores the modified text in the modified source program text storage file 17 as modified text.
次に第1図の動作について説明を進めると、先ずソース
テキストプログラム10がテキスト格納ファイル11に
格納される。次いで構文解析処理装置21により文法チ
ェックが行なわれる。その際、プログラムで宣言されて
いるデータエリア名がプログラムデータエリア名格納処
理装置23によりプログラムエリア名格納ファイル14
に格納される。一方、構文解析処理装置21で文法チェ
ックが行なわれたソースプログラムは、エラー状態判別
処理装置22により修正後のテキストデータか、生のテ
キストデータであるかが判断され、修正後のテキストデ
ータであれば終了処理装置28で解析結果を解析結果リ
スト30として出力される。この場合には以上でシステ
ム処理が終了させるが、生のテキストデータである場合
には、エラーテキスト格納処理装置24によりエラーの
あったテキスト行のみエラーテキスト格納ファイル13
に格納される。次いで構文エラー修正処理装置25は、
エラーテキスト格納ファイル13に格納されたエラーの
あったテキスト行の情報とシステム用語格納ファイル1
2のシステム用語とから未定義システム用語を検出し、
更にこの未定義システム用語に最も近いシステム用語を
選定して、判別率が一定値以上であった場合には、その
テキストをシステム用語ファイル13のデータにより修
正して修正テキスト格納ファイル15に格納する。判別
率が一定値以下であった場合には、このテキストデータ
はデータ定義エラー修正処理装置26により、データエ
リア名格納ファイル14の格納データとつき合せが行な
われ、前記と同様に最も近いデータとの間の判別率が一
定値以上であれば、データエリア名格納ファイル14の
データに修正されて、修正テキスト格納ファイル15に
格納される。判別率が一定値以下であれば修正不可テキ
ストとして修正不可テキスト格納ファイル16に格納さ
れる。次いで、テキスト入替え処理装置27は修正テキ
スト格納ファイル15.修正不可テキスト格納ファイル
16の情報をもとに、テキスト格納ファイル11のデー
タを修正した後、修正テキストデータとして修正済ソー
スプログラムテキスト格納ファイル17に格納し、再度
、構文解析処理装置21に制御が渡され、繰返して処理
が行なわれる。Next, to proceed with the explanation of the operation shown in FIG. 1, first, the source text program 10 is stored in the text storage file 11. Next, the syntax analysis processing device 21 performs a grammar check. At that time, the data area name declared in the program is transferred to the program area name storage file 14 by the program data area name storage processing device 23.
is stored in On the other hand, the source program whose syntax has been checked by the syntax analysis processing device 21 is judged by the error state determination processing device 22 as to whether it is corrected text data or raw text data. For example, the analysis results are output by the termination processing device 28 as an analysis result list 30. In this case, the system processing ends above, but if it is raw text data, the error text storage processing device 24 processes only the text line with the error into the error text storage file 13.
is stored in Then, the syntax error correction processing unit 25
Information on the text line with the error stored in the error text storage file 13 and system terminology storage file 1
Detect undefined system terms from the system terms in 2.
Furthermore, the system term closest to this undefined system term is selected, and if the discrimination rate is above a certain value, the text is corrected using the data in the system term file 13 and stored in the corrected text storage file 15. . If the discrimination rate is below a certain value, this text data is compared with the data stored in the data area name storage file 14 by the data definition error correction processing device 26, and is compared with the closest data as described above. If the discrimination rate between is equal to or higher than a certain value, the data is corrected to the data in the data area name storage file 14 and stored in the corrected text storage file 15. If the discrimination rate is below a certain value, the text is stored in the unmodifiable text storage file 16 as an unmodifiable text. Next, the text replacement processing device 27 executes the modified text storage file 15. After modifying the data in the text storage file 11 based on the information in the non-modifiable text storage file 16, the data is stored as modified text data in the modified source program text storage file 17, and the syntax analysis processing device 21 is again controlled. It is passed and processed repeatedly.
なお上記の判別率は単に所定の文字数とその中で一致し
た文字数との比を用いるものであっても構わない。Note that the above discrimination rate may simply be a ratio between a predetermined number of characters and the number of matching characters.
〔発明の効果〕
以上詳細に説明したとおり、本発明はプログラム解析処
理装置におけるソースプログラムの解析において、ソー
スプログラム内の未定義項目を抽出し、自動的に最適値
と考えられるものと入替えることにより、単純な記入ミ
スが自動的に修正されるので、ソースプログラムの人手
による修正作業を大幅に少なくできると云う効果がある
。[Effects of the Invention] As explained in detail above, the present invention extracts undefined items in a source program and automatically replaces them with what is considered to be the optimal value when analyzing a source program in a program analysis processing device. Since simple entry errors are automatically corrected, there is an effect that the manual correction work of the source program can be greatly reduced.
第1図は本発明の一実施例の構成図である。 FIG. 1 is a block diagram of an embodiment of the present invention.
Claims (1)
を取りだす構文解析処理手段と、この構文解析処理手段
から取り出されたプログラム未定義項目をシステム用語
と定義したデータエリア名とから最適値を取出すエラー
修正処理手段と、このエラー修正処理手段から取出した
最適値をテキスト中に入替えるテキスト入替え手段と、
このテキスト入替え手段により入替えられたソースプロ
グラムのエラー状態を解析するエラー状態判別処理手段
とを有することを特徴とするプログラム未定義データ項
目の自動修正方式。In program analysis processing, a syntax analysis processing means extracts undefined items of the program, and an error correction processing means extracts optimum values from data area names defined as system terms for the program undefined items extracted from the syntax analysis processing means. and text replacement means for replacing the optimum value retrieved from the error correction processing means into the text;
An automatic correction method for undefined data items in a program, comprising error state determination processing means for analyzing an error state of a source program replaced by the text replacement means.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62081540A JPS63245738A (en) | 1987-04-01 | 1987-04-01 | Automatic correcting system for data item with undefined program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62081540A JPS63245738A (en) | 1987-04-01 | 1987-04-01 | Automatic correcting system for data item with undefined program |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS63245738A true JPS63245738A (en) | 1988-10-12 |
Family
ID=13749129
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP62081540A Pending JPS63245738A (en) | 1987-04-01 | 1987-04-01 | Automatic correcting system for data item with undefined program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS63245738A (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07160494A (en) * | 1993-12-08 | 1995-06-23 | Nec Corp | Correction device for input character string at coding time |
JP2001142738A (en) * | 1999-09-29 | 2001-05-25 | Lucent Technol Inc | Scripter and interpreter |
JP2010067103A (en) * | 2008-09-12 | 2010-03-25 | Nec Corp | Error information output device, error information output method and error output program for program |
JP2016038718A (en) * | 2014-08-07 | 2016-03-22 | 日本電気株式会社 | Correction device, translation device, correction method, and computer program |
JP2017151977A (en) * | 2016-02-23 | 2017-08-31 | 富士通株式会社 | Method and program for repairing software program |
-
1987
- 1987-04-01 JP JP62081540A patent/JPS63245738A/en active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07160494A (en) * | 1993-12-08 | 1995-06-23 | Nec Corp | Correction device for input character string at coding time |
JP2001142738A (en) * | 1999-09-29 | 2001-05-25 | Lucent Technol Inc | Scripter and interpreter |
JP2010067103A (en) * | 2008-09-12 | 2010-03-25 | Nec Corp | Error information output device, error information output method and error output program for program |
JP2016038718A (en) * | 2014-08-07 | 2016-03-22 | 日本電気株式会社 | Correction device, translation device, correction method, and computer program |
JP2017151977A (en) * | 2016-02-23 | 2017-08-31 | 富士通株式会社 | Method and program for repairing software program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7080360B2 (en) | Breakpoint safety net | |
EP3422181B1 (en) | Method and device for generating code assistance information | |
JPS63245738A (en) | Automatic correcting system for data item with undefined program | |
US9921857B1 (en) | Compiler extension for correcting error messages | |
US20190018663A1 (en) | Code lineage tool | |
JPS5922140A (en) | Interactive compiling system | |
JP2000029678A (en) | Program language conversion method, device therefor and recording medium | |
JPH05197561A (en) | Compilation system | |
JPH04257029A (en) | Editor | |
JPH03161844A (en) | Spelling correcting system | |
JPH04148336A (en) | Fortran program grammar analyzing system | |
JP2001125793A (en) | Compiler system, compile method and recording medium | |
JP2742280B2 (en) | Japanese automatic analyzer | |
JP3309418B2 (en) | Declaration analyzer | |
JPS63228341A (en) | Program syntax checking system | |
JPH08249193A (en) | Checking system for language specification range of program | |
JPH02187828A (en) | Error skipping system | |
JPH09293074A (en) | Document preparation device and misinput correcting method | |
JPH01149138A (en) | Error correcting system in compiler | |
JPH06324855A (en) | Source program bug analyzing system | |
JPH04316133A (en) | System for processing program interpreter | |
JPH01296347A (en) | Error message outputting system for compiler | |
JPH06236261A (en) | Separating system for procedure language program component | |
JPH01213752A (en) | Mechanical translation device | |
JPH07306801A (en) | Program testing system |