--- /dev/null
+--TEST--
+Bug #53574 (Integer overflow in SdnToJulian; leads to segfault)
+--SKIPIF--
+<?php
+include 'skipif.inc';
+if (PHP_INT_SIZE != 4) {
+ die("skip this test is for 32bit platform only");
+}
+?>
+--FILE--
+<?php
+$x = 882858043;
+
+var_dump(cal_from_jd($x, CAL_JULIAN));
+--EXPECT--
+array(9) {
+ ["date"]=>
+ string(5) "0/0/0"
+ ["month"]=>
+ int(0)
+ ["day"]=>
+ int(0)
+ ["year"]=>
+ int(0)
+ ["dow"]=>
+ int(5)
+ ["abbrevdayname"]=>
+ string(3) "Fri"
+ ["dayname"]=>
+ string(6) "Friday"
+ ["abbrevmonth"]=>
+ string(0) ""
+ ["monthname"]=>
+ string(0) ""
+}
+
--TEST--
Bug #53574 (Integer overflow in SdnToJulian; leads to segfault)
--SKIPIF--
-<?php include 'skipif.inc'; ?>
+<?php
+include 'skipif.inc';
+if (PHP_INT_SIZE == 4) {
+ die("skip this test is for 64bit platform only");
+}
+?>
--FILE--
<?php
-if (PHP_INT_MAX == 0x7FFFFFFF) {
- $x = 882858043;
-} else {
- $x = 3315881921229094912;
-}
+$x = 3315881921229094912;
var_dump(cal_from_jd($x, CAL_JULIAN));
--EXPECT--