JPH07239788A - 不要変数型宣言チェック機能付きコンパイラ - Google Patents

不要変数型宣言チェック機能付きコンパイラ

Info

Publication number
JPH07239788A
JPH07239788A JP6028752A JP2875294A JPH07239788A JP H07239788 A JPH07239788 A JP H07239788A JP 6028752 A JP6028752 A JP 6028752A JP 2875294 A JP2875294 A JP 2875294A JP H07239788 A JPH07239788 A JP H07239788A
Authority
JP
Japan
Prior art keywords
variable
type
flag
file
function
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
JP6028752A
Other languages
English (en)
Inventor
Katsuyuki Nishida
克之 西田
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 Solution Innovators Ltd
Original Assignee
NEC Software Hokuriku Ltd
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 Software Hokuriku Ltd filed Critical NEC Software Hokuriku Ltd
Priority to JP6028752A priority Critical patent/JPH07239788A/ja
Publication of JPH07239788A publication Critical patent/JPH07239788A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 【目的】コンパイル対象のプログラムで型宣言している
が、処理記述中で使用していない変数を識別し、プログ
ラム中に無駄な記述が残らないようにする。 【構成】手段107、108で、コンパイル対象のプロ
グラム中に型宣言している変数の情報をテーブルに格納
し、手段109、110で、テーブルに格納された変数
が処理記述で使用されたかを確認し、手段111でワー
ニングエラーメッセージを表示することにより、ソース
プログラム、インクルードファイルでの無駄な型宣言を
意識させ、手段113により、無駄な型宣言された変数
がオブジェクトファイル中に生成されない。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、コンパイラに関し、特
にコンパイル対象のプログラムで型宣言しているが、処
理記述中で使用していない変数を識別し、ワーニングエ
ラーメッセージを表示する機能、またはオブジェクトフ
ァイル内に生成しない機能を有するコンパイラに関す
る。
【0002】
【従来の技術】従来のコンパイラは、図2に示すように
キーボード201からのコンパイル命令を受信すると、
コンパイル対象のファイル202をコンパイルして、結
果をディスプレイ203に表示し、コンパイルが正常に
完了するとオブジェクトファイル204を出力する機能
205を有している。
【0003】
【発明が解決しようとする課題】この従来のコンパイラ
では、コンパイル対象のプログラム上で、保守段階で処
理記述中に使用しなくなった変数で型宣言だけ残ってし
まったものは、言語エラーではなく、何も表示しないた
め、プログラム中に無駄な記述が残るという問題点があ
った。
【0004】
【課題を解決するための手段】本発明のコンパイラはキ
ーボードからのコンパイル命令を受信すると、コンパイ
ル対象のファイルをコンパイルして、結果をディスプレ
イに表示し、コンパイルが正常に完了するとオブジェク
トファイルを出力する機能を有するコンパイラにおいて
コンパイル命令のオプション指定から不要変数型宣言チ
ェック機能を併用するか否かを判断する手段と、型宣言
されている変数を識別する手段と、型宣言されている変
数名、変数が型宣言されているファイル名と行番号、処
理記述中に使用されているか否かを示すフラグ情報を格
納する変数フラグテーブルを作成する手段と、処理記述
中の各ワードを検出する手段と、検出した各ワードが変
数フラグテーブルにある変数と一致するか否かを判断す
る手段と、処理記述の検索終了時に変数フラグテーブル
でフラグがOFFである変数名とファイル名と行番号と
処理記述中で使用していない旨を示すワーニングエラー
メッセージを表示する手段と、コンパイル命令のオプシ
ョン指定から前記ワーニングエラーメッセージを表示す
るか否かを判断する手段とを有している。
【0005】更に本発明のコンパイラは請求項1におい
て、処理記述の検索終了時に変数フラグテーブルでフラ
グがOFFである変数の型宣言部分をコンパイル機能に
送らない手段と、コンパイル命令のオプション指定から
型宣言だけの変数をオブジェクト中に生成するか否かを
判断する手段とを有している。
【0006】
【実施例】次に本発明について図面を参照して説明す
る。
【0007】図1は本発明の一実施例のコンパイラを示
す機能ブロック図である。図1において、本発明の一実
施例は、キーボード101からのコンパイル命令を受信
すると、コンパイル対象のファイルをコンパイルして、
結果をディスプレイ102に表示し、コンパイルが正常
に完了するとオブジェクトファイルを出力する機能を有
するコンパイラにおいて、キーボード101からのコン
パイル命令のオプション指定から不要変数型宣言チェッ
ク機能を併用するか否かを判断する本機能起動識別10
3と、型宣言されている変数を識別する型宣言識別手段
107と、型宣言されている変数名、変数が型宣言され
ているファイル名と行番号、処理記述中に使用されてい
るか否かを示すフラグ情報を格納する変数フラグテーブ
ルを作成する変数フラグテーブル作成手段108と、処
理記述中の各ワードを検出する処理記述ワード取り出し
手段109と、検出した各ワードが変数フラグテーブル
にある変数と一致するか否かを判断するワード変数フラ
グテーブル比較手段110と、処理記述の検索終了時に
変数フラグテーブルでフラグがOFFである変数名と行
番号と処理記述中で使用していない旨を示すワーニング
エラーメッセージを表示するワーニングエラーメッセー
ジ表示手段111と、コンパイル命令のオプション指定
からワーニングエラーメッセージを表示するか否かを判
断するワーニングエラーメッセージオプション識別手段
104とを備えている。
【0008】更に本発明の一実施例は、処理記述の検索
終了時に変数フラグテーブルでフラグがOFFである変
数の型宣言部分をコンパイル機能に送らないフラグOF
F変数削除手段113と、コンパイル命令のオプション
指定から型宣言だけの変数をオブジェクト中に生成する
か否かを判断する生成オプション識別手段105とを備
えている。
【0009】キーボード101はコンパイル命令などの
命令を入力する機能を有しており、表示用ディスプレイ
102はキーボード101からの命令等を表示する手段
である。本機能起動オプション識別手段103はコンパ
イル命令が入力されたときにオプション指定のうち、不
要変数型宣言チェック機能を併用するか否かを判断機能
を有している。またワーニングエラーメッセージオプシ
ョン識別手段はオプション指定のうち、不要変数型宣言
チェック機能により発生するワーニングエラーメッセー
ジを表示するか否かを判断する機能を有している。更に
生成オプション識別手段105はオプション指定のう
ち、型宣言だけの変数をオブジェクトファイル中に生成
するか否かを判断する機能を有している。
【0010】型宣言識別手段107はコンパイル対象の
ソースファイルとインクルードファイルとを含むファイ
ル106中で型宣言されている変数を識別する機能を有
している。変数フラグテーブル作成手段108は型宣言
識別手段107の識別結果から型宣言されている変数
名、変数が型宣言されているファイル名と行番号、処理
記述中に使用されているか否かを示すフラグ情報を格納
する変数フラグテーブルを作成する機能を有していて、
処理記述ワード取り出し手段109は処理記述中の各ワ
ードを検出する機能を有している。
【0011】ワード変数フラグテーブル比較手段110
は処理記述ワード取り出し手段109で検出したワード
が変数フラグテーブルにある変数と一致するか否かを判
断する機能を有している。ワーニングエラーメッセージ
表示手段111は、処理記述の検索終了時に変数フラグ
テーブルでフラグがOFFである変数名とファイル名と
行番号と処理記述中で使用していない旨のワーニングエ
ラーメッセージをディスプレイ102に表示する機能を
有している。コンパイル手段112は通常のコンパイル
機能112と同様でフラグOFF変数削除手段113は
検索終了後の変数フラグテーブルでフラグがOFFであ
る変数の型宣言をコンパイル手段112には伝達しない
機能を有している。ファイルオブジェクトファイルをま
とめて示す。なお、図1上の細線の矢印は、機能制御デ
ータの行き来を、太線の矢印はコンパイル対象のデータ
の行き来を示す。
【0012】識別手段103で不要変数型宣言チェック
機能を併用すると判断されたときは、手段104〜11
1が順々に起動される。エラーメッセージオプション識
別手段104での判断結果は手段111へ出力される。
生成オプション識別手段105での判断結果はフラグO
FF変数削除手段113へ出力される。テーブル作成手
段108で作成する変数フラグテーブルのフラグは初期
状態は全てOFFに設定する。
【0013】比較手段110では、処理記述中に検出し
たワードと変数フラグテーブルの変数名が一致したとき
に、その変数のフラグをONにする。表示手段111は
起動されると、識別手段104からの入力がワーニング
メッセージを表示するであるとき、比較手段110まで
の処理で検索が終了している変数フラグテーブルでフラ
グがOFFであると変数名、ファイル名、行番号、ワー
ニングエラーメッセージをディスプレイ102に表示す
る。
【0014】識別104でワーニングエラーメッセージ
を表示しないと判断されたときは、表示手段111では
何もせず、変数削除手段113に処理が移る。変数削除
手段113は起動されると、識別手段105からの入力
が型宣言だけの変数をオブジェクト中に生成しないであ
るとき、コンパイル対象106からワードを取り出し、
変数フラグテーブルでフラグがOFFである変数と一致
するときは、その変数の型宣言部分をコンパイル手段1
12へは送らず、次のワード取り出しを行う。
【0015】識別105で型宣言だけの変数をオブジェ
クトファイル中に生成するど判断されたときは、変数削
除手段113はソースファイル、インクルードファイル
の内容をそのままコンパイル手段112に送る。識別手
段103で機能である不要変数型宣言チェック機能を併
用しないと判断されたときは、通常のコンパイル手段1
12だけが起動され、結果がディスプレイ102に表示
され、コンパイルが正常に完了すればオブジェクトファ
イル114が出力される。
【0016】
【発明の効果】以上説明したように本発明は、コンパイ
ル命令のオプション指定に従い、コンパイル対象中に型
宣言だけの変数があるときは、ワーニングエラーメッセ
ージを出力するか、オブジェクトファイル中に出力させ
ないことにより、処理記述に結び付かない無駄な記述を
残さないようにできるという結果を有する。
【図面の簡単な説明】
【図1】本発明によるコンパイラの一実施例を示すブロ
ック図である。
【図2】従来のコンパイラの機能を示す図である。
【符号の説明】
101 キーボード 102 ディスプレイ 103 本機能起動オプション識別手段 104 ワーニングエラーメッセージオプション識別
手段 105 生成オプション識別手段 106 コンパイル対象のファイル 107 型宣言識別手段 108 変数フラグテーブル作成手段 109 処理記述ワード取り出し手段 110 ワード変数フラグテーブル比較手段 111 ワーニングエラーメッセージ表示手段 112 従来のコンパイル手段 113 フラグOFF変数削除手段 114 オブジェクトファイル

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 キーボードからのコンパいる命令を受信
    すると、コンパイル対象のファイルをコンパイルして、
    結果をディスプレイに表示し、コンパイルが正常に完了
    するとオブジェクトファイルを出力する機能を有するコ
    ンパイラにおいて、前記キーボードからのコンパイル命
    令のオプション指定から不要変数型宣言チェック機能を
    併用するか否かを判断する手段と、型宣言されている変
    数を識別する手段と、型宣言されている変数名、変数が
    型宣言されているファイル名と行番号、処理記述中に使
    用されているか否かを示すフラグ情報を格納する変数フ
    ラグテーブルを作成する手段と、処理記述中の各ワード
    を検出する手段と、検出した各ワードが変数フラグテー
    ブルにある変数と一致するか否かを判断する手段と、処
    理記述の検索終了時に変数フラグテーブルでフラグがO
    FFである変数名とファイル面と行番号と処理記述中で
    使用していない旨を示すワーニングエラーメッセージを
    表示する手段と、コンパイル命令のオプション指定から
    前記ワーニングエラーメッセージを表示するか否かを判
    断する手段とを備えていることを特徴とする不要変数型
    宣言チェック機能付きコンパイラ。
  2. 【請求項2】 請求項1に加えて、処理記述の検索終了
    時に変数フラグテーブルでフラグがOFFである変数の
    型宣言部分をコンパイル機能に送らない手段と、コンパ
    イル命令のオプション指定から型宣言だけの変数をオプ
    ジェクト中に生成するか否かを判断する手段とを備える
    ことを特徴とする不要変数型宣言チェック機能付きコン
    パイラ。
