Source: classlib/include/checks.h
|
|
|
|
/***************************************************************************
checks.h - macro per il debugging
-------------------
begin : ven dic 7 17:40:01 CET 2001
copyright : (C) 2001 by Nicola De Nisco
email : nicola@winada.it
***************************************************************************/
/***************************************************************************
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
***************************************************************************/
#ifndef __CHECKS_H
#define __CHECKS_H
#include <_defs.h>
#if !defined( __DEBUG )
#define __DEBUG 0
#endif
#undef PRECONDITION
#undef PRECONDITIONX
#define PRECONDITION(p) PRECONDITIONX(p,#p)
#if __DEBUG < 1
#define PRECONDITIONX(p,s) ((void)0)
#else
#define PRECONDITIONX(p,s) \
if(!(p)) {fprintf(stderr, "PRECONDITION FAILED: %s in %s line %s\n", s, __FILE__, __LINE__);}
#endif
#undef CHECK
#undef CHECKX
#define CHECK(p) CHECKX(p,#p)
#if __DEBUG < 2
#define CHECKX(p,s) ((void)0)
#else
#define CHECKX(p,s) \
if(!(p)) {fprintf(stderr, "CHECK FAILED: %s in %s line %s\n", s, __FILE__, __LINE__);}
#endif
#endif // __CHECKS_H
Generated by: nicola on gulliver.wadahome.it on Sun May 25 13:54:34 2003, using kdoc 2.0a53. |