-#if defined( FPRINTF_FUNCTION )
-static char result_buffer[ 1000 ];
-#define RESULT_MISMATCH( act, exp ) \
- rewind( act ), \
- result_buffer[ fread( result_buffer, 1, strlen( exp ) + 1, act ) ] = '\0', \
- rewind( act ), \
- memcmp( result_buffer, exp, strlen( exp ) )
-#define RESULT_STRING( tgt ) result_buffer
-#elif defined( SPRINTF_FUNCTION )
-#define RESULT_MISMATCH( act, exp ) strcmp( act, exp ) != 0
-#define RESULT_STRING( tgt ) tgt
+/* TESTCASE_NOREG() - PDCLib-only test */
+#ifndef REGTEST
+ #define TESTCASE_NOREG( x ) TESTCASE( x )
+#else
+ #define TESTCASE_NOREG( x )
+#endif
+
+/* ...printf() tests */
+#if defined( _PDCLIB_FILEIO )
+ #define RESULT_MISMATCH( act, exp ) \
+ rewind( act ), \
+ result_buffer[ fread( result_buffer, 1, strlen( exp ) + 1, act ) ] = '\0', \
+ rewind( act ), \
+ memcmp( result_buffer, exp, strlen( exp ) )
+ #define RESULT_STRING( tgt ) result_buffer
+#elif defined( _PDCLIB_STRINGIO )
+ #define RESULT_MISMATCH( act, exp ) strcmp( act, exp ) != 0
+ #define RESULT_STRING( tgt ) tgt
+#endif
+
+#ifdef _PDCLIB_FILEIO
+#define PREP_RESULT_BUFFER char result_buffer[100];
+#else
+#define PREP_RESULT_BUFFER