JP6028752A 1994-02-28 1994-02-28 不要変数型宣言チェック機能付きコンパイラ Pending JPH07239788A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6028752A JPH07239788A (ja) 1994-02-28 1994-02-28 不要変数型宣言チェック機能付きコンパイラ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6028752A JPH07239788A (ja) 1994-02-28 1994-02-28 不要変数型宣言チェック機能付きコンパイラ

Publications (1)

Publication Number Publication Date
JPH07239788A true JPH07239788A (ja) 1995-09-12

Family

ID=12257147

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6028752A Pending JPH07239788A (ja) 1994-02-28 1994-02-28 不要変数型宣言チェック機能付きコンパイラ

Country Status (1)

Country Link
JP (1) JPH07239788A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1195996A (ja) * 1997-09-24 1999-04-09 Nippon Steel Corp 冗長コード検査装置
WO2004081788A1 (ja) * 2003-03-10 2004-09-23 Catena Corporation Lyee指向ソフトウェアに関する静的分析方法
WO2022190427A1 (ja) * 2021-03-11 2022-09-15 オムロン株式会社 開発支援装置、開発支援方法、及び、開発支援プログラム
WO2022190428A1 (ja) * 2021-03-11 2022-09-15 オムロン株式会社 開発支援装置、開発支援方法、及び、開発支援プログラム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1195996A (ja) * 1997-09-24 1999-04-09 Nippon Steel Corp 冗長コード検査装置
WO2004081788A1 (ja) * 2003-03-10 2004-09-23 Catena Corporation Lyee指向ソフトウェアに関する静的分析方法
WO2022190427A1 (ja) * 2021-03-11 2022-09-15 オムロン株式会社 開発支援装置、開発支援方法、及び、開発支援プログラム
WO2022190428A1 (ja) * 2021-03-11 2022-09-15 オムロン株式会社 開発支援装置、開発支援方法、及び、開発支援プログラム

