summaryrefslogtreecommitdiff
path: root/ext/gmp/tests/bug52906.phpt
blob: 2bcd6a4e57bec58a141782eaf4235598f7de9b3d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
--TEST--
Bug #52906 gmp_mod returns negative result when non-negative is expected
--SKIPIF--
<?php if (!extension_loaded("gmp")) print "skip"; ?>
--FILE--
<?php

$vals = array(
	array(7, 3),
	array(2, 7),
	array(12, 7),
	array(-2, 7),
	array(-12, 7),
	array(2, -7),
	array(12, -7),
	array(-2, -7),
	array(-12, -7),
);
foreach($vals as $data) {
	echo "{$data[0]}%{$data[1]}=".gmp_strval(gmp_mod($data[0], $data[1]));
	echo "\n";
	echo "{$data[0]}%{$data[1]}=".gmp_strval(gmp_mod(gmp_init($data[0]), gmp_init($data[1])));
	echo "\n";
}
echo "Done\n";
?>
--EXPECT--	
7%3=1
7%3=1
2%7=2
2%7=2
12%7=5
12%7=5
-2%7=5
-2%7=5
-12%7=2
-12%7=2
2%-7=2
2%-7=2
12%-7=5
12%-7=5
-2%-7=5
-2%-7=5
-12%-7=2
-12%-7=2
Done