CATCH
This instruction indicates the beginning of the error management part of a function or procedure.
The catch part is executed when an error is raised between the beginning of the function execution and its end. This error can be raised by the function itself, or by any other function called during its execution, provided that this deeper function has no catch part itself : the deeper the catch part is, the more priority it has.
If an error is raised during the execution of the catch part, it is normally propagated. The catch part does not protect itself !
If there is a finally part in the function, it must precede the catch part. See FINALLY for more details.
Example :
' Print a file to the screen SUB PrintFile(FileName AS STRING) DIM hFile AS File DIM sLig AS STRING OPEN FileName FOR READ AS #hFile WHILE NOT EOF(hFile) LINE INPUT #hFile, sLig PRINT sLig WEND FINALLY ' Always executed, even if a error raised CLOSE #hFile CATCH ' Executed only if there is an error PRINT "Cannot print file "; FileName END