00001 #ifndef QTHREAD_ASSERTS_H
00002 #define QTHREAD_ASSERTS_H
00003
00004 #ifdef HAVE_CONFIG_H
00005 # include "config.h"
00006 #endif
00007
00008 #ifndef QTHREAD_NO_ASSERTS
00009 # include <assert.h>
00010 #endif
00011
00012 #ifdef QTHREAD_NO_ASSERTS
00013 # define qassert(op, val) op
00014 # define qassertnot(op, val) op
00015 # ifdef assert
00016 # undef assert
00017 # endif
00018 # define assert(foo)
00019 # define qassert_ret(assertion, retval) do { if (!(assertion)) { return retval; } } while (0)
00020 # define qassert_retvoid(assertion) do { if (!(assertion)) { return; } } while (0)
00021 # define qassert_goto(assertion, tag) do { if (!(assertion)) { goto tag; } } while (0)
00022 #define qgoto(tag) tag:
00023 #else
00024 # define qassert(op, val) assert(op == val)
00025 # define qassertnot(op, val) assert(op != val)
00026 # define qassert_ret(assertion, retval) assert(assertion)
00027 # define qassert_retvoid(assertion) assert(assertion)
00028 # define qassert_goto(assertion, tag) assert(assertion)
00029 # define qgoto(tag)
00030 #endif
00031
00032 #endif