2012-08-26 10:28:15 +00:00
|
|
|
--TEST--
|
|
|
|
Bug #62907 (Double free when use traits)
|
|
|
|
--FILE--
|
|
|
|
<?php
|
2017-01-30 21:28:17 +00:00
|
|
|
spl_autoload_register(function ($name) {
|
2012-08-26 10:28:15 +00:00
|
|
|
if ($name == "B") {
|
|
|
|
eval ("abstract class B extends A { }");
|
|
|
|
} else if ($name == "A") {
|
2018-09-16 17:16:42 +00:00
|
|
|
eval ("abstract class A { use T { T::__construct as __asconstruct; }}");
|
2012-08-26 10:28:15 +00:00
|
|
|
} else if ($name == "T") {
|
2018-09-16 17:16:42 +00:00
|
|
|
eval ("trait T { public function __construct() { } }");
|
|
|
|
}
|
2012-08-26 10:28:15 +00:00
|
|
|
return TRUE;
|
2017-01-30 21:28:17 +00:00
|
|
|
});
|
2012-08-26 10:28:15 +00:00
|
|
|
|
|
|
|
class C extends B {
|
|
|
|
public function __construct() {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
echo "okey";
|
|
|
|
--EXPECT--
|
|
|
|
okey
|