X-Git-Url: https://pd.if.org/git/?a=blobdiff_plain;f=functions%2F_PDCLIB%2Fassert.c;h=fbee63404eb97417ea59fcf0cb97cb6b34c04713;hb=015e9131c3aa3f39b34612d0d2fce242f6deb7b4;hp=5c4b310936ac4dcf3eacd2cdcb43adb48d12149b;hpb=48343738db657a317d2d217f3e4ed5b6c37bd621;p=pdclib.old diff --git a/functions/_PDCLIB/assert.c b/functions/_PDCLIB/assert.c index 5c4b310..fbee634 100644 --- a/functions/_PDCLIB/assert.c +++ b/functions/_PDCLIB/assert.c @@ -1,7 +1,5 @@ /* $Id$ */ -/* Release $Name$ */ - /* _PDCLIB_assert( char const * ) This file is part of the Public Domain C Library (PDCLib). @@ -10,6 +8,9 @@ #include #include +#include + +#ifndef REGTEST #ifndef _PDCLIB_AUX_H #define _PDCLIB_AUX_H _PDCLIB_AUX_H @@ -32,25 +33,25 @@ void _PDCLIB_assert( char const * const message ) } #endif +#endif #ifdef TEST #include <_PDCLIB_test.h> #include -static int rc = 0; static int EXPECTED_ABORT = 0; static int UNEXPECTED_ABORT = 1; -void aborthandler( int signal ) +static void aborthandler( int sig ) { TESTCASE( ! EXPECTED_ABORT ); - exit( rc ); + exit( (signed int)TEST_RESULTS ); } #define NDEBUG #include -int disabled_test() +static int disabled_test( void ) { int i = 0; assert( i == 0 ); /* NDEBUG set, condition met */ @@ -61,10 +62,10 @@ int disabled_test() #undef NDEBUG #include -int main() +int main( void ) { - BEGIN_TESTS; TESTCASE( signal( SIGABRT, &aborthandler ) != SIG_ERR ); + TESTCASE( disabled_test() == 0 ); assert( UNEXPECTED_ABORT ); /* NDEBUG not set, condition met */ assert( EXPECTED_ABORT ); /* NDEBUG not set, condition fails - should abort */ return TEST_RESULTS;