AssertWarn
Debugging macro that prints a warning if an expression evaluates to 0.
Syntax
`
#define AssertWarn(expression) If (expression) = 0 Then : fb_AssertWarn( __FILE__, __LINE__, __FUNCTION__, #expression ) : End If
`
Usage
`
AssertWarn( expression )
`
Parameters
`expression`
Any valid expression. If `expression` evaluates to `0`, a warning message is printed to stderr (console).
Description
The `AssertWarn` macro is intended for use in debugging and works only if the `-g` option is selected in the FBC command line. In this case it prints a warning message if `expression` evaluates to `0`. It doesn't stop the program execution like `Assert` does.
Its normal use is to check the correct value of the variables during debugging.
If `-g` is not passed to fbc, the macro does not generate any code.
Example
`
Sub foo
Dim a As Integer
a=0
AssertWarn(a=1)
End Sub
foo
'' If -g is used this code prints: test.bas(3): assertion failed at FOO: a=1
`
Dialect Differences

- Not available in the -lang qb dialect unless referenced with the alias `__ASSERTWARN`.

Differences from QB

- New to FreeBASIC

See also

- `Assert`