class a
{
}
class b
{
protected function __construct($x)
{
}
}
class c extends b
{
protected function __construct(a $x)
{
$this->t($x);
}
}
//
class a
{
}
class b
{
static function t($x)
{
return new self($x);
}
}
class c extends b
{
static function t(a $x) // Declaration of c::t() should be compatible with b::t($x)
{
return new self($x);
}
}
//
class a
{
}
class b
{
protected function __construct($x)
{
}
}
class c extends b
{
public function __construct(a $x)
{
}
}
//
class a
{
}
class b
{
protected static function t($x)
{
return new self($x);
}
}
class c extends b
{
public static function t($x)
{
return new self($x);
}
}
Comments