logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

This manual page is part of the POSIX Programmer's Manual. The Linux implementation of this interface

Application Usage

       None.

Description

       The  functionality  described  on  this  reference  page is aligned with the ISO C standard. Any conflict
       between the requirements described  here  and  the  ISO C  standard  is  unintentional.  This  volume  of
       POSIX.1‐2017 defers to the ISO C standard.

       The  assert() macro shall insert diagnostics into programs; it shall expand to a void expression. When it
       is executed, if expression (which shall have a scalar type) is false (that  is,  compares  equal  to  0),
       assert() shall write information about the particular call that failed on stderr and shall call abort().

       The  information  written  about the call that failed shall include the text of the argument, the name of
       the source file, the source file line number, and the name of the enclosing  function;  the  latter  are,
       respectively,  the  values  of  the  preprocessing  macros  __FILE__  and  __LINE__ and of the identifier
       __func__.

       Forcing a definition of the name NDEBUG, either from the compiler command line or with  the  preprocessor
       control  statement  #define NDEBUG ahead of the #include<assert.h> statement, shall stop assertions from
       being compiled into the program.

Errors

       No errors are defined.

       Thefollowingsectionsareinformative.

Examples

       None.

Future Directions

       None.

Name

       assert — insert program diagnostics

Prolog

       This  manual  page  is part of the POSIX Programmer's Manual.  The Linux implementation of this interface
       may differ (consult the corresponding Linux manual page for details of Linux behavior), or the  interface
       may not be implemented on Linux.

Rationale

       None.

Return Value

       The assert() macro shall not return a value.

See Also

abort(), stdin

       The Base Definitions volume of POSIX.1‐2017, <assert.h>

Synopsis

       #include <assert.h>

       void assert(scalar expression);

See Also