Reworked scanf() testing. General cleanups.
[fw/pdclib] / functions / stdio / printf.c
1 /* $Id$ */
2
3 /* printf( const char *, ... )
4
5    This file is part of the Public Domain C Library (PDCLib).
6    Permission is granted to use, modify, and / or redistribute at will.
7 */
8
9 #include <stdio.h>
10 #include <stdarg.h>
11
12 #ifndef REGTEST
13
14 int printf( const char * _PDCLIB_restrict format, ... )
15 {
16     int rc;
17     va_list ap;
18     va_start( ap, format );
19     rc = vfprintf( stdout, format, ap );
20     va_end( ap );
21     return rc;
22 }
23
24 #endif
25
26 #ifdef TEST
27 #define _PDCLIB_FILEID "stdio/printf.c"
28 #define _PDCLIB_FILEIO
29
30 #include <_PDCLIB_test.h>
31
32 #define testprintf( stream, format, ... ) printf( format, __VA_ARGS__ )
33
34 int main( void )
35 {
36     FILE * target;
37     TESTCASE( ( target = freopen( testfile, "wb+", stdout ) ) != NULL );
38 #include "printf_testcases.h"
39     TESTCASE( fclose( target ) == 0 );
40     TESTCASE( remove( testfile ) == 0 );
41     return TEST_RESULTS;
42 }
43
44 #endif