1--TEST--
2Trait delayed variance check succeeds
3--FILE--
4<?php
5
6// Taken from bug #79179.
7
8spl_autoload_register(function() {
9    interface InterfaceB extends InterfaceA {}
10});
11
12interface InterfaceA {}
13
14trait SomeTrait {
15    abstract public function func(): ?InterfaceA;
16}
17
18class Foo {
19    public function func(): ?InterfaceB {}
20}
21
22class Bar extends Foo {
23    use SomeTrait;
24}
25
26?>
27===DONE===
28--EXPECT--
29===DONE===
30