1--TEST-- 2Test sprintf() function : Rope Optimization for '%d' with GMP objects 3--EXTENSIONS-- 4gmp 5--FILE-- 6<?php 7 8$a = new GMP("42"); 9$b = new GMP("-1337"); 10$c = new GMP("999999999999999999999999999999999"); 11 12try { 13 if (PHP_INT_SIZE == 8) { 14 var_dump(sprintf("%d/%d/%d/%s", $a, $b, $c, $c + 1)); 15 var_dump("42/-1337/2147483647/1000000000000000000000000000000000"); 16 } else { 17 var_dump("42/-1337/4089650035136921599/1000000000000000000000000000000000"); 18 var_dump(sprintf("%d/%d/%d/%s", $a, $b, $c, $c + 1)); 19 } 20} catch (\Throwable $e) {echo $e, PHP_EOL; } echo PHP_EOL; 21 22echo "Done"; 23?> 24--EXPECTF-- 25string(63) "42/-1337/4089650035136921599/1000000000000000000000000000000000" 26string(54) "42/-1337/2147483647/1000000000000000000000000000000000" 27 28Done 29