/*
 * $Id: assert64.h,v 1.1 2003/02/07 18:15:44 wheeler Exp $
 * $Log: assert64.h,v $
 * Revision 1.1  2003/02/07 18:15:44  wheeler
 * Fox's version of libultra and friends.
 *
 * Revision 1.3  1997/02/07  10:55:55  hayakawa
 * BATCH
 *
 * Revision 1.2  1996/11/21  05:06:59  hayakawa
 * NDEBUGのときに、ワーニングを出さないようにする
 *
 */

#ifndef __ASSERT64_H__
#define __ASSERT64_H__

#ifdef __cplusplus
extern "C" {
#endif

#ifdef NDEBUG
#undef assert
#define assert(EX) ((void)(0 && (EX)))	/* ワーニングを出さないようにする（副作用に注意） */

#else /* NDEBUG */

extern void __assert64(const char *, const char *, int);
#ifdef __ANSI_CPP__
#define assert(EX)  ((EX)?((void)0):__assert64( # EX , __FILE__, __LINE__))
#else
#define assert(EX)  ((EX)?((void)0):__assert64("EX", __FILE__, __LINE__))
#endif

#endif /* NDEBUG */

#ifdef __cplusplus
}
#endif

#endif /* __ASSERT64_H__ */
