if ( width < 0 )
{
status->flags |= E_minus;
- status->width = width * -1; /* FIXME: Should be abs( width ) */
+ status->width = abs( width );
}
else
{
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 );
if ( *(_PDCLIB_print( format, &status )) != '\0' )
{
printf( "_PDCLIB_print() did not return end-of-specifier on '%s'.\n", format );
- ++rc;
+ ++TEST_RESULTS;
}
va_end( status.arg );
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 );
TESTCASE( strcmp( buffer, "abcdef" ) == 0 );
TESTCASE( testprintf( buffer, 100, "%p", (void *)0xdeadbeef ) == 10 );
TESTCASE( strcmp( buffer, "0xdeadbeef" ) == 0 );
+#endif
return TEST_RESULTS;
}