KASSERT(9)             NetBSD Kernel Developer's Manual             KASSERT(9)

NAME
     KASSERT, KDASSERT -- kernel expression verification macros

SYNOPSIS
     void
     KASSERT(expression);

     void
     KDASSERT(expression);

DESCRIPTION
     These machine independent assertion-checking macros cause a kernel
     panic(9) if the given expression evaluates to false.

     KASSERT() tests are included only in kernels compiled with the DIAGNOSTIC
     configuration option.  In a kernel that does not have this configuration
     option, the KASSERT() macro is defined to be a no-op.

     KDASSERT() tests are included only in kernels compiled with the DEBUG
     configuration option.  KDASSERT() and KASSERT() are identical except for
     the controlling option (DEBUG vs DIAGNOSTIC).

     The panic message will display the style of assertion (debugging vs.
     diagnostic), the expression that failed and the filename, and line number
     the failure happened on.

SEE ALSO
     config(1), panic(9), printf(9)

AUTHORS
     These macros were written by Chris G. Demetriou <cgd@netbsd.org>.

NetBSD 5.0_STABLE              December 10, 2006             NetBSD 5.0_STABLE
