--TEST-- Bug #55137 (Legacy constructor not registered for class) --FILE-- <?php trait TConstructor { public function foo() { echo "foo executed\n"; } public function bar() { echo "bar executed\n"; } } class OverridingIsSilent1 { use TConstructor { foo as __construct; } public function __construct() { echo "OverridingIsSilent1 __construct\n"; } } $o = new OverridingIsSilent1; class OverridingIsSilent2 { use TConstructor { foo as OverridingIsSilent2; } public function OverridingIsSilent2() { echo "OverridingIsSilent2 OverridingIsSilent2\n"; } } $o = new OverridingIsSilent2; class ReportCollision { use TConstructor { bar as ReportCollision; foo as __construct; } } echo "ReportCollision: "; $o = new ReportCollision; --EXPECTF-- OverridingIsSilent1 __construct OverridingIsSilent2 OverridingIsSilent2 Fatal error: ReportCollision has colliding constructor definitions coming from traits in %s on line %d