FB_ERR
- Source: https://www.freebasic.net/wiki/wikka.php?wakka=KeyPgDdfberr
- Last revised: 2024-05-20
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.
__FB_ERR__ indicates if -earraydims was specified on the compiler command line, or implied by use of -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' |
| 1024 | arraydimscheck | implied by '-earraydims', '-exx' |
__FB_ERR__ is always defined.
Examples
start GeSHi
'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
If fb_err_value And 1024 Then
Print "'arraydimscheck' flag enabled"
End If
End Ifend GeSHi
Version
- Since fbc 1.20.0: -earraydims indication.
- Since fbc 1.10.0: -eunwind indication.
- Since fbc 1.07.0: -earray, -enullptr, -elocation, -edebug, -edebuginfo, and -eassert indications.
Differences from QB
- New to FreeBASIC
See also
__FB_MT____FB_DEBUG__- Compiler Option: -e
- Compiler Option: -ex
- Compiler Option: -exx
- Compiler Option: -eunwind
- Error Handling
Back to DocToc