/* $Id$ */
-/* Release $Name$ */
-
/* stdarg
This file is part of the Public Domain C Library (PDCLib).
Permission is granted to use, modify, and / or redistribute at will.
*/
-#ifdef TEST
-
-#include <_PDCLIB_test.h>
#include <stdarg.h>
#include <limits.h>
#include <float.h>
+#ifdef TEST
-unsigned int rc = 0;
+#include <_PDCLIB_test.h>
typedef int (*intfunc_t)( void );
TAG_FUNCPTR
};
+static int dummy( void )
+{
+ return INT_MAX;
+}
+
static int test( enum tag_t s, ... )
{
enum tag_t tag = s;
}
case TAG_FUNCPTR:
{
- TESTCASE( (va_arg( ap, intfunc_t ))() == INT_MAX );
+ intfunc_t function;
+ TESTCASE( ( function = va_arg( ap, intfunc_t ) ) == dummy );
+ TESTCASE( function() == INT_MAX );
tag = va_arg( ap, enum tag_t );
break;
}
}
}
-int dummy()
-{
- return INT_MAX;
-}
-
-int main()
+int main( void )
{
int x = INT_MAX;
long double d = LDBL_MAX;
test( TAG_INTPTR, &x, TAG_LDBLPTR, &d, TAG_FUNCPTR, dummy, TAG_END );
return TEST_RESULTS;
}
-
#endif