plucky (9) CTASSERT.9freebsd.gz

Provided by: freebsd-manpages_12.2-2_all bug

NAME

     CTASSERT — compile time assertion macro

SYNOPSIS

     #include <sys/param.h>
     #include <sys/systm.h>

     CTASSERT(expression);

DESCRIPTION

     The CTASSERT() macro is deprecated and the C11 standard _Static_assert() should be used instead.  The
     header sys/cdefs.h should be included to provide compatibility for pre-C11 compilers.

     The CTASSERT() macro evaluates expression at compile time and causes a compiler error if it is false.

     The CTASSERT() macro is useful for asserting the size or alignment of important data structures and
     variables during compilation, which would otherwise cause the code to fail at run time.

EXAMPLES

     Assert that the size of the uuid structure is 16 bytes.

           CTASSERT(sizeof(struct uuid) == 16);

SEE ALSO

     KASSERT(9)

AUTHORS

     This manual page was written by Hiten M. Pandya <hmp@FreeBSD.org>.