1--TEST--
2Co-variance check failure for intersection type where child replaces it with standard type
3--FILE--
4<?php
5
6interface A {}
7interface B {}
8
9class Test implements A, B {}
10
11class Foo {
12    public function foo(): A&B {
13        return new Test();
14    }
15}
16
17/* This fails because just A larger than A&B */
18class FooChild extends Foo {
19    public function foo(): array {
20        return new Test();
21    }
22}
23
24?>
25--EXPECTF--
26Fatal error: Declaration of FooChild::foo(): array must be compatible with Foo::foo(): A&B in %s on line %d
27