JPH04177534A - 未定義名標エラー処理方式 - Google Patents

未定義名標エラー処理方式

Info

Publication number
JPH04177534A
JPH04177534A JP30395690A JP30395690A JPH04177534A JP H04177534 A JPH04177534 A JP H04177534A JP 30395690 A JP30395690 A JP 30395690A JP 30395690 A JP30395690 A JP 30395690A JP H04177534 A JPH04177534 A JP H04177534A
Authority
JP
Japan
Prior art keywords
name
undefined
name mark
registered
error
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
JP30395690A
Other languages
English (en)
Inventor
Yuichi Iijima
裕一 飯島
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 JP30395690A priority Critical patent/JPH04177534A/ja
Publication of JPH04177534A publication Critical patent/JPH04177534A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、プログラムの翻訳方式に関し、特に未定義名
標のエラー処理方式に関する。
〔従来の技術〕
従来の御飯系の手続き部の構文解析処理部では、参照さ
れている名標が名標テーブルに登録されていないもので
あるときは、未定義−名標ということで、その旨のメツ
セージを翻訳リスト上に出力するのみであった@ 〔発明が解決しようとする#!!題〕 上述した従来の翻訳系においては、プログラム作成者の
ミスなどにより、名標が定義されていなかったり、正し
く定義されていないときに、手続き部のその名標の全て
の参照部に対して未定義エラーのメツセージが翻訳リス
ト上に出力される。
そのため、未定義名標が実際には1つであっても、その
名標がリスト上で大量に使用されているような場合、大
量のエラーメツセージが出力され、本来のエラーが解析
しにくくなるという問題があった0 〔課題を解決するための手段〕 本発明の未定義名標エラー処理方式は、プログラム翻訳
系の手続き部の構文解析処理において、 データ部の構文解析処理により生成され、上記データ部
で定義された名標が登録されている名標テーブルと、 手続き部で参照されている名標が、上記名標テーブルに
登録されている名標であるかどうかを検査する名標テー
ブル探索手段と、 上記名標テーブル上に力い名標を登録しておく未定義名
標テーブルと、 上記名標テーブル探索手段によって名標が見つからなか
ったときに、上記未定義名標テーブルに登録されている
名標であるかを検査する未定義名標テーブル探索手段と
、 上記名標テーブル及び未定義名標テーブルのいずれのテ
ーブルにも登録されていない名標であるときに、骸名標
の未定義名標エラーのメツセージを出力する未定義名標
エラー出力手段と、上記名標テーブル及び未定義名標テ
ーブルのいずれのテーブルにも登録されていない名標で
10ときに、核名標を未定義名標テーブルへ登録する未
定義名標テーブル登録手段と、 を有する。
〔作用〕
本発明によれば、未定義名標は、未定義名標チーグル上
への最初の登録時のみ、エラーメツセージが出力され、
同一の未定義名標に対して、何度もエラーメツセージを
出力することはなくなる。
〔実施例〕
第1図は、本発明の一実施例であり、翻訳系の手続き部
の構文解析処理部3の構成を示すブロック図である。
同図において、手続き部構文解析処理部3は、原始プロ
グラム手続き部lを入力し、中間コード9を出力するも
のであり、名標テーブル2と、名標テーブル探索手段4
と、未定義名標テーブル探索手段5と、未定義名標テー
ブル登録手段6と、未定義名標エラー出力手段7と、未
定義名標テーブル8と、翻訳メツセージファイル10と
−a−ら構成される。
ここで、名標テーブル2は、手続き部構文解析処理部3
より以前に実行されるデータ部の構文解析処理部が生成
し、データ部に定義されている名標が登録されている・ 次に、このように構成された本実施例の未定義名標エラ
ー処理方式の動作について説明する。
手続き部構文解析処理部3は、原始プログラム手続き部
lを入力し、その構文を解析する。その構文解析におい
て、ある名標が参照されているときは、名標テーブル探
索手段4により、その名標が名標テーブル2中に登録さ
れているか否か検査する。
名標が登録されている場合は、を照は正しくされている
ということであり、次の構文解析のステップに入る。
名標が登録されていない場合は、未定義名標テーブル探
索手段5により、その名標が、未定義名標テーブル8に
登録されているか否かを検査する。
名標が登録されてい力い場合は、未定義名標エラー出力
手段7により、その名標が未定義であることを示すエラ
ーメツセージを翻訳メツセージファイル10に出力する
とともに、未定義名標テーブル登録手段6によりその名
標を未定義名標テーブル8に登録する。
未定義名標テーブル探索手段5の結果1名標が未定義名
標テーブル8に登録されている場合には、その名標に対
する未定義エラーメツセージは出力せずに次の翻訳ステ
ップに移る。
第2図(′:、、以上の説明で述べた処理の流れを表わ
したものである。
未定義名標テーブル探索手段5の結果、未定義名標テー
ブル8に名標が登録されてbるということは、千〇名標
が未定義名標テーブル8に登録されたときに、その名標
に対する未定義エラーメツセージはすでに一度出力され
ていることを示しており、手続き部槽文解析処理部3が
上記の動作をとると、同じ名標の未定義か照があっても
、最初の方に現れる名標の参照の部分だけにエラーメツ
セージが出力されることになる〇 〔発明の効果〕 以上説明したように、本発明の未定義名標エラー処理方
式においては、プログラムの手続き部において、同じ名
標の未定義参照があっても、最初の方に現れる名標の参
照の部分だけにエラーメツセージが出力されることにな
り、その名標を参照している部分が大量であるような場
合でも、その名標の未定義エラーの出力は、一箇所のみ
に出力され、別のエラーメツセージとの区別もしや丁く
なるという効果がある・
【図面の簡単な説明】
第1図は、本発明の一実施例であり、翻訳系の手続き部
の構文解析処理部の構成を示すブロック図である。 第2図は、第1図の実施例の処理の流れを示した図であ
る。 図において、 1・・・原始プログラム手続き部、2・・・名標テーブ
ル、3・・・手続き部槽文解析処理部、4・・・名標テ
ーブル探索手段、5・・・未定義名標テーブル機業手段
、6・・・未定義名標テーブル登録手段、7・・・未定
義名標エラー出力手段、8・・・未定義名標テーブル、
9・・・中間コード、10・・・翻訳メツセージファイ
ル。 代理人 弁理士 山 下 穣 平 第1図 第2図

Claims (1)

  1. 【特許請求の範囲】 プログラム翻訳系の手続き部の構文解析処理において、 データ部の構文解析処理により生成され、上記データ部
    で定義された名標が登録されている名標テーブルと、 手続き部で参照されている名標が、上記名標テーブルに
    登録されている名標であるかどうかを検査する名標テー
    ブル探索手段と、 上記名標テーブル上にない名標を登録しておく未定義名
    標テーブルと、 上記名標テーブル探索手段によって名標が見つからなか
    ったときに、上記未定義名標テーブルに登録されている
    名標であるかを検査する未定義名標テーブル探索手段と
    、 上記名標テーブル及び未定義名標テーブルのいずれのテ
    ーブルにも登録されていない名標であるときに、該名標
    の未定義名標エラーのメッセージを出力する未定義名標
    エラー出力手段と、 上記名標テーブル及び未定義名標テーブルのいずれのテ
    ーブルにも登録されていない名標であるときに、該名標
    を上記未定義名標テーブルへ登録する未定義名標テーブ
    ル登録手段と、 を有することを特徴とする未定義名標エラー処理方式。
JP30395690A 1990-11-13 1990-11-13 未定義名標エラー処理方式 Pending JPH04177534A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP30395690A JPH04177534A (ja) 1990-11-13 1990-11-13 未定義名標エラー処理方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP30395690A JPH04177534A (ja) 1990-11-13 1990-11-13 未定義名標エラー処理方式

Publications (1)

Publication Number Publication Date
JPH04177534A true JPH04177534A (ja) 1992-06-24

Family

ID=17927303

Family Applications (1)

Application Number Title Priority Date Filing Date
JP30395690A Pending JPH04177534A (ja) 1990-11-13 1990-11-13 未定義名標エラー処理方式

Country Status (1)

Country Link
JP (1) JPH04177534A (ja)

Similar Documents

Publication Publication Date Title
KR920020317A (ko) 프로그램처리장치 및 프로그램처리방법
CN106469049B (zh) 一种文件扫描的方法及装置
US20040010780A1 (en) Method and apparatus for approximate generation of source code cross-reference information
US20190018663A1 (en) Code lineage tool
JPH04177534A (ja) 未定義名標エラー処理方式
JPH064344A (ja) プログラム中の参照された変数の型表示方式
CN117407430B (zh) 数据查询方法、装置、计算机设备及存储介质
US7281166B1 (en) User-customizable input error handling
JP2815178B2 (ja) コンパイラ装置
JPH0359724A (ja) 翻訳システムにおけるエラー情報圧縮方式
JPH0644081A (ja) コンパイラのエラーメッセージ出力方式
JP2580336B2 (ja) 言語処理系における名前の属性検査処理方式
US6654879B1 (en) Method and apparatus for analyzing code for out-of-range data involving base and seed tables/lists
Clarke et al. Error handling in a parallel LR substring parser
JPH11259307A (ja) 未解決シンボルのリンク方法および装置
JPH10240545A (ja) 未定義変数検出の最適化コンパイラ装置
JPH041825A (ja) コンパイラにおけるエラー情報出力処理方式
US20190018662A1 (en) Code lineage tool
JPH04312130A (ja) 言語処理プログラム
JP2000132405A (ja) インライン展開処理装置及び方法
JPH02115951A (ja) 高級言語プログラム保守デバッグ方式
JPH02224134A (ja) 目的プログラム生成方式
JPH04299426A (ja) 関数のアーギュメント/パラメータ引渡し方式
JPH04167138A (ja) プログラムのロード方式
JPH0573331A (ja) コンパイラのエラーメツセージ出力方式