bug43651.phpt 866 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. --TEST--
  2. Bug #43651 (is_callable() with one or more nonconsecutive colons crashes)
  3. --FILE--
  4. <?php
  5. class Test {
  6. static function foo() {}
  7. }
  8. var_dump(is_callable("\\\\"));
  9. var_dump(is_callable("\\"));
  10. var_dump(is_callable("x\\"));
  11. var_dump(is_callable("\\x"));
  12. var_dump(is_callable("x\\x"));
  13. var_dump(is_callable("x\\\\"));
  14. var_dump(is_callable("\\x"));
  15. var_dump(is_callable("x\\\\x"));
  16. var_dump(is_callable("cd"));
  17. var_dump(is_callable("Test\\"));
  18. var_dump(is_callable("\\Test"));
  19. var_dump(is_callable("\\Test\\"));
  20. var_dump(is_callable("Test::foo"));
  21. var_dump(is_callable("\\Test::foo"));
  22. var_dump(is_callable("is_string"));
  23. var_dump(is_callable("\\is_string"));
  24. --EXPECT--
  25. bool(false)
  26. bool(false)
  27. bool(false)
  28. bool(false)
  29. bool(false)
  30. bool(false)
  31. bool(false)
  32. bool(false)
  33. bool(false)
  34. bool(false)
  35. bool(false)
  36. bool(false)
  37. bool(true)
  38. bool(true)
  39. bool(true)
  40. bool(true)