AssertWarn

Debugging macro that prints a warning if an expression evaluates to 0.

Syntax
	KeyPgPpdefine#define AssertWarn(expression) KeyPgIfthenIf (expression) = 0 KeyPgThenThen : fb_AssertWarn( 
	KeyPgDdfile__FILE__, KeyPgDdline__LINE__, KeyPgDdfunction__FUNCTION__, KeyPgOpPpStringize#expression ) : KeyPgEndif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 KeyPgAssert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 CompilerOptlang-lang qb dialect unless referenced with the 
	  alias __ASSERTWARN.

Differences from QB
	* New to FreeBASIC

See also
	* KeyPgAssertAssert

