|SSD15 - Compiling|
LSE15 - Kompilieren
|SSD15.I.1||Granularity||The exchange of control parameters with SWFM01 - Workflow Management is possible for individual closed function packages of the tool by means of a disclosed, documented interface.|
|SSD15.I.2||Input interface to SSD12 - Generating Components and Modules||It is possible to integrate directly source code generated with SSD12 for Components and Modules without further transformation from the object management in order to be compiled.|
|SSD15.I.3||Input interface to SSD13 - Generating Databases||It is possible to integrate directly physical schema specifications generated with SSD13 for Databases without further transformation from the object management in order to be compiled.|
|SSD15.I.4||Input interface to SSD14 - Generating User Interface Formats||It is possible to integrate physical schema specifications generated with SSD14 for interfaces without further transformation from the object management in order to be compiled.|
|SSD15.I.5||Output interface to SSD16 - Linking||It is possible to transmit compiled code without further transformation via the object management to SSD16 in order to be linked.|
|SSD15.F.1||Error-free compilation||A source code program which is free of errors both with regard to syntax and to semantics is compiled into a semantically equivalent program in the target code.|
It is possible to enter the position of the source code to be compiled.|
Normally the source code is stored in a file.
It is possible to enter the position of the compilation protocol (listing).|
Normally, the listing is written to a file; however, it may also be displayed on the screen or be printed in form of a list.
|SSD15.F.2.3||Target code||It is possible to enter the file name for the target code to be generated.|
It is possible to cancel reading from source code by means of a special character or a special character string.|
In an Ada program the character string "--$" in the first column of a line might be a possible identification. This way it is possible to signal the end of the source code when reading from the terminal.
Two variants are possible for the layout of the listing: terminal or printer.|
The terminal layout has a restricted line width (normally 80 characters per line). The layout for printers, on the other hand, can utilize the entire width when printing (normally up to 132 characters).
It is possible to get a summary of the compilation process displayed on the terminal.|
The summary includes type and number of compilation errors.
It is possible to suppress error-free lines in the listing.|
Only lines containing errors are displayed/printed together with the corresponding error messages.
|SSD15.F.4.4||Details||The listing contains the options valid for the current compilation, the relevant parameters, and the data and time of the compilation.|
|SSD15.F.4.5.1||Statistic at the end||The statistics are displayed at the end of the listing.|
|SSD15.F.4.5.2||Source code lines||The statistics of the listing contain the number of source code lines.|
|SSD15.F.4.5.3||Target code size||
The statistics of the listing contain the size of the target code.|
Normally, the size is listed in the smallest addressable machine unit, i. e. in bytes.
|SSD15.F.4.5.4||Times||The statistics of the listing contain the elapsed time and the actual CPU time.|
|SSD15.F.5||No code generation||
It is possible to suppress the code generation during the compilation.|
Only possible errors are reported.
It is possible to instrument the target code with debug information.|
Target code thus instrumented can-if linked with the debug option as well-be tested with a debugger.
It is possible to enhance the listing with information utilized in tests.|
Such information might be: time measurements for the compilation of statements, generated (interim) code in various representations.
At least two classes exist: "error" and "warning".|
A further classification would differentiate between "syntax error", "semantic error", "warning", and "compiler error".
The error position is marked in the listing.|
This is realized e. g. by a pointer directed towards the error in the source code.
|SSD15.F.8.3||Embedding||The error messages are embedded in the source code in the listing.|
The error correcting measures are included in the listing.|
Example: after the detection of a syntax error the automatically inserted tokens resulting in a syntactically correct program are inserted in the listing.
|SSD15.F.8.5||User group oriented||
Prior to the compilation it is possible to define if the error messages are to be more detailed or shorter.|
The more detailed form is practical for the first-time user while the shorter form is better suited for the language expert who can do without detailed explanations in the error messages.
|SSD15.F.8.6||Error statistics at the end||The error statistics are displayed at the end of the listing.|
|SSD15.F.9||Interfaces to programming languages|
|SSD15.F.9.1||Assembler||An interface to the Assembler language is available.|
|SSD15.F.9.2||Ada||An interface to Ada is available.|
|SSD15.F.9.3||FORTRAN||An interface to FORTRAN is available.|
|SSD15.F.9.4||COBOL||An interface to COBOL is available.|
|SSD15.F.9.5||C||An interface to C is available.|
|SSD15.F.9.6||C++||An interface is available to C++.|
|SSD15.F.9.7||Standard conformity||The programming language supported is applied in conformance to the standard.|
|SSD15.F.9.8||Implementation dependency||The options depending on the implementation of the programming language are documented.|
It is possible to determine by means of an option that the code is optimized with regard to shortest runtime.|
The memory requirements for the target code may then be increased.
It is possible to determine by means of an option that the code is optimized with regard to lowest memory requirements.|
The runtime of the target code may then be increased.
The error messages are easy to understand and to trace back.|
In case the error could not be sufficiently explained in the listing it is necessary to refer to the corresponding position in the official language description.
|SSD15.O.1.2||Language||The error messages are written in a way adjusted to the corresponding language environment.|
|SSD15.O.2||Upward compatibility||It must be possible to process objects generated with an older release of the tool with the later release of that tool, without loss of information and functionality.|
|SSD15.O.3||Procedural command language||The tool has a procedural command language that can be applied by the user to generate and run macros or procedures.|
|SSD15.O.4||Complexity||There is no limitation of the complexity caused by the tool itself.|
|SSD15.O.5||Documentation||The chosen implementation options of the tool are documented.|
|GDPA Online Last Updated 01.Jan.2002 Updated by Webmaster Last Revised 01.Jan.2002 Revised by Webmaster|