Similar Documents

Publication Publication Date Title
US7721253B2 (en) Software development support system
US8171551B2 (en) Malware detection using external call characteristics
US5926638A (en) Program debugging system for debugging a program having graphical user interface
JP3288798B2 (ja) ラベル印刷及びデータ収集プログラム発生器
US5960202A (en) Method and apparatus for automatically logging compiler options and/or overriding compiler options
CN111046349A (zh) 一种so库文件加固识别方法、智能终端及存储介质
KR890015115A (ko) 응용 프로그램 제공방법 및 응용프로그램용 다중 언어 시스템과 데이타 처리시스템
JPH07239788A (ja) 不要変数型宣言チェック機能付きコンパイラ
Mittelbach et al. The docstrip program
JPS5998362A (ja) メモリカセツトの識別装置
JPH05298116A (ja) コンパイラシステム
JPH11259280A (ja) プログラム開発支援装置及びコンピュータシステムに適用されるプログラムを記録した記録媒体
JP3665392B2 (ja) 情報処理装置
JPH07141170A (ja) テスト支援リスト生成方法とその装置
JPH05324289A (ja) プログラム設計書自動作成装置
JPS6381543A (ja) フアイル管理方式
JPH0793144A (ja) プログラム解析装置
JPH08249193A (ja) プログラムの言語仕様範囲の検査方式
JPH05334135A (ja) プログラム異常終了時のエラー情報表示方式
JPH10133883A (ja) コンパイル装置
JP2002189613A (ja) ソフトウェア開発支援装置、ソフトウェア開発支援方法及びソフトウェア開発支援プログラムを記録したコンピュータ読み取り可能な記録媒体
JPH03186933A (ja) 言語処理システムのシンボル処理方式
JP2000305808A (ja) マイクロコンピュータ組み込みシステムにおけるイベント検出方法ならびに装置
JPH1011438A (ja) 単語チェッカ
JPH07152794A (ja) 論理シミュレータ

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20000404