X-Git-Url: https://pd.if.org/git/?a=blobdiff_plain;f=functions%2F_PDCLIB%2Fprint.c;h=365de3f2849b4303dca7758bef0757bbafccbd1f;hb=3c0222abe10a1b849ab3b37ddd59f61deed30ee2;hp=76297147450d6636b7e7a2133be700febd723425;hpb=55cf35957bf8dec0a489ba758c02c83303a5eb50;p=pdclib diff --git a/functions/_PDCLIB/print.c b/functions/_PDCLIB/print.c index 7629714..365de3f 100644 --- a/functions/_PDCLIB/print.c +++ b/functions/_PDCLIB/print.c @@ -451,6 +451,7 @@ const char * _PDCLIB_print( const char * spec, struct _PDCLIB_status_t * status break; } ++(status->current); + /* FIXME: The if clause means one-digit values do not get formatted */ if ( ( value / status->base ) != 0 ) { int2base( (intmax_t)(value / status->base), status ); @@ -542,9 +543,17 @@ static int testprintf( char * buffer, size_t n, const char * format, ... ) return status.i; } +#define TEST_CONVERSION_ONLY + +#define TESTCASE_SPRINTF( x ) TESTCASE( x ) + int main( void ) { char buffer[100]; +#include "printf_testcases.incl" + +#if 0 + char buffer[100]; TESTCASE( testprintf( buffer, 100, "%hhd", CHAR_MIN ) == 4 ); TESTCASE( strcmp( buffer, "-128" ) == 0 ); TESTCASE( testprintf( buffer, 100, "%hhd", CHAR_MAX ) == 3 ); @@ -783,6 +792,7 @@ int main( void ) TESTCASE( strcmp( buffer, "abcdef" ) == 0 ); TESTCASE( testprintf( buffer, 100, "%p", (void *)0xdeadbeef ) == 10 ); TESTCASE( strcmp( buffer, "0xdeadbeef" ) == 0 ); +#endif return TEST_RESULTS; }