assert.h
上传用户:luoyougen
上传日期:2008-05-12
资源大小:23136k
文件大小:1k
源码类别:

VxWorks

开发平台:

C/C++

  1. /* assert.h - ANSI standard assert functions header */
  2. /* Copyright 1992 Wind River Systems, Inc. */
  3. /*
  4. modification history
  5. --------------------
  6. 01e,13nov92,smb  fixed assert macro to not generate warnings
  7. 01d,22sep92,rrr  added support for c++
  8. 01c,20jul92,smb  added __assert extern.
  9. 01b,04jul92,jcf  cleaned up.
  10. 01a,03jul92,smb  written.
  11. */
  12. #ifdef __cplusplus
  13. extern "C" {
  14. #endif
  15. #include "types/vxANSI.h"
  16. #undef assert
  17. #ifdef NDEBUG
  18. #define assert(ignore) ((void) 0)
  19. #else /* turn debugging on */
  20. #define _ASSERT_STR(z) _ASSERT_TMP(z)
  21. #define _ASSERT_TMP(z) #z
  22. #if defined(__STDC__) || defined(__cplusplus)
  23. extern void __assert (const char *msg);
  24. #else
  25. extern void __assert ();
  26. #endif
  27. #define assert(test) ((void) 
  28.       ((test) ? ((void) 0) : 
  29.        __assert("Assertion failed: "#test", file " 
  30.                                 __FILE__ ", line "_ASSERT_STR(__LINE__)"n")))
  31. #endif /* NDEBUG */
  32. #ifdef __cplusplus
  33. }
  34. #endif