// FIR_IDENTICAL // !CHECK_TYPE package s import checkSubtype interface In interface A interface B interface C: A, B fun foo(in1: In, in2: In): T = throw Exception("$in1 $in2") fun test(inA: In, inB: In, inC: In) { foo(inA, inB) val r = foo(inA, inC) checkSubtype(r) val c: C = foo(inA, inB) use(c) } fun bar(in1: In): T = throw Exception("$in1") fun test(inA: In) { val r = bar(inA) checkSubtype(r) } fun use(vararg a: Any?) = a