00001 #ifndef NPS_ASSERT_H
00002 #define NPS_ASSERT_H
00003
00004 #include <stdio.h>
00005 #include "../backtrace.c"
00006
00007 #ifndef NPS_ASSERT_SWITCH
00008 #define NPS_ASSERT_SWITCH 1
00009 #endif
00010
00011 #define ASSERT(condition,fmt_str...) \
00012 if (NPS_ASSERT_SWITCH) { \
00013 if (!(condition)) { \
00014 fprintf(stderr,"%s:%d ",__FILE__,__LINE__); \
00015 fprintf(stderr,##fmt_str); \
00016 BACKTRACE; \
00017 abort(); \
00018 } \
00019 }
00020
00021 #endif
00022