Reworked scanf() testing. General cleanups.
[fw/pdclib] / functions / _PDCLIB / stdarg.c
index 4900cc58de8d607dd7f60af483af575f28677e9d..fb3f4d636cd2f8560545d6ca725946638515b5a0 100644 (file)
@@ -1,7 +1,5 @@
 /* $Id$ */
 
-/* Release $Name$ */
-
 /* stdarg
 
    This file is part of the Public Domain C Library (PDCLib).
@@ -29,6 +27,11 @@ enum tag_t
     TAG_FUNCPTR
 };
 
+static int dummy( void )
+{
+    return INT_MAX;
+}
+
 static int test( enum tag_t s, ... )
 {
     enum tag_t tag = s;
@@ -82,7 +85,9 @@ static int test( enum tag_t 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;
             }
@@ -95,11 +100,6 @@ static int test( enum tag_t s, ... )
     }
 }
 
-static int dummy( void )
-{
-    return INT_MAX;
-}
-
 int main( void )
 {
     int x = INT_MAX;