Next: Run-Time Checks, Previous: Output and Error Message Control, Up: Switches for gcc
-gnataAssert and Debug normally have no effect and
are ignored. This switch, where `a' stands for assert, causes
Assert and Debug pragmas to be activated.
The pragmas have the form:
| pragma Assert (Boolean-expression [, static-string-expression]) pragma Debug (procedure call) |
The Assert pragma causes Boolean-expression to be tested.
If the result is True, the pragma has no effect (other than
possible side effects from evaluating the expression). If the result is
False, the exception Assert_Failure declared in the package
System.Assertions is
raised (passing static-string-expression, if present, as the
message associated with the exception). If no string expression is
given the default is a string giving the file name and line number
of the pragma.
The Debug pragma causes procedure to be called. Note that
pragma Debug may appear within a declaration sequence, allowing
debugging procedures to be called between declarations.