The
assert() macro tests the given
expression and if it is false, the calling process is terminated. A diagnostic message, consisting of the text of the expression, the name of the source file, the line number and the enclosing function, is written to
stderr and the
abort(3) function is called, effectively terminating the program.
If
expression is true, the
assert() macro does nothing.
The
assert() macro may be removed at compile time with the
cc(1) option
-DNDEBUG.