]> granicus.if.org Git - php/commitdiff
We can't output absolute S and T values for the
authorRasmus Lerdorf <rasmus@php.net>
Sat, 10 Jan 2015 00:16:47 +0000 (16:16 -0800)
committerRasmus Lerdorf <rasmus@php.net>
Sat, 10 Jan 2015 00:16:47 +0000 (16:16 -0800)
Diophantine solution here since it can vary based
on the libgmp version we are linking against and
in general there are almost always multiple valid
solutions

ext/gmp/tests/022.phpt

index 469aa3013d5caa668bde8d44706444d4cefc180a..57fb05822f3c8a1dbc421e49846805d53c7598a3 100644 (file)
@@ -24,9 +24,9 @@ $a = array(
 
 foreach ($a as $val) {
        $r = gmp_gcdext($val[0],$val[1]);
+       $check = gmp_add(gmp_mul($val[0],$r['s']), gmp_mul($val[1],$r['t']));
        var_dump(gmp_strval($r['g']));
-       var_dump(gmp_strval($r['s']));
-       var_dump(gmp_strval($r['t']));
+       var_dump(gmp_strval($check));
 }
 
 var_dump(gmp_gcdext($val[0],array()));
@@ -39,35 +39,25 @@ echo "Done\n";
 ?>
 --EXPECTF--    
 string(1) "3"
-string(2) "-4"
-string(2) "11"
+string(1) "3"
+string(1) "1"
 string(1) "1"
-string(4) "-805"
-string(3) "359"
 string(1) "3"
-string(2) "32"
-string(5) "-2257"
+string(1) "3"
 string(4) "3003"
-string(3) "-10"
-string(2) "19"
+string(4) "3003"
+string(1) "2"
 string(1) "2"
-string(2) "67"
-string(2) "-3"
 string(2) "15"
-string(7) "-601519"
-string(1) "6"
+string(2) "15"
+string(3) "345"
 string(3) "345"
 string(1) "1"
-string(1) "0"
 string(1) "1"
-string(5) "84319"
-string(9) "-84241831"
 string(1) "1"
-string(13) "-156252240050"
-string(14) "16689072773537"
+string(1) "1"
+string(3) "195"
 string(3) "195"
-string(11) "46994884483"
-string(9) "-68772552"
 
 Warning: gmp_gcdext(): Unable to convert variable to GMP - wrong type in %s on line %d
 bool(false)