next up previous contents
Next: Reference of Primitive Thread Up: Reference of Support for Previous: The <string.h> Header File

The <assert.h> Header File

# include <assert.h>
# define assert(exp) ...
extern void ucr_assert(const char*, unsigned);

This header file defines the macro assert(expr) to provide runtime sanity checks. The behavior of assert as mandated by the ANSI C standard is to abort the program if the expression evaluates to false at run time.

uCR implements this behavior by calling the external function ucr_assert(). The default implementation of this function is to abort the program quietly. The application may provide a more sophisticated ucr_assert() that prints the file name and line number of the failed assertion, or enters a debugger, or causes the machine to self-destruct. Whatever is appropriate for your application.

Stephen Williams