摘要:
The present invention is directed to computer software compilation systems and methods which support run-time data type identification of objects in computer programming languages which support polymorphism. The present invention comprises translators, compilers, and debuggers. The compiler and translator store modified debug information in an object code file. The modified debug information contains information regarding either multiple virtual tables or concatenated virtual tables. A debug lookup table is constructed from the modified debug information. The debugger uses the debug lookup table to determine the actual data types of the objects, and to completely and accurately display and modify the objects' contents. Also, innovative type inquiry operators reference the concatenated virtual tables to determine the actual data types of the objects during run-time. The operation of the compiler, translator, and debugger is transparent to computer programmers and operators. Therefore, the compiler, translator, and debugger support run-time data type identification of the objects in the computer programs in a user-friendly and error-free manner.
摘要:
The present invention comprises a computer-based system and method for generating meaningful symbolic debug information in translator-based software compilation systems. The present invention includes a translator, a compiler, a merger, and a debugger. The compiler and translator each generate symbolic debug information for a source code. The merger combines the debug information generated by the compiler and translator into a final debug information. The final debug information completely and accurately describes the source code. The debugger uses the final debug information to completely and accurately display the original source code, and to efficiently and effectively use actual variable and function names (from the original source code) when working with variables and functions.