Man Linux: Main Page and Category List

NAME

       I - verify assertions in C and C++ code

SYNOPSIS

       #include <I.h>

       I(exprn)

       IG(exprn,guard)

       IH(exprn,handler)

       IP(exprn,param)

       IGH(exprn,guard,handler)

       IHP(exprn,handler,param)

       IGHP(exprn,guard,handler,param)

       ID(decln)

       IS(assignment)

       ISG(assignment,guard)

DESCRIPTION

       The  I(exprn)  checks  that  the  exprn  is  true  in  the  same way as
       assert(3).  If the expression is false an error has  been  detected  in
       the code and some error handling code will be called.

       exprn - the expression to be checked.

       guard - the expression is normally only checked if the guard is true.

       handler  -  a  macro  which  generates  the code that handles the error
       condition.

       param - a parameter which can be passed off to the handler. This can be
       used  for identifying the assertion failure in a space-efficent manner,
       e.g. by copying it into a register before aborting.

       decln - a variable declaration for use in a postcondition

       assignment - an assignment expression setting a variable which can then
       be used in a postcondition.

       See  nana.info  for  details  on  configuring  the  behaviour  on error
       detection, etc. You also need to include  the  nana  library  by  using
       -lnana if you use the default setup.

       In  addition  to  the I, IG, etc I.h also provides N, NG, etc which are
       used to check that an expression is never true.

SEE ALSO

       nana-clg(1), nana(1), nana(3),  ,  DI(3),  L(3),  DL(3),  Q(3)  and
       nana.info.

       The nana.info file is the primary documentation for this package.

AUTHOR

       Phil Maker <pjm@gnu.org>