JPH0359726A - プログラム単位一括翻訳方式 - Google Patents

プログラム単位一括翻訳方式

Info

Publication number
JPH0359726A
JPH0359726A JP19716389A JP19716389A JPH0359726A JP H0359726 A JPH0359726 A JP H0359726A JP 19716389 A JP19716389 A JP 19716389A JP 19716389 A JP19716389 A JP 19716389A JP H0359726 A JPH0359726 A JP H0359726A
Authority
JP
Japan
Prior art keywords
program unit
program
name
unit
name storage
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
JP19716389A
Other languages
English (en)
Inventor
Haruhiro Yamamoto
晴弘 山本
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 JP19716389A priority Critical patent/JPH0359726A/ja
Publication of JPH0359726A publication Critical patent/JPH0359726A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Abstract

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

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は1手続き呼出しを含む原始プログラム金コンパ
イルする方式に関する。
(従来の技術) 原始プログラムのプログラム単位が、そのプログラム単
位名で同じライブラリのメンバとなっている条件のもと
で、そのメンバ中の原始プログラムを翻訳するには、当
該メンバをいちいち指定する必要があった。
(発明が解決しようとする課題) 上述した従来の方式では、コンパイル時にこれらのメン
バをすべて漏れなく指定しないと。
コンパイラにより生成されたコンパイルユニット金リン
クして実行可能なロードモジュール全作成するとき、必
要なコンパイルユニットが欠落しているためにエラーが
発生するという欠点がある。
本発明の目的は、オプションで指定した主プログラム名
全プログラム単位名格納領域に格納してかき、プログラ
ム単位名格納領域からプログラム単位名を取出し、その
プログラム単位が未だ翻訳されていす、かつ、そのプロ
グラム単位名が当該ライブラリのメンバ中に存在するな
らば、プログラム単位を翻訳し、翻訳するプログラム単
位により参照されるプログラム単位のプログラム単位名
をプログラム単位名格納領域に格納することにより上記
欠点金除去し、コンパイルユニットの欠落がないように
構成したプログラム単位一括翻訳方式を提供することK
ある。
(課題全解決するための手段) 本発明によるプログラム単位一括翻訳方式は、原始プロ
グラムのプログラム単位が当該プログラム単位名で同じ
ライブラリのメンバとなっている条件のもとで、そのメ
ンバ中の原始プログラムを翻訳するコンパイラにおける
ものであって、主プログラム名格納手段と、プログラム
単位翻訳手段と、プログラム単位名格納手段とを具備し
て構成したものである。
主プログラム名格納手段は、オプションで指定した主プ
ログラム名をプログラム単位名格納領域に格納するため
のものである。
プログラム単位翻訳手段は、プログラム単位名格納領域
からプログラム単位名分取出し、酒該プログラム単位が
未だ翻訳されていないときに、当該プログラム単位名が
当該ライブラリのメンバ中に存在するならば、プログラ
ム単位を翻訳するためのものである。
プログラム単位名格納手段は、翻訳するプログラム単位
で参照されるプログラム単位のプログラム単位名金プロ
グラム単位名格納領域に格納するためのものである。
(実 施例) 次に1本発明について図面を参照して説明する。
第1図は1本発明によるプログラム単位一括翻訳方式の
一実施例を示すブロック図である。
第1図にかいて、11はごンパイラ、12は主プログラ
ム名格納手段、13はプログラム単位翻訳手段、14は
プログラム単位名格納手段。
15はプログラム単位名格納領域である。
第2図は、本発明による処理例の流れ金示すフローチャ
ートである。第2図にかいて、21〜29はそれぞれ処
理ステップである。
第3図は、本発明における主プログラム、手続き名格納
領域、ライブラリ、pよび手続きの実例を示す説明図で
ある。第3図にかいて、31は主プログラム、32は手
続き名格納領域、33は探索済みであることを示すフラ
グ、34はライブラリ、35は手続きである。
第1図にかいて、本発明はコンパイラ11の内部に主プ
ログラム名格納手段12と、プログラム単位翻訳手段1
3と、プログラム単位名格納手段工4と、プログラム単
位名格納領域15と會備えて構成されている。第3図に
かいて、本発8Aを説明するための一実施例として王プ
ロダラム(A) 31の中に手続きCB)、 (E)の
呼出しを含み1手続きCB)の中に手続きtc>−(D
)の呼出しを含む場合を考える。
次に1本実施例の動作を第1図、第2図、)よび第3図
を参照して説明する。
利用者は主プログラムA31のプログラム単位名′に翻
訳時にオプションで指定スる。
王プログラム名格納手段12は、ステップ21にかいて
、指定されている主プログラム名をプログラム単位名格
納領域32に格納する。
プログラム単位翻訳手段13は、ステップ22にかいて
、プログラム単位名格納領域12に未探索のプログラム
単位名が存在するか否かを判定する。この場合には、主
プログラム名人が存在するので、ステップ23によりプ
ログラム単位翻訳手段13はプログラム単位名人が探索
済みであることを示すフラグ33をセットし。
ステップ24によりプログラム単位名人′に取出す。さ
らに、ステップ25により、上記と同名のプログラム単
位名が主プログラムへの存在するライブラリ340メン
バ中に存在するか否か’t’lJ定する。Aはメンバ中
に存在するので酒該メンバを入力し、ステップ27によ
りプログラム単位から一文づつ取出して翻訳する。−文
を翻訳した後、ステップ28にかいて、その文の中で手
続き呼出しが存在するか否かを判定する。
手続き呼出しが存在するならば、プログラム単位名格納
手段14t−呼出す。
プログラム単位名格納手段14ば、その手続き名がプロ
グラム単位名格納領域15に格納されていないならば、
ステップ29にpいて、こレヲプログラム単位名格納領
域12に格納する。
ステップ26からステップ29までの作業を最終の文の
翻訳が終了するまで繰返せば1手続き名格納領域32に
プログラム単位名A、B、Bが格納される。
王プログラムAllの最終の文の翻訳が終了すると、ス
テップ22へ戻9.手続き名格納領域32の未探索のプ
ログラム単位名Bに対して。
上述のステップ23からステップ29!でと同様の作業
を繰返す。手続き名格納領域32に対する上記作業は、
未探索のプログラム単位がなくなる!で繰返される。
その結果1手続き名格納領域32にはプログラム単位A
、B、B、O,I)が格納され、この順番で一括して翻
訳が行われる。
(発明の効果) 以上で説明してきたように本発明は、原始プログラムの
プログラム単位がそのプログラム単位名で同じライブラ
リのメンバとなっている条件のもとで、当該メンバ中の
原始プログラムを翻訳するときに実行9能なロードモジ
ュールを作成することにより、リンク時に必要となるコ
ンパイルユニットをすべて漏れなく得ることかり能とな
ると云う効果がある。
【図面の簡単な説明】
第1図は1本発明によるプログラム単位一括翻訳方式の
一実施例を示すブロック図である。 第2図は1本発明による処理例の流ftt”示すフロー
チャートである。 第3図は1本発明における主プログラム、手続き名格納
領域、ライブラリ、釦よび手続きの実例を示す説明図で
ある。 11・・・コンパイラ 12・・・王プログラム名格納手段 13・・・プログラム単位翻訳手段 14・・・プログラム単位名格納手段 15・・・プログラム単位名格納領域 21〜29・・・処理ステップ 31・・・王プログラム 32・・・手続き名格納領域 33・・・フラグ 34・・・ライブラリ 35・・・手続き

