testData/resolve/GenericMixinUnionTwoClassesWithMixins.php (16 lines of code) (raw):

<?php declare(strict_types=1); class MixinClass1 { public function mixinClassMethod1() {} } class MixinClass2 { public function mixinClassMethod2() {} } /** * @template T * @mixin T */ class GenericFoo {} /** * @template T * @mixin T */ class GenericFoo2 {} /** * @param GenericFoo2<MixinClass2> | GenericFoo<MixinClass1> $foo */ function doFoo(GenericFoo2|GenericFoo $foo): void { $foo->mixinClassMethod2<caret>(); }