JPH04149732A - 言語処理プログラムの処理方式 - Google Patents

言語処理プログラムの処理方式

Info

Publication number
JPH04149732A
JPH04149732A JP2276084A JP27608490A JPH04149732A JP H04149732 A JPH04149732 A JP H04149732A JP 2276084 A JP2276084 A JP 2276084A JP 27608490 A JP27608490 A JP 27608490A JP H04149732 A JPH04149732 A JP H04149732A
Authority
JP
Japan
Prior art keywords
symbol
information
input
processing
output
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
JP2276084A
Other languages
English (en)
Inventor
Hiroyasu Saikai
西海 弘恭
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 JP2276084A priority Critical patent/JPH04149732A/ja
Publication of JPH04149732A publication Critical patent/JPH04149732A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、官給処理プログラムの処理方式に関し、特に
プログラムの開発(修正)に必要なマツプリストを作成
する機能を有する言語処理プログラムの処理方式に関す
る。
〔従来の技術〕
第3図は一般のプログラム開発におけるフロー図を示す
。大規模なプログラムの開発においては、分割してンー
スプログラム1を作成し、アセン7ラ、コンパイラ等の
言語処理プログラム2により数十個以上の複数のりロケ
ータプルモジュール3を作成し、その後リンカ4によp
結合してロードモジュール5を作成し、最終的なプログ
ラムのデバッグをターゲットマシン7上で行う。このと
き、言語処理フログラム2が生成した数十個以上の複数
のリロケータフ゛ルモシューA・3をリンカ4が納会し
たときのモジュールやシンボルの配置情報であるマツフ
リストロを利用してデバッグを行う。
従来の官給処理プログラムの処理方式では、キーホード
8から入力された起動待を解析しマツプリスト6を出力
するか否かが判定され、このマツプリスト6を出力する
場合は、シンボル塩、配置後の絶対番地およびシンボル
のタイプの情報が出力されていた。
第4図は、一般のMM処理プログラムのシステム構成図
である。言語処理プログラム2は、キーボード8から入
力された起動待を解析する起動行解析部21、この起動
行解析部21の解析結果を保存する保存s22、入力フ
ァイル11からオブジェクト情報を入力する入力部23
、この入力部23で入力したオブジェクト情報を解析し
ロードモジュール情報を生成するロードモジュール情報
生成部24、このロードモジュール情報生成部24の一
部である入力したオブジェクト情報のうちシンボル情報
を解析しシンボルテーブル13の作成をおこなうシンボ
ル処理部25、ロードモジュール情報生成部24によっ
て生成されたロートモジー−ル情報を出力するロードモ
ジー−ル出当部26、シンボルテーブル13を入カシマ
ツプリスト14を出力するマツプリスト出力部27とを
備えている。
次の第1表は、入カフ丁イ/L11のうちのシンボルの
定義・参照を示している。
第1表 この表で、ファイル(1)ではシンボルsyml、5y
sl、5yrn3i定義し、シンボル5yrn2’i参
照シ、ファイル(2)ではシンボルsym2を定義し、
シンポ/I/Sym1を参照し、ファイル(3)ではシ
ンボル’ Y” 1 、’ Y”2 k 参照している
。ここでファイル(1)で定義されているシンホルsy
m3iiファイル(2)。
ファイル(3)で参照されていないシンボルであり、フ
ァイル(3)で参照しているシンボルsymlFi本来
シンホル5yslを参照するべきものであったものとし
ている。
第5図(al 、 (blは従来の言語処理プログラム
のシンボル処理からマツプリスト出力までの概略および
詳細フローチャートである。シンボル処理部25はシン
ボル情報入力処理部101、シンボル情報解析処理部1
02を含み、マツプリスト出力部27はシンボル情報出
力処理部103を含む。
従来の言語処理プログラムのオブジェクト情報のうちシ
ンボル処理を行う部分と、マツプ出力処理を行う部分に
関して説明を行う。
シンボル情報入力処理部101では入力部23が入力フ
ァイル11から入力したオブジェクト情報のうちシンボ
ルの定義・参照に関する情報を入力する、次に、シンボ
ル情報解析処理部102でシンボルテーブル13の作成
を行い、シンボル情報出力処理部103でこのシンボル
テーブル13のシンボル情報をマツプリスト14に出力
スル。
第5図(b)において、シンボル処理部25Fi、シン
ボル入力処理部111、シンボル宣言判定処理[112
、シンボル定義処理部113、シンボル参照処理部11
4を含み、マツプリスト出力部27はシンボルチーフル
入力処理部115、シンボル情報出力処理部103を含
む。
次に、第5図により従来の言語処理プログラム2のうち
のシンボル処理からマツプ出力までの機能について説明
する。
シンボル入力処理部111は、入力ファイル11からシ
ンボル情報を1シンボル分だけ読込み、入力ファイル1
1中にはもう読込むべきシンボル情報がないか否かを判
定し、シンボル宣言判定処理部112はシンボル入力処
理部111で入力ファイル11から読込んだシンボル情
報を解析しシンボルの定義であるのか参照であるのかを
判定する。
シンボル定義処理部113では、定義しようとしている
シンボルがシンボルテーブル中3に登録されているか検
索し、 1)参照で登録されていればシンボル情報を参照から定
義に変更し、 2)登録されていなければシンボルテーブル212に登
録し、 3)定義で登録されていればシンボルがすでに定義済み
でめったことを使用者に通知する。
シンボル参照処理部114は、参照しようとしているシ
ンボルがシンボルテーブル13に登録されているか検索
し、1)すでに登録されていれば何もせず、2)登録さ
れていなければ参照しようトシているシンボルをシンボ
ルテーブル13に登録する。
シンボルテーブル入力処理部115は、シンボルテーブ
ル13から1シンボル分だけシンボル情報を読込み、シ
ンボルテーブル13中にはもう読むべきシンボル情報が
ないか否かを判定し、シンボル情報出力処理部103は
、マツプリスト14にシンボル情報としてシンボル名、
定義モジュール、配置アドレス、タイプを出力する。
次に、この言語処理プログラム2のうちのシンボル処理
からマツプ出力までの処理の流れKついて説明する。
シンボル入力処理部111ではシンボルを入力した結果
、すべての入力ファイル中にもうシンボルがないか否か
を判定し、判定の結果シンボルがなければ、処理はシン
ボルテーブル入力部115に移り、シンボルがあればシ
ンボル宣言判定処理部112に処理扛移る。シンボル宣
言判定部114ではシンボル入力部111によって入力
されたシンボルが定義を示す宣言(PUBLIC宣言と
いう)されているのか、参照を示す宣言(EXTERN
宣言という)されているのかを判定する。  PURL
IC宣言されていればシンボル定義処理部113 K処
理は移り、EXTERN i官されていればシンボル参
照処理部114に処理が移る。
シンボル定義処理部113では、シンボル入力部111
で入力したシンボル名をシンボルテーブル13から検索
し、その検索結果によシ以下の処理を行う。
+11  シンボルテーブル13甲のシンボル属性がE
XTERNであれに、シンボルテーブル13甲のシンボ
ル属性をPUBLICK変更し、その後処理はシンボル
入力部111に戻る。
(2)シンボルテーブル13中にシンボル情報が登録さ
れていなかった場合は、シンボルテーブル13にシンボ
ルを登録する。このときのシンボルの属性はPUBL、
ICであシ、その後処理はシンボル入力部111に戻る
(3)  シンボルテーブル13中のシンボル属性がP
UBLICであれば、定義しようとしたシンボルがすで
に定義済みであったことを使用者に通知する。その後処
理はシンボル入力部111に戻る。ただし、この場合言
語処理プログラム2終了時にロードモジュール5および
マツプリスト14は出力されない。
シンボル参照処理部114では、シンボル入力部111
で入力したシンボル名をシンボルテーブル13から検索
し、その検索結果により以下の処理を行う。
(1)シンボルテーブル13中のシンボル属性がEXT
ERNであれば何もせずに処理はシンボル入力部111
に戻る。
(2)  シンボルテーブル中にシンボル情報が登録さ
れていなかった場合は、シンボルテーブル13[−シン
ボルを登録する。このときのシンボルの属性//1EX
TERNであシ、その後処理はシンボル入力部111に
戻る。
(31シンボルテーブル13中のシンボル属性がPUB
LICであれば何もせずに処理はシンボル入力部111
に戻る。
この様にして第7図に示すすべての入力ファイル中のシ
ンボルがなくなるまで上記の処理を繰シ返す。
シンボル入力処理部111では、シンボル入力した結果
すべての入力ファイル中にもうシンボルがないか否かが
判定され、判定の結東シンホルがなければ、処理はシン
ボルテーブル入力部115に移る。
シンボA・テーブル入力処理部115ではシンボルテー
ブル13から1シンボル分だけシンボル情報を読込み、
シンボルテーブル13中にUもう読むべきシンボル情報
がないか否かを判定し、読むべきシンボル情報がなけれ
ば処理t−p了する。まだ読むべきシンボル情報があれ
ばシンボル情報出力処理部103に処理は移る。シンボ
ル情報出力処理部103ではマツプリスト14にシンボ
ル情報としてシンボル名、定義モジュール、配置アドレ
ス、タイプを出力する。
この様に17てシンボルテーブル13中のシンボルがな
くなるまでこの処理を繰り返す。
次にシンボルテープ/1=13中のシンボル情報の説明
をする。
第6図は、従来例のシンボル情報についてシンボルテー
ブル中のシンボル情報のフォーマントラ示している。従
来シンボル情報としては、シンボル名A1定義モジュー
ル名B1配置アドレスC。
タイプDを持っている。シンボル名人#′i、入力ファ
イル11中のシンボル名であり、定義モジール名BFi
シンホル名人が定義されているモジュル名であり、配置
アドレスCFiロードモジュール情報生成部24で生成
されたロードモジュール中のシンボルの配置アドレスで
あり、タイプDFiシンボル名人が定義されたときのタ
イプである。
〔発明が解決しようとするlI題〕
従来、特に大規模なプログラムの開発においては、数十
個以上の1ji数のモジー−ルを結合するため、各モジ
コールでシンボルを定義し、そのシンボルを定義したモ
ジュールや他のモジュールで参照する。
上述した従来の言語処理プログラムの処理方式では、マ
ツプリスト14は単にシンボル名人と配置後の絶対番地
CおよびシンボルのタイプDが出力されているだけでシ
ンボルが1照されているか否か判定できなかった。
定義だけがあって参照されていないシンボルがあった場
合は、次のようなプログラム開発者の意図していない結
果であると考えられる。
(1)  シンボルの属性がデータを示すものであれげ
シンボルを定義したモジュール、それ以外のモジュール
で使用していないむだなデータ領域を使用してbること
になる。特にソングルチップマイコンでは全体のメモリ
領域が少ないため1バイトでもむだにできない。一般に
シングA−ナッグマイコンのメモリ領域は数10にバイ
ト程度であり、必要なデータ領域以外にはプログラムを
めいっばいに鮎め込みたいというのが開発者の望むとこ
ろであるから、誤ってデータ領域を浪費することは避け
かければならない。
(2)  シンボルの属性がデータを示すものに限らず
、ラベルであった場合などでも、誤ったシンボル名を参
照していることが考えられる。
これらの原因は、設計やコーディング上のミスの可能性
がある。着たデータ領域がむだであるばかりでなく、使
用しない領域が存在しているということはプログラムの
開発、デパック、保守上問題となる。
このため定義だけで参照されていないシンボルを残して
おくことは、開発するプログラムの品質に関わる大きな
問題である。
この問題を解決するためには、各オフジェクトモシュー
ルを作成したときの各モジュールのクロスリファレンス
リストから、開発者自身が定義だけあって参照されてい
ないシンボルを見つけ出し、次に他のモジコールのクロ
スリファレンスリストでそのシンボルを参照しているか
どうかを検索する必要があるが、この作業は非常に手間
のかかる作業である上に1信頼性に欠けるという間馳点
がある。
本発明の目的は、マツプリスト中に出力するシンボルに
対して、定義のみで参照されていないシンボルについて
の情報を出力することによシ、シンボルの定義・参照の
関係をチェックしゃすくすると共に、作業を容易にし、
プログラム品質を向上させたV;飴処理70グラムの処
理方式を提供することにある。
〔課題を解決するための手段〕
本発明の構成は、キーボードから入力される起動行を解
析し保存する解析保存手段と、ファイルからオブジェク
トプログラム情報を入力する入力手段と、この入力手段
から入力されたオブジェクトプログラム情報を解析して
ロードモジュール情報を生成するロードモジュール生成
手段と、このロードモジュール生成手段からのロードモ
ジュール情報を出力するロードモジュール出力手段と、
前記入力手段から入力されたオブジェクトプログラム情
報のうちシンボル情報を解析してマツプリスト情報を生
成するマツプリスト生成手段と、このマツプリスト生成
手段からのマツプリスト情報を出力するマツプリスト出
力手段とをもつシステムの言語処理フログラムの処理方
式において、前記マツプリスト情報として定義のみで参
照されていないシンボルに対して未参照情報を出力して
この未参照情報によシ出力情報のチェック処理を行うよ
うにしたことを特徴とする。
〔実施例〕
次に本発明について図面を参照して説明する。
第1図(al 、 (blは本発明の一実施例における
言語処理70グラムのシンボル処理からマツプリスト出
力までの概略および詳細のフローチャートである。本実
施例のシンボル処理部25は、従来例と同じシンボル情
報入力処理部101と、従来例とは異なる機能を持つシ
ンボル情報解析処理部102とを含み、マツフリスト出
力部27は従来例と同じシンボル情報出力処理部103
に加えてシンボル未参照情報出力処理部104を含んで
いる。
第2図は本実施例のシンボルテーブル13Kf用される
シンボル情報のフォーマット図である。
本実施例では、シンボル情報としてシンボル名A。
定義モジュール名B、配置アドレス01タイプDの他に
、シンボル参照フラグEを持っている。シンボル名人か
らタイプDまでは従来例と同じである0本実施例のシン
ボル参照フラグEは、シンボルがすべてのモジュールの
内で1回でも参照されているか否かを示すフラグである
。このシンボル参照フラグEはそのシンホルがすべての
モジュールo内で最低1#でも参照されていればオン、
1回も参照されていなければオフとする。
第2表は本実施例のマツプリスト14の内容を示す。1
行目はマツダリスト中の情報の押出し、2行目以降は各
シンボルの情報である。3行目。
5行目のシンボル5ysl、sym34(対して未参照
テh ルコト(NOREFERENCE ) cvm報
E カ付加されている。
第1図(b)の詳細なフローチャートにおいて、シンボ
ル処理部25は、シンボル参照処理部111、シンボル
宣1判足処理部112、シンボル定義処理部113、シ
ンボル参照処理部11.4を含み、マツツーリスト出力
部27はシンボルテーブル入力処理部115、シンボル
情報出力処理部103およびシンホル未参助情報出力処
理部104を含んでいる。
次に′%この言語処理プログラム2のシンボル処理から
マツ7出力までの機能について説明する。
シンボル入力処理部111、シンボル宣言判定処理部1
12は従来例と同じ機能である。シンボル定義処理部1
13では、定義しようとしているシンホルがシンボルテ
ーブル13に登録されているか検索し、 1)参照で登録されていればシンボル情報を参照から定
義に変更し、シyホル参W1.7ラグEFiオンのまま
とする。
2)登録されていなければシンボルテーブル13に登録
し、シンボル参照フラグEはオフのままとする。
3)定義で登録されていればシンホルがすでに定義済み
であったことを使用者に通知する。
シンボル参照処理部114Fi参照しようとしているシ
ンボルがシンボルテーブル13にisされているか検索
し、(11すでに登録されていれば何もせず、(2) 
 登録さnていなければ参照しようとしているシンボル
をシンボルテーブル13に登録し、このシンボル参照フ
ラグEtl−オンにする。
シンホAテーブル入力処理部115、シンボル情報出力
処理部103は従来例と同じ機能である。
シンボル未参照情報出力処理部104はシンボルテーブ
ル13中のシンボル情報のうちシンボル参照フラグとが
オフであれば何もせず、またオンであればマツプリスト
14にシンボルが未参照であることの情報を出力する。
ここで本実施例である言語処理プログラム2のうちのシ
ンボル処理からマツプ出力までの処理の流れについて説
明する。
シンボル入力処理部111、シンボル宣言判定処理部1
12の処理の流れは、従来例の流れと同じである。
シンボル定義処理部113では、シンボル入力部111
で入カシたシンホA−をシンボルチーフル13から検索
し、その検索結果により以下の処理を行う。
(1)シンボルテーブル13中のシンボル属性カEXT
ERNであれば、シンボル処理フル13中のシンボル属
性をPUBLICtrcv史し、シンホル参照フラグE
Fiオンのままとし、その後処理はシンボル入力部11
1に戻る。
(2)  シンボルテーブル13中にシンボル情報が登
録されていなかった場合は、シンボルテーブル13にシ
ンボルを登録する。このときのシンボルの属性FiPU
BLIcであり、シンボル参照フラグLはオフのままと
する。そのり処理はシンボル入力部111に戻る。
(3)  シンボルテーブル13中のシンボル属性がP
UBLICであれは、定義しようとしたシンボルがすで
に定義済みでおったことを使用者に通知し、その後処理
はシンボル入力部111に戻る。この場合言語処理フロ
グラム2P了時にロードモジュール5およびマングリス
) 14#i出力されない。
シンボル参照処理部114では、シンボル入力部111
で入力したシンホノシヲシン水ルテーフル13から検索
し、その検索結果により以下の処理を行う。
(1)  シンボルテーブル13中のシンボルs性−b
−EXT)、RNであれば何もせずに処理はシンボル入
力部111に戻り、この時シンホル参照フラグEFiオ
ンのままとする。
(2(シンボルテーブル中にシンボル情報が登録されて
いなかった場合は、シンボルテーブル13ニ’/ンホル
t−登録する。このときのシンボルの属性#i、EXT
ERNであり、シンボル参照フラグEFiオンにする。
その後処理はシンボル入力部111に戻る。
(3)  シンボルテーブル13中のシンボル属性がP
UBLICであれば例もせずに処理はシンボル入力部1
11に戻り、この時シンボル参照フラグEはオンのまま
とする。
この様にして全ての入力ファイル110中のシンボルが
なくなる壕で上記の処理を繰り返す。
シンボル入力処理部111によって、入力されたシンボ
ルは全ての入力ファイル中にもうシンボルがないか否か
が判定され、判定の結果シンボルがなければ、処理セブ
ンホルテーブル入力部115に移る。
シンボル処理 フル人力処理部115、シンボル情報出
力処理部103の処理の流れは、従来例の処理の流れと
同じである。
次に、シンボル未参照情報出力処理部104では、シン
ボルテーブル13中のシンボル情報のうちシンボル参照
フラグLがオフであるかオンであるかを判定し、オフで
あれば何もせず、オンであればマツグリス)14にシン
ボルが未参照であることの情報を出力する。
この様にしてシンボルテーブル13中のシンボルがなく
なるまで上記の処理を繰り返す。
次に、第1表に示す入力ファイルのファイル(1)〜(
3)からプログラム情報を入力し、第2表に示すマツプ
リスト情報を出力する場合の処理の説明を行う。
まず、第1表に示した入力ファイルを入力しシンボルテ
ーブル13を作成する処理を説明する。
入力ファイル(1)のシンボルsymlに対する処理を
説明する。
(1)  シンボル入力処理部111によって、入力フ
ァイル(11のシンボルsymlが入力され、すべての
入力ファイル中に本うシンボルがないか否かが判定され
、判定の結果シンボル宣言判定部112に処理は移る。
(2)シンボル宣言判定部112ではシンボルsyml
の宣言がPUBLIC宣言であると判定され、処理はシ
ンボル定義処理部113に移る。
(3) シンボル定義処理部113ではシンボルsym
lがシンボルテーブル13から検索され、その検索結果
を判定し、シンボルテーブル13中にシンボル情報が登
録されていなかったため、シンボルテーブル13にシン
ボルsymltiH&する。
このときのシンボルの属性dPUBLIcで、シンボル
参照フラグEはオフである。
(4)処理にシンボル入力部−111に戻る。
同様にして、ファイル(1)中のシンボル5ys14シ
ンボルテーブル13に登録される。
次に、入力ファイル(1)のシンボルsym2に対する
処理を説明する。
(1)  シンボル入力処理部111によって、入力フ
ァイル(1)のシンボルsym2が入力され、全ての入
力ファイル中にもうシンボルがないか否かが判定され、
判定の結果シンボル参照処理部114に処理は移る。
(2)シンボル参照処理部114ではシンボルsym2
がシンボルテーブルから検索される。その結果シンボル
テーブル13中にシンボル情報が登録されていなかった
ため、シンボルテーブル13にシンボルsymzを登録
する。このときのシンボルの属性はEXTERNで、シ
ンボル参照フラグEはオンである。
(3)  処理はシンボル入力部111に戻る。
シンボルsym3はシンボルsyml、5yslと同様
にシンボルテーブル13に登録される。
次に、入力ファイル(2)のシンボルsymlにLする
処理を説明する。
(17シンボル入力処理部111によって、入力ファイ
ル(2)のシンボルsymlが入力され、すべての入力
ファイル中にもうシンボルがないか否かが判定され、判
定の結果シンボル宣言判定処理部112に処理Fi移る
(2)シンボル宣言判定処理部112 ではシンボルs
ymlがシンボルテーブルから検索され、その結果シン
ボルテーブル13中にシンボル情報トしてPUBLIC
の属性が登録されていたため、シンボルテーブル13中
のシンボルsymlのシンボル情報のシンボル参照フラ
グEをオンにする。このときのシンボルの属性はPUR
LICのままとする。
(3)処理はシンボル入力部111に戻る。
次に、入力ファイル(2)のシンボルsym2に対する
処理を説明する。
(11シンボル入力処理部111によって、入力ファイ
ル(2)のシンホ゛ルsym2が入力さnlすべての入
力ファイル中にもうシンボルがないか否かが判定され、
判定の結果シンボル宣言判定処理部112に処理が移る
i2J  シンボル宣言判定処理部112ではシンボル
5yrn2がシンボルテーブルから検索され、その検索
結果を判定し、シンボルテーブル13中にシンボル情報
としてEXTERNの属性が登録されていたため、シン
ボルテーブル13中のシンボル5yrn2のシンボル情
報のシンホルO属性tPUBLICに変更する。このと
きシンボル参照フラグ兄はオンのままとする。
(3)処理はシンボル入力部111に戻る。
入力ファイル(2)のシンボル57ff11と同様に入
力ファイル(3)のシンボルsyml 、sym2を入
力した場会もシンボルテーブル13中のシンホル情報ノ
シンボル参照7ラグ兄をオンKfる。
最後に、シンボル入力処理部111によって、入力ファ
イル11からシンボルを入力するが、読込めるシンボル
はないため・シンボル入力判定処理部112によって全
ての入力ファイル中にもうシンボルがないことが判定さ
れ、シンボルテーブル入力処理部115に処理は移る。
ここまでの処理の結果シンボルチーフル中のシンボルと
シンボル参照フラグの関係は、次の第3表に示すとおり
となる。
第3表 この様にして入力ファイル(3)の終りまで同じ処理ル
ープによって処理され、シンボルチーフル13が作成さ
れる。
次に、シンボルテーブル13を入力してマツプリスト1
4を作成する処理を説明する。
まス、シンボルテーブル13中のシンボルsymlに対
する処理を説明する。
(11シンボルテーブル入力処理部111ではシンボル
テーブル13から5yrnlのシンボル情報全読込み、
シンボルテーラA13中にはもう読むべきシンボル情報
がないか否かが判定され、/ンボル情報出力処理部11
3に処理は移る。
(2)シンボル情報出力処理部103では、マツプリス
ト14にシンボル情報としてシンボル名、定義モジュー
ル、配置アドレス、タイプを出力する。
(3)  次にシンボル未参照情報出力処理部104で
は、symlのシンボル参照フラグEがオンであるかオ
フであるかを判定し、オンであるので何もせずに処理は
シンボルテーブル入力処理部111に戻る。
次にシンボルテーブル13中のシンボルsys 1に対
する処理を説明する。
(1)  ンンボルテーフル入力処理a 111 fd
 ’/ 7ボルテーブル13から5yslのシンボル情
報を読込ミ、シンボルテーブル13甲にはもう読むべき
シンボル情報がないか否かが判定され、シンボル情報出
力処理部103に処理は移る。
(2)  シンボル情報出力処理部103ではマツプリ
スト14にシンボル情報としてシンボル名、定義モジー
−ル、配置アドレス、タイプを出力する。
(3)  シンボル未参照情報出力処理部104では、
5yrnlのシンボル参照フラグEがオンであるかオフ
であるかを判定し、オフであるのでマツプリスト14に
シンボルが未参照であることを示すメツセージを出力す
る。
(4)処理はシンボル入力部111に戻る。
シンボルs ytn2 Fi 87m lと同様に処理
され、シンボルが未参照であることを示すメツセージは
出力されない。また、シンボルsym3は5yslと同
様に処理され、シンボルが未参照であることを示すメツ
セージが出力される。
この様にしてシンボルテーブル13中のシンボルがなく
なるまで上記の処理を繰り返す。この様にしてシンボル
テーブル13を入力してマツプリスト14が作成される
〔発明の効果〕
以上説明したように本発明によれば、マツプリスト中に
シンボル情報を出力する際に定義だけかめって参照され
ていないシンボルに対して、未蓼照であるとのメツセー
ジを付加して出力することが可能になり、プログラム解
析におけるシンボルの定義・参照の関係のチェックをし
やすくすると共に、プログラムの品質の向上が図れると
いう優れた効果がある。
【図面の簡単な説明】
第1図(al 、 (blは本発明の一実施例1におけ
る官給処理プログラムのシンボル処理からマツプリスト
出力オでの概略および詳細フローチャート、第2図は第
1図のシンボルテーブル中のシンボル情報のフォーマッ
ト図、第3図rよ一般のプログラム開発のフロー図、第
4図は、一般の言語処理プログラムのシステム構成図、
第5図ta+ 、 (b)は従来の官給処理プログラム
のシンボル処理からマツプリスト出力までの概略および
詳細のフローチャート、第6図は従来例のシンボルテー
ブル中のシンボル情報のフォーマツトスである。 1・・・ソースプログラム、2・・・アセンブラ、コン
パイラ等の言諸処理プログラム、3・・・リロケータブ
ルモジュール、4・・・リンカ、5・・・ロードモジュ
ール、6・・・マツズリスト、7・・・ターケラトマシ
ン、8・・・キーyk−1,11・・・入力ファイル、
12・・・ロードモジュールファイル、13・・・シン
ボルチーフル、14・・・マン7′リスト、21・・・
起動行解析部、22・・・保存部、23・・・入力部、
24・・・ロードモジュール情報生成部、25・・・シ
ンホル処理部、26・・・ロードモジニール出力部、2
7・・・マツプリスト出力部、101・・・シンボル情
報解析処理部、lO2・・・シンボル情報解析処理部、
lO3・・・シンボル情報出力処理部、104・−・シ
ンボル未参照情報出力処理部、111・・・シンボル入
力処理部、112・・・シンボル宣言判定処理部、11
3・・・シンボル定義処理部、114・・・シンボル定
義処理部、115・・・シンボルテーブル入力処理部、
A・・・シンボル名、B・・・定義モジー−ル名、C・
−・配置アドレス、D−・タイプ、E・−・シンホル参
照フラグ。 代理人 弁理士  内 原   音 千2図 躬3図

Claims (1)

    【特許請求の範囲】
  1. キーボードから入力される起動行を解析し保存する解析
    保存手段と、ファイルからオブジェクトプログラム情報
    を入力する入力手段と、この入力手段から入力されたオ
    ブジェクトプログラム情報を解析してロードモジュール
    情報を生成するロードモジュール生成手段と、このロー
    ドモジュール生成手段からのロードモジュール情報を出
    力するロードモジュール出力手段と、前記入力手段から
    入力されたオブジェクトプログラム情報のうちシンボル
    情報を解析してマップリスト情報を生成するマップリス
    ト生成手段と、このマップリスト生成手段からのマップ
    リスト情報を出力するマップリスト出力手段とをもつシ
    ステムの言語処理プログラムの処理方式において、前記
    マップリスト情報として定義のみで参照されていないシ
    ンボルに対して未参照情報を出力してこの未参照情報に
    より出力情報のチェック処理を行うようにしたことを特
    徴とする言語処理プログラムの処理方式。
JP2276084A 1990-10-15 1990-10-15 言語処理プログラムの処理方式 Pending JPH04149732A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2276084A JPH04149732A (ja) 1990-10-15 1990-10-15 言語処理プログラムの処理方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2276084A JPH04149732A (ja) 1990-10-15 1990-10-15 言語処理プログラムの処理方式

Publications (1)

Publication Number Publication Date
JPH04149732A true JPH04149732A (ja) 1992-05-22

Family

ID=17564584

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2276084A Pending JPH04149732A (ja) 1990-10-15 1990-10-15 言語処理プログラムの処理方式

Country Status (1)

Country Link
JP (1) JPH04149732A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013045247A (ja) * 2011-08-23 2013-03-04 Nec System Technologies Ltd コンパイル支援装置、コンパイル支援方法、及びプログラム
US10521203B2 (en) 2017-03-15 2019-12-31 Fujitsu Limited Apparatus and method to facilitate extraction of unused symbols in a program source code

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62198932A (ja) * 1986-02-27 1987-09-02 Fujitsu Ltd 情報管理テ−ブルの制御方式
JPS6345637A (ja) * 1986-08-13 1988-02-26 Nec Corp レジスタ割当て誤り検出方式
JPH01205331A (ja) * 1988-02-12 1989-08-17 Nec Corp 大規模プログラムリンク方式

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62198932A (ja) * 1986-02-27 1987-09-02 Fujitsu Ltd 情報管理テ−ブルの制御方式
JPS6345637A (ja) * 1986-08-13 1988-02-26 Nec Corp レジスタ割当て誤り検出方式
JPH01205331A (ja) * 1988-02-12 1989-08-17 Nec Corp 大規模プログラムリンク方式

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013045247A (ja) * 2011-08-23 2013-03-04 Nec System Technologies Ltd コンパイル支援装置、コンパイル支援方法、及びプログラム
US10521203B2 (en) 2017-03-15 2019-12-31 Fujitsu Limited Apparatus and method to facilitate extraction of unused symbols in a program source code

Similar Documents

Publication Publication Date Title
US5758160A (en) Method and apparatus for building a software program using dependencies derived from software component interfaces
US5371747A (en) Debugger program which includes correlation of computer program source code with optimized object code
US5325533A (en) Engineering system for modeling computer programs
US5956479A (en) Demand based generation of symbolic information
US6367068B1 (en) Dynamic parsing
US7308680B2 (en) Intermediate representation for multiple exception handling models
US8156471B2 (en) Multi-language execution method
CA2144875A1 (en) Incremental linker system
US7240340B2 (en) System and method for browse information parsing without compilation
CN101410798A (zh) 用于生成应用数据编辑器的方法和系统
JPH0383153A (ja) メツセージ処理システム及び方法
US20020019973A1 (en) Compiler and method for compiling easily adaptable to processor specifications
JP4806158B2 (ja) マークアップ内でサブクラスを宣言的に定義し、使用するためのシステムおよび方法
Boshernitsan Harmonia: A flexible framework for constructing interactive language-based programming tools
George RAISE tools user guide
JPH04149732A (ja) 言語処理プログラムの処理方式
KR900006667B1 (ko) 부분적 프로그램 결합 시스템
JP3461185B2 (ja) ロードモジュールへのソースコード行番号登録方法および装置
JP3531728B2 (ja) オブジェクト指向型プログラミング言語で記述されたプログラムの構成関係管理装置及び方法並びに記憶媒体
JP2002055852A (ja) オブジェクトの生成・消滅情報管理方式
JPS59183441A (ja) 拡張言語のデバツグ処理方式
Kienesberger Detecting busy waiting by means of static control flow analysis
JP2000132405A (ja) インライン展開処理装置及び方法
Kirsch Course: Compiler Construction
JPH04178736A (ja) 言語処理プログラムの処理方式