home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1997 May / Pcwk0597.iso / sybase / starbuck / h.z / ASSERT.H < prev    next >
C/C++ Source or Header  |  1996-07-24  |  981b  |  40 lines

  1. /*
  2.  *  assert.h
  3.  *
  4.  *  Copyright by WATCOM International Corp. 1988-1996.  All rights reserved.
  5.  */
  6. #ifdef __cplusplus
  7. extern "C" {
  8. #endif
  9.  
  10. #ifndef _COMDEF_H_INCLUDED
  11.  #include <_comdef.h>
  12. #endif
  13.  
  14. #undef assert
  15.  
  16. #ifdef NDEBUG
  17.  #define assert(__ignore) ((void)0)
  18. #else
  19.  _WCRTLINK extern void _assert( char *, char *, int );
  20.  _WCRTLINK extern void _wassert( char *, char *, int );
  21.  _WCRTLINK extern void __assert( int, char *, char *, int );
  22.  _WCRTLINK extern void __wassert( int, char *, char *, int );
  23. #if !defined(NO_EXT_KEYS) /* extensions enabled */
  24.  #ifdef _UNICODE
  25.   #define assert(expr)   ((expr)?(void)0:_wassert(#expr,__FILE__,__LINE__))
  26.  #else
  27.   #define assert(expr)   ((expr)?(void)0:_assert(#expr,__FILE__,__LINE__))
  28.  #endif
  29. #else
  30.  #ifdef _UNICODE
  31.   #define assert(expr)    __wassert(expr,#expr,__FILE__,__LINE__)
  32.  #else
  33.   #define assert(expr)    __assert(expr,#expr,__FILE__,__LINE__)
  34.  #endif
  35. #endif
  36. #endif
  37. #ifdef __cplusplus
  38. };
  39. #endif
  40.