![]() |
![]() |
![]() |
![]() |
![]() |
Error Handling
Errors may be detected both during interaction with the user (command interpretation) and during analysis. Errors are displayed on the screen and optionally appended to an error file supplied by the user. When using the graphical UI, messages are directed to the Organizer log window.
Command Interpretation Errors
Errors that occur during command interpretation are errors due to:
- Illegal command parameters. See Syntax of Analyzer Commands.
- Problems with accessing files on your computer system.
Diagnostics Issued During Analysis
Errors may be found during the various steps of the analysis. The different types of diagnostics and the format of the messages are described below. The messages are listed in Error and Warning Messages.
Diagnostic Types
Errors can be of the following types: warning, error, internal error, and information.
Warning
There are different types of warnings:
- Warnings that truncation has been performed, because the implementation limits have been exceeded.
- Warnings due to non implemented portions of the Analyzer.
- Warnings due to a badly designed SDL construction that is not essential for the interpretation.
- Warnings due to analysis actions that were not performed because the Analyzer could not recover from errors in previous analysis steps.
Error
One type of error is detected; violation of an SDL rule.
Internal Error
Internal errors due to malfunction of the Analyzer are detected. An internal error often has its roots in an SDL error from which the Analyzer did not recover properly.
Information
Often used to provide additional information to the other types of messages.
Diagnostic Format
Messages generally consist of the following parts:
- A reference to the source code that caused the diagnostic to be reported. See Syntax.
- The type of the diagnostic (ERROR / WARNING / INFO).
- A number identifying the diagnostic.
- A message describing the diagnostic.
Example of a Syntax Error
The message describing the error includes a text line where the illegal construct is indicated with a "?". If the trace back is common to many lexical or syntactic errors, the trace back will only occur after the last of these error messages.
The error also contains a reference to the source file.
Example 351 : Syntax Error Produced by Analyzer
#SDTREF(SDL,/usr/tom/game.spr(1),137(30,40),1,11)ERROR 312 Syntax error in rule VARIABLE, symbol = found but one of the followingexpected:! ( :=task Count=0 ;?The interpretation of the error message is that the Analyzer found the symbol "=" when it expected one of the symbols "!" (the field selector), "(" or ":=".
In the current example, the assignment statement can be found in position 11 the first line in the object with the ID 137 at position (30, 40) on page 3, on page 1 in the diagram stored on file /usr/tom/game.spr.
Example of a Semantic Error
The message describing the error includes, if possible, a line containing the error, with a "?" immediately preceding the SDL item that caused the error.
The error also contains a reference to the source file.
Example 352 : Semantic Error Produced by Analyzer
#SDTREF(SDL,/usr/tom/game.spr(1),296(55,40),1)ERROR 88 Undefined procedurecall ? ErrorHandlerThe interpretation of this error message is that the procedure ErrorHandler is referred to but not is defined, and the call can be found in page 1 of the diagram stored on the on file /usr/tom/game.spr, in line 1 of the object with ID 296 and at position (55, 40).
http://www.ibm.com/rational |
![]() |
![]() |
![]() |
![]() |