File:
[ELWIX - Embedded LightWeight unIX -] /
embedaddon /
php /
tests /
lang /
operators /
bitwiseNot_basiclong_64bit.phpt
Revision
1.1.1.1 (vendor branch):
download - view:
text,
annotated -
select for diffs -
revision graph
Tue Feb 21 23:48:06 2012 UTC (12 years, 6 months ago) by
misho
Branches:
php,
MAIN
CVS tags:
v5_4_3elwix,
v5_4_29p0,
v5_4_29,
v5_4_20p0,
v5_4_20,
v5_4_17p0,
v5_4_17,
v5_3_10,
HEAD
php
1: --TEST--
2: Test ~N operator : 64bit long tests
3: --SKIPIF--
4: <?php
5: if (PHP_INT_SIZE != 8) die("skip this test is for 64bit platform only");
6: ?>
7: --FILE--
8: <?php
9:
10: define("MAX_64Bit", 9223372036854775807);
11: define("MAX_32Bit", 2147483647);
12: define("MIN_64Bit", -9223372036854775807 - 1);
13: define("MIN_32Bit", -2147483647 - 1);
14:
15: $longVals = array(
16: MAX_64Bit, MIN_64Bit, MAX_32Bit, MIN_32Bit, MAX_64Bit - MAX_32Bit, MIN_64Bit - MIN_32Bit,
17: MAX_32Bit + 1, MIN_32Bit - 1, MAX_32Bit * 2, (MAX_32Bit * 2) + 1, (MAX_32Bit * 2) - 1,
18: MAX_64Bit -1, MAX_64Bit + 1, MIN_64Bit + 1, MIN_64Bit - 1
19: );
20:
21:
22: foreach ($longVals as $longVal) {
23: echo "--- testing: $longVal ---\n";
24: var_dump(~$longVal);
25: }
26:
27: ?>
28: ===DONE===
29: --EXPECT--
30: --- testing: 9223372036854775807 ---
31: int(-9223372036854775808)
32: --- testing: -9223372036854775808 ---
33: int(9223372036854775807)
34: --- testing: 2147483647 ---
35: int(-2147483648)
36: --- testing: -2147483648 ---
37: int(2147483647)
38: --- testing: 9223372034707292160 ---
39: int(-9223372034707292161)
40: --- testing: -9223372034707292160 ---
41: int(9223372034707292159)
42: --- testing: 2147483648 ---
43: int(-2147483649)
44: --- testing: -2147483649 ---
45: int(2147483648)
46: --- testing: 4294967294 ---
47: int(-4294967295)
48: --- testing: 4294967295 ---
49: int(-4294967296)
50: --- testing: 4294967293 ---
51: int(-4294967294)
52: --- testing: 9223372036854775806 ---
53: int(-9223372036854775807)
54: --- testing: 9.2233720368548E+18 ---
55: int(9223372036854775807)
56: --- testing: -9223372036854775807 ---
57: int(9223372036854775806)
58: --- testing: -9.2233720368548E+18 ---
59: int(9223372036854775807)
60: ===DONE===
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>