Resume
Error handling statement to resume execution after a jump to an error handler
Resume
Resume is used in the traditional QB error handling mechanism within an error handler (called by On Error) to return execution to the line that caused the error. Usually this is used after the error has been handled gracefully in order to try the previously erroneous operation again with corrected data.
Resume resets the Err value to 0
Syntax
Resume
Description
Resume is used in the traditional QB error handling mechanism within an error handler (called by On Error) to return execution to the line that caused the error. Usually this is used after the error has been handled gracefully in order to try the previously erroneous operation again with corrected data.
Resume resets the Err value to 0
Example
'' Compile with -lang fblite or qb
#lang "fblite"
Dim As Single i, j
On Error Goto ErrHandler
i = 0
j = 1 / i ' this line causes a divide-by-zero error on the first try; execution jumps to ErrHandler label
Print j ' after the value of i is corrected, prints 0.5
End ' end the program so that execution does not fall through to the error handler again
ErrHandler:
i = 2
Resume ' execution jumps back to 'j = 1 / i' line, which does not cause an error this time
#lang "fblite"
Dim As Single i, j
On Error Goto ErrHandler
i = 0
j = 1 / i ' this line causes a divide-by-zero error on the first try; execution jumps to ErrHandler label
Print j ' after the value of i is corrected, prints 0.5
End ' end the program so that execution does not fall through to the error handler again
ErrHandler:
i = 2
Resume ' execution jumps back to 'j = 1 / i' line, which does not cause an error this time
Dialect Differences
- RESUME is not supported in the -lang fb dialect. Statements can be used in its function form to return an error code
If Open( "text" For Input As #1 ) <> 0 Then
Print "Unable to open file"
End If
Print "Unable to open file"
End If
Differences from QB
- Does not accept line numbers or labels
- Must compile with -ex option
See also