#ifndef H_ED_ASSERT_20060616103331
#define H_ED_ASSERT_20060616103331

#ifdef __cplusplus
extern "C"
{
#endif

/* ---------------------------------------------------------------------
   (c) ED 2006
   Projet       : CLIB
   Fonction     : Fonctions 'systeme'
   Module       : ASSERT
   Fichier      : assert.h
   Creation     : 16-06-2006
   Modification : 16-06-2006
   --------------------------------------------------------------------- */

/* ---------------------------------------------------------------------
   Journal

   1.0 16-06-2006 Was in module sys
   --------------------------------------------------------------------- */

/* macros ============================================================== */

#ifndef NDEBUG
#define ASSERT(a)                                       \
do                                                      \
{                                                       \
   (a) ? (void)0 : assert_fail (#a                      \
                                  , __FILE__            \
                                  , __LINE__            \
                                  );                    \
}                                                       \
while (0)
#else
#define ASSERT(a) ((void)0)
#endif

/* constants =========================================================== */
/* types =============================================================== */
/* structures ========================================================== */
/* internal public functions =========================================== */
/* entry points ======================================================== */

   void assert_fail (char const *exp_
                        ,char const *file
                        ,int line);



/* public variables ==================================================== */

#ifdef __cplusplus
}
#endif

#endif /* guard */

/* Guards added by GUARD (c) ED 2000-2005 Jan 17 2005 Ver. 1.7 */
