File:
[ELWIX - Embedded LightWeight unIX -] /
embedaddon /
php /
tests /
lang /
operators /
modulus_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, 5 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 % 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: $otherVals = array(0, 1, -1, 7, 9, 65, -44, MAX_32Bit, MAX_64Bit);
22:
23: error_reporting(E_ERROR);
24:
25: foreach ($longVals as $longVal) {
26: foreach($otherVals as $otherVal) {
27: echo "--- testing: $longVal % $otherVal ---\n";
28: var_dump($longVal%$otherVal);
29: }
30: }
31:
32: foreach ($otherVals as $otherVal) {
33: foreach($longVals as $longVal) {
34: echo "--- testing: $otherVal % $longVal ---\n";
35: var_dump($otherVal%$longVal);
36: }
37: }
38:
39: ?>
40: ===DONE===
41: --EXPECT--
42: --- testing: 9223372036854775807 % 0 ---
43: bool(false)
44: --- testing: 9223372036854775807 % 1 ---
45: int(0)
46: --- testing: 9223372036854775807 % -1 ---
47: int(0)
48: --- testing: 9223372036854775807 % 7 ---
49: int(0)
50: --- testing: 9223372036854775807 % 9 ---
51: int(7)
52: --- testing: 9223372036854775807 % 65 ---
53: int(7)
54: --- testing: 9223372036854775807 % -44 ---
55: int(7)
56: --- testing: 9223372036854775807 % 2147483647 ---
57: int(1)
58: --- testing: 9223372036854775807 % 9223372036854775807 ---
59: int(0)
60: --- testing: -9223372036854775808 % 0 ---
61: bool(false)
62: --- testing: -9223372036854775808 % 1 ---
63: int(0)
64: --- testing: -9223372036854775808 % -1 ---
65: int(0)
66: --- testing: -9223372036854775808 % 7 ---
67: int(-1)
68: --- testing: -9223372036854775808 % 9 ---
69: int(-8)
70: --- testing: -9223372036854775808 % 65 ---
71: int(-8)
72: --- testing: -9223372036854775808 % -44 ---
73: int(-8)
74: --- testing: -9223372036854775808 % 2147483647 ---
75: int(-2)
76: --- testing: -9223372036854775808 % 9223372036854775807 ---
77: int(-1)
78: --- testing: 2147483647 % 0 ---
79: bool(false)
80: --- testing: 2147483647 % 1 ---
81: int(0)
82: --- testing: 2147483647 % -1 ---
83: int(0)
84: --- testing: 2147483647 % 7 ---
85: int(1)
86: --- testing: 2147483647 % 9 ---
87: int(1)
88: --- testing: 2147483647 % 65 ---
89: int(62)
90: --- testing: 2147483647 % -44 ---
91: int(23)
92: --- testing: 2147483647 % 2147483647 ---
93: int(0)
94: --- testing: 2147483647 % 9223372036854775807 ---
95: int(2147483647)
96: --- testing: -2147483648 % 0 ---
97: bool(false)
98: --- testing: -2147483648 % 1 ---
99: int(0)
100: --- testing: -2147483648 % -1 ---
101: int(0)
102: --- testing: -2147483648 % 7 ---
103: int(-2)
104: --- testing: -2147483648 % 9 ---
105: int(-2)
106: --- testing: -2147483648 % 65 ---
107: int(-63)
108: --- testing: -2147483648 % -44 ---
109: int(-24)
110: --- testing: -2147483648 % 2147483647 ---
111: int(-1)
112: --- testing: -2147483648 % 9223372036854775807 ---
113: int(-2147483648)
114: --- testing: 9223372034707292160 % 0 ---
115: bool(false)
116: --- testing: 9223372034707292160 % 1 ---
117: int(0)
118: --- testing: 9223372034707292160 % -1 ---
119: int(0)
120: --- testing: 9223372034707292160 % 7 ---
121: int(6)
122: --- testing: 9223372034707292160 % 9 ---
123: int(6)
124: --- testing: 9223372034707292160 % 65 ---
125: int(10)
126: --- testing: 9223372034707292160 % -44 ---
127: int(28)
128: --- testing: 9223372034707292160 % 2147483647 ---
129: int(1)
130: --- testing: 9223372034707292160 % 9223372036854775807 ---
131: int(9223372034707292160)
132: --- testing: -9223372034707292160 % 0 ---
133: bool(false)
134: --- testing: -9223372034707292160 % 1 ---
135: int(0)
136: --- testing: -9223372034707292160 % -1 ---
137: int(0)
138: --- testing: -9223372034707292160 % 7 ---
139: int(-6)
140: --- testing: -9223372034707292160 % 9 ---
141: int(-6)
142: --- testing: -9223372034707292160 % 65 ---
143: int(-10)
144: --- testing: -9223372034707292160 % -44 ---
145: int(-28)
146: --- testing: -9223372034707292160 % 2147483647 ---
147: int(-1)
148: --- testing: -9223372034707292160 % 9223372036854775807 ---
149: int(-9223372034707292160)
150: --- testing: 2147483648 % 0 ---
151: bool(false)
152: --- testing: 2147483648 % 1 ---
153: int(0)
154: --- testing: 2147483648 % -1 ---
155: int(0)
156: --- testing: 2147483648 % 7 ---
157: int(2)
158: --- testing: 2147483648 % 9 ---
159: int(2)
160: --- testing: 2147483648 % 65 ---
161: int(63)
162: --- testing: 2147483648 % -44 ---
163: int(24)
164: --- testing: 2147483648 % 2147483647 ---
165: int(1)
166: --- testing: 2147483648 % 9223372036854775807 ---
167: int(2147483648)
168: --- testing: -2147483649 % 0 ---
169: bool(false)
170: --- testing: -2147483649 % 1 ---
171: int(0)
172: --- testing: -2147483649 % -1 ---
173: int(0)
174: --- testing: -2147483649 % 7 ---
175: int(-3)
176: --- testing: -2147483649 % 9 ---
177: int(-3)
178: --- testing: -2147483649 % 65 ---
179: int(-64)
180: --- testing: -2147483649 % -44 ---
181: int(-25)
182: --- testing: -2147483649 % 2147483647 ---
183: int(-2)
184: --- testing: -2147483649 % 9223372036854775807 ---
185: int(-2147483649)
186: --- testing: 4294967294 % 0 ---
187: bool(false)
188: --- testing: 4294967294 % 1 ---
189: int(0)
190: --- testing: 4294967294 % -1 ---
191: int(0)
192: --- testing: 4294967294 % 7 ---
193: int(2)
194: --- testing: 4294967294 % 9 ---
195: int(2)
196: --- testing: 4294967294 % 65 ---
197: int(59)
198: --- testing: 4294967294 % -44 ---
199: int(2)
200: --- testing: 4294967294 % 2147483647 ---
201: int(0)
202: --- testing: 4294967294 % 9223372036854775807 ---
203: int(4294967294)
204: --- testing: 4294967295 % 0 ---
205: bool(false)
206: --- testing: 4294967295 % 1 ---
207: int(0)
208: --- testing: 4294967295 % -1 ---
209: int(0)
210: --- testing: 4294967295 % 7 ---
211: int(3)
212: --- testing: 4294967295 % 9 ---
213: int(3)
214: --- testing: 4294967295 % 65 ---
215: int(60)
216: --- testing: 4294967295 % -44 ---
217: int(3)
218: --- testing: 4294967295 % 2147483647 ---
219: int(1)
220: --- testing: 4294967295 % 9223372036854775807 ---
221: int(4294967295)
222: --- testing: 4294967293 % 0 ---
223: bool(false)
224: --- testing: 4294967293 % 1 ---
225: int(0)
226: --- testing: 4294967293 % -1 ---
227: int(0)
228: --- testing: 4294967293 % 7 ---
229: int(1)
230: --- testing: 4294967293 % 9 ---
231: int(1)
232: --- testing: 4294967293 % 65 ---
233: int(58)
234: --- testing: 4294967293 % -44 ---
235: int(1)
236: --- testing: 4294967293 % 2147483647 ---
237: int(2147483646)
238: --- testing: 4294967293 % 9223372036854775807 ---
239: int(4294967293)
240: --- testing: 9223372036854775806 % 0 ---
241: bool(false)
242: --- testing: 9223372036854775806 % 1 ---
243: int(0)
244: --- testing: 9223372036854775806 % -1 ---
245: int(0)
246: --- testing: 9223372036854775806 % 7 ---
247: int(6)
248: --- testing: 9223372036854775806 % 9 ---
249: int(6)
250: --- testing: 9223372036854775806 % 65 ---
251: int(6)
252: --- testing: 9223372036854775806 % -44 ---
253: int(6)
254: --- testing: 9223372036854775806 % 2147483647 ---
255: int(0)
256: --- testing: 9223372036854775806 % 9223372036854775807 ---
257: int(9223372036854775806)
258: --- testing: 9.2233720368548E+18 % 0 ---
259: bool(false)
260: --- testing: 9.2233720368548E+18 % 1 ---
261: int(0)
262: --- testing: 9.2233720368548E+18 % -1 ---
263: int(0)
264: --- testing: 9.2233720368548E+18 % 7 ---
265: int(-1)
266: --- testing: 9.2233720368548E+18 % 9 ---
267: int(-8)
268: --- testing: 9.2233720368548E+18 % 65 ---
269: int(-8)
270: --- testing: 9.2233720368548E+18 % -44 ---
271: int(-8)
272: --- testing: 9.2233720368548E+18 % 2147483647 ---
273: int(-2)
274: --- testing: 9.2233720368548E+18 % 9223372036854775807 ---
275: int(-1)
276: --- testing: -9223372036854775807 % 0 ---
277: bool(false)
278: --- testing: -9223372036854775807 % 1 ---
279: int(0)
280: --- testing: -9223372036854775807 % -1 ---
281: int(0)
282: --- testing: -9223372036854775807 % 7 ---
283: int(0)
284: --- testing: -9223372036854775807 % 9 ---
285: int(-7)
286: --- testing: -9223372036854775807 % 65 ---
287: int(-7)
288: --- testing: -9223372036854775807 % -44 ---
289: int(-7)
290: --- testing: -9223372036854775807 % 2147483647 ---
291: int(-1)
292: --- testing: -9223372036854775807 % 9223372036854775807 ---
293: int(0)
294: --- testing: -9.2233720368548E+18 % 0 ---
295: bool(false)
296: --- testing: -9.2233720368548E+18 % 1 ---
297: int(0)
298: --- testing: -9.2233720368548E+18 % -1 ---
299: int(0)
300: --- testing: -9.2233720368548E+18 % 7 ---
301: int(-1)
302: --- testing: -9.2233720368548E+18 % 9 ---
303: int(-8)
304: --- testing: -9.2233720368548E+18 % 65 ---
305: int(-8)
306: --- testing: -9.2233720368548E+18 % -44 ---
307: int(-8)
308: --- testing: -9.2233720368548E+18 % 2147483647 ---
309: int(-2)
310: --- testing: -9.2233720368548E+18 % 9223372036854775807 ---
311: int(-1)
312: --- testing: 0 % 9223372036854775807 ---
313: int(0)
314: --- testing: 0 % -9223372036854775808 ---
315: int(0)
316: --- testing: 0 % 2147483647 ---
317: int(0)
318: --- testing: 0 % -2147483648 ---
319: int(0)
320: --- testing: 0 % 9223372034707292160 ---
321: int(0)
322: --- testing: 0 % -9223372034707292160 ---
323: int(0)
324: --- testing: 0 % 2147483648 ---
325: int(0)
326: --- testing: 0 % -2147483649 ---
327: int(0)
328: --- testing: 0 % 4294967294 ---
329: int(0)
330: --- testing: 0 % 4294967295 ---
331: int(0)
332: --- testing: 0 % 4294967293 ---
333: int(0)
334: --- testing: 0 % 9223372036854775806 ---
335: int(0)
336: --- testing: 0 % 9.2233720368548E+18 ---
337: int(0)
338: --- testing: 0 % -9223372036854775807 ---
339: int(0)
340: --- testing: 0 % -9.2233720368548E+18 ---
341: int(0)
342: --- testing: 1 % 9223372036854775807 ---
343: int(1)
344: --- testing: 1 % -9223372036854775808 ---
345: int(1)
346: --- testing: 1 % 2147483647 ---
347: int(1)
348: --- testing: 1 % -2147483648 ---
349: int(1)
350: --- testing: 1 % 9223372034707292160 ---
351: int(1)
352: --- testing: 1 % -9223372034707292160 ---
353: int(1)
354: --- testing: 1 % 2147483648 ---
355: int(1)
356: --- testing: 1 % -2147483649 ---
357: int(1)
358: --- testing: 1 % 4294967294 ---
359: int(1)
360: --- testing: 1 % 4294967295 ---
361: int(1)
362: --- testing: 1 % 4294967293 ---
363: int(1)
364: --- testing: 1 % 9223372036854775806 ---
365: int(1)
366: --- testing: 1 % 9.2233720368548E+18 ---
367: int(1)
368: --- testing: 1 % -9223372036854775807 ---
369: int(1)
370: --- testing: 1 % -9.2233720368548E+18 ---
371: int(1)
372: --- testing: -1 % 9223372036854775807 ---
373: int(-1)
374: --- testing: -1 % -9223372036854775808 ---
375: int(-1)
376: --- testing: -1 % 2147483647 ---
377: int(-1)
378: --- testing: -1 % -2147483648 ---
379: int(-1)
380: --- testing: -1 % 9223372034707292160 ---
381: int(-1)
382: --- testing: -1 % -9223372034707292160 ---
383: int(-1)
384: --- testing: -1 % 2147483648 ---
385: int(-1)
386: --- testing: -1 % -2147483649 ---
387: int(-1)
388: --- testing: -1 % 4294967294 ---
389: int(-1)
390: --- testing: -1 % 4294967295 ---
391: int(-1)
392: --- testing: -1 % 4294967293 ---
393: int(-1)
394: --- testing: -1 % 9223372036854775806 ---
395: int(-1)
396: --- testing: -1 % 9.2233720368548E+18 ---
397: int(-1)
398: --- testing: -1 % -9223372036854775807 ---
399: int(-1)
400: --- testing: -1 % -9.2233720368548E+18 ---
401: int(-1)
402: --- testing: 7 % 9223372036854775807 ---
403: int(7)
404: --- testing: 7 % -9223372036854775808 ---
405: int(7)
406: --- testing: 7 % 2147483647 ---
407: int(7)
408: --- testing: 7 % -2147483648 ---
409: int(7)
410: --- testing: 7 % 9223372034707292160 ---
411: int(7)
412: --- testing: 7 % -9223372034707292160 ---
413: int(7)
414: --- testing: 7 % 2147483648 ---
415: int(7)
416: --- testing: 7 % -2147483649 ---
417: int(7)
418: --- testing: 7 % 4294967294 ---
419: int(7)
420: --- testing: 7 % 4294967295 ---
421: int(7)
422: --- testing: 7 % 4294967293 ---
423: int(7)
424: --- testing: 7 % 9223372036854775806 ---
425: int(7)
426: --- testing: 7 % 9.2233720368548E+18 ---
427: int(7)
428: --- testing: 7 % -9223372036854775807 ---
429: int(7)
430: --- testing: 7 % -9.2233720368548E+18 ---
431: int(7)
432: --- testing: 9 % 9223372036854775807 ---
433: int(9)
434: --- testing: 9 % -9223372036854775808 ---
435: int(9)
436: --- testing: 9 % 2147483647 ---
437: int(9)
438: --- testing: 9 % -2147483648 ---
439: int(9)
440: --- testing: 9 % 9223372034707292160 ---
441: int(9)
442: --- testing: 9 % -9223372034707292160 ---
443: int(9)
444: --- testing: 9 % 2147483648 ---
445: int(9)
446: --- testing: 9 % -2147483649 ---
447: int(9)
448: --- testing: 9 % 4294967294 ---
449: int(9)
450: --- testing: 9 % 4294967295 ---
451: int(9)
452: --- testing: 9 % 4294967293 ---
453: int(9)
454: --- testing: 9 % 9223372036854775806 ---
455: int(9)
456: --- testing: 9 % 9.2233720368548E+18 ---
457: int(9)
458: --- testing: 9 % -9223372036854775807 ---
459: int(9)
460: --- testing: 9 % -9.2233720368548E+18 ---
461: int(9)
462: --- testing: 65 % 9223372036854775807 ---
463: int(65)
464: --- testing: 65 % -9223372036854775808 ---
465: int(65)
466: --- testing: 65 % 2147483647 ---
467: int(65)
468: --- testing: 65 % -2147483648 ---
469: int(65)
470: --- testing: 65 % 9223372034707292160 ---
471: int(65)
472: --- testing: 65 % -9223372034707292160 ---
473: int(65)
474: --- testing: 65 % 2147483648 ---
475: int(65)
476: --- testing: 65 % -2147483649 ---
477: int(65)
478: --- testing: 65 % 4294967294 ---
479: int(65)
480: --- testing: 65 % 4294967295 ---
481: int(65)
482: --- testing: 65 % 4294967293 ---
483: int(65)
484: --- testing: 65 % 9223372036854775806 ---
485: int(65)
486: --- testing: 65 % 9.2233720368548E+18 ---
487: int(65)
488: --- testing: 65 % -9223372036854775807 ---
489: int(65)
490: --- testing: 65 % -9.2233720368548E+18 ---
491: int(65)
492: --- testing: -44 % 9223372036854775807 ---
493: int(-44)
494: --- testing: -44 % -9223372036854775808 ---
495: int(-44)
496: --- testing: -44 % 2147483647 ---
497: int(-44)
498: --- testing: -44 % -2147483648 ---
499: int(-44)
500: --- testing: -44 % 9223372034707292160 ---
501: int(-44)
502: --- testing: -44 % -9223372034707292160 ---
503: int(-44)
504: --- testing: -44 % 2147483648 ---
505: int(-44)
506: --- testing: -44 % -2147483649 ---
507: int(-44)
508: --- testing: -44 % 4294967294 ---
509: int(-44)
510: --- testing: -44 % 4294967295 ---
511: int(-44)
512: --- testing: -44 % 4294967293 ---
513: int(-44)
514: --- testing: -44 % 9223372036854775806 ---
515: int(-44)
516: --- testing: -44 % 9.2233720368548E+18 ---
517: int(-44)
518: --- testing: -44 % -9223372036854775807 ---
519: int(-44)
520: --- testing: -44 % -9.2233720368548E+18 ---
521: int(-44)
522: --- testing: 2147483647 % 9223372036854775807 ---
523: int(2147483647)
524: --- testing: 2147483647 % -9223372036854775808 ---
525: int(2147483647)
526: --- testing: 2147483647 % 2147483647 ---
527: int(0)
528: --- testing: 2147483647 % -2147483648 ---
529: int(2147483647)
530: --- testing: 2147483647 % 9223372034707292160 ---
531: int(2147483647)
532: --- testing: 2147483647 % -9223372034707292160 ---
533: int(2147483647)
534: --- testing: 2147483647 % 2147483648 ---
535: int(2147483647)
536: --- testing: 2147483647 % -2147483649 ---
537: int(2147483647)
538: --- testing: 2147483647 % 4294967294 ---
539: int(2147483647)
540: --- testing: 2147483647 % 4294967295 ---
541: int(2147483647)
542: --- testing: 2147483647 % 4294967293 ---
543: int(2147483647)
544: --- testing: 2147483647 % 9223372036854775806 ---
545: int(2147483647)
546: --- testing: 2147483647 % 9.2233720368548E+18 ---
547: int(2147483647)
548: --- testing: 2147483647 % -9223372036854775807 ---
549: int(2147483647)
550: --- testing: 2147483647 % -9.2233720368548E+18 ---
551: int(2147483647)
552: --- testing: 9223372036854775807 % 9223372036854775807 ---
553: int(0)
554: --- testing: 9223372036854775807 % -9223372036854775808 ---
555: int(9223372036854775807)
556: --- testing: 9223372036854775807 % 2147483647 ---
557: int(1)
558: --- testing: 9223372036854775807 % -2147483648 ---
559: int(2147483647)
560: --- testing: 9223372036854775807 % 9223372034707292160 ---
561: int(2147483647)
562: --- testing: 9223372036854775807 % -9223372034707292160 ---
563: int(2147483647)
564: --- testing: 9223372036854775807 % 2147483648 ---
565: int(2147483647)
566: --- testing: 9223372036854775807 % -2147483649 ---
567: int(1)
568: --- testing: 9223372036854775807 % 4294967294 ---
569: int(1)
570: --- testing: 9223372036854775807 % 4294967295 ---
571: int(2147483647)
572: --- testing: 9223372036854775807 % 4294967293 ---
573: int(2147483650)
574: --- testing: 9223372036854775807 % 9223372036854775806 ---
575: int(1)
576: --- testing: 9223372036854775807 % 9.2233720368548E+18 ---
577: int(9223372036854775807)
578: --- testing: 9223372036854775807 % -9223372036854775807 ---
579: int(0)
580: --- testing: 9223372036854775807 % -9.2233720368548E+18 ---
581: int(9223372036854775807)
582: ===DONE===
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>