Man Linux: Main Page and Category List

NAME

       DI - verify assertions in C and C++ code using gdb(1)

SYNOPSIS

       #include <DI.h>

       DI(exprn)

       DIG(exprn,guard)

       DIH(exprn,handler)

       DIP(exprn,param)

       DIGH(exprn,guard,handler)

       DIHP(exprn,handler,param)

       DIGHP(exprn,guard,handler,param)

       DS(exprn)

DESCRIPTION

       The  DI(exprn)  checks  that  the  exprn  is  true  in  the same way as
       assert(3).  It is however implemented by generating  debugger  commands
       from  the  source code and so only works if you run the command under a
       debugger after source the command file generated by nana(1).

       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.

       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 DI, DIG, etc DI.h also provides DN, DNG, etc which
       are used to check that an expression is never true.

SEE ALSO

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

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

AUTHOR

       Phil Maker <pjm@gnu.org>