<?php
// Everything you enter here will be executed by our servers. Try it!
interface bob {
}
abstract class bobby implements bob {}
class A extends bobby {
public function __construct($ob) {
echo $ob->value;
}
}
class B extends A {
protected $value = 'unicorns';
}
$a = new A(new B());
Fatal error: Uncaught ArgumentCountError: Too few arguments to function A::__construct(), 0 passed in /in/QlCNZ on line 20 and exactly 1 expected in /in/QlCNZ:11
Stack trace:
#0 /in/QlCNZ(20): A->__construct()
#1 {main}
thrown in /in/QlCNZ on line 11
Process exited with code 255.
Warning: Missing argument 1 for A::__construct(), called in /in/QlCNZ on line 20 and defined in /in/QlCNZ on line 11
Notice: Undefined variable: ob in /in/QlCNZ on line 12
Notice: Trying to get property of non-object in /in/QlCNZ on line 12
unicorns
Output for 5.0.0 - 5.0.5
Warning: Missing argument 1 for A::__construct() in /in/QlCNZ on line 11
Notice: Trying to get property of non-object in /in/QlCNZ on line 12
unicorns
Output for 4.4.2 - 4.4.9
Parse error: syntax error, unexpected T_STRING in /in/QlCNZ on line 4
Process exited with code 255.