bug78379.phpt 440 B

1234567891011121314151617181920212223242526272829303132
  1. --TEST--
  2. Bug #78379 (Cast to object confuses GC, causes crash)
  3. --INI--
  4. opcache.enable=0
  5. --FILE--
  6. <?php
  7. class C {
  8. public function __construct() {
  9. $this->p = (object)["x" => [1]];
  10. }
  11. }
  12. class E {
  13. }
  14. $e = new E;
  15. $e->f = new E;
  16. $e->f->e = $e;
  17. $e->a = new C;
  18. $e = null;
  19. gc_collect_cycles();
  20. var_dump(new C);
  21. ?>
  22. --EXPECTF--
  23. object(C)#%d (1) {
  24. ["p"]=>
  25. object(stdClass)#%d (1) {
  26. ["x"]=>
  27. array(1) {
  28. [0]=>
  29. int(1)
  30. }
  31. }
  32. }