/* 
 * assert.h
 *
 * x-kernel v3.3
 *
 * Original Copyright (c) 1993,1991,1990,1996  Arizona Board of Regents
 * Modifications Copyright (c) 1993 Massachusetts Board of Regents
 *
 * $Log: xk_assert.h,v $
 * Revision 1.2  1996/01/30 20:51:19  slm
 * Updated copyright and version.
 *
 * Revision 1.1  1995/07/29  02:40:49  slm
 * Initial revision
 *
 * Revision 1.1.1.1  1994/11/12  19:10:52  hkaram
 * New branch
 *
 * Revision 1.1  1993/11/13  00:45:35  menze
 * Original version from UMass
 *
 * 1.1.1.1
 * 1993/06/09 00:48:15
 */

#ifndef assert_h
#define assert_h

#include <stdio.h>

#ifdef __STDC__

extern void abort(void);
extern void xAssertPrint(char *, int);

#else

extern void abort();
extern void xAssertPrint();

#endif

#define PRINT(A,B,C) fprintf(stderr, (A), (B), (C))
#define assertMessage "Assertion failed: file %s, line %d\n"

#  ifdef XK_DEBUG
#   define _xAssert(ex)  if (!(ex)) xAssertPrint(__FILE__, __LINE__)
#   define xAssert(ex)  if (!(ex)) xAssertPrint(__FILE__, __LINE__)
#  else
#   define _xAssert(ex) {}
#   define xAssert(ex) {}
#  endif /* XK_DEBUG */
#endif /* assert_h */
