X-Git-Url: https://pd.if.org/git/?a=blobdiff_plain;f=functions%2Fstdio%2Fsscan_sources.incl;h=78063a915e35e4608fd32876c15655a86672cda5;hb=cbd7fc65775365c1c63b565cc7aee1093a069205;hp=ba4eb24aac2a2e04fca8398b0b380d9b0c8d3f77;hpb=53b58d5bba717ecbf47baa0feab2b38cc55a804a;p=pdclib diff --git a/functions/stdio/sscan_sources.incl b/functions/stdio/sscan_sources.incl index ba4eb24..78063a9 100644 --- a/functions/stdio/sscan_sources.incl +++ b/functions/stdio/sscan_sources.incl @@ -3,9 +3,9 @@ "-2147483648 +2147483647 +4294967295\n" "-9223372036854775808 +9223372036854775807\n" "+18446744073709551615\n"; - char const * hexadecimal = "-0x0 -0x000 -0x7f 0x80 0xff -0x7fff 0x8000\n" - "0xffff -0x7fffffff 0x80000000 0xffffffff\n" - "-0x7fffffffffffffff 0x8000000000000000\n" + char const * hexadecimal = "-0x0 -0x000 -0x7f -0x80 0xff -0x7fff -0x8000\n" + "0xffff -0x7fffffff -0x80000000 0xffffffff\n" + "-0x7fffffffffffffff -0x8000000000000000\n" "0xffffffffffffffff\n"; char const * octal = "+0000 -0000 +0177 +0377 -0377 +077777 +0177777\n" "-0177777 +017777777777 +037777777777\n" @@ -13,15 +13,31 @@ "+01777777777777777777777\n" "-01777777777777777777777\n"; char const * alpha = "abcdefgh-ijklmnop[qrs%uvw]xyz"; +#ifndef REGTEST char const * special = "-0xz\n"; +#endif /* sscan */ -#define TESTSCAN( result, count, source, offset, format, ... ) \ +#define TESTSCAN( result, count, source, offset, ... ) \ do \ { \ int n = -1; \ - TESTCASE( SCANFUNC( source + offset, format "%n", __VA_ARGS__, &n ) == result ); \ - TESTCASE( n == count ); \ + int res = SCANFUNC( source + offset, __VA_ARGS__ ); \ + if ( res != result ) \ + { \ + rc += 1; \ + printf( "FAILED: " __FILE__ ", line %d - expected result %d, got %d\n", __LINE__, result, res ); \ + } \ + if ( n != count ) \ + { \ + rc += 1; \ + printf( "FAILED: " __FILE__ ", line %d - expected count %d, got %d\n", __LINE__, count, n ); \ + } \ } while ( 0 ) +#define SCAN( format ) format "%n", &n +#define SCANPARMS( format, ... ) format "%n", __VA_ARGS__, &n + +#define _PDCLIB_SSCAN +