JPH0644081A - コンパイラのエラーメッセージ出力方式 - Google Patents
コンパイラのエラーメッセージ出力方式Info
- Publication number
- JPH0644081A JPH0644081A JP3297463A JP29746391A JPH0644081A JP H0644081 A JPH0644081 A JP H0644081A JP 3297463 A JP3297463 A JP 3297463A JP 29746391 A JP29746391 A JP 29746391A JP H0644081 A JPH0644081 A JP H0644081A
- Authority
- JP
- Japan
- Prior art keywords
- error
- error message
- information
- compiler
- symbol table
- 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.)
- Withdrawn
Links
Landscapes
- Devices For Executing Special Programs (AREA)
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】
【目的】 プログラム開発時においてコンパイルエラー
の早期解決に役立てる。 【構成】 構文解析手段2は、PASCAL言語で記述
された入力ソースプログラム1を入力し、PASCAL
言語の構文規則に従い構文解析を行う。シンボルテーブ
ル登録手段3は変数名および型名の情報をシンボルテー
ブル8に登録する。変数名および型名の不一致等により
検出したエラーのは場合は対応する変数名または型名の
情報としてシンボルテーブル8に登録されているインデ
ックスをエラーテーブル10の情報とエラーメッセージ
テーブル9の情報とシンボルテーブル8の情報を編集
し、エラーメッセージ出力手段6により、出力リスト7
に結果を出力する。
の早期解決に役立てる。 【構成】 構文解析手段2は、PASCAL言語で記述
された入力ソースプログラム1を入力し、PASCAL
言語の構文規則に従い構文解析を行う。シンボルテーブ
ル登録手段3は変数名および型名の情報をシンボルテー
ブル8に登録する。変数名および型名の不一致等により
検出したエラーのは場合は対応する変数名または型名の
情報としてシンボルテーブル8に登録されているインデ
ックスをエラーテーブル10の情報とエラーメッセージ
テーブル9の情報とシンボルテーブル8の情報を編集
し、エラーメッセージ出力手段6により、出力リスト7
に結果を出力する。
Description
【0001】
【産業上の利用分野】本発明は、PASCAL言語で記
述されたソースプログラムの構文解析時にエラーが検出
された場合、変数名及び型名の不一致等からエラーが検
出された場合は、関連する変数名と型名およびソース行
とをエラーメッセージとともに出力することを可能とす
る、コンパイラのエラーメッセージ出力方式に関するも
のである。
述されたソースプログラムの構文解析時にエラーが検出
された場合、変数名及び型名の不一致等からエラーが検
出された場合は、関連する変数名と型名およびソース行
とをエラーメッセージとともに出力することを可能とす
る、コンパイラのエラーメッセージ出力方式に関するも
のである。
【0002】
【従来の技術】従来、PASCAL言語で記述されたソ
ースプログラムをコンパイルした結果、検出されたコン
パイルエラーを出力する場合には、エラーのあった行
と、その行のどこの位置でエラーが発見されたかを示す
記号と、エラーの種類を示すエラー番号と、エラーメッ
セージを1つの単位としてエラーメッセージを出力して
いる。
ースプログラムをコンパイルした結果、検出されたコン
パイルエラーを出力する場合には、エラーのあった行
と、その行のどこの位置でエラーが発見されたかを示す
記号と、エラーの種類を示すエラー番号と、エラーメッ
セージを1つの単位としてエラーメッセージを出力して
いる。
【0003】
【発明が解決しようとする課題】しかしながら、従来、
PASCAL言語で記述されたソースプログラムをコン
パイルした結果、検出したコンパイルエラーを出力する
場合には、エラーのあった行と、その行のどこの位置で
エラーが発見されたかを示す記号と、エラーの種類を示
すエラー番号と、エラーメッセージを1つの単位として
エラーメッセージを出力しているため、1つのコンパイ
ルエラーを解決するためには、変数及び型の宣言部を参
照しなければならないといった作業が生じる欠点があ
る。そこで、本発明の技術的課題は、上記欠点に鑑み、
コンパイルエラーを検出した位置に、変数及び型の不一
致等に関するエラーであればエラーメッセージとともに
その変数名と型名とそのソース行を表示することができ
るため、コンパイラのエラーメッセージ出力方式を提供
することである。
PASCAL言語で記述されたソースプログラムをコン
パイルした結果、検出したコンパイルエラーを出力する
場合には、エラーのあった行と、その行のどこの位置で
エラーが発見されたかを示す記号と、エラーの種類を示
すエラー番号と、エラーメッセージを1つの単位として
エラーメッセージを出力しているため、1つのコンパイ
ルエラーを解決するためには、変数及び型の宣言部を参
照しなければならないといった作業が生じる欠点があ
る。そこで、本発明の技術的課題は、上記欠点に鑑み、
コンパイルエラーを検出した位置に、変数及び型の不一
致等に関するエラーであればエラーメッセージとともに
その変数名と型名とそのソース行を表示することができ
るため、コンパイラのエラーメッセージ出力方式を提供
することである。
【0004】
【課題を解決するための手段】本発明によれば、PAS
CAL言語で記述されたソースプログラムのコンパイル
時に出力されるエラーメッセージ出力方式において、前
記ソースプログラムの構文を分析して、前記PASCA
L言語の構文規則とは異なる場合には、コンパイルエラ
ーとして認識する構文分析手段と、該構文分析手段によ
り解析された情報をシンボルテーブルに登録するシンボ
ルテーブル登録手段と、前記コンパイルエラーに関する
エラー情報をエラーテーブルに登録するエラーテーブル
登録手段と前記コンパイルエラーに対応するエラーメッ
セージを予め格納するエラーメッセージテーブルと、前
記シンボルテーブルに登録されている情報を引用すると
共に、前記エラーテーブルに登録されている前記コンパ
イルエラーに対応したエラーメッセージを、前記エラー
メッセージテーブルから引用して、所定の形式に編集す
るエラーメッセージ編集手段とを有することを特徴とす
るコンパイラのエラーメッセージ出力方式が得られる。
CAL言語で記述されたソースプログラムのコンパイル
時に出力されるエラーメッセージ出力方式において、前
記ソースプログラムの構文を分析して、前記PASCA
L言語の構文規則とは異なる場合には、コンパイルエラ
ーとして認識する構文分析手段と、該構文分析手段によ
り解析された情報をシンボルテーブルに登録するシンボ
ルテーブル登録手段と、前記コンパイルエラーに関する
エラー情報をエラーテーブルに登録するエラーテーブル
登録手段と前記コンパイルエラーに対応するエラーメッ
セージを予め格納するエラーメッセージテーブルと、前
記シンボルテーブルに登録されている情報を引用すると
共に、前記エラーテーブルに登録されている前記コンパ
イルエラーに対応したエラーメッセージを、前記エラー
メッセージテーブルから引用して、所定の形式に編集す
るエラーメッセージ編集手段とを有することを特徴とす
るコンパイラのエラーメッセージ出力方式が得られる。
【0005】また、本発明によれば、前記のコンパイラ
のエラーメッセージ出力方式において、前記シンボルテ
ーブルに登録される情報は、前記ソースプログラムの変
数名および型名を含むことを特徴とするコンパイラのエ
ラーメッセージ出力方式が得られる。
のエラーメッセージ出力方式において、前記シンボルテ
ーブルに登録される情報は、前記ソースプログラムの変
数名および型名を含むことを特徴とするコンパイラのエ
ラーメッセージ出力方式が得られる。
【0006】また、本発明によれば、前記のコンパイラ
のエラーメッセージ出力方式において、前記エラー情報
は、コンパイルエラーのあったライン数と、カラム位置
とコンパイルエラーの番号とを含み、前記ソースプログ
ラムの変数名および型名に関連したコンパイルエラーの
場合は、前記シンボルテーブルに規定されるインデック
ス番号を含むことを特徴とするコンパイラのエラーメッ
セージ出力方式が得られる。
のエラーメッセージ出力方式において、前記エラー情報
は、コンパイルエラーのあったライン数と、カラム位置
とコンパイルエラーの番号とを含み、前記ソースプログ
ラムの変数名および型名に関連したコンパイルエラーの
場合は、前記シンボルテーブルに規定されるインデック
ス番号を含むことを特徴とするコンパイラのエラーメッ
セージ出力方式が得られる。
【0007】即ち、本発明のコンパイラのエラーメッセ
ージ出力方式では、入力されたソースプログラム構文を
解析する構文解析手段と、ソースプログラム中の宣言部
で宣言された変数名及び型名等の情報を作成するシンボ
ルテーブル登録手段と、シンボルテーブル登録手段によ
り作成されるシンボルテーブルと、コンパイラのエラー
メッセージを含むエラーメッセージテーブルと、コンパ
イラの構文解析手段によって検出したエラーとシンボル
テーブル登録手段により登録されたシンボルテーブルを
エラーテーブルに登録するエラーテーブル登録手段と、
エラーテーブル登録手段により情報が登録されるエラー
テーブルと、エラーテーブル登録手段により登録された
エラーテーブルの内容を編集するエラーメッセージ編集
手段と、エラーメッセージ編集手段により編集されたエ
ラーメッセージを出力するエラーメッセージ出力手段と
を有している。
ージ出力方式では、入力されたソースプログラム構文を
解析する構文解析手段と、ソースプログラム中の宣言部
で宣言された変数名及び型名等の情報を作成するシンボ
ルテーブル登録手段と、シンボルテーブル登録手段によ
り作成されるシンボルテーブルと、コンパイラのエラー
メッセージを含むエラーメッセージテーブルと、コンパ
イラの構文解析手段によって検出したエラーとシンボル
テーブル登録手段により登録されたシンボルテーブルを
エラーテーブルに登録するエラーテーブル登録手段と、
エラーテーブル登録手段により情報が登録されるエラー
テーブルと、エラーテーブル登録手段により登録された
エラーテーブルの内容を編集するエラーメッセージ編集
手段と、エラーメッセージ編集手段により編集されたエ
ラーメッセージを出力するエラーメッセージ出力手段と
を有している。
【0008】
【実施例】次に本発明の実施例について図面を参照して
詳細に説明する。
詳細に説明する。
【0009】図1は本実施例によるコンパイラのエラー
メッセージ出力方式を実施する一実施例を示すブロック
図である。
メッセージ出力方式を実施する一実施例を示すブロック
図である。
【0010】同図においてコンパイラのエラーメッセー
ジ出力方式は、入力ソースプログラム1、構文解析手段
2、シンボルテーブル登録手段3、エラーテーブル登録
手段4、エラーメッセージ編集手段5、エラーメッセー
ジ出力手段6、出力リスト7、シンボルテーブル8、エ
ラーメッセージテーブル9、エラーテーブル10、から
構成されている。
ジ出力方式は、入力ソースプログラム1、構文解析手段
2、シンボルテーブル登録手段3、エラーテーブル登録
手段4、エラーメッセージ編集手段5、エラーメッセー
ジ出力手段6、出力リスト7、シンボルテーブル8、エ
ラーメッセージテーブル9、エラーテーブル10、から
構成されている。
【0011】構文解析手段2は、PASCAL言語で記
述された入力ソースプログラム1を入力し、PASCA
L言語の構文規則に従い構文解析を行い、構文規則に従
わない場合は、コンパイルエラーとして認識し、コンパ
イルエラーがあった入力ソースプログラム1のソース行
とカラム位置とコンパイルエラーの番号を出力する。
述された入力ソースプログラム1を入力し、PASCA
L言語の構文規則に従い構文解析を行い、構文規則に従
わない場合は、コンパイルエラーとして認識し、コンパ
イルエラーがあった入力ソースプログラム1のソース行
とカラム位置とコンパイルエラーの番号を出力する。
【0012】またシンボルテーブル登録手段3は、変数
名と型名およびそのソース行をシンボルテーブル8に登
録する。
名と型名およびそのソース行をシンボルテーブル8に登
録する。
【0013】変数名および型名の不一致等により検出し
たエラーの場合は、対応する変数名または型名の情報と
してシンボルテーブル8に登録されているインデックス
をエラーテーブル登録手段4によりエラーテーブル10
に登録する。
たエラーの場合は、対応する変数名または型名の情報と
してシンボルテーブル8に登録されているインデックス
をエラーテーブル登録手段4によりエラーテーブル10
に登録する。
【0014】エラーメッセージ編集手段5は、エラーテ
ーブル10に登録されている情報とコンパイルエラーの
番号に対応したエラーメッセージをエラーメッセージテ
ーブル9から引用し、さらに変数名および型名に対応し
た情報をシンボルテーブル8から引用し、その結果を編
集する。
ーブル10に登録されている情報とコンパイルエラーの
番号に対応したエラーメッセージをエラーメッセージテ
ーブル9から引用し、さらに変数名および型名に対応し
た情報をシンボルテーブル8から引用し、その結果を編
集する。
【0015】編集された結果はエラーメッセージ出力手
段6により、出力リスト7に結果を出力する。
段6により、出力リスト7に結果を出力する。
【0016】図2は、入力ソースプログラムの例11で
ある。
ある。
【0017】図3は、コンパイルエラーが検出された場
合に出力されるコンパイルエラーメッセージが格納され
ている、エラーメッセージテーブル12である。
合に出力されるコンパイルエラーメッセージが格納され
ている、エラーメッセージテーブル12である。
【0018】図4は、変数名および型名の情報が格納さ
れているシンボルテーブル13である。
れているシンボルテーブル13である。
【0019】図5は、構文解析手段2によって生成され
た情報を、エラーテーブル登録手段4によってエラーテ
ーブル10に登録した結果生成された、エラーテーブル
10の内部形式の説明図である。
た情報を、エラーテーブル登録手段4によってエラーテ
ーブル10に登録した結果生成された、エラーテーブル
10の内部形式の説明図である。
【0020】構文解析手段2によって生成されたコンパ
イルエラーのあったライン数とカラム位置とコンパイル
エラーの番号を、それぞれエラーテーブル14のlin
eとcolumnとエラーメッセージNoというフィー
ルドに登録する。
イルエラーのあったライン数とカラム位置とコンパイル
エラーの番号を、それぞれエラーテーブル14のlin
eとcolumnとエラーメッセージNoというフィー
ルドに登録する。
【0021】さらに変数名および型名に関連したコンパ
イルエラーの場合は、エラーテーブル14のシンボルテ
ーブルNoというフィールドにシンボルテーブル8のイ
ンデックス番号を登録する。
イルエラーの場合は、エラーテーブル14のシンボルテ
ーブルNoというフィールドにシンボルテーブル8のイ
ンデックス番号を登録する。
【0022】図6は、入力ソースプログラムの例11を
構文解析手段2に入力し、エラーテーブル登録手段4と
エラーメッセージ編集手段5とエラーメッセージ出力手
段6で処理した結果出力される、出力リストの例15で
ある。
構文解析手段2に入力し、エラーテーブル登録手段4と
エラーメッセージ編集手段5とエラーメッセージ出力手
段6で処理した結果出力される、出力リストの例15で
ある。
【0023】
【発明の効果】以上説明したように、本発明では、PA
SCAL言語で記述されたソースプログラムに対して、
コンパイルエラーを検出した位置に、変数名および型名
に関するエラーであればエラーメッセージとともに変数
名と型名およびそのソース行の情報を表示することがで
きるため、ソースプログラムを開発し、コンパイルした
際に検出されたコンパイルエラーに対してソースプログ
ラムの修正が行い易くなるという利点がある。
SCAL言語で記述されたソースプログラムに対して、
コンパイルエラーを検出した位置に、変数名および型名
に関するエラーであればエラーメッセージとともに変数
名と型名およびそのソース行の情報を表示することがで
きるため、ソースプログラムを開発し、コンパイルした
際に検出されたコンパイルエラーに対してソースプログ
ラムの修正が行い易くなるという利点がある。
【図1】本発明の全体構成図を示す図である。
【図2】PASCAL言語で記述されたプログラム例で
ある。
ある。
【図3】エラーメッセージテーブルの説明図である。
【図4】シンボルテーブルの説明図である。
【図5】エラーテーブルの説明図である。
【図6】実行の結果出力される出力結果の例である。
1 入力ソースプログラム 2 構文解析手段 3 シンボルテーブル登録手段 4 エラーテーブル登録手段 5 エラーメッセージ編集手段 6 エラーメッセージ出力手段 7 出力リスト 8 シンボルテーブル 9 エラーメッセージテーブル 10 エラーテーブル 11 入力ソースプログラムの例 12 エラーメッセージテーブル 13 シンボルテーブル 14 エラーテーブル 15 出力リストの例
Claims (3)
- 【請求項1】 PASCAL言語で記述されたソースプ
ログラムのコンパイル時に出力されるエラーメッセージ
出力方式において、 前記ソースプログラムの構文を分析して、前記PASC
AL言語の構文規則とは異なる場合には、コンパイルエ
ラーとして認識する構文分析手段と、 該構文分析手段により解析された情報をシンボルテーブ
ルに登録するシンボルテーブル登録手段と、 前記コンパイルエラーに関するエラー情報をエラーテー
ブルに登録するエラーテーブル登録手段と前記コンパイ
ルエラーに対応するエラーメッセージを予め格納するエ
ラーメッセージテーブルと、 前記シンボルテーブルに登録されている情報を引用する
と共に、前記エラーテーブルに登録されている前記コン
パイルエラーに対応したエラーメッセージを、前記エラ
ーメッセージテーブルから引用して、所定の形式に編集
するエラーメッセージ編集手段とを有することを特徴と
するコンパイラのエラーメッセージ出力方式。 - 【請求項2】 請求項1記載のコンパイラのエラーメッ
セージ出力方式において、前記シンボルテーブルに登録
される情報は、前記ソースプログラムの変数名および型
名を含むことを特徴とするコンパイラのエラーメッセー
ジ出力方式。 - 【請求項3】 請求項2記載のコンパイラのエラーメッ
セージ出力方式において、前記エラー情報は、コンパイ
ルエラーのあったライン数と、カラム位置とコンパイル
エラーの番号とを含み、前記ソースプログラムの変数名
および型名に関連したコンパイルエラーの場合は、前記
シンボルテーブルに規定されるインデックス番号を含む
ことを特徴とするコンパイラのエラーメッセージ出力方
式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3297463A JPH0644081A (ja) | 1991-11-13 | 1991-11-13 | コンパイラのエラーメッセージ出力方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3297463A JPH0644081A (ja) | 1991-11-13 | 1991-11-13 | コンパイラのエラーメッセージ出力方式 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0644081A true JPH0644081A (ja) | 1994-02-18 |
Family
ID=17846823
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP3297463A Withdrawn JPH0644081A (ja) | 1991-11-13 | 1991-11-13 | コンパイラのエラーメッセージ出力方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0644081A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH1185496A (ja) * | 1997-09-03 | 1999-03-30 | Fujitsu Ltd | オブジェクト指向プログラム作成支援装置 |
-
1991
- 1991-11-13 JP JP3297463A patent/JPH0644081A/ja not_active Withdrawn
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH1185496A (ja) * | 1997-09-03 | 1999-03-30 | Fujitsu Ltd | オブジェクト指向プログラム作成支援装置 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9141603B2 (en) | Computer program product and computer system for language-enhanced programming tools | |
| US5371747A (en) | Debugger program which includes correlation of computer program source code with optimized object code | |
| US20150128114A1 (en) | Parser | |
| KR920020317A (ko) | 프로그램처리장치 및 프로그램처리방법 | |
| US20040010780A1 (en) | Method and apparatus for approximate generation of source code cross-reference information | |
| JPH064344A (ja) | プログラム中の参照された変数の型表示方式 | |
| JPH0644081A (ja) | コンパイラのエラーメッセージ出力方式 | |
| JPH1173328A (ja) | コーディング規約チェックシステム | |
| US5649201A (en) | Program analyzer to specify a start position of a function in a source program | |
| JPH0573331A (ja) | コンパイラのエラーメツセージ出力方式 | |
| JPH04273328A (ja) | クロスリファレンスリスト生成方式 | |
| JPH0695889A (ja) | プログラム修正方式 | |
| JPH0981411A (ja) | コンパイラ | |
| JP2728504B2 (ja) | 入力命令文検査装置 | |
| JPH0359724A (ja) | 翻訳システムにおけるエラー情報圧縮方式 | |
| JPS59231649A (ja) | コンパイルリスト出力処理方式 | |
| JP2912479B2 (ja) | 構文解析制御方式 | |
| JPH0561664A (ja) | 構造化言語文のリスト表示方式 | |
| JPH04330521A (ja) | クロスリファレンスリスト生成方式 | |
| JPH04177534A (ja) | 未定義名標エラー処理方式 | |
| JPH02130636A (ja) | コンパイラ並びにプログラム開発支援システム | |
| JPH05108372A (ja) | コンパイラ最適化処理内容の出力方式 | |
| JP2580336B2 (ja) | 言語処理系における名前の属性検査処理方式 | |
| JPH04229343A (ja) | 対話型デバッガにおけるメモリ内容表示方式 | |
| JPH04101229A (ja) | コンパイルエラー表示制御方式 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 19990204 |