bug54547.phpt 646 B

12345678910111213141516171819202122
  1. --TEST--
  2. Bug #54547: wrong equality of string numbers near LONG_MAX with 64-bit longs
  3. --SKIPIF--
  4. <?php
  5. if (PHP_INT_MAX !== 9223372036854775807)
  6. die("skip for 64-bit long systems only");
  7. --FILE--
  8. <?php
  9. var_dump("9223372036854775807" == "9223372036854775808");
  10. var_dump("-9223372036854775808" == "-9223372036854775809");
  11. var_dump("0x7fffffffffffffff" == "9223372036854775808");
  12. /* not exactly what the bug is about, but closely related problem: */
  13. var_dump("999223372036854775807"=="999223372036854775808");
  14. var_dump("899223372036854775807">"00999223372036854775807");
  15. ?>
  16. --EXPECT--
  17. bool(false)
  18. bool(false)
  19. bool(false)
  20. bool(false)
  21. bool(false)