US 6,983,458 B1
System for optimizing data type definition in program language processing, method and computer readable recording medium therefor
Kazushi Honda, Kanagawa-ken (Japan)
Assigned to Kabushiki Kaisha Toshiba, Kawasaki (Japan)
Filed on Jun. 29, 2000, as Appl. No. 9/605,884.
Claims priority of application No. 11-184252 (JP), filed on Jun. 29, 1999.
Int. Cl. G06F 9/45 (2006.01)
U.S. Cl. 717—151 14 Claims
OG exemplary drawing
 
1. A system for program language processing for translating source programs to generate an object program, comprising:
a preprocessor configured to execute preprocessing of source programs inputted in translation units;
a data type definition table, arranged for one object program, configured to store a set of names of data type definition for data or a function in the source program and a use flag;
a data type definition detector configured to detect a predetermined data type definition declared in the preprocessed source program;
a first table updating module configured to, if a name of the detected data type definition is not registered, register the name of the detected data type definition into the data type definition table;
a first source updating module configured to, if the name of the detected data type definition is registered, delete the data type definition from all source programs that are succeedingly compiled and linked to one object program;
a second table updating module configured to, if the data type definition is described in a body of any of the source programs to be linked into the one object program, set the use flag to a use status;
a second source updating module configured to delete the data type definition of which the use flag is not set to the use status from all the source programs that are succeedingly compiled and linked to one object program to optimize the source programs;
a language processor configured to compile the optimized source programs; and
a software driver configured to control a transfer of a source program and a processing result of at least one of the preprocessor, a code optimizing processor, and the language processor.