bug70083.phpt 462 B

1234567891011121314151617181920212223242526272829
  1. --TEST--
  2. Bug #70083 (Use after free with assign by ref to overloaded objects)
  3. --FILE--
  4. <?php
  5. class foo {
  6. private $var;
  7. function __get($e) {
  8. return $this;
  9. }
  10. }
  11. function &noref() { $foo = 1; return $foo; }
  12. $foo = new foo;
  13. try {
  14. $foo->i = &noref();
  15. } catch (Error $e) {
  16. echo $e->getMessage(), "\n";
  17. }
  18. var_dump($foo);
  19. ?>
  20. --EXPECT--
  21. Cannot assign by reference to overloaded object
  22. object(foo)#1 (1) {
  23. ["var":"foo":private]=>
  24. NULL
  25. }