Annotation of embedaddon/php/ext/standard/tests/strings/bug47842.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: Bug #47842      sscanf() does not support 64-bit values
                      3: --SKIPIF--
                      4: <?php
                      5: if (PHP_INT_MAX < pow(2,31)) die("skip PHP_INT_MAX < 32b\n");
                      6: ?>
                      7: --FILE--
                      8: <?php
                      9: echo "-Test\n";
                     10: 
                     11: sscanf("2147483647", '%d', $int);
                     12: echo "sscanf 32-bit signed int '2147483647'           (2^31)-1 = ",$int,"\n";
                     13: sscanf("4294967295", '%u', $int);
                     14: echo "sscanf 32-bit unsign int '4294967295'           (2^32)-1 = ",$int,"\n";
                     15: 
                     16: sscanf("9223372036854775807", '%d', $int);
                     17: echo "sscanf 64-bit signed int '9223372036854775807'  (2^63)-1 = ",$int,"\n";
                     18: sscanf("18446744073709551615", '%u', $int);
                     19: echo "sscanf 64-bit unsign int '18446744073709551615' (2^64)-1 = ",$int,"\n";
                     20: 
                     21: printf("printf 64-bit signed int '9223372036854775807'  (2^63)-1 = %d\n", 9223372036854775807);
                     22: printf("printf 64-bit signed int '18446744073709551615' (2^64)-1 = %u\n", 18446744073709551615);
                     23: 
                     24: echo "Done\n";
                     25: ?>
                     26: --EXPECTF--
                     27: %aTest
                     28: sscanf 32-bit signed int '2147483647'           (2^31)-1 = 2147483647
                     29: sscanf 32-bit unsign int '4294967295'           (2^32)-1 = 4294967295
                     30: sscanf 64-bit signed int '9223372036854775807'  (2^63)-1 = 9223372036854775807
                     31: sscanf 64-bit unsign int '18446744073709551615' (2^64)-1 = 18446744073709551615
                     32: printf 64-bit signed int '9223372036854775807'  (2^63)-1 = 9223372036854775807
                     33: printf 64-bit signed int '18446744073709551615' (2^64)-1 = 0
                     34: Done

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>