Claims (1)

    【特許請求の範囲】
  1. 原始プログラムのプログラム単位が当該プログラム単位
    名で同じライブラリのメンバとなつている条件のもとで
    、当該メンバ中の原始プログラムを翻訳するコンパイラ
    におけるプログラム単位一括翻訳方式であつて、オプシ
    ョンで指定した主プログラム名をプログラム単位名格納
    領域に格納するための主プログラム名格納手段と、前記
    プログラム単位名格納領域から前記プログラム単位名を
    取出し、前記プログラム単位が未だ翻訳されていないと
    きに当該プログラム単位名が当該ライブラリのメンバ中
    に存在するならば、前記プログラム単位を翻訳するため
    のプログラム単位翻訳手段と、前記翻訳するプログラム
    単位により参照されるプログラム単位のプログラム単位
    名を前記プログラム単位名格納領域に格納するためのプ
    ログラム単位名格納手段とを具備して構成したことを特
    徴とするプログラム単位一括翻訳方式。
JP19716389A 1989-07-28 1989-07-28 プログラム単位一括翻訳方式 Pending JPH0359726A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP19716389A JPH0359726A (ja) 1989-07-28 1989-07-28 プログラム単位一括翻訳方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19716389A JPH0359726A (ja) 1989-07-28 1989-07-28 プログラム単位一括翻訳方式

Publications (1)

Publication Number Publication Date
JPH0359726A true JPH0359726A (ja) 1991-03-14

Family

ID=16369827

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19716389A Pending JPH0359726A (ja) 1989-07-28 1989-07-28 プログラム単位一括翻訳方式

Country Status (1)

Country Link
JP (1) JPH0359726A (ja)

Similar Documents

Publication Publication Date Title
US5404531A (en) Method and apparatus for compiler processing on program related to data transfer and calculation, and method of managing memory
JPH0359726A (ja) プログラム単位一括翻訳方式
GB2420638A (en) Method of substituting code fragments in Internal Representation
JPH11154093A (ja) プログラムコンパイラ及びコンパイラ用プログラムを記録した記録媒体
JP2811804B2 (ja) 変数出力範囲指定方式
JPH10214194A (ja) クラス定義取り込み方式
JPH07244601A (ja) 関係データベースのアクセス方法および装置
JPS6326730A (ja) プログラム修正方式
JPS63138426A (ja) プログラム生成方式
JPH04373020A (ja) 関数対応表作成装置
JPH103390A (ja) テーブル管理システムとその作成方法
JPH0690669B2 (ja) 文字列操作系命令コンパイル処理方式
JPH0250731A (ja) コンパイル装置
JPS63178345A (ja) デ−タベ−スアクセス処理方式
JPS62200426A (ja) 高級言語のマクロ展開方法
JPH01239648A (ja) 動的サブルーチン呼出し方式
JPH02271430A (ja) プログラム実行装置
JPH04364537A (ja) 並列処理用プログラム最適化方法、装置およびコンパイラ
JPH0468436A (ja) 自動コンパイルアンドリンク装置
JPH05274126A (ja) プログラム合成システム
JPH0328931A (ja) 利用者言語管理装置
JPS63317826A (ja) シンボリックデバッグ方式
JPH0651995A (ja) 実行サブルーチン名の認識方法
JPH0228839A (ja) ルーチン単独テスト処理システムにおけるロードモジュール生成方式
JPH01136241A (ja) プログラムリンク方式