Intrinsic define (macro value) set by the compiler
Syntax
__FB_ERR__
Description
__FB_ERR__ indicates if
-e,
-ex, or
-exx was specified on the compiler command line at the time of compilation of a module.
__FB_ERR__ indicates if
-earray,
-enullptr, or
-elocation was specified on the compiler command line, or implied by use of
-exx, at the time of compilation of a module.
__FB_ERR__ indicates if
-edebug,
-edebuginfo, or
-eassert was specified on the compiler command line, or implied by use of
-g, at the time of compilation of a module.
__FB_ERR__ indicates if
-eunwind was specified on the compiler command line, or implied by use of
-e,
-ex, or
-exx, at the time of compilation of a module.
Returns bit-wise
OR of the following values:
value | flag | description |
0 | no flag | |
1 | errorcheck | implied by '-e', '-ex', '-exx' |
2 | resumeerr | implied by '-ex', '-exx' |
4 | extraerrchk | implied by '-exx' |
8 | arrayboundchk | implied by '-earray', '-exx' |
16 | nullptrchk | implied by '-enullptr', '-exx' |
32 | assertions | implied by '-eassert', '-g' |
64 | debuginfo | implied by '-edebuginfo', '-g' |
128 | debug | implied by '-edebug', '-g' |
256 | errlocation | implied by '-elocation', '-exx' |
512 | unwindinfo | implied by '-eunwind', '-e', '-ex', '-exx' |
__FB_ERR__ is always defined.
Example
'Example code to demonstrate a use of __FB_ERR__
Dim fb_err_value As Integer
fb_err_value = __FB_ERR__
If fb_err_value = 0 Then
Print "no flag enabled"
Else
If fb_err_value And 1 Then
Print "'errorcheck' flag enabled"
End If
If fb_err_value And 2 Then
Print "'resumeerr' flag enabled"
End If
If fb_err_value And 4 Then
Print "'extraerrchk' flag enabled"
End If
If fb_err_value And 8 Then
Print "'arrayboundchk' flag enabled"
End If
If fb_err_value And 16 Then
Print "'nullptrchk' flag enabled"
End If
If fb_err_value And 32 Then
Print "'assertions' flag enabled"
End If
If fb_err_value And 64 Then
Print "'debuginfo' flag enabled"
End If
If fb_err_value And 128 Then
Print "'debug' flag enabled"
End If
If fb_err_value And 256 Then
Print "'errlocation' flag enabled"
End If
If fb_err_value And 512 Then
Print "'unwindinfo' flag enabled"
End If
End If
Version
Differences from QB
See also