// FIR_IDENTICAL // !DIAGNOSTICS: -UNUSED_VARIABLE //T-2588 Allow to specify exact super type (expected) in inference if many import java.util.HashSet class MyClass() interface A interface D class B : A, D class C : A, D fun hashSetOf(vararg values: T): HashSet = throw Exception("$values") fun foo(b: MyClass, c: MyClass) { val set1 : Set> = hashSetOf(b, c) //type inference expected type mismatch val set2 = hashSetOf(b, c) //Set> is inferred }