1--TEST--
2LSP checks are performed against an abstract constructor even if it is not a direct parent
3--FILE--
4<?php
5
6abstract class A {
7    abstract function __construct(X $x);
8}
9class B extends A {
10    function __construct(X $x) {}
11}
12class C extends B {
13    function __construct() {}
14}
15
16?>
17--EXPECTF--
18Fatal error: Declaration of C::__construct() must be compatible with A::__construct(X $x) in %s on line 10
19