bug78379.phpt 427 B

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